UMAT-ABAQUS
A general framework to develop material models (UMAT) in ABAQUS
fibdir.for
Go to the documentation of this file.
1  SUBROUTINE fibdir(FIB,ST0,ST,NE,NOEL,NDI,VORIF,VD,DISTGR,DFGRD1)
2 C
3  IMPLICIT NONE
4  include 'PARAM_UMAT.INC'
5 C
6  INTEGER NDI, NE, NOEL,INOEL,I,J,I1,J1
7  DOUBLE PRECISION SUM1, DFGRD1(3,3), DNORM
8  DOUBLE PRECISION VORIF(3),ST(3,3),VD(3),ST0(3,3),DISTGR(3,3)
9  DOUBLE PRECISION FIB(ne,4)
10 C
11  inoel=0
12  i=0
13  DO i=1,ne
14 C ELEMENT IDENTIFICATION
15  IF(noel.EQ.int(fib(i,1))) THEN
16  inoel=i
17  ENDIF
18  ENDDO
19 C
20 C FIB - FIBER ORIENTATION
21  dnorm=dsqrt(fib(inoel,2)*fib(inoel,2)+
22  1 fib(inoel,3)*fib(inoel,3)+
23  2 fib(inoel,4)*fib(inoel,4))
24 C
25 C UNDERFORMED FIBER ORIENTATION TENSOR
26 C
27  DO i1=1,ndi
28  j1=i1+1
29 C FIBER ORIENTATION NORMALIZED VECTOR - FAMILY 1
30  vorif(i1)=fib(inoel,j1)/dnorm
31  END DO
32 C
33 
34  DO i=1,ndi
35  sum1=zero
36  DO j=1,ndi
37  sum1=sum1+dfgrd1(i,j)*vorif(j)
38  ENDDO
39 C FIBER DIRECTIONS IN THE DEFORMED CONFIGURATION
40 C -FAMILY 1
41  vd(i)=sum1
42  ENDDO
43  dnorm=dsqrt(vd(1)*vd(1)+
44  1 vd(2)*vd(2)+
45  2 vd(3)*vd(3))
46 C COSINE OF THE ANGLE BETWEEN FIBERS
47 C
48 C
49 C--------------------------------------------------------------------------
50  DO i=1,ndi
51  DO j=1,ndi
52 C STRUCTURAL TENSOR - FAMILY 1
53  st0(i,j)=vorif(i)*vorif(j)
54  END DO
55  END DO
56 C
57 C STRUCTURE TENSOR IN THE DEFORMED CONFIGURATION - FAMILY 1
58  st=matmul(st0,transpose(distgr))
59  st=matmul(distgr,st)
60 C
61 C
62  RETURN
63  END SUBROUTINE fibdir
subroutine fibdir(FIB, ST0, ST, NE, NOEL, NDI, VORIF, VD, DISTGR, DFGRD1)
Definition: fibdir.for:2