velcfl.f90

### TABLE OF CONTENTS

- 1. PHY/VelCFL

## PHY/VelCFL [ Modules ]

[ Top ] [ Modules ]

NOM

     VelCFL(w,vloc)

DESCRIPTION

     Calcul de la vitesse d onde Max

     Calculation of Max wave velocity

        ENTREES / INPUT
     w    : objet de type "state" contenant les variables conservatives
          / object of type "state" containing the conservative variables

        SORTIES / OUTPUT
     vloc : vitesse d onde  /  wave velocity

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
      use phy ,only:  vitson
      IMPLICIT NONE
    !.2-----  Declaration
      type(state),intent(in)            :: w !! Variables d etat / State variables
      real(kind=kind(0.d0)),intent(out) :: vloc !! Vitesse d onde : Wave speed

      real(kind=kind(0.d0))             :: cson,vconv
      real(kind=kind(0.d0))             :: r,u1,u2,u3,p,u

    !=========================== DEBUT DU CODE EXECUTABLE ==================
      SELECT CASE (imodel_phy)
          CASE (1)
              u1=w%vprim%v(2)
              u2=w%vprim%v(3)
              u=dsqrt(u1*u1+u2*u2)
              CALL vitson(w,cson)
              vconv=u+cson !     vitesse des ondes convectives
          CASE DEFAULT
              r=w%vprim%v(1)
              u1=w%vprim%v(2)
              u2=w%vprim%v(3)
              u3=w%vprim%v(4)
              p=w%vprim%v(5)
              u=dsqrt(u1*u1+u2*u2+u3*u3)
              CALL vitson(w,cson)
              vconv=u+cson !     vitesse des ondes convectives
      END SELECT

      vloc=vconv

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