33
34
35
36#include "implicit_f.inc"
37
38
39
40#include "mvsiz_p.inc"
41
42
43
44 INTEGER NG,JFT,JLT,NPLAT,IPLAT(*)
46 . vksi(4,4),veta(4,4),
47 . bcp(mvsiz,8),bp(mvsiz,4),
48 . vpinchxyz(mvsiz,4),vdef(mvsiz,8),vdefpinch(mvsiz,3),
49 . vqg(mvsiz,3,3,4),tnpg(mvsiz,4,4),tc(mvsiz,2,2),
50 . dbetadxy(mvsiz,3),vpincht1(mvsiz,4),vpincht2(mvsiz,4),
51 . bpinchdamp(mvsiz,8)
52
53
54
55 INTEGER I,EP
57 . dn1dx,dn2dx,dn3dx,dn4dx
58 . dn1dy,dn2dy,dn3dy,dn4dy
59
60
61
62
63
64#include "vectorize.inc"
65 DO i=jft,jlt
66 ep=iplat(i)
67
68
69
70
71
72
73 d1=vksi(1,ng)*tc(ep,1,1)+veta(1,ng)*tc(ep,2,1)
74 d2=vksi(1,ng)*tc(ep,1,2)+veta(1,ng)*tc(ep,2,2)
75
76
77
78 bcp(ep,1) = vqg(ep,1,1,ng)*d1
79 bcp(ep
80
81
82
83 d1=vksi(2,ng)*tc(ep,1,1)+veta(2,ng)*tc(ep,2,1)
84 d2=vksi(2,ng)*tc(ep,1,2)+veta(2,ng)*tc(ep,2,2)
85
86
87 bcp(ep,3) = vqg(ep,1,1,ng)*d1
88 bcp(ep,4) = vqg(ep,1,2,ng)*d2
89
90
91
92 d1=vksi(3,ng)*tc(ep,1,1)+veta(3,ng)*tc(ep,2,1)
93 d2=vksi(3,ng)*tc(ep,1,2)+veta(3,ng)*tc(ep,2,2)
94
95
96 bcp(ep,5) = vqg(ep,1,1,ng)*d1
97 bcp(ep,6) = vqg(ep,1,2,ng)*d2
98
99
100
101 d1=vksi(4,ng)*tc(ep,1,1)+veta(4,ng)*tc(ep,2,1)
102 d2=vksi(4,ng)*tc(ep,1,2)+veta(4,ng)*tc(ep,2,2)
103
104
105 bcp(ep,7) = vqg(ep,1,1,ng)*d1
106 bcp(ep,8) = vqg(ep,1,2,ng)*d2
107
108
109 bcx= bcp(ep,1)*vpinchxyz(ep,1)
110 bcy= bcp(ep,2)*vpinchxyz(ep,1)
111
112
113 bcx=bcx + bcp(ep,3)*vpinchxyz(ep,2)
114 bcy=bcy + bcp(ep,4)*vpinchxyz(ep,2)
115
116
117 bcx=bcx + bcp(ep,5)*vpinchxyz(ep,3)
118 bcy=bcy + bcp(ep,6)*vpinchxyz(ep,3)
119
120
121 bcx=bcx + bcp(ep,7)*vpinchxyz(ep,4)
122 bcy=bcy + bcp(ep,8)*vpinchxyz(ep,4)
123
124
125
126 vdefpinch(ep,1)= tc(ep,1,1)*bcx+tc(ep,2,1)*bcx
127 vdefpinch(ep,2)= tc(ep,1,2)*bcx+tc(ep,2,2)*bcy
128
129
130
131
132
133
134
135
136 bp(ep,1) = tnpg(ep,1,ng)
137 bp(ep,2) = tnpg(ep,2,ng)
138 bp(ep,3) = tnpg(ep,3,ng)
139 bp(ep,4) = tnpg(ep,4,ng)
140
141 vdefpinch(ep,3) = bp(ep,1)*vpinchxyz(ep,1)
142 . + bp(ep,2)*vpinchxyz(ep,2)
143 . + bp(ep,3)*vpinchxyz(ep,3)
144 . + bp(ep,4)*vpinchxyz(ep,4)
145
146
147
148
149
150
151 dn1dx = vksi(1,ng)*tc(ep,1,1)+veta(1,ng)*tc(ep,2,1)
152 dn1dy = vksi(1,ng)*tc(ep,1,2)+veta(1,ng)*tc(ep,2,2)
153 dn2dx = vksi(2,ng)*tc(ep,1,1)+veta(2,ng)*tc(ep,2,1)
154 dn2dy = vksi(2,ng)*tc(ep,1,2)+veta(2,ng)*tc(ep,2,2)
155 dn3dx = vksi(3,ng)*tc
156 dn3dy = vksi(3,ng)*tc(ep,1,2)+veta(3,ng)*tc(ep,2,2)
157 dn4dx = vksi(4,ng)*tc(ep,1,1)+veta(4,ng)*tc(ep,2,1)
158 dn4dy = vksi(4,ng)*tc(ep,1,2)+veta(4,ng)*tc(ep,2,2)
159
160
161 dbetadxy(ep,1) = dn1dx*vpincht1(ep,1)+dn2dx*vpincht1(ep,2)
162 - +dn3dx*vpincht1(ep,3)+dn4dx*vpincht1(ep,4)
163
164 dbetadxy(ep,2) = dn1dy*vpincht2(ep,1)+dn2dy*vpincht2(ep,2)
165 - +dn3dy*vpincht2(ep,3)+dn4dy*vpincht2(ep,4)
166
167 dbetadxy(ep,3) = half*(dn1dy*vpincht1(ep,1)+dn2dy*vpincht1(ep,2)
168 - +dn3dy*vpincht1(ep,3)+dn4dy*vpincht1(ep,4)
169 - +dn1dx*vpincht2(ep,1)+dn2dx*vpincht2(ep,2)
170 - +dn3dx*vpincht2(ep,3)+dn4dx*vpincht2(ep,4))
171
172 bpinchdamp(ep,1) = dn1dx
173 bpinchdamp(ep,2) = dn1dy
174 bpinchdamp(ep,3) = dn2dx
175 bpinchdamp(ep,4) = dn2dy
176 bpinchdamp(ep,5) = dn3dx
177 bpinchdamp(ep,6) = dn3dy
178 bpinchdamp(ep,7) = dn4dx
179 bpinchdamp(ep,8) = dn4dy
180
181 ENDDO
182 RETURN