C J2 SOURCE CHAT 12/08/06 21:15:27 7479 SUBROUTINE J2(A,B) C====================================================================== C Routine permettant de calculer le deuxième invariant du déviateur C de A C OBJET C ----- C CALCUL DE B = J2(A) C C ENTREES C ------- C A(3,3) = MATRICE SYMETRIQUE C C SORTIES C ------- C B = J2(A) C C=============================================================== IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) INTEGER NCAS REAL*8 A(3,3),TRAV(3,3),UNIT(3,3) DO I=1,3 DO J=1,3 IF (I.EQ.J) THEN UNIT(I,J) = 1.0D0 ELSE UNIT(I,J) = 0.0D0 ENDIF ENDDO ENDDO B = 0.0D0 TRA_SE = A(1,1) + A(2,2) + A(3,3) DO I=1,3 DO J=1,3 TRAV(I,J) = 0.0D0 TRAV(I,J) = A(I,J)-(1.0D0/3.0D0)*TRA_SE*UNIT(I,J) ENDDO ENDDO CALL DBLECONT(TRAV,TRAV,B) B = (3.0D0/2.0D0)*B B = DSQRT(B) RETURN END