41
42
43
44
45
46
47#include "implicit_f.inc"
48
49
50
51 INTEGER, INTENT(IN) :: NEL
53 . x1(*), x2(*), x3(*), x4(*), x5(*), x6(*), x7(*), x8(*),
54 . y1(*), y2(*), y3(*), y4(*), y5(*), y6(*), y7(*), y8(*),
55 . z1(*), z2(*), z3(*), z4(*), z5(*), z6(*), z7(*), z8(*),
56 . n1x(*), n2x(*), n3x(*), n4x(*), n5x(*), n6x(*),
57 . n1y(*), n2y(*), n3y(*), n4y(*), n5y(*), n6y(*),
58 . n1z(*), n2z(*), n3z(*), n4z(*), n5z(*), n6z(*),
59 . aream(*)
60
61
62
63
64
65
66 INTEGER I
67
70
71 DO i=1,nel
72 n1x(i)=(y3(i)-y1(i))*(z2(i)-z4(i)) - (z3(i)-z1(i))*(y2(i)-y4(i))
73 n1y(i)=(z3(i)-z1(i))*(x2(i)-x4(i)) - (x3(i)-x1(i))*(z2(i)-z4(i))
74 n1z(i)=(x3(i)-x1(i))*(y2(i)-y4(i)) - (y3(i)-y1(i))*(x2(i)-x4(i))
75 area(1)=n1x(i)**2+n1y(i)**2+n1z(i)**2
76
77 n2x(i)=(y7(i)-y4(i))*(z3(i)-z8(i)) - (z7(i)-z4(i))*(y3(i)-y8(i))
78 n2y(i)=(z7(i)-z4(i))*(x3(i)-x8(i)) - (x7(i)-x4(i))*(z3(i)-z8(i))
79 n2z(i)=(x7(i)-x4(i))*(y3(i)-y8(i)) - (y7(i)-y4(i))*(x3(i)-x8(i))
80 area(2)=n2x(i)**2+n2y(i)**2+n2z(i)**2
81
82 n3x(i)=(y6(i)-y8(i))*(z7(i)-z5(i)) - (z6(i)-z8(i))*(y7(i)-y5(i))
83 n3y(i)=(z6(i)-z8(i))*(x7(i)-x5(i)) - (x6(i)-x8(i))*(z7(i)-z5(i))
84 n3z(i)=(x6(i)-x8(i))*(y7(i)-y5(i)) - (y6(i)-y8(i))*(x7(i)-x5(i))
85 area(3)=n3x(i)**2+n3y(i)**2+n3z(i)**2
86
87 n4x(i)=(y2(i)-y5(i))*(z6(i)-z1(i)) - (z2(i)-z5(i))*(y6(i)-y1(i))
88 n4y(i)=(z2(i)-z5(i))*(x6(i)-x1(i)) - (x2(i)-x5(i))*(z6(i)-z1(i))
89 n4z(i)=(x2(i)-x5(i))*(y6(i)-y1(i)) - (y2(i)-y5(i))*(x6(i)-x1(i))
90 area(4)=n4x(i)**2+n4y(i)**2+n4z(i)**2
91
92 n5x(i)=(y7(i)-y2(i))*(z6(i)-z3(i)) - (z7(i)-z2(i))*(y6(i)-y3(i))
93 n5y(i)=(z7(i)-z2(i))*(x6(i)-x3(i)) - (x7(i)-x2(i))*(z6(i)-z3(i))
94 n5z(i)=(x7(i)-x2(i))*(y6(i)-y3(i)) - (y7(i)-y2(i))*(x6(i)-x3(i))
95 area(5)=n5x(i)**2+n5y(i)**2+n5z(i)**2
96
97 n6x(i)=(y8(i)-y1(i))*(z4(i)-z5(i)) - (z8(i)-z1(i))*(y4(i)-y5(i))
98 n6y(i)=(z8(i)-z1(i))*(x4(i)-x5(i)) - (x8(i)-x1(i))*(z4(i)-z5(i))
99 n6z(i)=(x8(i)-x1(i))*(y4(i)-y5(i)) - (y8(i)-y1(i))*(x4(i)-x5(i))
100 area(6)=n6x(i)**2+n6y(i)**2+n6z(i)**2
102 ENDDO
103 RETURN
subroutine area(d1, x, x2, y, y2, eint, stif0)