C DEVFLO    SOURCE    PV        22/04/21    08:32:51     11344          
       SUBROUTINE DEVFLO(INPLAS,SIG,EPSV,VAR,
     * XMAT,NCOMAT,NSTRS,NVARI,EVP1,VARP1,TAU)
      IMPLICIT INTEGER(I-N)
       IMPLICIT REAL*8 (A-H,O-Z)
       DIMENSION SIG(*),VAR(*),XMAT(*),EVP1(*),VARP1(*)
       DIMENSION SS(6),EPS0(6),epsv(8)
C_____________________________________________________________________
C
C STEP-2 : COMPUTATION OF SEQUV
C ------------------------------
       SIGM=0.333333333333333D0*(SIG(1)+SIG(2)+SIG(3))
       DO 40 I=1,NSTRS
       A        =0.0D0
       IF(I.LE.3) A=1.0D0
       SS(I)=SIG(I)-A*SIGM
 40    CONTINUE
       SEQUV = PROCON(SS,SS,NSTRS)
       SEQUV = SQRT(1.5D0*SEQUV)
       EPSE  = VAR(1)
       IF (SEQUV.LT.10.) THEN
          SEQUV = 10.
       ENDIF
       DEPSCP = 0.
       DEPSCS = 0.
       VAR(12) = 0.

       IF (INPLAS.EQ.85) THEN
C
C   CCPL
C
         COE1 = XMAT(6)  * (SEQUV ** XMAT(7))  * XMAT(8)
         COE2 = XMAT(9)  * (SEQUV ** XMAT(10)) * XMAT(11)
         COE3 = XMAT(12) * (SEQUV ** XMAT(13)) * XMAT(14)

         IF (COE1.GT.COE2) THEN
           COEI = COE1
         ELSE
           COEI = COE2
         ENDIF
         IF (COEI.LT.COE3) THEN
           COEFF = COEI
         ELSE
           COEFF = COE3
         ENDIF
         DEP11 = COEFF * (1 + XMAT(19) * XMAT(18))
         DEP12 = XMAT(15) * SEQUV ** XMAT(16) * XMAT(17) *
     &         XMAT(18)
         DEPSCP = DEP11 + DEP12

       ELSE IF (INPLAS.EQ.102) THEN
C
C   SODERBERG
C
         EPSE1 = VAR(2)
         EPSE2 = VAR(3)
C        terme secondaire

         COE1 = XMAT(6)  * (SEQUV ** XMAT(7))  * XMAT(8)
         COE2 = XMAT(9)  * (SEQUV ** XMAT(10)) * XMAT(11)
         COE3 = XMAT(12) * (SEQUV ** XMAT(13)) * XMAT(14)

         IF (COE1.GT.COE2) THEN
           COEI = COE1
         ELSE
           COEI = COE2
         ENDIF
         IF (COEI.LT.COE3) THEN
           COEFF = COEI
         ELSE
           COEFF = COE3
         ENDIF
         DEP11 = COEFF * (1 + XMAT(19) * XMAT(18))
         DEP12 = XMAT(15) * SEQUV ** XMAT(16) * XMAT(17) *
     &         XMAT(18)
         DEPSCS = DEP11 + DEP12

C        terme primaire de type E1 * (1-exp(-Rt))
         E1_AMP = (XMAT(20) * EXP (XMAT(21) * SEQUV)) + XMAT(22)
         RTOT   = (XMAT(23) + (XMAT(24) * SEQUV)) ** XMAT(25)
         DEPSCP = RTOT * (E1_AMP - EPSE1)

         VARP1(2) = DEPSCP
         VARP1(3) = DEPSCS

       ELSE IF (INPLAS.EQ.86) THEN
C
C   X11
C
         E0  = XMAT(15) * TANH(XMAT(16) * SEQUV)
         VP0 = XMAT(13) * SINH(XMAT(14) * SEQUV)
         VS0 = XMAT(11) * SINH(XMAT(12) * SEQUV)
         VPF = XMAT(6)  * EXP(-XMAT(7) * XMAT(17))+
     &         (1. - XMAT(6)) * EXP(-XMAT(8) * XMAT(17))
         VSF = (1. - XMAT(9)) * EXP(-XMAT(10)*XMAT(17))
     &         + XMAT(9)
         DEPSCP = (VS0 * VSF) + ((VP0 * VPF) - (VS0 * VSF))
     &            * EXP(-EPSE/E0)

       ELSE IF (INPLAS.EQ.84) THEN
C
C   COMETE
C
         EPSE1 = VAR(2)
         EPSE2 = VAR(3)

         IF (EPSE1.LT.1E-40) THEN
           EPFIN1 = XMAT(6)  * (SEQUV ** XMAT(7)) *
     &              (TAU**XMAT(8))
           COE12  = EPFIN1/TAU

           VAR(12) = 2.
         ELSE
           PUI1  = (XMAT(8) - 1.)/XMAT(8)
           COE11 = XMAT(6)  * (SEQUV ** XMAT(7))
           COE12 = XMAT(8)  * (COE11 ** (1/XMAT(8))) *
     &           (EPSE1 ** PUI1)
         ENDIF

         IF (EPSE2.LT.1E-40) THEN
           EPFIN2 = XMAT(9)  * (SEQUV ** XMAT(10)) *
     &              (TAU**XMAT(12)) * (XMAT(13) ** XMAT(11))
           COE22  = EPFIN2/TAU

           VAR(12) = 3.
         ELSE
           PUI2  = (XMAT(12) - 1.)/XMAT(12)
           COE21 = XMAT(9)  * (SEQUV ** XMAT(10))
           COE22 = XMAT(12) * (COE21 ** (1/XMAT(12))) *
     &           (EPSE2 ** PUI2) * (XMAT(13) ** XMAT(11))
         ENDIF

         DEPSCP = COE12
         DEPSCS = COE22
         VARP1(2) = DEPSCP
         VARP1(3) = DEPSCS

       ENDIF


       DEPST = DEPSCP + DEPSCS
       CONS=1.5D0*DEPST/SEQUV

       DO 70 I=1,NSTRS
   70  EPS0(I)=CONS*SS(I)

       DO 11 I=1,NSTRS
         EVP1(I)=EPS0(I)
 11    CONTINUE
       VARP1(1) = DEPST
C        print*,VARP1(1),EVP1(1),EVP1(2),EVP1(3)



        RETURN
       END







 
 
