mod_phy.f90

### TABLE OF CONTENTS

- 1. PHY/phy

## PHY/phy [ Methods ]

[ Top ] [ Methods ]

NOM

     phy

DESCRIPTION

     Interface des routines du Module PHYsique

     Interface of routines from PHYsic 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 phy_typ
      IMPLICIT NONE
    !.2-----  Declaration
    ! tableaux de variables utilisÃ© pour les conditions aux limites et les conditions initiales constantes
      type(state),dimension(phy_nb_cl) :: phy_state
    ! type du flux numÃ©rique
    !  =0   --> rusanov
    ! =1 --> godunov
    ! integer                          :: phy_typflux = 0
    ! variable de debuguage des cas test
    ! istep=0/1   --> cas test de la rampe inactif ou actif
    ! (sert Ã  appliquer des profils de vitesse)
     ! integer                          :: phy_istep=0
     !=========================== DEBUT DU CODE EXECUTABLE ==================

    !~
    !~!----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE Bal2Prim(w)
            use phy_typ
            type(state),intent(inout) :: w
          END SUBROUTINE Bal2Prim
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE critphy(w,c)
            use phy_typ
            type(state), intent(inout) :: w
            real(kind=kind(0.d0)), intent(out) :: c
          END SUBROUTINE critphy
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE entropie(w,e)
            use phy_typ
            type(state), intent(inout) :: w
            real(kind=kind(0.d0)), intent(out) :: e
          END SUBROUTINE entropie
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
        interface
            SUBROUTINE  fct_bathy(x,y,z,zb,zbx,zby,cf)
                use phy_typ
                real(kind=kind(0.d0)), intent(in)                :: x,y,z
                real(kind=kind(0.d0)), intent(out)               :: zb,cf,zbx,zby
            END SUBROUTINE fct_bathy
        end interface
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
        interface
            SUBROUTINE  fct_cond(vi,vp,fctnum,x,y,z,vn)
                use phy_typ
               integer, intent(in)              :: fctnum
               real(kind=kind(0.d0)),intent(in) :: x,y,z
               type(vect_nvar), intent(in)      :: vi
               type(vect_nvar), intent(out)     :: vp
               type(vect_3),intent(in)          :: vn
            END SUBROUTINE fct_cond
        end interface
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
        interface
            SUBROUTINE  fct_iniw(x,y,z,vprim,ifct)
                use phy_typ
                real(kind=kind(0.d0)), intent(in)    :: x,y,z
                type(vect_nvar) , intent(out)        :: vprim
                integer                              :: ifct
            END SUBROUTINE fct_iniw
        end interface
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
        interface
            SUBROUTINE fct_mvsol(v1,v2,v3,o1,o2,o3,num)
              use phy_typ
              real(kind=kind(0.d0)) :: v1,v2,v3,o1,o2,o3
              integer               :: num
            END SUBROUTINE fct_mvsol
        end interface
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE fluxnum(wL,wR,vn,flux,itypflux)
            use phy_typ
            integer                    :: itypflux
            type(state), intent(in)    :: wL , wR
            type(vect_3),intent(in)    :: vn
            type(vect_nvar),intent(out):: flux
          END SUBROUTINE fluxnum
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE fluxnumnoncons(wL,wR,vn,fluxnc,itypflux)
            use phy_typ
            integer                    :: itypflux
            type(state), intent(in) :: wL , wR
            type(vect_3),intent(in):: vn
            type(vect_nvar),intent(out):: fluxnc
          END SUBROUTINE fluxnumnoncons
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE prim2bal(w)
            use phy_typ
            type(state),intent(inout) :: w
          END SUBROUTINE prim2bal
      END INTERFACE
    !~!----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE riemisot(rg,ug,phig,alfg,rd,ud,phid,alfd,xi,r,u,p,phi,alf)
            real(kind=kind(0.d0)),intent(in):: rg,ug,phig,alfg,rd,ud,phid,alfd,xi
            real(kind=kind(0.d0)),intent(out):: r,u,p,phi,alf
          END SUBROUTINE riemisot
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE sources(w,s,iordre)
            use phy_typ
            type(state), intent(in) :: w
            type(vect_nvar),intent(out):: s
            integer,intent(in) :: iordre
          END SUBROUTINE sources
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
        interface
            subroutine svriemann(hg,ug,hd,ud,xi,h,u)
              real(kind=kind(0.d0)),intent(in):: hg,ug,hd,ud,xi
              real(kind=kind(0.d0)),intent(out):: h,u
            end subroutine svriemann
        end interface
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE VelCFL(w,vloc,h)
            use phy_typ
            type(state),intent(in) :: w
            real(kind=kind(0.d0)),intent(in) :: h
            real(kind=kind(0.d0)),intent(out) :: vloc
          END SUBROUTINE VelCFL
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE vitson(w,cson)
            use phy_typ
            type(state),intent(in) :: w
            real(kind=kind(0.d0)),intent(out) :: cson
          END SUBROUTINE vitson
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !----- Debut Interface ------------------------------------------------
      INTERFACE
          SUBROUTINE Wext(win,wout,vn,ityp,x,y,z,xm,ym,zm)
            use phy_typ
            integer,intent(in) ::  ityp
            type(state),intent(in) :: win
            type(vect_3),intent(in) :: vn
            real(kind=kind(0.d0)),optional,intent(in) :: x,y,z
            real(kind=kind(0.d0)),optional,intent(in) :: xm,ym,zm
            type(state),intent(out) :: wout
          END SUBROUTINE Wext
      END INTERFACE
    !----- Fin Interface --------------------------------------------------

    !===========================   FIN DU MODULE   =========================
     END MODULE phy