31 SUBROUTINE c3curv3(JFT,JLT,VRL1,VRL2,VRL3,
32 . IXTG,WXY,ISMSTR,KXX,KYY,KXY,
33 . PX1 ,PY1 ,PY2 ,EYZ ,EZX ,
34 . E1X ,E1Y ,E1Z ,E2X ,
35 . E2Y ,E2Z ,E3X ,E3Y ,E3Z )
36use element_mod ,
only : nixtg
40#include "implicit_f.inc"
48 INTEGER JFT, JLT,IXTG(NIXTG,*),ISMSTR
49 my_real VRL1(MVSIZ,3), VRL2(MVSIZ,3), VRL3(MVSIZ,3),WXY(*),
50 . E1X(MVSIZ), E1Y(MVSIZ), E1Z(MVSIZ), E2X(MVSIZ),
51 . E2Y(MVSIZ), E2Z(MVSIZ), E3X(MVSIZ), E3Y(MVSIZ),
52 . e3z(mvsiz), ezx(mvsiz), eyz(mvsiz),
53 . px1(mvsiz), py1(mvsiz), py2(mvsiz),
54 . kxx(mvsiz), kyy(mvsiz), kxy(mvsiz)
59 my_real RX1(MVSIZ), RX2(MVSIZ), RX3(MVSIZ),
60 . RY1(MVSIZ), RY2(MVSIZ), RY3(MVSIZ)
61 my_real RX12T,RX13T,RX23T,RY12T,RY13T,RY23T,RXAVT,RYAVT
64 rx1(i)=e1x(i)*vrl1(i,1)+e1y(i)*vrl1(i,2)+e1z(i)*vrl1(i,3)
65 ry1(i)=e2x(i)*vrl1(i,1)+e2y(i)*vrl1(i,2)+e2z(i)*vrl1(i,3)
66 ry2(i)=e2x(i)*vrl2(i,1)+e2y(i)*vrl2(i,2)+e2z(i)*vrl2(i,3)
67 rx2(i)=e1x(i)*vrl2(i,1)+e1y(i)*vrl2(i,2)+e1z(i)*vrl2(i,3)
68 rx3(i)=e1x(i)*vrl3(i,1)+e1y(i)*vrl3(i,2)+e1z(i)*vrl3(i,3)
69 ry3(i)=e2x(i)*vrl3(i,1)+e2y(i)*vrl3(i,2)+e2z(i)*vrl3(i,3)
73 rx12t = rx1(i) - rx2(i)
74 rx13t = rx1(i) - rx3(i)
75 rx23t = rx2(i) - rx3(i)
77 kyy(i)=-py1(i) * rx13t - py2(i) * rx23t
78 kxy(i)= px1(i) * rx12t
80 ry12t = ry1(i) - ry2(i)
81 ry13t = ry1(i) - ry3(i)
82 ry23t = ry2(i) - ry3(i)
84 kxx(i) = px1(i) * ry12t
85 kxy(i) = py1(i) * ry13t + py2(i) * ry23t - kxy(i)
88 . px1(i) * (-rx1(i)+rx2(i))
89 . + (two*py1(i)+three*py2(i)) * ry1(i)
90 . + (three*py1(i)+two*py2(i)) * ry2(i)
92 . + ( py1(i) + py2(i) ) * ry3(i) )
94 . + (two*py1(i)+py2(i)) * rx1(i)
95 . + (py1(i)+two*py2(i)) * rx2(i)
96 . + three*(py1(i)+py2(i)) * rx3(i) )
97 . + py1(i) * (py1(i)+two*py2(i)) * ry1(i)
98 . - py2(i) * (two*py1(i)+py2(i)) * ry2(i)
99 . + ( py2(i)**2 - py1(i)**2 ) * ry3(i)
101 ezx(i) = ezx(i) + ryavt * third
102 eyz(i) = eyz(i) + rxavt * third
107 rx12t = rx1(i) - rx2(i)
108 ry13t = ry1(i) - ry3(i)
111 wxy(i) = py1(i) * ry13t + py2(i) * ry23t + px1(i) * rx12t
subroutine c3curv3(jft, jlt, vrl1, vrl2, vrl3, ixtg, wxy, ismstr, kxx, kyy, kxy, px1, py1, py2, eyz, ezx, e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z)