init_calc.f90

### TABLE OF CONTENTS

- 1. NUM/init_cal

## NUM/init_cal [ Modules ]

[ Top ] [ Modules ]

NOM

       init_calc(calc)

DESCRIPTION

     Initialisation d un calcul: initialisation MPI, recuperation du nombre de domaines,
     du numero du domaine courant. Lecture des donnees du calcul.

     Initialisation of a calculation: MPI initialisation, recovery of the number of domains,
     the number of the current domain. Reading calculation data.

        ENTREES / INPUT
       calc : Objet calcul / Calcul object
        SORTIES / OUTPUT
       calc : Objet calcul / Calcul object

SOURCE

    ! Ce logiciel est regi par la licence [CeCILL-B]
    ! This software is governed by the [CeCILL-B] license
    !=========================== DEBUT DES DECLARATIONS ====================
    !.1-----  Implicit, Use
      use num_typ
      use num ,only: get_calc
      IMPLICIT NONE

    #ifdef _MPI
      include 'mpif.h'
    #endif
    !.2-----  Declaration
      type(calcul),intent(inout) :: calc !! Objet calcul / Calcul object

      integer                    :: ierr
    !=========================== DEBUT DU CODE EXECUTABLE ==================

      CALL empty_mesh(calc%msh,0,0)

    #ifdef _MPI
      CALL MPI_INIT(ierr)
      CALL MPI_COMM_RANK( MPI_COMM_WORLD, calc%msh%numdom, ierr )
    #else
      calc%msh%numdom=0
    #endif

    #ifdef _MPI
      CALL MPI_COMM_SIZE( MPI_COMM_WORLD, calc%msh%nb_dom,ierr )
    #else
      calc%msh%nb_dom=1
    #endif

      calc%msh%numdom=1+calc%msh%numdom
      CALL empty_mesh(calc%msh,calc%msh%nb_dom,calc%msh%numdom)
      CALL get_calc(calc)

    !===========================   FIN DE LA ROUTINE    ====================
    END SUBROUTINE INIT_CALC