30 . DIR_A ,TENS ,DIR1_CRK,DIR2_CRK,IROT)
34#include "implicit_f.inc"
35#include
"com_xfem1.inc"
39 INTEGER NEL,ILAY,IXFEM,IROT
40 INTEGER ELCRKINI(NXLAYMAX,*)
41 my_real dir_a(nel,2),tens(nel,5),dir1_crk(nxlaymax,nel),
42 . dir2_crk(nxlaymax,nel)
48 my_real cc,bb,cr,orm,ss1,ss2,s1,s2,s3,s4,s5
53 IF (abs(elcrkini(ilay,i)) == 1)
THEN
58 IF (newcrk == 0)
RETURN
65 s1 = dir_a(i,1)*dir_a(i,1)*tens(i,1)
66 . + dir_a(i,2)*dir_a(i,2)*tens(i,2)
67 . - two*dir_a(i,1)*dir_a(i,2)*tens(i,3)
68 s2 = dir_a(i,2)*dir_a(i,2)*tens(i,1)
69 . + dir_a(i,1)*dir_a(i,1)*tens(i,2)
70 . + two*dir_a(i,2)*dir_a(i,1)*tens(i,3)
71 s3 = dir_a(i,1)*dir_a(i,2)*tens(i,1)
72 . - dir_a(i,2)*dir_a(i,1)*tens(i,2)
73 . +(dir_a(i,1)*dir_a(i,1)-dir_a(i,2)*dir_a(i,2))*tens(i,3)
74 s4 = dir_a(i,2)*tens(i,5)+dir_a(i,1)*tens(i,4)
75 s5 = dir_a(i,1)*tens(i,5)-dir_a(i,2)*tens(i,4)
86 cc = (tens(i,1)+tens(i,2))*half
87 bb = (tens(i,1)-tens(i,2))*half
88 cr = sqrt(bb*bb+tens(i,3)*tens(i,3))
91 dir1_crk(ilay,i) = tens(i,3)
92 dir2_crk(ilay,i) = ss1-tens(i,1)
93 orm = dir1_crk(ilay,i)*dir1_crk(ilay,i)+
94 . dir2_crk(ilay,i)*dir2_crk(ilay,i)
100 dir1_crk(ilay,i)=dir1_crk(ilay,i)/orm
101 dir2_crk(ilay,i)=dir2_crk(ilay,i)/orm