UMAT-ABAQUS
A general framework to develop material models (UMAT) in ABAQUS
metiso.for
Go to the documentation of this file.
1  SUBROUTINE metiso(CMISO,CMFIC,PL,PKISO,PKFIC,C,UNIT2,DET,NDI)
2 C> ISOCHORIC MATERIAL ELASTICITY TENSOR
3  IMPLICIT NONE
4  include 'PARAM_UMAT.INC'
5 C
6  INTEGER NDI,I1,J1,K1,L1
7  DOUBLE PRECISION UNIT2(ndi,ndi),PL(ndi,ndi,ndi,ndi),
8  1 cmiso(ndi,ndi,ndi,ndi),pkiso(ndi,ndi),
9  2 cmfic(ndi,ndi,ndi,ndi),pkfic(ndi,ndi),
10  3 cisoaux(ndi,ndi,ndi,ndi),
11  4 cisoaux1(ndi,ndi,ndi,ndi),c(ndi,ndi),
12  5 plt(ndi,ndi,ndi,ndi),cinv(ndi,ndi),
13  6 pll(ndi,ndi,ndi,ndi)
14  DOUBLE PRECISION TRFIC,XX,YY,ZZ,DET,AUX,AUX1
15 C
16  CALL matinv3d(c,cinv,ndi)
17  cisoaux1=zero
18  cisoaux=zero
19  CALL contraction44(cisoaux1,pl,cmfic,ndi)
20 C
21 C transpose of lagrangian projection tensor
22  DO i1=1,ndi
23  DO j1=1,ndi
24  DO k1=1,ndi
25  DO l1=1,ndi
26  plt(i1,j1,k1,l1)=pl(k1,l1,i1,j1)
27  END DO
28  END DO
29  END DO
30  END DO
31 C
32  CALL contraction44(cisoaux,cisoaux1,plt,ndi)
33 C
34  trfic=zero
35  aux=det**(-two/three)
36  aux1=aux**two
37  DO i1=1,ndi
38  trfic=trfic+aux*pkfic(i1,i1)*c(i1,i1)
39  END DO
40 C
41  DO i1=1,ndi
42  DO j1=1,ndi
43  DO k1=1,ndi
44  DO l1=1,ndi
45  xx=aux1*cisoaux(i1,j1,k1,l1)
46  pll(i1,j1,k1,l1)=(one/two)*(cinv(i1,k1)*cinv(j1,l1)+
47  1 cinv(i1,l1)*cinv(j1,k1))-
48  2 (one/three)*cinv(i1,j1)*cinv(k1,l1)
49  yy=trfic*pll(i1,j1,k1,l1)
50  zz=pkiso(i1,j1)*cinv(k1,l1)+cinv(i1,j1)*pkiso(k1,l1)
51 C
52  cmiso(i1,j1,k1,l1)=xx+(two/three)*yy-(two/three)*zz
53  END DO
54  END DO
55  END DO
56  END DO
57 C
58  RETURN
59  END SUBROUTINE metiso
subroutine contraction44(S, LT, RT, NDI)
subroutine matinv3d(A, A_INV, NDI)
Definition: minverse3d.for:2
subroutine metiso(CMISO, CMFIC, PL, PKISO, PKFIC, C, UNIT2, DET, NDI)
Definition: metiso.for:2