TABLE OF CONTENTS
- 1. NUM/dtloc
NUM/dtloc [ Modules ]
NOM
dtloc (calc)
DESCRIPTION
Calcul du pas de temps local a un domaine
Calculating the local time step for a domain
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 IMPLICIT NONE !.2----- Declaration type(calcul), intent(inout) :: calc !! Objet calcul / Calcul object integer :: i real(kind=kind(0.d0)) :: vloc,dt_loc !=========================== DEBUT DU CODE EXECUTABLE ================== ! On determine la vitesse d onde maximale sur toutes les cellules du calcul calc%vmax=0.d0 calc%dt=1.d20 DO i=1,calc%msh%nb_cell IF (calc%msh%numdom.eq.calc%msh%list_cell(i)%idom) THEN CALL VelCFL(calc%msh%list_cell(i)%w,vloc,calc%msh%list_cell(i)%h) IF (vloc.gt.calc%vmax)calc%vmax=vloc dt_loc=calc%msh%list_cell(i)%h*calc%cfl/vloc IF (dt_loc.lt.calc%dt)calc%dt=dt_loc END IF END DO !=========================== FIN DE LA ROUTINE ==================== END SUBROUTINE dtloc