Download elast2.eso

Back to the list

   1 : C ELAST2    SOURCE    CHAT      05/01/12    23:29:31     5004           
   2 :       SUBROUTINE ELAST2(DDHOOK,LHOOK,VALMAT,VAR,INAT,IB,IGAU)  
   3 : * 
   4 : *   
   5 : ************************************************ 
   6 : *  Calcul de la matrice de Hook endommagee 
   7 : ************************************************  
   8 : *  
   9 : * ENTREES : 
  10 : * ---------  
  11 : *  DDHOOK : matrice de Hook non endommagee 
  12 : *  LHOOK  : longueur de la matrice de Hook  
  13 : *  VALMAT : données du matériau 
  14 : *  VAR    : variables internes 
  15 : *  INAT   : numero du modele de comportement 
  16 : * 
  17 : * SORTIES : 
  18 : * --------- 
  19 : *  DDHOOK : matrice de Hook endommagee 
  20 : *  
  21 : ************************************************* 
  22 : *
  23 :       IMPLICIT INTEGER(I-N)
  24 :       IMPLICIT REAL*8(A-H,O-Z)  
  25 : * 
  26 :       DIMENSION DDHOOK(LHOOK,*) 
  27 :       DIMENSION VAR(*),VALMAT(*)  
  28 : *  
  29 : * BCN
  30 : *---> Models: Mazars and Modifed Von Mises
  31 : *  
  32 :       IF (INAT.EQ.30.OR.INAT.EQ.118) THEN
  33 :         FT=VAR(2)
  34 :         END0=1.D0-FT  
  35 :         IF (END0.GE.1.D0) END0=1.D0   
  36 :       ENDIF 
  37 : * BCN
  38 : *  
  39 : *---> Cas du modèle de Rousselier 
  40 : * 
  41 :       IF (INAT.EQ.62) THEN 
  42 : *      if(IB.EQ.1.AND.IGAU.EQ.1) then
  43 : *      write(6,*) var(3), valmat(3),valmat(4)
  44 : *      endif
  45 :       
  46 :         RHOT=VAR(3) 
  47 :         IF (RHOT.LT.1.D-15) THEN
  48 :            END0=1.D0
  49 :         ELSE  
  50 :            END0=RHOT
  51 :          F0=VALMAT(3) 
  52 :          FC0=VALMAT(4)  
  53 :          RMAX0=(1.D0-FC0)/(1.D0-F0)  
  54 :          IF ((RMAX0.GT.1.D0).OR.(RMAX0.LE.1.D-5)) THEN 
  55 :            RMAX0=1.D-5 
  56 :          ENDIF  
  57 :          IF (RHOT.LE.RMAX0) END0=1.d-15 
  58 :         ENDIF       
  59 :       ENDIF  
  60 : *  
  61 : *---> Cas du modèle de Gurson Tvergaard 
  62 : *  
  63 :       IF (INAT.EQ.64) THEN
  64 :         FT=VAR(2)
  65 :         FF0=VALMAT(3)  
  66 :         END0=1.D0-FT  
  67 :         IF (END0.GE.1.D0) END0=1.D0   
  68 : *        IF (FT.GE.FF0) END0=MIN(1.D-2,1.D0-FF0)     
  69 :       ENDIF 
  70 : *
  71 : *---> Matrice endommagée 
  72 : *  
  73 :       DO 1 I=1,LHOOK 
  74 :         DO 2 J=1,LHOOK 
  75 :           DDHOOK(I,J)=DDHOOK(I,J)*END0  
  76 :  2      CONTINUE 
  77 :  1    CONTINUE  
  78 : * 
  79 :       RETURN 
  80 :       END  
  81 : *
  82 : *
  83 :  
  84 :  
  85 :  
  86 :  
  87 :  

© Cast3M 2003 - All rights reserved.
Disclaimer