adva22
C ADVA22 SOURCE CHAT 05/01/12 21:18:38 5004 & VARPT,XMAT,NSTRS,NVARI) C ----------------------------------------------------------------- IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC PPARAM -INC CCOPTIO DIMENSION SIG(*),EPSV(*),VAR(*),SIG1(*),EPSV1(*),VAR1(*) DIMENSION SIGPT(*),EPSVPT(*),VARPT(*),XMAT(*) C C ICI : le modele est obligatoirement CERAMIQUE C---------------------------------------------------------------- C THIS ROUTINE CALCULATES THE LATEST VALUES OF SIG,EPSV,VAR, C FROM THE INITIAL VALUES OF SIG,EPSV,VAR AND DERIVATIVES : C SIGPT,EPSVPT,VARPT C---------------------------------------------------------------- C T3 = XMAT(1)/(1.D0+XMAT(2)) NS = NSTRS/2 C C________________________________________________________________ C STRAIN COMPONENTS C________________________________________________________________ DO 10 I =1,NSTRS EPSV1(I) = EPSV(I) + TAU*EPSVPT(I) 10 CONTINUE C C________________________________________________________________ C STRESS COMPONENTS C________________________________________________________________ IF(NS.EQ.2) THEN IF(IFOUR.EQ.-2) THEN SIG1(2)=0.D0 SIG1(4)=0.D0 ENDIF ELSE SIG1(3) = SIG(3) + TAU*(SIGPT(3)- T3*EPSVPT(3)) SIG1(6) = SIG(6) + TAU*(SIGPT(6)- T3*EPSVPT(6)) IF(IFOUR.EQ.-2) THEN SIG1(2)=0.D0 SIG1(5)=0.D0 ENDIF ENDIF C________________________________________________________________ C INTERNAL VARIABLES C________________________________________________________________ C La première variable interne qui était la derniere dans advan2 correspond à EPSE VAR1(1) = VAR(1)+TAU*VARPT(1) C La dernière variable interne correspond à EPSE fluage VAR1(NVARI) = VAR1(NVARI)+TAU*VARPT(NVARI) C l'avant dernière variable interne correspond à l'endommagement C on n'y touche pas ici VAR1(NVARI-1) = VAR(NVARI-1) CCC IF ((IFOUR.EQ.2.AND.MFR.EQ.3).OR.IFOUR.EQ.-2) THEN CCC IBID = 11 CCC ELSE IF(IFOUR.EQ.-3.OR.IFOUR.EQ.-1 CCC 1 .OR.IFOUR.EQ.0) THEN CCC IBID = 14 CCC ELSE IF(IFOUR.EQ.2.AND.MFR.EQ.1) THEN CCC IBID = 19 CCC ENDIF CCC Eloi : correction de IBID CCC de plus : ici on a obligatoirement MFR = 3 IBID=NVARI-(2*NSTRS)-5 C de 2 à IBID on a les variables d'ottosen qu'on ne touche pas C On ne change pas les variables de OTTOSEN DO 20 I=2,IBID VAR1(I)=VAR(I) 20 CONTINUE C de IBID + 1 à IBID + 2*NSTRS+3 DO 30 I=(IBID+1),(IBID+2*NSTRS+3) VAR1(I)=VARPT(I) 30 CONTINUE RETURN END C pour mémoire voici ce qu'il y avait dans advan2 ************************************************** C C IF((INPLAS.GE.19.AND.INPLAS.LE.23).OR.INPLAS.EQ.61) THEN C DO 30 I=1,2*NSTRS+3 C VAR1(I)=VARPT(I) C 30 CONTINUE C en fait dans IDVAR1 on a 2*NSTRS+4 = NVARI C il s'agit donc de la variable EPSE qu'on met à jour C DO 40 I=2*NSTRS+4,NVARI C VAR1(I)=VAR(I)+TAU*VARPT(I) C 40 CONTINUE ***********************************************
© Cast3M 2003 - Tous droits réservés.
Mentions légales