Download incr11.eso

Back to the list

   1 : C INCR11    SOURCE    PV        11/03/07    21:16:53     6885           
   2 :        SUBROUTINE  INCR11(DT,SIG,EPSV,VAR,EPSVPT,VARPT,XMAT,NSTRS0,                    
   3 :      &                    NVARI,MFR)
   4 :       IMPLICIT INTEGER(I-N)
   5 :        IMPLICIT REAL*8(A-H,O-Z)   
   6 : -INC CCOPTIO                                               
   7 :        DIMENSION SIG(*),EPSV(*),VAR(*),XMAT(*),EPSVPT(*),VARPT(*)               
   8 :        DIMENSION SS(6),EPLU(6),EMIN(6),EPSCRP(6)                                
   9 :        DIMENSION SIG0(6),EPSV0(6),EPS0(6)      
  10 : C
  11 : C ICI : le modele est obligatoirement CERAMIQUE
  12 : C _________________________________________________________________             
  13 : C                                                                               
  14 : C  THIS ROUTINE CALCULATES INCREMENTAL STRAINS & INTERNAL VARIABLES             
  15 : C _________________________________________________________________             
  16 : C                                                                   
  17 : C STEP-1 : EXTRACT EPLUS , EMINUS & EPSCRP                                      
  18 : C ----------------------------------------                             
  19 :        IF (MFR.EQ.5) THEN 
  20 :          NSTRS=6   
  21 :          SIG0(1)=SIG(1) 
  22 :          SIG0(2)=SIG(2) 
  23 :          SIG0(3)=0.D0  
  24 :          SIG0(4)=SIG(3) 
  25 :          SIG0(5)=SIG(4) 
  26 :          SIG0(6)=SIG(5)  
  27 :          EPSV0(1)=EPSV(1)
  28 :          EPSV0(2)=EPSV(2)
  29 :          EPSV0(3)=0.D0
  30 :          EPSV0(4)=EPSV(3)
  31 :          EPSV0(5)=EPSV(4)
  32 :          EPSV0(6)=EPSV(5) 
  33 :        ELSE  
  34 :          NSTRS=NSTRS0  
  35 :          DO 10 I=1,NSTRS  
  36 :            SIG0(I)=SIG(I) 
  37 :            EPSV0(I)=EPSV(I) 
  38 :   10     CONTINUE  
  39 :        ENDIF  
  40 : C        
  41 : CCC        IF ((IFOUR.EQ.2.AND.MFR.EQ.3).OR.IFOUR.EQ.-2) THEN 
  42 : CCC        IBID = 11
  43 : CCC        ELSE IF(IFOUR.EQ.-3.OR.IFOUR.EQ.-1
  44 : CCC     1 .OR.IFOUR.EQ.0) THEN 
  45 : CCC        IBID = 14
  46 : CCC        ELSE IF(IFOUR.EQ.2.AND.MFR.EQ.1) THEN 
  47 : CCC        IBID = 19
  48 : CCC        ENDIF
  49 : CCC Eloi : correction de IBID
  50 : CCC        de plus : ici on a obligatoirement MFR different de 3
  51 :        IBID=NVARI-(2*NSTRS)-5
  52 : C
  53 :        DO 20 I=1,NSTRS                                         
  54 :          EPLU(I)=VAR(I+IBID)   
  55 :          EMIN(I)=VAR(NSTRS+I+IBID)                                                            
  56 :   20   CONTINUE                                        
  57 :        EEFF = VAR(2*NSTRS+1+IBID)                                                   
  58 :        LL = nint(VAR(2*NSTRS+3+IBID))
  59 : C                                                                              
  60 :        DO 30 I=1,NSTRS                                                        
  61 :          EPS0(I)=0.0D0                                                          
  62 :          EPSCRP(I)=EPSV0(I)  
  63 :   30   CONTINUE                                                           
  64 : C                                                                                                       
  65 :        DO 40 I=1,NVARI                                                          
  66 :          VARPT(I)=0.D0                                                           
  67 :   40   CONTINUE  
  68 : C_____________________________________________________________________          
  69 : C                                                                               
  70 : C STEP-2 : COMPUTATION OF SEQUV                                                 
  71 : C ------------------------------                                                
  72 :        SIGM=0.333333333333333D0*(SIG0(1)+SIG0(2)+SIG0(3))                      
  73 :        DO 50 I=1,NSTRS                                                          
  74 :          A=0.D0                                                          
  75 :          IF(I.LE.3) A=1.D0                                                       
  76 :          SS(I)=SIG0(I)-A*SIGM                                                    
  77 :   50   CONTINUE                                                                 
  78 :        SEQUV = PROCON(SS,SS,NSTRS)                                               
  79 :        SEQUV = SQRT(1.5D0*SEQUV)               
  80 : C_____________________________________________________________________          
  81 : C                                                                               
  82 : C STEP-3 : UPDATING INTERNAL VARIABLES                                          
  83 : C ------------------------------------                                          
  83 :        CALL UPVAR1(SIG0,EPSCRP,EPLU,EMIN,EEFF,EPSH,LL,NSTRS)                   
  84 :        DO 60 I=1,NSTRS                                                          
  85 :          VARPT(      I+IBID)=EPLU(I)                                                   
  86 :          VARPT(NSTRS+I+IBID)=EMIN(I)                                                   
  87 :   60   CONTINUE                                                                 
  88 :        VARPT(2*NSTRS+1+IBID)=EEFF                                                    
  89 :        VARPT(2*NSTRS+2+IBID)=EPSH                                                    
  90 :        VARPT(2*NSTRS+3+IBID)=LL       
  91 : C_____________________________________________________________________          
  92 : C                                                                               
  93 : C STEP-4 : COMPUTATION OF INELASTIC STRAIN RATE                                 
  94 : C ---------------------------------------------    
  95 :        IF(SEQUV.NE.0.D0) THEN                                             
  96 :          IF(MFR.EQ.1.AND.IFOMOD.EQ.2) THEN 
  97 :            IBIDI = 15
  98 :          ELSE
  99 :            IBIDI = 10
 100 :          ENDIF 
 101 :          IBID1 = IBIDI + 1 
 102 :          IBID2 = IBIDI + 2 
 103 :          IBID3 = IBIDI + 3 
 103 :          CALL NORTON(SEQUV,EPSH,DT,XMAT(IBID1),XMAT(IBID2),XMAT(IBID3),
 104 :      &               DECT)
 105 :          VARPT(1)=DECT
 106 :          VARPT(NVARI) = DECT 
 107 :          CONS=1.5D0*DECT/SEQUV                                                    
 108 :          DO 70 I=1,NSTRS                                                          
 109 :            EPS0(I)=CONS*SS(I)                                             
 110 :   70     CONTINUE
 111 : C                                                                               
 112 : C_______________________________________________________________________        
 113 :        ENDIF  
 114 : C  
 115 :        IF (MFR.EQ.5) THEN  
 116 :          EPSVPT(1)=EPS0(1)  
 117 :          EPSVPT(2)=EPS0(2) 
 118 :          EPSVPT(3)=EPS0(4) 
 119 :          EPSVPT(4)=EPS0(5) 
 120 :          EPSVPT(5)=EPS0(6) 
 121 :        ELSE 
 122 :          DO 80 I=1,NSTRS 
 123 :            EPSVPT(I)=EPS0(I) 
 124 :   80     CONTINUE 
 125 :        ENDIF   
 126 : C      
 127 :        RETURN                                      
 128 :        END                                                                      
 129 :  
 130 :  
 131 :  

© Cast3M 2003 - All rights reserved.
Disclaimer