43
44
45
46#include "implicit_f.inc"
47
48
49
50
51
52
53 INTEGER, INTENT(IN) :: NEL
55 . vx1(*), vx2(*), vx3(*), vx4(*), vx5(*), vx6(*), vx7(*), vx8(*),
56 . vy1(*), vy2(*), vy3(*), vy4(*), vy5(*), vy6(*), vy7(*), vy8(*),
57 . vz1(*), vz2(*), vz3(*), vz4(*), vz5(*), vz6(*), vz7(*), vz8(*),
58 . px1(*), px2(*), px3(*), px4(*),
59 . py1(*), py2(*), py3(*), py4(*),
60 . pz1(*), pz2(*), pz3(*), pz4(*),
61 . dxx(*), dxy(*), dxz(*),
62 . dyx(*), dyy(*), dyz(*),
63 . dzx(*), dzy(*), dzz(*)
64
65
66
67 INTEGER I, J
69 . vx17, vy17, vz17,
70 . vx28, vy28, vz28,
71 . vx35, vy35, vz35,
72 . vx46, vy46, vz46
73
74 DO i=1,nel
75 vx17=vx1(i)-vx7(i)
76 vx28=vx2(i)-vx8(i)
77 vx35=vx3(i)-vx5(i)
78 vx46=vx4(i)-vx6(i)
79 vy17=vy1(i)-vy7(i)
80 vy28=vy2(i)-vy8(i)
81 vy35=vy3(i)-vy5(i)
82 vy46=vy4(i)-vy6(i)
83 vz17=vz1(i)-vz7(i)
84 vz28=vz2(i)-vz8(i)
85 vz35=vz3(i)-vz5(i)
86 vz46=vz4(i)-vz6(i)
87
88 dxx(i)=px1(i)*vx17+px2(i)*vx28+
89 . px3(i)*vx35+px4(i)*vx46
90 dyy(i)=py1(i)*vy17+py2(i)*vy28+
91 . py3(i)*vy35+py4(i)*vy46
92 dzz(i)=pz1(i)*vz17+pz2(i)*vz28+
93 . pz3(i)*vz35+pz4(i)*vz46
94 dxy(i)=py1(i)*vx17+py2(i)*vx28+
95 . py3(i)*vx35+py4(i)*vx46
96 dxz(i)=pz1(i)*vx17+pz2(i)*vx28+
97 . pz3(i)*vx35+pz4(i)*vx46
98 dyx(i)=px1(i)*vy17+px2(i)*vy28+
99 . px3(i)*vy35+px4(i)*vy46
100 dyz(i)=pz1(i)*vy17+pz2(i)*vy28+
101 . pz3(i)*vy35+pz4(i)*vy46
102 dzx(i)=px1(i)*vz17+px2(i)*vz28+
103 . px3(i)*vz35+px4(i)*vz46
104 dzy(i)=py1(i)*vz17+py2(i)*vz28+
105 . py3(i)*vz35+py4(i)*vz46
106 ENDDO
107
108 RETURN