C HOOKP SOURCE PV 11/02/18 21:15:00 6875
C
SUBROUTINE HOOKP(VAR,VARD,NVARI,XMAT,NCOMAT,MFR,NSTRS,DINV
) C
C----------------------------------------------------------------------------
C Objet: Calcul de la variation de la matrice de Hooke endommagee inverse
C dans le cas de la viscoplasticite avec endommagement
C anisotrope(materiau 142) en regime isotherme
C----------------------------------------------------------------------------
C
C----------------------------------------------------------------------------
C Entree: NSTRS nombre de composantes des contraintes ou
C des deformations
C NVARI nombre de variables internes pilotant les
C equations du modele
C VAR(NVARI) tableau des variables internes
C VARD(NVARI) tableau des variations des variables internes
C XMAT(NCOMAT) tableau des parametres scalaires du materiau
C a une temperature T donnee
C dont XMAT(1) module d'Young et XMAT(2) coeff de Poisson
C MFR indice de la formulation mecanique(seulement massif
C pour les materiaux endommageables)
C--------------------------------------------------------------------------------
C
C--------------------------------------------------------------------------------
C Sortie: DINV(NSTRS,NSTRS) variation de l'inverse de la matrice de Hooke endommagee
C _______________________________________________________________________________
C
IMPLICIT INTEGER(I-N)
IMPLICIT REAL*8(A-H,O-Z)
DIMENSION VAR(*),VARD(*),XMAT(*),DINV(NSTRS,NSTRS)
C
C --- Termes d'endommagement ---
C
D11=VAR(2)
D22=VAR(3)
D33=VAR(4)
D12=VAR(5)
D13=VAR(6)
D23=VAR(7)
DE1 = 1.D0-D11
DE2 = 1.D0-D22
DE3 = 1.D0-D33
IF (D11.GE.1.D0) DE1 = 1.D-6
IF (D22.GE.1.D0) DE2 = 1.D-6
IF (D33.GE.1.D0) DE3 = 1.D-6
C write(6,*) DE1,DE2,DE3
C
C --- Coefficients de la matrive de Hooke inversée ---
YUNG=XMAT(1)
XNU=XMAT(2)
COEFF1=(1.D0+XNU)/YUNG
COEFF2=XNU/YUNG
COEFF3=1.D0/YUNG
C
C --- Calcul du déterminant de I - D ---
& - 2.D0*D12*D13*D23-D12*D12*(DE3)
& - D23*D23*(DE1)-D13*D13*(DE2)
det4=det2*det2
C
C --- Calcul des dérivées partielles de det par rapport aux termes du tenseur d'endommagement
detp11=D23*D23-(DE2)*(DE3)
detp22=D13*D13-(DE1)*(DE3)
detp33=D12*D12-(DE1)*(DE2)
detp12=-2.D0*(D23*D13+(DE3)*D12)
detp13=-2.D0*(D12*D23+(DE2)*D13)
detp23=-2.D0*(D12*D13+(DE1)*D23)
C
C --- Calcul des termes de la matrice de l'inverse de I - D (multipliés par det)
A11=(DE2)*(DE3)-D23*D23
A22=(DE1)*(DE3)-D13*D13
A33=(DE2)*(DE1)-D12*D12
A12=D12*(DE3)+D23*D13
A13=D13*(DE2)+D23*D12
A23=D23*(DE1)+D13*D12
C
C --- Calcul des termes de la variation de la matrice de Hooke inverse
DINV
(1,
1)=COEFF3
*(vard
(2)*(-2.
D0*detp11
*det*A11
*A11
) & +vard
(3)*(2.
D0*(D33
-1.
D0)*A11
*det2
-2.
D0*detp22
*det*A11
*A11
) & +vard
(4)*(2.
D0*(D22
-1.
D0)*A11
*det2
-2.
D0*detp33
*det*A11
*A11
) & +vard
(5)*(-2.
D0*detp12
*det*A11
*A11
) & +vard
(6)*(-2.
D0*detp13
*det*A11
*A11
) & +vard
(7)*(-4.
D0*D23
*A11
*det2
-2.
D0*detp23
*det*A11
*A11
))/det4
DINV
(1,
2)=(COEFF1
*(vard
(2)*(-2.
D0*detp11
*det*A12
*A12
) & +vard
(3)*(-2.
D0*detp22
*det*A12
*A12
) & +vard
(4)*(-2.
D0*D12
*A12
*det2
-2.
D0*detp33
*det*A12
*A12
) & +vard
(5)*(2.
D0*(DE3
)*A12
*det2
-2.
D0*detp12
*det*A12
*A12
) & +vard
(6)*(2.
D0*D23
*A12
*det2
-2.
D0*detp13
*det*A12
*A12
) & +vard
(7)*(2.
D0*D13
*A12
*det2
-2.
D0*detp23
*det*A12
*A12
)) & -COEFF2*(vard(2)*((D33-1.D0)*A11*det2
& -2.
D0*detp11
*det*A11
*A22
) & +vard
(3)*((D33
-1.
D0)*A22
*det2
-2.
D0*detp22
*det*A11
*A22
) & +vard(4)*(((D22-1.D0)*A22+(D11-1.D0)*A11)*det2
& -2.
D0*detp33
*det*A11
*A22
) & +vard
(5)*(-2.
D0*detp12
*det*A11
*A22
) & +vard
(6)*(-2.
D0*D13
*A11
*det2
-2.
D0*detp13
*det*A11
*A22
) & +vard
(7)*(-2.
D0*D23
*A22
*det2
-2.
D0*detp23
*det*A11
*A22
)))/det4
DINV
(1,
3)=(COEFF1
*(vard
(2)*(-2.
D0*detp11
*det*A13
*A13
) & +vard
(3)*(-2.
D0*D13
*A13
*det2
-2.
D0*detp22
*det*A13
*A13
) & +vard
(4)*(-2.
D0*detp33
*det*A13
*A13
) & +vard
(5)*(2.
D0*D23
*A13
*det2
-2.
D0*detp12
*det*A13
*A13
) & +vard
(6)*(2.
D0*(DE2
)*A13
*det2
-2.
D0*detp13
*det*A13
*A13
) & +vard
(7)*(2.
D0*D12
*A13
*det2
-2.
D0*detp23
*det*A13
*A13
)) & -COEFF2*(vard(2)*((D22-1.D0)*A11*det2
& -2.
D0*detp11
*det*A11
*A33
) & +vard(3)*(((D33-1.D0)*A33+(D11-1.D0)*A11)*det2
& -2.
D0*detp22
*det*A11
*A33
) & +vard
(4)*((D22
-1.
D0)*A33
*det2
-2.
D0*detp33
*det*A11
*A33
) & +vard
(5)*(-2.
D0*D12
*A11
*det2
-2.
D0*detp12
*det*A11
*A33
) & +vard
(6)*(-2.
D0*detp13
*det*A11
*A33
) & +vard
(7)*(-2.
D0*D23
*A33
*det2
-2.
D0*detp23
*det*A11
*A33
)))/det4
DINV
(1,
4)=(2.
D0*COEFF3
/det4
)*(vard
(2)*(-2.
D0*detp11
*det*A11
*A12
) & +vard
(3)*((D33
-1.
D0)*A12
*det2
-2.
D0*detp22
*det*A11
*A12
) & +vard(4)*(((D22-1.D0)*A12-D12*A11)*det2
& -2.
D0*detp33
*det*A11
*A12
) & +vard
(5)*((DE3
)*A11
*det2
-2.
D0*detp12
*det*A11
*A12
) & +vard
(6)*(D23
*A11
*det2
-2.
D0*detp13
*det*A11
*A12
) & +vard(7)*((-2.D0*D23*A12+D13*A11)*det2
& -2.
D0*detp23
*det*A11
*A12
))
IF (IFOUR.GT.0) THEN
DINV
(1,
5)=(2.
D0*COEFF3
/det4
)*(vard
(2)*(-2.
D0*detp11
*det*A11
*A13
) & +vard(3)*(((D33-1.D0)*A13-D13*A11)*det2
& -2.
D0*detp22
*det*A11
*A13
) & +vard
(4)*((D22
-1.
D0)*A13
*det2
-2.
D0*detp33
*det*A11
*A13
) & +vard
(5)*(D23
*A11
*det2
-2.
D0*detp12
*det*A11
*A13
) & +vard
(6)*((DE2
)*A11
*det2
-2.
D0*detp13
*det*A11
*A13
) & +vard(7)*((-2.D0*D23*A13+D12*A11)*det2
& -2.
D0*detp23
*det*A11
*A13
))
DINV
(1,
6)=(COEFF1
*(vard
(2)*(-2.
D0*detp11
*det*A12
*A13
) & +vard
(3)*(-D13
*A12
*det2
-2.
D0*detp22
*det*A12
*A13
) & +vard
(4)*(-D12
*A13
*det2
-2.
D0*detp33
*det*A12
*A13
) & +vard(5)*(((DE3)*A13+D23*A12)*det2
& -2.
D0*detp12
*det*A12
*A13
) & +vard(6)*((D23*A13+(DE2)*A12)*det2
& -2.
D0*detp13
*det*A12
*A13
) & +vard
(7)*((D13
*A13
+D12
*A12
)*det2
-2.
D0*detp23
*det*A12
*A13
)) & -COEFF2
*(vard
(2)*(-D23
*A11
*det2
-2.
D0*detp11
*det*A11
*A23
) & +vard
(3)*((D33
-1.
D0)*A23
*det2
-2.
D0*detp22
*det*A11
*A23
) & +vard
(4)*((D22
-1.
D0)*A23
*det2
-2.
D0*detp33
*det*A11
*A23
) & +vard
(5)*(D13
*A11
*det2
-2.
D0*detp12
*det*A11
*A23
) & +vard
(6)*(D12
*A11
*det2
-2.
D0*detp13
*det*A11
*A23
) & +vard(7)*(((DE1)*A11-2.D0*D23*A23)*det2
& -2.
D0*detp23
*det*A11
*A23
)))*2.
D0/det4
ENDIF
DINV(2,2)=COEFF3*(vard(2)*(2.D0*(D33-1.D0)*A22*det2
& -2.
D0*detp11
*det*A22
*A22
) & +vard
(3)*(-2.
D0*detp22
*det*A22
*A22
) & +vard
(4)*(2.
D0*(D11
-1.
D0)*A22
*det2
-2.
D0*detp33
*det*A22
*A22
) & +vard
(5)*(-2.
D0*detp12
*det*A22
*A22
) & +vard
(6)*(-4.
D0*D13
*A22
*det2
-2.
D0*detp13
*det*A22
*A22
)) & +vard
(7)*(-2.
D0*detp23
*det*A22
*A22
)/det4
DINV(2,3)=(COEFF1*(vard(2)*(-2.D0*D23*A23*det2
& -2.
D0*detp11
*det*A23
*A23
) & +vard
(3)*(-2.
D0*detp22
*det*A23
*A23
) & +vard
(4)*(-2.
D0*detp33
*det*A23
*A23
) & +vard
(5)*(2.
D0*D13
*A23
*det2
-2.
D0*detp12
*det*A23
*A23
) & +vard
(6)*(2.
D0*D12
*A23
*det2
-2.
D0*detp13
*det*A23
*A23
) & +vard
(7)*(2.
D0*(DE1
)*A23
*det2
-2.
D0*detp23
*det*A23
*A23
)) & -COEFF2*(vard(2)*(((D33-1.D0)*A33+(D22-1.D0)*A22)*det2
& -2.
D0*detp11
*det*A22
*A33
) & +vard
(3)*((D11
-1.
D0)*A22
*det2
-2.
D0*detp22
*det*A22
*A33
) & +vard
(4)*((D11
-1.
D0)*A33
*det2
-2.
D0*detp33
*det*A22
*A33
) & +vard
(5)*(-2.
D0*D12
*A22
*det2
-2.
D0*detp12
*det*A22
*A33
) & +vard
(6)*(-2.
D0*D13
*A33
*det2
-2.
D0*detp13
*det*A22
*A33
) & +vard
(7)*(-2.
D0*detp23
*det*A22
*A33
)))/det4
DINV
(2,
4)=(vard
(2)*((D33
-1.
D0)*A12
*det2
-2.
D0*detp11
*det*A22
*A12
) & +vard
(3)*(-2.
D0*detp22
*det*A22
*A12
) & +vard(4)*(((D11-1.D0)*A12-D12*A22)*det2
& -2.
D0*detp33
*det*A22
*A12
) & +vard
(5)*((DE3
)*A22
*det2
-2.
D0*detp12
*det*A22
*A12
) & +vard(6)*((-2.D0*D13*A12+D23*A22)*det2
& -2.
D0*detp13
*det*A22
*A12
) & +vard
(7)*(D13
*A22
*det2
-2.
D0*detp23
*det*A22
*A12
)) & *(2.D0*COEFF3/det4)
IF (IFOUR.GT.0) THEN
DINV(2,5)=(COEFF1*(vard(2)*(-D23*A12*det2
& -2.
D0*detp11
*det*A12
*A23
) & +vard
(3)*(-2.
D0*detp22
*det*A12
*A23
) & +vard
(4)*(-D12
*A23
*det2
-2.
D0*detp33
*det*A12
*A23
) & +vard(5)*(((DE3)*A23+D13*A12)*det2
& -2.
D0*detp12
*det*A12
*A23
) & +vard
(6)*((D23
*A23
+D12
*A12
)*det2
-2.
D0*detp13
*det*A12
*A23
) & +vard(7)*((D13*A23+(DE1)*A12)*det2
& -2.
D0*detp23
*det*A12
*A23
)) & -COEFF2*(vard(2)*((D33-1.D0)*A13*det2
& -2.
D0*detp11
*det*A22
*A13
) & +vard
(3)*(-D13
*A22
*det2
-2.
D0*detp22
*det*A22
*A13
) & +vard
(4)*((D11
-1.
D0)*A13
*det2
-2.
D0*detp33
*det*A22
*A13
) & +vard
(5)*(D23
*A22
*det2
-2.
D0*detp12
*det*A22
*A13
) & +vard(6)*(((DE2)*A22-2.D0*D13*A13)*det2
& -2.
D0*detp13
*det*A22
*A13
) & +vard
(7)*(D12
*A22
*det2
-2.
D0*detp23
*det*A22
*A13
)))*2.
D0/det4
DINV(2,6)=2.D0*COEFF3*(vard(2)*(((D33-1.D0)*A23-D23*A22)*det2
& -2.
D0*detp11
*det*A22
*A23
) & +vard
(3)*(-2.
D0*detp22
*det*A22
*A23
) & +vard
(4)*((D11
-1.
D0)*A23
*det2
-2.
D0*detp33
*det*A22
*A23
) & +vard
(5)*(D13
*A22
*det2
-2.
D0*detp12
*det*A22
*A23
) & +vard(6)*((-2.D0*D13*A23+D12*A22)*det2
& -2.
D0*detp13
*det*A22
*A23
) & +vard
(7)*((DE1
)*A22
*det2
-2.
D0*detp23
*det*A22
*A23
))/det4
ENDIF
DINV(3,3)=COEFF3*(vard(2)*(2.D0*(D22-1.D0)*A33*det2
& -2.
D0*detp11
*det*A33
*A33
) & +vard
(3)*(2.
D0*(D11
-1.
D0)*A33
*det2
-2.
D0*detp22
*det*A33
*A33
) & +vard
(4)*(-2.
D0*detp33
*det*A33
*A33
) & +vard
(5)*(-4.
D0*D12
*A33
*det2
-2.
D0*detp12
*det*A33
*A33
) & +vard
(6)*(-2.
D0*detp13
*det*A33
*A33
)) & +vard
(7)*(-2.
D0*detp23
*det*A33
*A33
)/det4
DINV
(3,
4)=(COEFF1
*(vard
(2)*(-D23
*A13
*det2
-2.
D0*detp11
*det*A13
*A23
) & +vard
(3)*(-D13
*A23
*det2
-2.
D0*detp22
*det*A13
*A23
) & +vard
(4)*(-2.
D0*detp33
*det*A13
*A23
) & +vard
(5)*((D23
*A23
+D13
*A13
)*det2
-2.
D0*detp12
*det*A13
*A23
) & +vard(6)*(((DE2)*A23+D12*A13)*det2
& -2.
D0*detp13
*det*A13
*A23
) & +vard(7)*((D12*A23+(DE1)*A13)*det2
& -2.
D0*detp23
*det*A13
*A23
)) & -COEFF2*(vard(2)*((D22-1.D0)*A12*det2
& -2.
D0*detp11
*det*A33
*A12
) & +vard
(3)*((D11
-1.
D0)*A12
*det2
-2.
D0*detp22
*det*A33
*A12
) & +vard
(4)*(-D12
*A33
*det2
-2.
D0*detp33
*det*A33
*A12
) & +vard(5)*(((DE3)*A33-2.D0*D12*A12)*det2
& -2.
D0*detp12
*det*A33
*A12
) & +vard
(6)*(D23
*A33
*det2
-2.
D0*detp13
*det*A33
*A12
) & +vard
(7)*(D13
*A33
*det2
-2.
D0*detp23
*det*A33
*A12
)))*2.
D0/det4
IF (IFOUR.GT.0) THEN
DINV(3,5)=2.D0*COEFF3*(vard(2)*((D22-1.D0)*A13*det2
& -2.
D0*detp11
*det*A33
*A13
) & +vard(3)*(((D11-1.D0)*A13-D13*A33)*det2
& -2.
D0*detp22
*det*A33
*A13
) & +vard
(4)*(-2.
D0*detp33
*det*A33
*A13
) & +vard(5)*((-2.D0*D12*A13+D23*A33)*det2
& -2.
D0*detp12
*det*A33
*A13
) & +vard
(6)*((DE2
)*A33
*det2
-2.
D0*detp13
*det*A33
*A13
) & +vard
(7)*(D12
*A33
*det2
-2.
D0*detp23
*det*A33
*A13
))/det4
DINV(3,6)=2.D0*COEFF3*(vard(2)*(((D22-1.D0)*A23-D23*A33)*det2
& -2.
D0*detp11
*det*A33
*A23
) & +vard
(3)*((D11
-1.
D0)*A23
*det2
-2.
D0*detp22
*det*A33
*A23
) & +vard
(4)*(-2.
D0*detp33
*det*A33
*A23
) & +vard(5)*((-2.D0*D12*A23+D13*A33)*det2
& -2.
D0*detp12
*det*A33
*A23
) & +vard
(6)*(D12
*A33
*det2
-2.
D0*detp13
*det*A33
*A23
) & +vard(7)*((DE1)*A33*det2
& -2.
D0*detp23
*det*A33
*A23
))/det4
ENDIF
DINV(4,4)=(2.D0/det4)*(COEFF1*(vard(2)*((D33-1.D0)*A11*det2
& -2.
D0*detp11
*det*(A12
*A12
+A11
*A22
)) & +vard(3)*((D33-1.D0)*A22*det2
& -2.
D0*detp22
*det*(A12
*A12
+A11
*A22
)) & +vard(4)*((-2.D0*D12*A12+(D22-1.D0)*A22+(D11-1.D0)*A11)
& *det2
-2.
D0*detp33
*det*(A12
*A12
+A11
*A22
)) & +vard(5)*(2.D0*(DE3)*A12*det2
& -2.
D0*detp12
*det*(A12
*A12
+A11
*A22
)) & +vard(6)*((2.D0*D23*A12-2.D0*D13*A11)*det2
& -2.
D0*detp13
*det*(A12
*A12
+A11
*A22
)) & +vard(7)*((2.D0*D13*A12-2.D0*D23*A22)*det2
& -2.
D0*detp23
*det*(A12
*A12
+A11
*A22
))) & -2.
D0*COEFF2
*(vard
(2)*(-2.
D0*detp11
*det*A12
*A12
) & +vard
(3)*(-2.
D0*detp22
*det*A12
*A12
) & +vard
(4)*(-2.
D0*D12
*A12
*det2
-2.
D0*detp33
*det*A12
*A12
) & +vard
(5)*(2.
D0*(DE3
)*A12
*det2
-2.
D0*detp12
*det*A12
*A12
) & +vard
(6)*(2.
D0*D23
*A12
*det2
-2.
D0*detp13
*det*A12
*A12
) & +vard
(7)*(2.
D0*D13
*A12
*det2
-2.
D0*detp23
*det*A12
*A12
)))
IF (IFOUR.GT.0) THEN
DINV(4,5)=(2.D0/det4)*(COEFF1*(vard(2)*(-D23*A11*det2
& -2.
D0*detp11
*det*(A13
*A12
+A11
*A23
)) & +vard(3)*((-D13*A12+(D33-1.D0)*A23)*det2
& -2.
D0*detp22
*det*(A13
*A12
+A11
*A23
)) & +vard(4)*((-D12*A13+(D22-1.D0)*A23)*det2
& -2.
D0*detp33
*det*(A13
*A12
+A11
*A23
)) & +vard(5)*((D23*A12+(DE3)*A13+D13*A11)*det2
& -2.
D0*detp12
*det*(A13
*A12
+A11
*A23
)) & +vard(6)*(((DE2)*A12+D23*A13+D12*A11)*det2
& -2.
D0*detp13
*det*(A13
*A12
+A11
*A23
)) & +vard(7)*((D12*A12+D13*A13-2.D0*D23*A23+(DE1)*A11)
& *det2
-2.
D0*detp23
*det*(A13
*A12
+A11
*A23
))) & -2.
D0*COEFF2
*(vard
(2)*(-2.
D0*detp11
*det*A12
*A13
) & +vard
(3)*(-D13
*A12
*det2
-2.
D0*detp22
*det*A12
*A13
) & +vard
(4)*(-D12
*A13
*det2
-2.
D0*detp33
*det*A12
*A13
) & +vard(5)*(((DE3)*A13+D23*A12)*det2
& -2.
D0*detp12
*det*A12
*A13
) +vard
(6)*((D23
*A13
+(DE2
) & *A12
)*det2
-2.
D0*detp13
*det*A12
*A13
) & +vard
(7)*((D13
*A13
+D12
*A12
)*det2
-2.
D0*detp23
*det*A12
*A13
)))
DINV(4,6)=(2.D0/det4)*(COEFF1*(vard(2)*((-D23*A12
& +(D33
-1.
D0)*A13
)*det2
-2.
D0*detp11
*det*(A23
*A12
+A22
*A13
)) & +vard
(3)*(-D13
*A22
*det2
-2.
D0*detp22
*det*(A23
*A12
+A22
*A13
)) & +vard(4)*((-D12*A23+(D11-1.D0)*A13)*det2
& -2.
D0*detp33
*det*(A23
*A12
+A22
*A13
)) & +vard(5)*((D13*A12+(DE3)*A23+D23*A22)*det2
& -2.
D0*detp12
*det*(A23
*A12
+A22
*A13
)) & +vard(6)*((D12*A12+D23*A23-2.D0*D13*A13+(DE2)*A22)
& *det2
-2.
D0*detp13
*det*(A23
*A12
+A22
*A13
)) & +vard(7)*(((DE1)*A12+D13*A23+D12*A22)*det2
& -2.
D0*detp23
*det*(A23
*A12
+A22
*A13
))) & -2.
D0*COEFF2
*(vard
(2)*(-D23
*A12
*det2
-2.
D0*detp11
*det*A12
& *A23
) + vard
(3)*(-2.
D0*detp22
*det*A12
*A23
) & +vard
(4)*(-D12
*A23
*det2
-2.
D0*detp33
*det*A12
*A23
) & +vard(5)*(((DE3)*A23+D13*A12)*det2
& -2.
D0*detp12
*det*A12
*A23
) & +vard
(6)*((D23
*A23
+D12
*A12
)*det2
-2.
D0*detp13
*det*A12
*A23
) & +vard(7)*((D13*A23+(DE1)*A12)*det2
& -2.
D0*detp23
*det*A12
*A23
)))
DINV(5,5)=(2.D0/det4)*(COEFF1*(vard(2)*((D22-1.D0)*A11*det2
& -2.
D0*detp11
*det*(A13
*A13
+A11
*A33
)) & +vard(3)*((-2.D0*D13*A13+(D33-1.D0)*A33+(D11-1.D0)*A11)*det2
& -2.
D0*detp22
*det*(A13
*A13
+A11
*A33
)) & +vard(4)*((D22-1.D0)*A33*det2
& -2.
D0*detp33
*det*(A13
*A13
+A11
*A33
)) & +vard(5)*((2.D0*D23*A13-2.D0*D12*A11)*det2
& -2.
D0*detp12
*det*(A13
*A13
+A11
*A33
)) & +vard(6)*(2.D0*(DE2)*A13*det2
& -2.
D0*detp13
*det*(A13
*A13
+A11
*A33
)) & +vard(7)*((2.D0*D12*A13-2.D0*D23*A33)*det2
& -2.
D0*detp23
*det*(A13
*A13
+A11
*A33
))) & -2.
D0*COEFF2
*(vard
(2)*(-2.
D0*detp11
*det*A13
*A13
) & +vard
(3)*(-2.
D0*D13
*A13
*det2
-2.
D0*detp22
*det*A13
*A13
) & +vard
(4)*(-2.
D0*detp33
*det*A13
*A13
) & +vard
(5)*(2.
D0*D23
*A13
*det2
-2.
D0*detp12
*det*A13
*A13
) & +vard
(6)*(2.
D0*(DE2
)*A13
*det2
-2.
D0*detp13
*det*A13
*A13
) & +vard
(7)*(2.
D0*D12
*A13
*det2
-2.
D0*detp23
*det*A13
*A13
)))
DINV(5,6)=(2.D0/det4)*(COEFF1*(vard(2)*((-D23*A13
& +(D22
-1.
D0)*A12
)*det2
-2.
D0*detp11
*det*(A23
*A13
+A33
*A12
)) & +vard(3)*((-D13*A23+(D11-1.D0)*A12)*det2
& -2.
D0*detp22
*det*(A23
*A13
+A33
*A12
)) & +vard
(4)*(-D12
*A33
*det2
-2.
D0*detp33
*det*(A23
*A13
+A33
*A12
)) & +vard(5)*((D13*A13+D23*A23-2.D0*D12*A12+(DE3)*A33)*det2
& -2.
D0*detp12
*det*(A23
*A13
+A33
*A12
)) & +vard(6)*((D12*A13+(DE2)*A23+D23*A33)*det2
& -2.
D0*detp13
*det*(A23
*A13
+A33
*A12
)) & +vard(7)*(((DE1)*A13+D12*A23+D13*A33)*det2
& -2.
D0*detp23
*det*(A23
*A13
+A33
*A12
))) & -2.
D0*COEFF2
*(vard
(2)*(-D23
*A13
*det2
-2.
D0*detp11
*det*A13
& *A23
) +vard
(3)*(-D13
*A23
*det2
-2.
D0*detp22
*det*A12
*A23
) & +vard
(4)*(-2.
D0*detp33
*det*A13
*A23
) & +vard
(5)*((D23
*A23
+D13
*A13
)*det2
-2.
D0*detp12
*det*A13
*A23
) & +vard(6)*(((DE2)*A23+D12*A13)*det2
& -2.
D0*detp13
*det*A13
*A23
) & +vard(7)*((D12*A23+(DE1)*A13)*det2
& -2.
D0*detp23
*det*A13
*A23
)))
DINV(6,6)=(2.D0/det4)*(COEFF1*(vard(2)*((-2.D0*D23*A23
& +(D33-1.D0)*A33+(D22-1.D0)*A22)*det2
& -2.
D0*detp11
*det*(A23
*A23
+A22
*A33
)) & +vard(3)*((D11-1.D0)*A22*det2
& -2.
D0*detp22
*det*(A23
*A23
+A22
*A33
)) & +vard(4)*((D11-1.D0)*A33*det2
& -2.
D0*detp33
*det*(A23
*A23
+A22
*A33
)) & +vard(5)*((2.D0*D13*A23-2.D0*D12*A22)*det2
& -2.
D0*detp12
*det*(A23
*A23
+A22
*A33
)) & +vard(6)*((2.D0*D12*A23-2.D0*D13*A33)*det2
& -2.
D0*detp13
*det*(A23
*A23
+A22
*A33
)) & +vard(7)*(2.D0*(DE1)*A23*det2
& -2.
D0*detp23
*det*(A23
*A23
+A22
*A33
))) & -2.D0*COEFF2*(vard(2)*(-2.D0*D23*A23*det2-2.D0
& *detp11
*det*A23
*A23
) +vard
(3)*(-2.
D0*detp22
& *det*A23
*A23
) +vard
(4)*(-2.
D0*detp33
*det*A23
*A23
) & +vard
(5)*(2.
D0*D13
*A23
*det2
-2.
D0*detp12
*det*A23
*A23
) & +vard
(6)*(2.
D0*D12
*A23
*det2
-2.
D0*detp13
*det*A23
*A23
) & +vard(7)*(2.D0*(DE1)*A23*det2
& -2.
D0*detp23
*det*A23
*A23
))) ENDIF
DINV(2,1)=DINV(1,2)
DINV(3,1)=DINV(1,3)
DINV(3,2)=DINV(2,3)
DINV(4,1)=DINV(1,4)
DINV(4,2)=DINV(2,4)
DINV(4,3)=DINV(3,4)
IF (IFOUR.GT.0) THEN
DINV(5,1)=DINV(1,5)
DINV(5,2)=DINV(2,5)
DINV(5,3)=DINV(3,5)
DINV(5,4)=DINV(4,5)
DINV(6,1)=DINV(1,6)
DINV(6,2)=DINV(2,6)
DINV(6,3)=DINV(3,6)
DINV(6,4)=DINV(4,6)
DINV(6,5)=DINV(5,6)
ENDIF
RETURN
END