jfdddd
C JFDDDD SOURCE CHAT 05/01/13 00:49:27 5004 1 ICARA,KERRE,MFR,IFOURB,DT) C C calcule la deformation initiale a partir de la contrainte initiale C puis appelle la subroutine CLBCOM C C C variables en entree C C WRK0,KRK1 pointeurs sur des segments de travail C C NSTRS nombre de composantes dans les vecteurs des contraintes C et les vecteurs des deformations C C NVARI nombre de variables internes (doit etre egal a 4) C C NMATT nombre de constantes du materiau C C ISTEP flag utilise pour separer les etapes dans un calcul non local C ISTEP=0 -----> calcul local C ISTEP=1 -----> calcul non local etape 1 on calcule les seuils C ISTEP=2 -----> calcul non local etape 2 on continue le calcul C a partir des seuils moyennes C C C variables en sortie C C VARF variables internes finales dans WRK0 C C SIGF contraintes finales dans WRK0 IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC PPARAM -INC CCOPTIO SEGMENT WRK0 REAL*8 XMAT(NMATT) ENDSEGMENT * SEGMENT WRK1 REAL*8 DDHOOK(NSTRS,NSTRS),SIG0(NSTRS),DEPST(NSTRS) REAL*8 SIGF(NSTRS),VAR0(NVARI),VARF(NVARI) REAL*8 DEFP(NSTRS),XCAR(ICARA) ENDSEGMENT SEGMENT WRKK2 REAL*8 EPSILI(NSTRSV) END SEGMENT * SEGMENT WRK5 REAL*8 EPIN0(NSTRS),EPINF(NSTRS),EPST0(NSTRS) ENDSEGMENT SEGMENT WRK6 REAL*8 SIG0S(NSTRS) END SEGMENT * CHARACTER*8 CMATE REAL*8 DSIGT(6) PARAMETER (UN=1.D0) KERRE=0 C IF (MFR .EQ. 9) THEN NSTRSV=4 IFOUR2=-2 ELSE IF (MFR .EQ. 1) THEN NSTRSV=NSTRS IF (IFOURB.NE. -2)THEN KERRE=57 RETURN END IF IFOUR2=IFOURB ELSE KERRE=57 RETURN END IF C C calcul de la matrice elastique C CMATE = 'ISOTROPE' KCAS=2 IF ( IRTD .EQ. 1) THEN C C calcul de l'increment de contrainte C C C C ON CALCULE LES CONTRAINTES VRAIES DANS LE CAS DES COQUES C IF (MFR .EQ. 9) THEN EPAI=XCAR(1) SEGINI WRK6 DO ISTRS=1,NSTRS SIG0S(ISTRS)=SIG0(ISTRS) END DO DO ISTRS=1,2 SIG0(ISTRS)=SIG0(ISTRS)/EPAI END DO SIG0(3)=0.D0 SIG0(4)=SIG0S(3)/EPAI END IF C C inversion de la matrice C PREC=1.D-08 SEGINI WRKK2 IF (IRTD.EQ.0)THEN C C calcul des deformations du materiau elastique lineaire C C C modification pour tenir compte de l'endommagement C DO 100 ISTRS=1,NSTRSV EPSILI(ISTRS)=EPSILI(ISTRS)+EPIN0(ISTRS) 100 CONTINUE C C appel a la routine CLBCOM C 1 ISTEP,ICARA,DT,KERRE) C C ON RECALCULE LES CONTRAINTES EFFECTIVES POUR LES COQUES C IF (MFR .EQ. 9) THEN DO ISTRS=1,NSTRS SIG0(ISTRS)=SIG0S(ISTRS) END DO DO ISTRS=1,2 SIGF (ISTRS)=SIGF(ISTRS)*EPAI END DO SIGF (3)=SIGF(4)*EPAI DO ISTRS=4,NSTRS SIGF(ISTRS)=SIG0(ISTRS)+DSIGT(ISTRS) END DO SEGSUP WRK6 END IF ELSE print*,'erreur dans invalm' KERRE=56 END IF ELSE print*,'erreur dans dohmas' KERRE=56 END IF SEGSUP WRKK2 RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales