Download plasec.eso

Back to the list

   1 : C PLASEC    SOURCE    CHAT      05/01/13    02:15:02     5004           
   2 : C PLASEC     SOURCE    INSL       24/10/96    
   3 :       SUBROUTINE PLASEC(SIG0,VAR0,DEPST,SIGF,VARF,XMAT,NSTRSS,NMATT,
   4 :      1 TRAC,LTRA,MFR,NVARI,CMATE,XCAR,DDHOOK,NCARR,IFOUR)
   5 : C----------------------------------------------------------------------
   6 : C             PLASTICITE MODELE ISOTROPE
   7 : C
   8 : C ENTREES
   9 : C     SIG0(NSTRS)   = CONTRAINTES INITIALES
  10 : C     NSTRS         = NOMBRE DE CONTRAINTES
  11 : C     DSIGT(NSTRS)  = INCREMENT DE CONTRAINTES TOTALES
  12 : C     VAR0(NVARI)   =  VARIABLES INTERNES DEBUT
  13 : C     VAR0(  1  )   = EPSP(1)
  14 : C     VAR0(  2  )   = EPSP(2)
  15 : C     VAR0(  3  )   = EPSP(3)
  16 : C     XMAT(NMATT)  =  COMPOSANTES DE MATERIAU
  17 : C     IVAL(NMATT)  =  INDICE DES COMPOSANTES DE MATERIAU
  18 : C     NMATT        = NOMBRE DE COMPOSANTES DE MATERIAU
  19 : C  SORTIES
  20 : C     SIGF(NSTRS)   = CONTRAINTES FINALES
  21 : C     VARF(NVARI)   = VARIABLES INTERNES FINALES
  22 : C-----------------------------------------------------------------------
  23 : C
  24 :       IMPLICIT INTEGER(I-N)
  25 :       IMPLICIT REAL*8(A-H,O-Z)
  26 : *
  27 :       CHARACTER*8 CMATE
  28 :       DIMENSION SIG0(NSTRSS),VAR0(NVARI),SIGF(NSTRSS),VARF(NVARI)
  29 :       DIMENSION TRAC(LTRA),XMAT(NMATT),XCAR(NCARR),DEPST(NSTRSS)
  30 :       DIMENSION EPSLO(3),EPSL1(3),DEPSL(3),S1(3),SIGR(3),YOU(2)
  31 :       DIMENSION DDHOOK(NSTRSS,NSTRSS),DDHOMU(6,6),DSIGT(6),SIGL0(3)
  32 :       IRTD=1
  33 : C-----------------------------------------------------------------------
  34 :       IF(CMATE.EQ.'ORTHOTRO'.OR.CMATE.EQ.'UNIDIREC') GOTO 4
  35 :       GOTO 46
  36 : C
  37 :    4  CONTINUE
  38 : C
  39 : C    PLASTICITE (DECOUPLE) ORTHOTROPE OU UNIDIRECTIONNELLE 
  40 : C
  40 :       CALL ZERO(EPSLO,3,1)
  40 :       CALL ZERO(DEPSL,3,1)
  40 :       CALL ZERO(EPSL1,3,1)
  40 :       CALL ZERO(S1,3,1)
  40 :       CALL ZERO(SIGR,3,1)
  40 :       CALL ZERO(SIGL0,3,1)
  40 :       CALL ZERO(YOU,2,1)
  41 : *
  42 :       NSTRS=3
  43 :       EPAIST=1.D0
  44 :       IF(MFR.EQ.3.AND.NSTRSS.GT.3) THEN
  45 :         EPAIST=XCAR(1)
  46 :       ENDIF
  47 : *
  48 :       DO I=1,NSTRS
  49 :          SIGR(I)=SIG0(I)/EPAIST
  50 :       END DO
  51 : C
  52 : C  DEFINITION DES AXES ORTHO./AXES LOCAUX
  53 : C
  54 :       IF(CMATE.EQ.'ORTHOTRO') THEN
  55 :         YOU(1)  =XMAT(1)
  56 :         YOU(2)  =XMAT(2)
  57 :         A       =XMAT(5)
  58 :         B       =XMAT(6)
  59 :       ELSE 
  60 :         YOU(1)  =XMAT(1)
  61 :         A       =XMAT(2)
  62 :         B       =XMAT(3)
  63 :       ENDIF
  64 : C--------------------------------------------------------------------
  65 : C    ROTATION DES CONTRAINTES ET DES DEFORMATIONS 
  66 : C          DANS LE REPERE D'ORTHOTROPIE
  67 : C
  68 :       PI=4.D0*DATAN(1.D0)
  69 :       PHI=(DATAN(B/A)*180.D0/PI)-90.D0
  69 :       CALL DDRF(DEPST,PHI,DEPSL)
  69 :       CALL CDRF(SIGR,PHI,SIGL0)
  70 : C
  71 :       IF(CMATE.EQ.'UNIDIREC'.OR.CMATE.EQ.'ORTHOTRO') THEN
  72 :         EPSL1(1)=VAR0(1)+SIGL0(1)/YOU(1)+DEPSL(1)
  72 :         CALL COUPLA(EPSL1(1),TRAC,LTRA,YOU(1),S1(1),PENTE)
  73 :         VARF(1)=EPSL1(1)-S1(1)/YOU(1)
  74 :       ENDIF
  75 : *
  76 :       IF(CMATE.EQ.'ORTHOTRO'.AND.YOU(2).NE.0.D0) THEN
  77 :         EPSL1(2)=VAR0(2)+SIGL0(2)/YOU(2)+DEPSL(2)
  77 :         CALL COUPLA(EPSL1(2),TRAC,LTRA,YOU(2),S1(2),PENTE)
  78 :         VARF(2)=EPSL1(2)-S1(2)/YOU(2)
  79 :       ENDIF
  80 : *
  80 :       CALL CDRG(S1,PHI,SIGR)
  81 :       DO I=1,NSTRS
  82 :          SIGF(I)=SIGR(I)*EPAIST
  83 :       END DO
  84 :       IF(NSTRSS.EQ.4) THEN
  85 :         SIGF(3)=0.D0
  86 :         SIGF(4)=SIGR(3)*EPAIST
  87 :       ENDIF
  88 : *
  89 :       IF(NSTRSS.EQ.6) THEN
  89 :         CALL ZERO(DDHOMU,6,6)
  89 :         CALL ZERO(DDHOOK,NSTRSS,NSTRSS)
  89 :         CALL ZERO(DSIGT,6,1)
  90 : *
  90 :         CALL DOHCOM(XMAT,NMATT,CMATE,IFOUR,NSTRSS,DDHOOK,IRTD)                
  90 :         CALL HOOKMU(EPAIST,0.D0,NSTRSS,DDHOOK,DDHOMU)
  90 :         CALL BST(DDHOMU,DEPST,NSTRSS,NSTRSS,DSIGT)
  91 : *
  92 :         DO I = 4,NSTRSS
  93 :            SIGF(I)=SIG0(I)+DSIGT(I)
  94 :         END DO
  95 :       ENDIF
  96 :       GOTO 510
  97 : C-----------------------------------------------------------------------
  98 : C
  99 : C    PLASTICITE ISOTROPE UNIAXIALE
 100 : C
 101 :   46  CONTINUE
 102 :       SECT=XCAR(1)
 103 :       YOU1=XMAT(1)
 104 : C
 105 :       EPSX=VAR0(1)+SIG0(1)/YOU1/SECT+DEPST(1)
 105 :       CALL COUPLA(EPSX,TRAC,LTRA,YOU1,SIGRX,PENTE)
 106 :       VARF(1)=EPSX-SIGRX/YOU1
 107 :       SIGF(1)=SIGRX*SECT
 108 : C
 109 :  510  CONTINUE
 110 : C-----------------------------------------------------------------------
 111 :  1991 FORMAT(18(1X,E10.3))
 112 :  2007 FORMAT(7(6(1X,E12.5),/))
 113 :  2008 FORMAT(7(6(1X,I12),/))
 114 :  1000 FORMAT(5X,' *** ATTENTION ELEMENT NON COMPATIBLE AVEC CE MODELE'
 115 :      *,/,10X,'ROUTINE = PLASEC  :  ELEMENT = ',I3)
 116 :       RETURN
 117 :       END
 118 : 
 119 : 
 120 :  
 121 :  

© Cast3M 2003 - All rights reserved.
Disclaimer