Download incrb2.eso

Back to the list

   1 : C INCRB2    SOURCE    CHAT      05/01/13    00:35:03     5004           
   2 : C INCRB2    SOURCE    AC2       96/01/19    21:29:05     1995         
   3 :        SUBROUTINE INCRB2(SIG,VAR,EPSVPT,VARPT,XMAT,NSTRS0,           
   4 :      &                                     MFR,NVARI,NCOMAT)        
   5 :       IMPLICIT INTEGER(I-N)
   6 :        IMPLICIT REAL*8(A-H,O-Z)                                       
   7 :        REAL*8    EAFSKPN1,BP,EMBP,PPRIMDP
   8 :        REAL*8    AFSKPN1,T1,T2,T3,DP,FSKPN,FSKPN1,J2SMX,RR,FSURK
   9 :        DIMENSION SIG(*),VAR(*),EPSVPT(*),VARPT(*),XMAT(*)           
  10 :        DIMENSION XXX(6),AN(6),ANS(6),SMOINX(6)                      
  11 :        DIMENSION SIG0(6),DEPS0(6),SIGX1(6),SIGX2(6) 
  12 :        PARAMETER (AMAX  =  1.0D20 , AMIN = 1.D-10)                      
  13 :        DETIER  =  2.0D0/3.0D0                                           
  14 :        ROOT  =  SQRT(DETIER)                                            
  15 : C-------------------------------------------------------------------|           
  16 : C
  17 : C XMAT(1)    : YOUN
  18 : C XMAT(2)    : NU
  19 : C XMAT(3)    : RHO
  20 : C XMAT(4)    : ALPH
  21 : C XMAT(5)    : ALF
  22 : C XMAT(6)    : N
  23 : C XMAT(7)    : KK
  24 : C XMAT(8)    : K0
  25 : C XMAT(9)    : CL1
  26 : C XMAT(10)   : DNL1
  27 : C XMAT(11)   : PHI
  28 : C XMAT(12)   : CL2
  29 : C XMAT(13)   : DNL2
  30 : C XMAT(14)   : B
  31 : C XMAT(15)   : GDM1
  32 : C XMAT(16)   : PTM1
  33 : C XMAT(17)   : RMAX
  34 : C XMAT(18)   : BR
  35 : C
  36 : C SIGXi      : Xi ( Xi = (2/3)  CLi  ALPHAi)
  37 : C                 ALPHAi : variable interne du type AiXX....
  38 : C
  39 : C-------------------------------------------------------------------|           
  40 : C*******  CALCUL DE X1 ET X2                                        |           
  41 : C-------------------------------------------------------------------I           
  42 :        NSTRS = NSTRS0
  43 :        DO 12 I = 1,NSTRS
  44 :          SIGX1(I) = DETIER * XMAT(9) * VAR(I) 
  45 :          SIGX2(I) = DETIER * XMAT(12) * VAR(NSTRS+I) 
  46 :   12   CONTINUE
  47 : C-------------------------------------------------------------------|           
  48 : C*******  EVALUATION OF J2 SIGMA - X                                |           
  49 : C-------------------------------------------------------------------I           
  50 :        IF (MFR.EQ.5) THEN 
  51 :          NSTRS = 6  
  52 :          SIG0(1) = SIG(1)  
  53 :          SIG0(2) = SIG(2)  
  54 :          SIG0(3) = 0.D0   
  55 :          SIG0(4) = SIG(3) 
  56 :          SIG0(5) = SIG(4)  
  57 :          SIG0(6) = SIG(5)  
  58 :        ELSE 
  59 :          NSTRS = NSTRS0 
  60 :          DO 10 I = 1,NSTRS 
  61 :            SIG0(I) = SIG(I) 
  62 :   10     CONTINUE   
  63 :        ENDIF 
  64 : C
  65 :        TRACE = (SIG0(1)+SIG0(2)+SIG0(3))/3.0D0 
  66 :        DO 70 I = 1,NSTRS                                                
  67 :          IF (I.LE.3) THEN                 
  68 :            SMOINX(I)  =  SIG0(I) - TRACE - SIGX1(I) - SIGX2(I)                
  69 :          ELSE
  70 :            SMOINX(I)  =  SIG0(I) - SIGX1(I) - SIGX2(I)                          
  71 :          ENDIF
  72 :   70   CONTINUE                                                                 
  73 :        J2SMX  =  PROCON (SMOINX,SMOINX,NSTRS)                                 
  74 :        J2SMX  =  SQRT(1.5D0*J2SMX)                                          
  75 : C--------------------------------------------------------------------|          
  76 : C*******  CALCUL OF SIGV/K                                           |          
  77 : C -------------------------------------------------------------------I          
  78 :        RR=XMAT(17)-((XMAT(17)-XMAT(7))*DEXP(-XMAT(18)*VAR(3*NSTRS+1)))
  79 :        FSURK  =  (J2SMX-RR) / XMAT(8)                         
  80 : C--------------------------------------------------------------------|          
  81 : C*******  CALCULATION OF EFFECTIVE INELASTIC STRAIN INCREMENT (P)    |          
  82 : C -------------------------------------------------------------------I          
  83 :        IF (FSURK.GT.0.0D0) THEN                                          
  84 :          FSKPN =  XPUISS(FSURK,XMAT(6)  ,AMAX)                                
  85 :          FSKPN1 =  FSURK * FSKPN                            
  86 :        ELSE                                                                     
  87 :          FSKPN =  0.0D0                                                    
  88 :          FSKPN1 =  0.0D0                                                    
  89 :        ENDIF                                                          
  90 : C
  91 :        AFSKPN1  =  XMAT(5) * FSKPN1                                             
  92 :        EAFSKPN1 = 1.0D20                                                    
  93 :        IF(DABS(AFSKPN1).LT.40.0D0) EAFSKPN1 =  DEXP(AFSKPN1)                
  94 :        DP  =  FSKPN * EAFSKPN1                                              
  95 :        VARPT(3*NSTRS+1)  =  DP                                         
  96 : C---------------------------------------------------------------------|         
  97 : C*******  CALCULATION OF INELASTIC STRAIN INCREMENTS  (EPSVPT)        |         
  98 : C---------------------------------------------------------------------I         
  99 :        DO 71 I = 1,NSTRS,1                                              
 100 :          IF (DP.EQ.0.0) THEN                                           
 101 :            DEPS0(I)  =  0.0D0                                              
 102 :            VARPT(2*NSTRS+I) =  0.0D0                                        
 103 :          ELSE                                                    
 104 :            XXX(I)      =  1.5D0 * SMOINX(I) / J2SMX                          
 105 :            DEPS0(I)  =  XXX(I) * DP                                          
 106 :            VARPT(2*NSTRS+I) = DEPS0(I)                                     
 107 :          ENDIF                                                          
 108 :  71    CONTINUE                                                                 
 109 : C                                                                               
 110 :        P = VAR(3*NSTRS+1)                                                 
 111 : C----------------------------------------------------------------|              
 112 : C ******* CALCULATION OF PI(P)                                   |              
 113 : C----------------------------------------------------------------I              
 114 :        BP  = XMAT(14) * P                                                
 115 :        EMBP  = DEXP(-BP)                                                 
 116 :        PPRIMDP = (XMAT(11) + (1.0D0-XMAT(11)) * EMBP) * DP              
 117 : C----------------------------------------------------------------|              
 118 : C*******  CALCULATION OF XII                                     |              
 119 : C----------------------------------------------------------------I              
 120 :        X1II  =   SQRT(1.5D0*PROCON(SIGX1,SIGX1,NSTRS))                      
 121 :        X1IISM  =  0.0D0
 122 :        IF(XMAT(15).NE.0.0D0) X1IISM  =   X1II/XMAT(15)                       
 123 : C
 124 :        COX1  =   0.0D0                                                  
 125 :        IF((X1II.GT.0.0D0).AND.(X1IISM.GT.0.0D0))
 126 :      . COX1  =   (X1IISM**XMAT(16)) / X1II               
 127 : C ----------------------------------------------------------------|             
 128 : C*******  CALCULATION OF DX1 AND DX2                              |             
 129 : C-----------------------------------------------------------------I             
 130 :        DO 74 I = 1,NSTRS                                                
 131 :          T1   =   DEPS0(I)                        
 132 :          T2   =   XMAT(10) * PPRIMDP *  VAR(I)                      
 133 :          T3   =   1.5D0 * COX1 * SIGX1(I)                                   
 134 :          VARPT(I) =  T1 - T2 - T3                                          
 135 :          T2   =   XMAT(13) * PPRIMDP *  VAR(NSTRS+I)                           
 136 :          VARPT(NSTRS+I) =  T1 - T2                                             
 137 :   74   CONTINUE
 138 : C                                                                               
 139 :        IF (MFR.EQ.5) THEN
 140 :          EPSVPT(1)=DEPS0(1)
 141 :          EPSVPT(2)=DEPS0(2)
 142 :          EPSVPT(3)=DEPS0(4)
 143 :          EPSVPT(4)=DEPS0(5)
 144 :          EPSVPT(5)=DEPS0(6)
 145 :        ELSE
 146 :          DO 11 I = 1,NSTRS
 147 :           EPSVPT(I) = DEPS0(I)
 148 :   11     CONTINUE
 149 :        ENDIF 
 150 : c  
 151 :        RETURN                                                                   
 152 :        END                                                                      
 153 :  
 154 :  
 155 :  
 156 :  

© Cast3M 2003 - All rights reserved.
Disclaimer