Download derl.eso

Back to the list

   1 : C DERL      SOURCE    BECC      11/05/26    21:15:20     6981           
   2 :       SUBROUTINE DERL(
   3 :      &     PC, GAM,
   4 :      &     P, RHO_L, P_L, U_L,
   5 :      &     DER,
   6 :      &     LOGDEB, LOGAN)
   7 : *
   8 : *************************************************************************
   9 : *
  10 : * project           :  CAST3M, EUROPLEXUS...
  11 : *
  12 : * name              :  derl
  13 : *
  14 : * description       :  euler equations for a mixture of stiffened gases
  15 : *                      flux in the non-reactive case.
  16 : *
  17 : *                      left entropy-respecing curve.
  18 : *                      derivative of w with respect to p
  19 : *
  20 : * language          :  fortran 77
  21 : *
  22 : * author            :  a. beccantini den/dm2s/sfme/ltmf
  23 : *
  24 : *************************************************************************
  25 : *
  25 : * called by         :
  26 : *
  27 : *
  28 : *************************************************************************
  29 : *
  30 : ***** input
  31 : *
  32 : *     pc, gam         = properties of the gas
  33 : *
  34 : *     p               = pressure in the right side of the left
  35 : *                       entropy respecing curve
  36 : *
  37 : *     rho_l, p_l, u_l
  38 : *                     = density, pressure, velocity on the left
  39 : *
  40 : *     logdeb          = debugging ?
  41 : *
  42 : ***** output
  43 : *
  44 : *     der             = derivative
  45 : *
  46 : *     logan           = anomaly ?
  47 : *
  48 : *************************************************************************
  49 : *
  50 : *     12/11/2009      created
  51 : *     25/05/2011      evolution in CAST3M
  52 : *
  53 : *************************************************************************
  54 : *
  55 : * n.b.: all variables are declared
  56 : *
  57 : C      IMPLICIT NONE
  58 :       IMPLICIT INTEGER(I-N)
  59 :       REAL*8
  60 :      &     PC, GAM,
  61 :      &     P, RHO_L, P_L, U_L,
  62 :      &     DER, CSON_L, VAR, DER2
  63 : *
  64 :       LOGICAL LOGDEB, LOGAN
  65 : *
  66 :       IF (P .LE. (-1.0D0 * PC)) THEN
  67 : C
  68 : C******* Stop
  69 : C
  70 :          WRITE(*,*) 'P  = ', P
  71 :          WRITE(*,*) 'PC = ', PC
  72 :          LOGAN = .TRUE.
  73 :          WRITE(*,*) 'SUBROUTINE DERL'
  74 :          WRITE(*,*) 'ANOMALY DETECTED.'
  75 :          GOTO 9999
  76 :       ENDIF
  77 :       IF (P .LE. P_L) THEN
  78 : C
  79 : C******* Rarefaction
  80 : C
  81 :          cson_L = gam * (P_L + PC) / RHO_L
  82 :          cson_L = SQRT (cson_L) 
  83 :          var = P + PC 
  84 :          var = var / (P_L + PC) 
  85 :          var = var ** ((GAM - 1.0D0) / (2.0D0 * GAM))
  86 :          DER = ((-1.0D0 * cson_L / GAM) * (var / (P + PC)))
  87 :       ELSE
  88 :          var = RHO_L * (GAM + 1.0D0) * (P + PC) 
  89 :          var = var + (RHO_L * (GAM - 1.0D0) * (P_L + PC)) 
  90 :          DER = SQRT (2.0D0 / var) 
  91 :          DER2 = 0.5D0 * SQRT (2.0D0) * (var**(-1.5D0)) * RHO_L * 
  92 :      &        (gam + 1.0D0)
  93 :          DER2 = DER2 * (P - P_L) 
  94 :          DER = DER2 - DER
  95 :       ENDIF
  96 : *
  97 :       IF (LOGAN) THEN
  98 :          WRITE(*,*) 'SUBROUTINE FSTERL.F'
  99 :          WRITE(*,*) 'ANOMALY DETECTED.'
 100 :          GOTO 9999
 101 :       ENDIF
 102 : *
 103 :  9999 RETURN
 104 :       END
 105 :  

© Cast3M 2003 - All rights reserved.
Disclaimer