1 : C ASTIFF SOURCE BECC 11/05/26 21:15:01 6981 2 : SUBROUTINE ASTIFF( 3 : & RHO, P, GAMMA, PC, A, 4 : & LOGDEB, LOGAN) 5 : * 6 : ************************************************************************* 7 : * 8 : * project : CAST3M; Europlexus... 9 : * 10 : * name : a_stiff 11 : * 12 : * description : euler equations for a mixture of stiffened gases 13 : * flux in the non-reactive case. 14 : * 15 : * computation of the sound speed. 16 : * 17 : * language : fortran 77 18 : * 19 : * author : a. beccantini den/dm2s/sfme/ltmf 20 : * 21 : ************************************************************************* 22 : * 22 : * called by : 23 : * 24 : * 25 : ************************************************************************* 26 : * 27 : ***** input 28 : * 29 : * pc, gam = properties of the stiffened gas 30 : * 31 : * rho, p, = density, pressure 32 : * 33 : * logdeb = debugging ? 34 : * 35 : ***** output 36 : * 37 : * a = sound speed 38 : * 39 : * logan = anomaly ? 40 : * 41 : * 42 : ************************************************************************* 43 : * 44 : * 26/11/2009 created 45 : * 25/05/2011 evolution in CAST3M 46 : * 47 : ************************************************************************* 48 : * 49 : * n.b.: all variables are declared 50 : * 51 : C IMPLICIT NONE 52 : IMPLICIT INTEGER(I-N) 53 : REAL*8 RHO, P, PC, GAMMA, A 54 : * 55 : LOGICAL LOGDEB, LOGAN 56 : * 57 : IF (LOGDEB ) THEN 58 : IF (GAMMA .LE. 1.0D0) THEN 59 : WRITE(*,*) 'GAMMA =', GAMMA 60 : LOGAN = .TRUE. 61 : GOTO 9999 62 : ENDIF 63 : IF ((P .LE. 0.0D0) .OR. (PC .LE. 0.0D0)) THEN 64 : WRITE(*,*) 'P = ', P, ' PC = ', PC 65 : LOGAN = .TRUE. 66 : GOTO 9999 67 : ENDIF 68 : IF ((RHO .LE. 0.0D0)) THEN 69 : WRITE(*,*) 'RHO = ', RHO 70 : LOGAN = .TRUE. 71 : GOTO 9999 72 : ENDIF 73 : ENDIF 74 : A = GAMMA * (P + PC) / RHO 75 : A = A ** 0.5D0 76 : * 77 : 9999 RETURN 78 : END 79 :
© Cast3M 2003 - All rights reserved.
Disclaimer