Download advflo.eso

Back to the list

   1 : C ADVFLO    SOURCE    CHAT      05/01/12    21:19:00     5004           
   2 : C ADVAN1    SOURCE    AM        97/12/23    21:16:03     3011           
   3 :        SUBROUTINE ADVFLO(TAU,SIG,EPSV,VAR,SIG1,EPSV1,VAR1,DSPT,                 
   4 :      &            EPSVPT,VARPT,XMAT,NSTRS,NVARI,IFOUR,INPLAS,NCOMAT
   5 :      &            ,MFR)            
   6 :       IMPLICIT INTEGER(I-N)
   7 :        IMPLICIT REAL*8(A-H,O-Z)                                                 
   8 :        DIMENSION SIG(*),EPSV(*),VAR(*),SIG1(*),EPSV1(*),VAR1(*)                 
   9 :        DIMENSION DSPT(*),EPSVPT(*),VARPT(*),XMAT(*)                             
  10 :        DATA UN/1.D0/
  11 : C ____________________________________________________________________          
  12 : C                                                                               
  13 : C    THIS ROUTINE UPDATES THE STRAINS ,STRESSES & INTERNAL VARIABLES            
  14 : C ____________________________________________________________________          
  15 : C                                                                               
  16 : C  STEP-1 : UPDATING STRAINS                                                    
  17 : C ----------------------------                                                  
  18 :        YOU  =XMAT(1)                                                            
  19 :        XNU  =XMAT(2)  
  20 :        DO 10 I=1,NSTRS                                                          
  21 :        EPSV1(I)=EPSV(I)+TAU*EPSVPT(I)    
  22 : C
  23 :   10   CONTINUE 
  24 :                                                           
  25 : C                                                                               
  26 : C  STEP-2 : UPDATING STESSES                                                    
  27 : C ----------------------------                                                  
  28 :        IF(IFOUR.EQ.-2) THEN                                                     
  29 :        SIG(3)=0.0D0                                                             
  30 :        X2MU=YOU/(UN+XNU)
  31 :        XCO = X2MU/(UN-XNU)
  32 :        SIG1(1)=SIG(1)+TAU*(DSPT(1)-XCO*(EPSVPT(1)+XNU*EPSVPT(2)))               
  33 :        SIG1(2)=SIG(2)+TAU*(DSPT(2)-XCO*(EPSVPT(2)+XNU*EPSVPT(1)))               
  34 :        SIG1(4)=SIG(4)+TAU*(DSPT(4)-X2MU*EPSVPT(4))                              
  35 :        SIG1(3)=0.0D0                                                            
  36 :        ELSEIF (IFOUR.EQ.2.OR.IFOUR.EQ.0.OR.IFOUR.EQ.1.OR.
  37 :      &         IFOUR.EQ.-1.OR.IFOUR.EQ.-3) THEN
  38 :        X2MU = YOU/(UN+XNU)
  39 :        ALMB = X2MU*XNU/(UN-2*XNU)
  40 :        IF (MFR.EQ.5) THEN 
  41 :        X2MU=YOU/(UN+XNU)
  42 :        XCO = X2MU/(UN-XNU)
  43 :        SIG1(1)=SIG(1)+TAU*(DSPT(1)-XCO*(EPSVPT(1)+XNU*EPSVPT(2)))
  44 :        SIG1(2)=SIG(2)+TAU*(DSPT(2)-XCO*(EPSVPT(2)+XNU*EPSVPT(1))) 
  45 :        SIG1(3)=SIG(3)+TAU*(DSPT(3)-X2MU*EPSVPT(3)) 
  46 :        SIG1(4)=SIG(4)+TAU*(DSPT(4)-X2MU*EPSVPT(4)) 
  47 :        SIG1(5)=SIG(5)+TAU*(DSPT(5)-X2MU*EPSVPT(5)) 
  48 :        ELSE 
  49 :         TRACE=EPSVPT(1)+EPSVPT(2)+EPSVPT(3)                                
  50 :         DO 20 I=1,NSTRS,1                                                       
  51 :         A = 0.0                                                                 
  52 :         IF (I.LE.3) A=UN
  53 :         SIG1(I) = SIG(I) + 
  54 :      &  TAU*(DSPT(I)-ALMB*A*TRACE-X2MU*EPSVPT(I))             
  55 :    20   CONTINUE                                                                
  56 :        ENDIF 
  57 : C= Modes de calcul 1D contraintes planes suivant z (DYCZ et GYCZ)
  58 :        ELSE IF (IFOUR.EQ.4.OR.IFOUR.EQ.8) THEN
  59 :          SIG(3) = 0.D0
  60 :          XCO = YOU/(UN-XNU*XNU)
  61 :          SIG1(1) = SIG(1) + TAU*(DSPT(1)-XCO*(EPSVPT(1)+XNU*EPSVPT(2)))
  62 :          SIG1(2) = SIG(2) + TAU*(DSPT(2)-XCO*(EPSVPT(2)+XNU*EPSVPT(1)))
  63 :          SIG1(3) = 0.D0
  64 : C= Modes de calcul 1D contraintes planes suivant y (CYDZ et CYGZ) et
  65 : C=                 1D axisymetrique contraintes axiales nulles (AXCZ)
  66 :        ELSE IF (IFOUR.EQ.5.OR.IFOUR.EQ.10.OR.IFOUR.EQ.13) THEN
  67 :          SIG(2) = 0.D0
  68 :          XCO = YOU/(UN-XNU*XNU)
  69 :          SIG1(1) = SIG(1) + TAU*(DSPT(1)-XCO*(EPSVPT(1)+XNU*EPSVPT(3)))
  70 :          SIG1(2) = 0.D0
  71 :          SIG1(3) = SIG(3) + TAU*(DSPT(3)-XCO*(EPSVPT(3)+XNU*EPSVPT(1)))
  72 : C= Modes de calcul 1D contraintes planes suivant y et z (CYCZ)
  73 :        ELSE IF (IFOUR.EQ.6) THEN
  74 :          SIG(2) = 0.D0
  75 :          SIG(3) = 0.D0
  76 :          SIG1(1) = SIG(1) + TAU*(DSPT(1)-YOU*EPSVPT(1))
  77 :          SIG1(2) = 0.D0
  78 :          SIG1(3) = 0.D0
  79 : C= Autres modes de calcul 1D deformations planes (DYDZ GYDZ DYGZ GYGZ)
  80 : C=                        1D axisymetrique (AXDZ AXGZ) et 1D spherique
  81 :        ELSE IF (IFOUR.EQ. 3.OR.IFOUR.EQ. 7.OR.IFOUR.EQ. 9.OR.IFOUR.EQ.11
  82 :      .      .OR.IFOUR.EQ.12.OR.IFOUR.EQ.14.OR.IFOUR.EQ.15) THEN
  83 :          X2MU = YOU/(UN+XNU)
  84 :          TRACE = EPSVPT(1)+EPSVPT(2)+EPSVPT(3)
  85 :          XCO = X2MU*XNU*TRACE/(UN-XNU)
  86 :          SIG1(1) = SIG(1) + TAU*(DSPT(1)-X2MU*EPSVPT(1)-XCO)
  87 :          SIG1(2) = SIG(2) + TAU*(DSPT(2)-X2MU*EPSVPT(2)-XCO)
  88 :          SIG1(3) = SIG(3) + TAU*(DSPT(3)-X2MU*EPSVPT(3)-XCO)
  89 :        ENDIF                                                                    
  90 : C                                                                               
  91 : C  STEP-3 : UPDATING THE INTERNAL VARIABLES                                     
  92 : C------------------------------------------                                     
  93 :        DO 50 I=1,NVARI                                                      
  94 :        VAR1(I)=VAR(I)+TAU*VARPT(I)                                              
  95 :    50  CONTINUE
  96 : 
  97 : C                                                                               
  98 : C _____________________________________________________________________         
  99 :        RETURN                                                                   
 100 :        END                                                                      
 101 :  
 102 :  
 103 :  
 104 :  
 105 :  
 106 :  
 107 :  
 108 :  
 109 :  
 110 : 
 111 : 
 112 :  
 113 :  

© Cast3M 2003 - All rights reserved.
Disclaimer