The TELEMAC-MASCARET system  trunk
vc20pp.f
Go to the documentation of this file.
1 ! *****************
2  SUBROUTINE vc20pp
3 ! *****************
4 !
5  &( xmul,surfac,su,sv,sw,u,v,w,x,y,z,
6  & ikle1,ikle2,ikle3,ikle4,ikle5,ikle6,nelem,nelmax,
7  & w1,w2,w3,w4,w5,w6 )
8 !
9 !***********************************************************************
10 ! BIEF V8P0 21/07/2018
11 !***********************************************************************
12 !
13 !brief COMPUTES THE FOLLOWING VECTOR IN FINITE ELEMENTS:
14 !code
15 ! STRAIN RATE TENSOR NORM
16 !+ PSI(I) IS A BASE OF TYPE P1 PRISM
17 !
18 !warning THE JACOBIAN MUST BE POSITIVE
19 !warning THE RESULT IS IN W IN NOT ASSEMBLED FORM - REAL MESH
20 !
21 !
22 !history A. BOURGOIN (EDF R&D LNHE) & R. ATA
23 !+ 07/01/2018
24 !+
25 !+ creation.
26 !
27 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
28 !| F |-->| FUNCTION USED IN THE VECTOR FORMULA
29 !| IKLE1 |-->| FIRST POINT OF PRISMS
30 !| IKLE2 |-->| SECOND POINT OF PRISMS
31 !| IKLE3 |-->| THIRD POINT OF PRISMS
32 !| IKLE4 |-->| FOURTH POINT OF PRISMS
33 !| IKLE5 |-->| FIFTH POINT OF PRISMS
34 !| IKLE6 |-->| SIXTH POINT OF PRISMS
35 !| NELEM |-->| NUMBER OF ELEMENTS
36 !| NELMAX |-->| MAXIMUM NUMBER OF ELEMENTS
37 !| SF |-->| BIEF_OBJ STRUCTURE OF F
38 !| SU |-->| BIEF_OBJ STRUCTURE OF U
39 !| SV |-->| BIEF_OBJ STRUCTURE OF V
40 !| SW |-->| BIEF_OBJ STRUCTURE OF W
41 !| U |-->| FUNCTION USED IN THE VECTOR FORMULA
42 !| V |-->| FUNCTION USED IN THE VECTOR FORMULA
43 !| W |-->| FUNCTION USED IN THE VECTOR FORMULA
44 !| W1 |<--| RESULT IN NON ASSEMBLED FORM
45 !| W2 |<--| RESULT IN NON ASSEMBLED FORM
46 !| W3 |<--| RESULT IN NON ASSEMBLED FORM
47 !| W4 |<--| RESULT IN NON ASSEMBLED FORM
48 !| W5 |<--| RESULT IN NON ASSEMBLED FORM
49 !| W6 |<--| RESULT IN NON ASSEMBLED FORM
50 !| X |-->| ABSCISSAE OF POINTS IN THE MESH, PER ELEMENT
51 !| Y |-->| ORDINATES OF POINTS IN THE MESH, PER ELEMENT
52 !| XMUL |-->| MULTIPLICATION COEFFICIENT
53 !| Z |-->| ELEVATIONS OF POINTS ,PER POINT !!!
54 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55 !
56  USE bief, ex_vc20pp => vc20pp
57 !
59  IMPLICIT NONE
60 !
61 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
62 !
63  INTEGER, INTENT(IN) :: NELEM,NELMAX
64  INTEGER, INTENT(IN) :: IKLE1(nelmax),IKLE2(nelmax),IKLE3(nelmax)
65  INTEGER, INTENT(IN) :: IKLE4(nelmax),IKLE5(nelmax),IKLE6(nelmax)
66 !
67  DOUBLE PRECISION, INTENT(IN) :: X(nelmax,6),Y(nelmax,6),Z(*)
68  DOUBLE PRECISION, INTENT(IN) :: XMUL,SURFAC(nelmax)
69  DOUBLE PRECISION, INTENT(INOUT)::W1(nelmax),W2(nelmax),W3(nelmax)
70  DOUBLE PRECISION, INTENT(INOUT)::W4(nelmax),W5(nelmax),W6(nelmax)
71 !
72 ! STRUCTURES OF F, U, V AND REAL DATA
73 !
74  TYPE(bief_obj), INTENT(IN) :: SU,SV,SW
75  DOUBLE PRECISION, INTENT(IN) :: U(*),V(*),W(*)
76 !
77 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
78 !
79  DOUBLE PRECISION X2,X3,Y2,Y3,COEF,XS24,XS144
80  DOUBLE PRECISION Z2,Z3,Z4,Z5,Z6
81  DOUBLE PRECISION U1,U2,U3,U4,U5,U6,V1,V2,V3,V4,V5,V6
82  DOUBLE PRECISION Q1,Q2,Q3,Q4,Q5,Q6,H1,H2,H3,SHT,DIFFU,DIFFV,DIFFW
83 !
84  INTEGER I1,I2,I3,I4,I5,I6,IELEM,IELMU,IELMV,IELMW
85 !
86 !**********************************************************************
87 !
88  xs24 = xmul/24.d0
89  xs144 = xmul/144.d0
90 !
91  ielmu=su%ELM
92  ielmv=sv%ELM
93  ielmw=sw%ELM
94 !
95 !-----------------------------------------------------------------------
96 !
97 ! FUNCTION F AND VECTOR U ARE LINEAR
98 !
99  IF(ielmu.EQ.41.AND.ielmv.EQ.41.AND.ielmw.EQ.41) THEN
100 !
101 ! LOOP ON THE ELEMENTS
102 !
103  DO ielem = 1,nelem
104 !
105  i1 = ikle1(ielem)
106  i2 = ikle2(ielem)
107  i3 = ikle3(ielem)
108  i4 = ikle4(ielem)
109  i5 = ikle5(ielem)
110  i6 = ikle6(ielem)
111 !
112  x2 = x(ielem,2)
113  x3 = x(ielem,3)
114  y2 = y(ielem,2)
115  y3 = y(ielem,3)
116 !
117  u1 = u(i1)
118  u2 = u(i2)
119  u3 = u(i3)
120  u4 = u(i4)
121  u5 = u(i5)
122  u6 = u(i6)
123  v1 = v(i1)
124  v2 = v(i2)
125  v3 = v(i3)
126  v4 = v(i4)
127  v5 = v(i5)
128  v6 = v(i6)
129  q1 = w(i1)
130  q2 = w(i2)
131  q3 = w(i3)
132  q4 = w(i4)
133  q5 = w(i5)
134  q6 = w(i6)
135 
136  h1 = z(ikle4(ielem)) - z(ikle1(ielem))
137  h2 = z(ikle5(ielem)) - z(ikle2(ielem))
138  h3 = z(ikle6(ielem)) - z(ikle3(ielem))
139  sht = h1 + h2 + h3
140  coef=xs24*surfac(ielem)
141 !
142  z2 = z(i2) - z(i1)
143  z3 = z(i3) - z(i1)
144  z4 = z(i4) - z(i1)
145  z5 = z(i5) - z(i1)
146  z6 = z(i6) - z(i1)
147 
148 
149 ! 2(du/dx)^2
150 
151  w1(ielem)=2*(((2*u1-u6)*y2*( z5+3*z4-3*z3 -z2)
152  & +(2*u1-u5)*y3*(-z6-3*z4 +z3+3*z2)
153  & +u2*y3*(2*z6+3*z5+3*z4-2*z3)
154  & +u3*y2*(-3*z6-2*z5-3*z4+2*z2)
155  & +(u3-u6)*y3*(z5-z4+2*z2)
156  & +u4*y2*(3*z6+z5+3*z3-z2)
157  & +u4*y3*(-z6-3*z5+z3-3*z2)
158  & +(u5-u2)*y2*(z6-z4+2*z3))*xs144)**2
159 
160  w2(ielem)=2*((u1*y2*(z6+4*z5+3*z4-4*z3-4*z2)
161  & +u1*y3*(-2*z6-3*z5-3*z4+2*z3+6*z2)
162  & +(2*u2-u4)*y3*(z6+3*z5-z3)
163  & +u3*y2*(-3*z6-4*z5-z4+4*z2)
164  & +u4*y2*(2*z6+2*z5+z3-2*z2)
165  & +2*(u5-u2)*y2*(z6-z4+2*z3)
166  & +u5*y3*(z6+3*z4-z3-6*z2)
167  & +u6*y2*(-2*z5-2*z4+3*z3+2*z2)
168  & +(u6-u3)*y3*(-z5+z4-2*z2) )*xs144)**2
169 
170  w3(ielem)=2*((u1*y2*(3*z6+2*z5+3*z4-6*z3-2*z2)
171  & +u1*y3*(-4*z6-z5-3*z4+4*z3+4*z2)
172  & +u2*y3*(4*z6+3*z5+z4-4*z3)
173  & +(2*u3-u4)*y2*(-3*z6-z5+z2)
174  & +u4*y3*(-2*z6-2*z5+2*z3-z2)
175  & +(u5-u2)*y2*(z6-z4+2*z3)
176  & +u5*y3*(2*z6+2*z4-2*z3-3*z2)
177  & +u6*y2*(-z5-3*z4+6*z3+z2)
178  & +2*(u6-u3)*y3*(-z5+z4-2*z2) )*xs144)**2
179 
180  w4(ielem)=2*((u1*y2*(-3*z6+z5+6*z4-3*z3-z2)
181  & +u1*y3*(-z6+3*z5-6*z4+z3+3*z2)
182  & +u2*y3*(z6+3*z5-z3)
183  & +(2*u4-u3)*y2*(3*z6+z5-z2)
184  & +2*u4*y3*(-z6-3*z5+z3)
185  & +(u5-u2)*y2*(2*z6-2*z4+z3)
186  & +u5*y3*(2*z6+6*z4-2*z3-3*z2)
187  & +u6*y2*(-2*z5-6*z4+3*z3+2*z2)
188  & +(u6-u3)*y3*(-2*z5+2*z4-z2) )*xs144)**2
189 
190  w5(ielem)=2*((u1*y2*(-z6+2*z5+3*z4-2*z3-2*z2)
191  & +u2*y3*(z6+6*z5-3*z4-z3)
192  & +u3*y2*(-3*z6-2*z5+z4+2*z2)
193  & +u4*y2*(4*z6+4*z5-z3-4*z2)
194  & +u4*y3*(-2*z6-6*z5+2*z3+3*z2)
195  & +2*(u5-u2)*y2*(2*z6-2*z4+z3)
196  & +(2*u5-u1)*y3*(z6+3*z4-z3-3*z2)
197  & +u6*y2*(-4*z5-4*z4+3*z3+4*z2)
198  & +(u6-u3)*y3*(-2*z5+2*z4-z2) )*xs144)**2
199 
200  w6(ielem)=2*((u1*y3*(-2*z6+z5-3*z4+2*z3+2*z2)
201  & +u2*y3*(2*z6+3*z5-z4-2*z3)
202  & +u3*y2*(-6*z6-z5+3*z4+z2)
203  & +u4*y2*(6*z6+2*z5-3*z3-2*z2)
204  & +u4*y3*(-4*z6-4*z5+4*z3+z2)
205  & +(u5-u2)*y2*(2*z6-2*z4+z3)
206  & +u5*y3*(4*z6+4*z4-4*z3-3*z2)
207  & +(2*u6-u1)*y2*(-z5-3*z4+3*z3+z2)
208  & +2*(u6-u3)*y3*(-2*z5+2*z4-z2))*xs144)**2
209 
210 ! +2(dv/dy)^2
211 
212  w1(ielem)=w1(ielem)+2*(((2*v1-v6)*x2*(-z5-3*z4+3*z3+z2)
213  & +2*v1*x3*(z6+3*z4-z3-3*z2)
214  & +v2*x3*(-2*z6-3*z5-3*z4+2*z3)
215  & +v3*x2*(3*z6+2*z5+3*z4-2*z2)
216  & +v4*x2*(-3*z6-z5-3*z3+z2)
217  & +v4*x3*(z6+3*z5-z3+3*z2)
218  & +(v5-v2)*x2*(-z6+z4-2*z3)
219  & +v5*x3*(-z6-3*z4+z3+3*z2)
220  & +(v6-v3)*x3*(z5-z4+2*z2))*xs144)**2
221 
222  w2(ielem)=w2(ielem)+2*((v1*x2*(-z6-4*z5-3*z4+4*z3+4*z2)
223  & +v1*x3*(2*z6+3*z5+3*z4-2*z3-6*z2)
224  & +(2*v2-v4)*x3*(-z6-3*z5+z3)
225  & +v3*x2*(3*z6+4*z5+z4-4*z2)
226  & +v4*x2*(-2*z6-2*z5-z3+2*z2)
227  & +2*(v5-v2)*x2*(-z6+z4-2*z3)
228  & +v5*x3*(-z6-3*z4+z3+6*z2)
229  & +v6*x2*(2*z5+2*z4-3*z3-2*z2)
230  & +(v6-v3)*x3*(z5-z4+2*z2))*xs144)**2
231 
232  w3(ielem)=w3(ielem)+2*((v1*x2*(-3*z6-2*z5-3*z4+6*z3+2*z2)
233  & +v1*x3*(4*z6+z5+3*z4-4*z3-4*z2)
234  & +v2*x3*(-4*z6-3*z5-z4+4*z3)
235  & +(2*v3-v4)*x2*(3*z6+z5-z2)
236  & +v4*x3*(2*z6+2*z5-2*z3+z2)
237  & +(v5-v2)*x2*(-z6+z4-2*z3)
238  & +v5*x3*(-2*z6-2*z4+2*z3+3*z2)
239  & +v6*x2*(z5+3*z4-6*z3-z2)
240  & +2*(v6-v3)*x3*(z5-z4+2*z2))*xs144)**2
241 
242  w4(ielem)=w4(ielem)+2*((v1*x2*(3*z6-z5-6*z4+3*z3+z2)
243  & +v1*x3*(z6-3*z5+6*z4-z3-3*z2)
244  & +(2*v4-v3)*x2*(-3*z6-z5+z2)
245  & +(2*v4-v2)*x3*(z6+3*z5-z3)
246  & +(v5-v2)*x2*(-2*z6+2*z4-z3)
247  & +v5*x3*(-2*z6-6*z4+2*z3+3*z2)
248  & +v6*x2*(2*z5+6*z4-3*z3-2*z2)
249  & +(v6-v3)*x3*(2*z5-2*z4+z2))*xs144)**2
250 
251  w5(ielem)=w5(ielem)+2*((v1*x2*(z6-2*z5-3*z4+2*z3+2*z2)
252  & +v2*x3*(-z6-6*z5+3*z4+z3)
253  & +v3*x2*(3*z6+2*z5-z4-2*z2)
254  & +v4*x2*(-4*z6-4*z5+z3+4*z2)
255  & +v4*x3*(2*z6+6*z5-2*z3-3*z2)
256  & +2*(v5-v2)*x2*(-2*z6+2*z4-z3)
257  & +(2*v5-v1)*x3*(-z6-3*z4+z3+3*z2)
258  & +v6*x2*(4*z5+4*z4-3*z3-4*z2)
259  & +(v6-v3)*x3*(2*z5-2*z4+z2))*xs144)**2
260 
261  w6(ielem)=w6(ielem)+2*((v1*x3*(2*z6-z5+3*z4-2*z3-2*z2)
262  & +v2*x3*(-2*z6-3*z5+z4+2*z3)
263  & +v3*x2*(6*z6+z5-3*z4-z2)
264  & +v4*x2*(-6*z6-2*z5+3*z3+2*z2)
265  & +v4*x3*(4*z6+4*z5-4*z3-z2)
266  & +(v5-v2)*x2*(-2*z6+2*z4-z3)
267  & +v5*x3*(-4*z6-4*z4+4*z3+3*z2)
268  & +(2*v6-v1)*x2*(z5+3*z4-3*z3-z2)
269  & +2*(v6-v3)*x3*(2*z5-2*z4+z2))*xs144)**2
270 
271 !! +2(dw/dz)^2
272 
273  diffu = (u4+u5+u6)-(u1+u2+u3)
274  diffv = (v4+v5+v6)-(v1+v2+v3)
275  diffw = (q4+q5+q6)-(q1+q2+q3)
276 
277 
278  w1(ielem)=w1(ielem)+2*((q4-q1+diffw)*coef)**2
279  w2(ielem)=w2(ielem)+2*((q5-q2+diffw)*coef)**2
280  w3(ielem)=w3(ielem)+2*((q6-q3+diffw)*coef)**2
281  w4(ielem)=w4(ielem)+2*((q4-q1+diffw)*coef)**2
282  w5(ielem)=w5(ielem)+2*((q5-q2+diffw)*coef)**2
283  w6(ielem)=w6(ielem)+2*((q6-q3+diffw)*coef)**2
284 
285 
286 ! +(DU/DY+DV/DX)^2
287 !
288 !
289  w1(ielem)=w1(ielem)+
290  & (((z5+3*z4-3*z3-z2)*((2*v1-v6)*y2-(2*u1-u6)*x2)
291  & +(-z6-3*z4+z3+3*z2)*((2*v1-v5)*y3-(2*u1-u5)*x3)
292  & +(2*z6+3*z5+3*z4-2*z3)*(v2*y3-u2*x3)
293  & +(-3*z6-2*z5-3*z4+2*z2)*(v3*y2-u3*x2)
294  & +(z5-z4+2*z2)*((v3-v6)*y3-(u3-u6)*x3)
295  & +(3*z6+z5+3*z3-z2)*(v4*y2-u4*x2)
296  & +(-z6-3*z5+z3-3*z2)*(v4*y3-u4*x3)
297  & +(z6-z4+2*z3)*((v5-v2)*y2-(u5-u2)*x2))*xs144)**2
298 !
299 
300  w2(ielem)=w2(ielem)+
301  & (((z6+4*z5+3*z4-4*z3-4*z2)*(v1*y2-u1*x2)
302  & +(-2*z6-3*z5-3*z4+2*z3+6*z2)*(v1*y3-u1*x3)
303  & +(z6+3*z5-z3)*((2*v2-v4)*y3-(2*u2-u4)*x3)
304  & +(-3*z6-4*z5-z4+4*z2)*(v3*y2-u3*x2)
305  & +(2*z6+2*z5+z3-2*z2)*(v4*y2-u4*x2)
306  & +(z6-z4+2*z3)*(2*(v5-v2)*y2-2*(u5-u2)*x2)
307  & +(z6+3*z4-z3-6*z2)*(v5*y3-u5*x3)
308  & +(-2*z5-2*z4+3*z3+2*z2)*(v6*y2-u6*x2)
309  & +(-z5+z4-2*z2)*((v6-v3)*y3-(u6-u3)*x3))*xs144)**2
310 
311 
312  w3(ielem)=w3(ielem)+
313  & (((3*z6+2*z5+3*z4-6*z3-2*z2)*(v1*y2-u1*x2)
314  & +(-4*z6-z5-3*z4+4*z3+4*z2)*(v1*y3-u1*x3)
315  & +(4*z6+3*z5+z4-4*z3)*(v2*y3-u2*x3)
316  & +(-3*z6-z5+z2)*((2*v3-v4)*y2-(2*u3-u4)*x2)
317  & +(-2*z6-2*z5+2*z3-z2)*(v4*y3-u4*x3)
318  & +(z6-z4+2*z3)*((v5-v2)*y2-(u5-u2)*x2)
319  & +(2*z6+2*z4-2*z3-3*z2)*(v5*y3-u5*x3)
320  & +(-z5-3*z4+6*z3+z2)*(v6*y2-u6*x2)
321  & +(-z5+z4-2*z2)*(2*(v6-v3)*y3-2*(u6-u3)*x3))*xs144)**2
322 
323 
324  w4(ielem)=w4(ielem)+
325  & (((-3*z6+z5+6*z4-3*z3-z2)*(v1*y2-u1*x2)
326  & +(-z6+3*z5-6*z4+z3+3*z2)*(v1*y3-u1*x3)
327  & +(3*z6+z5-z2)*((2*v4-v3)*y2-(2*u4-u3)*x2)
328  & +(-z6-3*z5+z3)*((2*v4-v2)*y3-(2*u4-u2)*x3)
329  & +(2*z6-2*z4+z3)*(2*(v5-v2)*y2-2*(u5-u2)*x2)
330  & +(2*z6+6*z4-2*z3-3*z2)*(v5*y3-u5*x3)
331  & +(-2*z5-6*z4+3*z3+2*z2)*(v6*y2-u6*x2)
332  & +(-2*z5+2*z4-z2)*((v6-v3)*y3-(u6-u3)*x3))*xs144)**2
333 
334 
335  w5(ielem)=w5(ielem)+
336  & (((-z6+2*z5+3*z4-2*z3-2*z2)*(v1*y2-u1*x2)
337  & +(z6+6*z5-3*z4-z3)*(v2*y3-u2*x3)
338  & +(-3*z6-2*z5+z4+2*z2)*(v3*y2-u3*x2)
339  & +(4*z6+4*z5-z3-4*z2)*(v4*y2-u4*x2)
340  & +(-2*z6-6*z5+2*z3+3*z2)*(v4*y3-u4*x3)
341  & +(2*z6-2*z4+z3)*(2*(v5-v2)*y2-2*(u5-u2)*x2)
342  & +(z6+3*z4-z3-3*z2)*((2*v5-v1)*y3-(2*u5-u1)*x3)
343  & +(-4*z5-4*z4+3*z3+4*z2)*(v6*y2-u6*x2)
344  & +(-2*z5+2*z4-z2)*((v6-v3)*y3-(u6-u3)*x3))*xs144)**2
345 
346 
347  w6(ielem)=w6(ielem)+
348  & (((-2*z6+z5-3*z4+2*z3+2*z2)*(v1*y3-u1*x3)
349  & +(2*z6+3*z5-z4-2*z3)*(v2*y3-u2*x3)
350  & +(-6*z6-z5+3*z4+z2)*(v3*y2-u3*x2)
351  & +(6*z6+2*z5-3*z3-2*z2)*(v4*y2-u4*x2)
352  & +(-4*z6-4*z5+4*z3+z2)*(v4*y3-u4*x3)
353  & +(2*z6-2*z4+z3)*((v5-v2)*y2-(u5-u2)*x2)
354  & +(4*z6+4*z4-4*z3-3*z2)*(v5*y3-u5*x3)
355  & +(-z5-3*z4+3*z3+z2)*((2*v6-v1)*y2-(2*u6-u1)*x2)
356  & +(-2*z5+2*z4-z2)*(2*(v6-v3)*y3-2*(u6-u3)*x3))*xs144)**2
357 
358 
359 !! +(DU/DZ+DW/DX)^2
360 
361  w1(ielem)=w1(ielem)+
362  & ((u4-u1+diffu)*coef
363  & +((2*q1-q6)*y2*(z5+3*z4-3*z3 -z2)
364  & +(2*q1-q5)*y3*(-z6-3*z4 +z3+3*z2)
365  & +q2*y3*(2*z6+3*z5+3*z4-2*z3)
366  & +q3*y2*(-3*z6-2*z5-3*z4+2*z2)
367  & +(q3-q6)*y3*(z5-z4+2*z2)
368  & +q4*y2*(3*z6+z5+3*z3-z2)
369  & +q4*y3*(-z6-3*z5+z3-3*z2)
370  & +(q5-q2)*y2*(z6-z4+2*z3))*xs144)**2
371 
372 
373  w2(ielem)=w2(ielem)+
374  & ((u5-u2+diffu)*coef
375  & +(q1*y2*(z6+4*z5+3*z4-4*z3-4*z2)
376  & +q1*y3*(-2*z6-3*z5-3*z4+2*z3+6*z2)
377  & +(2*q2-q4)*y3*(z6+3*z5-z3)
378  & +q3*y2*(-3*z6-4*z5-z4+4*z2)
379  & +q4*y2*(2*z6+2*z5+z3-2*z2)
380  & +2*(q5-q2)*y2*(z6-z4+2*z3)
381  & +q5*y3*(z6+3*z4-z3-6*z2)
382  & +q6*y2*(-2*z5-2*z4+3*z3+2*z2)
383  & +(q6-q3)*y3*(-z5+z4-2*z2))*xs144)**2
384 
385 
386  w3(ielem)=w3(ielem)+
387  & ((u6-u3+diffu)*coef
388  & +(q1*y2*(3*z6+2*z5+3*z4-6*z3-2*z2)
389  & +q1*y3*(-4*z6-z5-3*z4+4*z3+4*z2)
390  & +q2*y3*(4*z6+3*z5+z4-4*z3)
391  & +(2*q3-q4)*y2*(-3*z6-z5+z2)
392  & +q4*y3*(-2*z6-2*z5+2*z3-z2)
393  & +(q5-q2)*y2*(z6-z4+2*z3)
394  & +q5*y3*(2*z6+2*z4-2*z3-3*z2)
395  & +q6*y2*(-z5-3*z4+6*z3+z2)
396  & +2*(q6-q3)*y3*(-z5+z4-2*z2) )*xs144)**2
397 
398 
399  w4(ielem)=w4(ielem)+
400  & ((u4-u1+diffu)*coef
401  & +(q1*y2*(-3*z6+z5+6*z4-3*z3-z2)
402  & +q1*y3*(-z6+3*z5-6*z4+z3+3*z2)
403  & +q2*y3*(z6+3*z5-z3)
404  & +(2*q4-q3)*y2*(3*z6+z5-z2)
405  & +2*q4*y3*(-z6-3*z5+z3)
406  & +(q5-q2)*y2*(2*z6-2*z4+z3)
407  & +q5*y3*(2*z6+6*z4-2*z3-3*z2)
408  & +q6*y2*(-2*z5-6*z4+3*z3+2*z2)
409  & +(q6-q3)*y3*(-2*z5+2*z4-z2) )*xs144)**2
410 
411 
412  w5(ielem)=w5(ielem)+
413  & ((u5-u2+diffu)*coef
414  & +(q1*y2*(-z6+2*z5+3*z4-2*z3-2*z2)
415  & +q2*y3*(z6+6*z5-3*z4-z3)
416  & +q3*y2*(-3*z6-2*z5+z4+2*z2)
417  & +q4*y2*(4*z6+4*z5-z3-4*z2)
418  & +q4*y3*(-2*z6-6*z5+2*z3+3*z2)
419  & +2*(q5-q2)*y2*(2*z6-2*z4+z3)
420  & +(2*q5-q1)*y3*(z6+3*z4-z3-3*z2)
421  & +q6*y2*(-4*z5-4*z4+3*z3+4*z2)
422  & +(q6-q3)*y3*(-2*z5+2*z4-z2) )*xs144)**2
423 
424 
425  w6(ielem)=w6(ielem)+
426  & ((u6-u3+diffu)*coef
427  & +(q1*y3*(-2*z6+z5-3*z4+2*z3+2*z2)
428  & +q2*y3*(2*z6+3*z5-z4-2*z3)
429  & +q3*y2*(-6*z6-z5+3*z4+z2)
430  & +q4*y2*(6*z6+2*z5-3*z3-2*z2)
431  & +q4*y3*(-4*z6-4*z5+4*z3+z2)
432  & +(q5-q2)*y2*(2*z6-2*z4+z3)
433  & +q5*y3*(4*z6+4*z4-4*z3-3*z2)
434  & +(2*q6-q1)*y2*(-z5-3*z4+3*z3+z2)
435  & +2*(q6-q3)*y3*(-2*z5+2*z4-z2) )*xs144)**2
436 
437 !! +(DV/DZ+DW/DY)^2
438 
439 
440 
441  w1(ielem)=w1(ielem)+
442  & ((v4-v1+diffv)*coef
443  & +((2*q1-q6)*x2*(z5+3*z4-3*z3 -z2)
444  & +(2*q1-q5)*x3*(-z6-3*z4 +z3+3*z2)
445  & +q2*x3*(2*z6+3*z5+3*z4-2*z3)
446  & +q3*x2*(-3*z6-2*z5-3*z4+2*z2)
447  & +(q3-q6)*x3*(z5-z4+2*z2)
448  & +q4*x2*(3*z6+z5+3*z3-z2)
449  & +q4*x3*(-z6-3*z5+z3-3*z2)
450  & +(q5-q2)*x2*(z6-z4+2*z3))*xs144)**2
451 
452 
453  w2(ielem)=w2(ielem)+
454  & ((v5-v2+diffv)*coef
455  & +(q1*x2*(z6+4*z5+3*z4-4*z3-4*z2)
456  & +q1*x3*(-2*z6-3*z5-3*z4+2*z3+6*z2)
457  & +(2*q2-q4)*x3*(z6+3*z5-z3)
458  & +q3*x2*(-3*z6-4*z5-z4+4*z2)
459  & +q4*x2*(2*z6+2*z5+z3-2*z2)
460  & +2*(q5-q2)*x2*(z6-z4+2*z3)
461  & +q5*x3*(z6+3*z4-z3-6*z2)
462  & +q6*x2*(-2*z5-2*z4+3*z3+2*z2)
463  & +(q6-q3)*x3*(-z5+z4-2*z2))*xs144)**2
464 
465 
466  w3(ielem)=w3(ielem)+
467  & ((v6-v3+diffv)*coef
468  & +(q1*x2*(3*z6+2*z5+3*z4-6*z3-2*z2)
469  & +q1*x3*(-4*z6-z5-3*z4+4*z3+4*z2)
470  & +q2*x3*(4*z6+3*z5+z4-4*z3)
471  & +(2*q3-q4)*x2*(-3*z6-z5+z2)
472  & +q4*x3*(-2*z6-2*z5+2*z3-z2)
473  & +(q5-q2)*x2*(z6-z4+2*z3)
474  & +q5*x3*(2*z6+2*z4-2*z3-3*z2)
475  & +q6*x2*(-z5-3*z4+6*z3+z2)
476  & +2*(q6-q3)*x3*(-z5+z4-2*z2) )*xs144)**2
477 
478 
479  w4(ielem)=w4(ielem)+
480  & ((v4-v1+diffv)*coef
481  & +(q1*x2*(-3*z6+z5+6*z4-3*z3-z2)
482  & +q1*x3*(-z6+3*z5-6*z4+z3+3*z2)
483  & +q2*x3*(z6+3*z5-z3)
484  & +(2*q4-q3)*x2*(3*z6+z5-z2)
485  & +2*q4*x3*(-z6-3*z5+z3)
486  & +(q5-q2)*x2*(2*z6-2*z4+z3)
487  & +q5*x3*(2*z6+6*z4-2*z3-3*z2)
488  & +q6*x2*(-2*z5-6*z4+3*z3+2*z2)
489  & +(q6-q3)*x3*(-2*z5+2*z4-z2) )*xs144)**2
490 
491 
492  w5(ielem)=w5(ielem)+
493  & ((v5-v2+diffv)*coef
494  & +(q1*x2*(-z6+2*z5+3*z4-2*z3-2*z2)
495  & +q2*x3*(z6+6*z5-3*z4-z3)
496  & +q3*x2*(-3*z6-2*z5+z4+2*z2)
497  & +q4*x2*(4*z6+4*z5-z3-4*z2)
498  & +q4*x3*(-2*z6-6*z5+2*z3+3*z2)
499  & +2*(q5-q2)*x2*(2*z6-2*z4+z3)
500  & +(2*q5-q1)*x3*(z6+3*z4-z3-3*z2)
501  & +q6*x2*(-4*z5-4*z4+3*z3+4*z2)
502  & +(q6-q3)*x3*(-2*z5+2*z4-z2) )*xs144)**2
503 
504 
505  w6(ielem)=w6(ielem)+
506  & ((v6-v3+diffv)*coef
507  & +(q1*x3*(-2*z6+z5-3*z4+2*z3+2*z2)
508  & +q2*x3*(2*z6+3*z5-z4-2*z3)
509  & +q3*x2*(-6*z6-z5+3*z4+z2)
510  & +q4*x2*(6*z6+2*z5-3*z3-2*z2)
511  & +q4*x3*(-4*z6-4*z5+4*z3+z2)
512  & +(q5-q2)*x2*(2*z6-2*z4+z3)
513  & +q5*x3*(4*z6+4*z4-4*z3-3*z2)
514  & +(2*q6-q1)*x2*(-z5-3*z4+3*z3+z2)
515  & +2*(q6-q3)*x3*(-2*z5+2*z4-z2) )*xs144)**2
516 
517 
518  w1(ielem)=w1(ielem)/(coef*(sht+h1))
519  w2(ielem)=w2(ielem)/(coef*(sht+h2))
520  w3(ielem)=w3(ielem)/(coef*(sht+h3))
521  w4(ielem)=w4(ielem)/(coef*(sht+h1))
522  w5(ielem)=w5(ielem)/(coef*(sht+h2))
523  w6(ielem)=w6(ielem)/(coef*(sht+h3))
524 
525 
526 !
527  ENDDO ! IELEM
528 !
529 !-----------------------------------------------------------------------
530 !
531  ELSE
532 !
533 !-----------------------------------------------------------------------
534 !
535 
536  WRITE(lu,201) ielmu,su%NAME
537  WRITE(lu,301)
538 
539 201 FORMAT(1x,'DISCRETIZATION OF U:',1i6,
540  & 1x,'REAL NAME: ',a6)
541 301 FORMAT(1x,'CASE NOT IMPLEMENTED')
542  CALL plante(1)
543  stop
544 !
545  ENDIF
546 !
547 !-----------------------------------------------------------------------
548 !
549  RETURN
550  END
551 
subroutine vc20pp(XMUL, SURFAC, SU, SV, SW, U, V, W, X, Y, Z, IKLE1, IKLE2, IKLE3, IKLE4, IKLE5, IKLE6, NELEM, NELMAX, W1, W2, W3, W4, W5, W6)
Definition: vc20pp.f:9
Definition: bief.f:3