Download devflo.eso

Back to the list

   1 : C DEVFLO    SOURCE    CHAT      05/01/12    22:45:52     5004           
   2 : C EQUATN    SOURCE    BROC      95/12/28    21:28:22     1960           
   3 :        SUBROUTINE DEVFLO(INPLAS,SIG,EPSV,VAR,
   4 :      * XMAT,NCOMAT,NSTRS,NVARI,EVP1,VARP1,TAU)
   5 :       IMPLICIT INTEGER(I-N)
   6 :        IMPLICIT REAL*8 (A-H,O-Z)
   7 :        DIMENSION SIG(*),VAR(*),XMAT(*),EVP1(*),VARP1(*)          
   8 :        DIMENSION SS(6),EPS0(6) 
   9 : C_____________________________________________________________________          
  10 : C                                                                               
  11 : C STEP-2 : COMPUTATION OF SEQUV                                                 
  12 : C ------------------------------                                                
  13 :        SIGM=0.333333333333333D0*(SIG(1)+SIG(2)+SIG(3))                      
  14 :        DO 40 I=1,NSTRS                                                          
  15 :        A        =0.0D0 
  16 :        IF(I.LE.3) A=1.0D0                                                       
  17 :        SS(I)=SIG(I)-A*SIGM
  18 :  40    CONTINUE
  19 :        SEQUV = PROCON(SS,SS,NSTRS)                                               
  20 :        SEQUV = SQRT(1.5D0*SEQUV)                                                 
  21 :        EPSE  = VAR(1) 
  22 :        IF (SEQUV.LT.10.) THEN
  23 :           SEQUV = 10.
  24 :        ENDIF
  25 :        DEPSCP = 0. 
  26 :        DEPSCS = 0. 
  27 :        VAR(12) = 0.
  28 : 
  29 :        IF (INPLAS.EQ.85) THEN
  30 : C                                                                               
  31 : C   CCPL                                     
  32 : C       
  33 :          COE1 = XMAT(6)  * (SEQUV ** XMAT(7))  * XMAT(8) 
  34 :          COE2 = XMAT(9)  * (SEQUV ** XMAT(10)) * XMAT(11)
  35 :          COE3 = XMAT(12) * (SEQUV ** XMAT(13)) * XMAT(14)
  36 : 
  37 :          IF (COE1.GT.COE2) THEN
  38 :            COEI = COE1
  39 :          ELSE
  40 :            COEI = COE2
  41 :          ENDIF
  42 :          IF (COEI.LT.COE3) THEN
  43 :            COEFF = COEI
  44 :          ELSE
  45 :            COEFF = COE3
  46 :          ENDIF
  47 :          DEP11 = COEFF * (1 + XMAT(19) * XMAT(18))
  48 :          DEP12 = XMAT(15) * SEQUV ** XMAT(16) * XMAT(17) *
  49 :      &         XMAT(18)
  50 :          DEPSCP = DEP11 + DEP12
  51 : 
  52 :        ELSE IF (INPLAS.EQ.102) THEN
  53 : C                                                                               
  54 : C   SODERBERG                                     
  55 : C      
  56 :          EPSE1 = VAR(2)
  57 :          EPSE2 = VAR(3)
  58 : C        terme secondaire
  59 : 
  60 :          COE1 = XMAT(6)  * (SEQUV ** XMAT(7))  * XMAT(8) 
  61 :          COE2 = XMAT(9)  * (SEQUV ** XMAT(10)) * XMAT(11)
  62 :          COE3 = XMAT(12) * (SEQUV ** XMAT(13)) * XMAT(14)
  63 : 
  64 :          IF (COE1.GT.COE2) THEN
  65 :            COEI = COE1
  66 :          ELSE
  67 :            COEI = COE2
  68 :          ENDIF
  69 :          IF (COEI.LT.COE3) THEN
  70 :            COEFF = COEI
  71 :          ELSE
  72 :            COEFF = COE3
  73 :          ENDIF
  74 :          DEP11 = COEFF * (1 + XMAT(19) * XMAT(18))
  75 :          DEP12 = XMAT(15) * SEQUV ** XMAT(16) * XMAT(17) *
  76 :      &         XMAT(18)
  77 :          DEPSCS = DEP11 + DEP12
  78 :          
  79 : C        terme primaire de type E1 * (1-exp(-Rt))
  80 :          E1_AMP = (XMAT(20) * EXP (XMAT(21) * SEQUV)) + XMAT(22)
  81 :          RTOT   = (XMAT(23) + (XMAT(24) * SEQUV)) ** XMAT(25)
  82 :          DEPSCP = RTOT * (E1_AMP - EPSE1)
  83 :          
  84 :          VARP1(2) = DEPSCP
  85 :          VARP1(3) = DEPSCS
  86 : 
  87 :        ELSE IF (INPLAS.EQ.86) THEN                                               
  88 : C                                                                               
  89 : C   X11                                    
  90 : C                                                                               
  91 :          E0  = XMAT(15) * DTANH (XMAT(16) * SEQUV)
  92 :          VP0 = XMAT(13) * DSINH (XMAT(14) * SEQUV)
  93 :          VS0 = XMAT(11) * DSINH (XMAT(12) * SEQUV)
  94 :          VPF = XMAT(6)  * DEXP(-XMAT(7) * XMAT(17))+
  95 :      &         (1. - XMAT(6)) * DEXP(-XMAT(8) * XMAT(17))
  96 :          VSF = (1. - XMAT(9)) * DEXP(-XMAT(10)*XMAT(17))
  97 :      &         + XMAT(9)  
  98 :          DEPSCP = (VS0 * VSF) + ((VP0 * VPF) - (VS0 * VSF))
  99 :      &            * DEXP(-EPSE/E0)
 100 : 
 101 :        ELSE IF (INPLAS.EQ.84) THEN
 102 : C
 103 : C   COMETE
 104 : C
 105 :          EPSE1 = VAR(2)
 106 :          EPSE2 = VAR(3)
 107 : 
 108 :          IF (EPSE1.LT.1E-40) THEN
 109 :            EPFIN1 = XMAT(6)  * (SEQUV ** XMAT(7)) *
 110 :      &              (TAU**XMAT(8))
 111 :            COE12  = EPFIN1/TAU
 112 :            
 113 :            VAR(12) = 2.
 114 :          ELSE
 115 :            PUI1  = (XMAT(8) - 1.)/XMAT(8)
 116 :            COE11 = XMAT(6)  * (SEQUV ** XMAT(7))  
 117 :            COE12 = XMAT(8)  * (COE11 ** (1/XMAT(8))) * 
 118 :      &           (EPSE1 ** PUI1)
 119 :          ENDIF       
 120 : 
 121 :          IF (EPSE2.LT.1E-40) THEN
 122 :            EPFIN2 = XMAT(9)  * (SEQUV ** XMAT(10)) *
 123 :      &              (TAU**XMAT(12)) * (XMAT(13) ** XMAT(11))
 124 :            COE22  = EPFIN2/TAU
 125 :            
 126 :            VAR(12) = 3.
 127 :          ELSE
 128 :            PUI2  = (XMAT(12) - 1.)/XMAT(12)
 129 :            COE21 = XMAT(9)  * (SEQUV ** XMAT(10)) 
 130 :            COE22 = XMAT(12) * (COE21 ** (1/XMAT(12))) *
 131 :      &           (EPSE2 ** PUI2) * (XMAT(13) ** XMAT(11))
 132 :          ENDIF
 133 : 
 134 :          DEPSCP = COE12        
 135 :          DEPSCS = COE22
 136 :          VARP1(2) = DEPSCP
 137 :          VARP1(3) = DEPSCS
 138 : 
 139 :        ENDIF     
 140 : 
 141 : 
 142 :        DEPST = DEPSCP + DEPSCS
 143 :        CONS=1.5D0*DEPST/SEQUV
 144 : 
 145 :        DO 70 I=1,NSTRS
 146 :    70  EPS0(I)=CONS*SS(I)
 147 : 
 148 :        DO 11 I=1,NSTRS
 149 :          EVP1(I)=EPS0(I)
 150 :  11    CONTINUE
 151 :        VARP1(1) = DEPST
 152 : C        print*,VARP1(1),EVP1(1),EVP1(2),EVP1(3)
 153 : 
 154 : 
 155 : 
 156 :         RETURN                                                                   
 157 :        END                                                                      
 158 :  
 159 :  
 160 :  
 161 :  
 162 :  

© Cast3M 2003 - All rights reserved.
Disclaimer