1 : C ESTIFF SOURCE BECC 11/05/26 21:15:24 6981 2 : SUBROUTINE ESTIFF( 3 : & RHO, P, GAMMA, PC, E, 4 : & LOGDEB, LOGAN) 5 : * 6 : ************************************************************************* 7 : * 8 : * project : CAST3M, EUROPLEXUS... 9 : * 10 : * name : e_stiff 11 : * 12 : * description : euler equations for a mixture of stiffened gases 13 : * flux in the non-reactive case. 14 : * 15 : * computation of the internal energy. 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 : * e = energy 38 : * 39 : * logan = anomaly ? 40 : * 41 : ************************************************************************* 42 : * 43 : * 26/11/2009 created 44 : * 25/05/2011 evolution in CAST3M 45 : * 46 : ************************************************************************* 47 : * 48 : * n.b.: all variables are declared 49 : * 50 : C IMPLICIT NONE 51 : IMPLICIT INTEGER(I-N) 52 : REAL*8 53 : & RHO, P, PC, GAMMA, E 54 : * 55 : * debugging ? 56 : * 57 : LOGICAL LOGDEB, LOGAN 58 : * 59 : IF (LOGDEB ) THEN 60 : IF (GAMMA .LE. 1.0D0) THEN 61 : WRITE(*,*) 'SUBROUTINE E_STIFF.F' 62 : WRITE(*,*) 'ANOMALY DETECTED' 63 : WRITE(*,*) 'GAMMA =', GAMMA 64 : LOGAN = .TRUE. 65 : GOTO 9999 66 : ENDIF 67 : IF ((P .LT. 0.0D0) .OR. (PC .LT. 0.0D0)) THEN 68 : WRITE(*,*) 'SUBROUTINE E_STIFF.F' 69 : WRITE(*,*) 'ANOMALY DETECTED' 70 : WRITE(*,*) 'P = ', P, ' PC = ', PC 71 : LOGAN = .TRUE. 72 : GOTO 9999 73 : ENDIF 74 : IF ((RHO .LT. 0.0D0)) THEN 75 : WRITE(*,*) 'SUBROUTINE E_STIFF.F' 76 : WRITE(*,*) 'ANOMALY DETECTED' 77 : WRITE(*,*) 'RHO = ', RHO 78 : LOGAN = .TRUE. 79 : GOTO 9999 80 : ENDIF 81 : ENDIF 82 : E = (GAMMA - 1.0D0) * RHO 83 : E = (P + (GAMMA * PC)) / E 84 : 9999 RETURN 85 : END 86 :
© Cast3M 2003 - All rights reserved.
Disclaimer