 
MODULE num 
!=========================== DOCUMENTATION ============================= 
!DOCDEBm*    NUM/num  *
!
!    NOM
!    num
!
!    DESCRIPTION  
!*
! Interface des routines du Module NUMerique
! Interface of routines from NUMeric Module 
!*
! 
!    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
  IMPLICIT NONE
!=========================== DEBUT DU CODE EXECUTABLE ==================
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE calc_flux(calc,lev)
        use num_typ
        type(calcul), intent(inout) :: calc
        integer, intent(inout)      :: lev
      END SUBROUTINE calc_flux
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE calc_source(calc,lev)
      use num_typ
        type(calcul), intent(inout) :: calc
        integer, intent(inout)     :: lev
      END SUBROUTINE calc_source
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE dtloc(calc)
      use num_typ
        type(calcul), intent(inout) :: calc
      END SUBROUTINE dtloc
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE friction(calc)
        use num_typ
        type(calcul), intent(inout) :: calc
      END SUBROUTINE friction
  END INTERFACE
  !----- Fin Interface --------------------------  
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE get_calc(calc)
        use num_typ
        type(calcul), intent(inout) :: calc
      END SUBROUTINE get_calc
  END INTERFACE
  !----- Fin Interface --------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE init_calc(calc)
        use num_typ
        type(calcul), intent(inout) :: calc
      END SUBROUTINE init_calc
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE raycasting(sol,x,y,z,chi)
        use num_typ
        real(kind=kind(0.d0)), intent(in) :: x,y,z
        type(solide), intent(inout) :: sol
        real(kind=kind(0.d0)), intent(out) :: chi
      END SUBROUTINE raycasting
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE rk2(calc)
        use num_typ
        type(calcul), intent(inout) :: calc
      END SUBROUTINE rk2
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE save_1D(calc)
        use num_typ
        type(calcul), intent(inout) :: calc
      END SUBROUTINE save_1D
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE save_calc(calc)
        use num_typ
        type(calcul), intent(inout) :: calc
      END SUBROUTINE save_calc
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE sharp(calc,pm)
        use num_typ
        type(calcul), intent(inout) :: calc
        real(kind=kind(0.d0)),intent(inout) :: pm
      END SUBROUTINE sharp
  END INTERFACE
  !----- Fin Interface ---------------------------
     
  !----- Debut Interface -------------------------
  INTERFACE
       SUBROUTINE synchro_mpi(calc)
         use num_typ
         type(calcul), intent(inout) :: calc
       END SUBROUTINE synchro_mpi
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
      SUBROUTINE synchro_w(calc)
        use num_typ
        type(calcul), intent(inout) :: calc
      END SUBROUTINE synchro_w
  END INTERFACE
  !----- Fin Interface ---------------------------
  
  !----- Debut Interface -------------------------
  INTERFACE
       SUBROUTINE u_penalisation(calc)
            use num_typ
            type(calcul), intent(inout) :: calc
       END SUBROUTINE u_penalisation
  END INTERFACE
  !----- Fin Interface --------------------------

END MODULE NUM
!DOCFIN