The TELEMAC-MASCARET system  trunk
mt04cc.f
Go to the documentation of this file.
1 ! *****************
2  SUBROUTINE mt04cc
3 ! *****************
4 !
5  &( a11 , a12 , a13 , a14 , a15 , a16 ,
6  & a22 , a23 , a24 , a25 , a26 ,
7  & a33 , a34 , a35 , a36 ,
8  & a44 , a45 , a46 ,
9  & a55 , a56 ,
10  & a66 ,
11  & xmul,su,sv,u,v,xel,yel,ikle1,ikle2,ikle3,
12  & ikle4,ikle5,ikle6,nelem,nelmax)
13 !
14 !***********************************************************************
15 ! BIEF V6P1 21/08/2010
16 !***********************************************************************
17 !
18 !brief BUILDS THE SUPG MATRIX:
19 !code
20 !+ ->---> ->--->
21 !+ (U.GRAD(PI))* (U.GRAD(PJ)) WITH
22 !+
23 !+ PI OF P2 DISCRETISATION
24 !+ PJ OF P2 DISCRETISATION
25 !
26 !history A FROEHLY (MATMECA)
27 !+ 01/06/08
28 !+ V5P9
29 !+
30 !
31 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
32 !+ 13/07/2010
33 !+ V6P0
34 !+ Translation of French comments within the FORTRAN sources into
35 !+ English comments
36 !
37 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
38 !+ 21/08/2010
39 !+ V6P0
40 !+ Creation of DOXYGEN tags for automated documentation and
41 !+ cross-referencing of the FORTRAN sources
42 !
43 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44 !| A11 |<--| ELEMENTS OF MATRIX
45 !| ... |<--| ELEMENTS OF MATRIX
46 !| A66 |<--| ELEMENTS OF MATRIX
47 !| IKLE1 |-->| FIRST POINTS OF TRIANGLES
48 !| IKLE2 |-->| SECOND POINTS OF TRIANGLES
49 !| IKLE3 |-->| THIRD POINTS OF TRIANGLES
50 !| IKLE4 |-->| FOURTH POINTS OF TRIANGLES (QUADRATIC)
51 !| IKLE5 |-->| FIFTH POINTS OF TRIANGLES (QUADRATIC)
52 !| IKLE6 |-->| SIXTH POINTS OF TRIANGLES (QUADRATIC)
53 !| NELEM |-->| NUMBER OF ELEMENTS
54 !| NELMAX |-->| MAXIMUM NUMBER OF ELEMENTS
55 !| SU |-->| BIEF_OBJ STRUCTURE OF U
56 !| SURFAC |-->| AREA OF TRIANGLES
57 !| SV |-->| BIEF_OBJ STRUCTURE OF V
58 !| U |-->| FUNCTION U USED IN THE FORMULA
59 !| V |-->| FUNCTION V USED IN THE FORMULA
60 !| XEL |-->| ABSCISSAE OF POINTS IN THE MESH, PER ELEMENT
61 !| YEL |-->| ORDINATES OF POINTS IN THE MESH, PER ELEMENT
62 !| XMUL |-->| MULTIPLICATION FACTOR
63 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
64 !
65  USE bief!, EX_MT04CC => MT04CC
66 !
68  IMPLICIT NONE
69 !
70 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
71 !
72  INTEGER, INTENT(IN) :: NELEM,NELMAX
73  INTEGER, INTENT(IN) :: IKLE1(nelmax),IKLE2(nelmax)
74  INTEGER, INTENT(IN) :: IKLE3(nelmax),IKLE4(nelmax)
75  INTEGER, INTENT(IN) :: IKLE5(nelmax),IKLE6(nelmax)
76 !
77  DOUBLE PRECISION, INTENT(INOUT) :: A11(*),A12(*),A13(*)
78  DOUBLE PRECISION, INTENT(INOUT) :: A14(*),A15(*),A16(*)
79  DOUBLE PRECISION, INTENT(INOUT) :: A22(*),A23(*),A24(*)
80  DOUBLE PRECISION, INTENT(INOUT) :: A25(*),A26(*),A33(*)
81  DOUBLE PRECISION, INTENT(INOUT) :: A34(*),A35(*),A36(*)
82  DOUBLE PRECISION, INTENT(INOUT) :: A44(*),A45(*),A46(*)
83  DOUBLE PRECISION, INTENT(INOUT) :: A55(*),A56(*),A66(*)
84 !
85  DOUBLE PRECISION, INTENT(IN) :: XMUL
86  DOUBLE PRECISION, INTENT(IN) :: U(*),V(*)
87 !
88 ! STRUCTURES OF U, V
89  TYPE(bief_obj), INTENT(IN) :: SU,SV
90 !
91  DOUBLE PRECISION, INTENT(IN) :: XEL(nelmax,3),YEL(nelmax,3)
92 !
93 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
94 !
95 ! DECLARATIONS SPECIFIC TO THIS SUBROUTINE
96 !
97  INTEGER IELMU,IELMV,IELEM
98 !
99  DOUBLE PRECISION X2,X3,Y2,Y3,ANS1,ANS2,ANS3,ANS4
100  DOUBLE PRECISION U1,U2,U3,U4,U5,U6
101  DOUBLE PRECISION V1,V2,V3,V4,V5,V6
102  DOUBLE PRECISION UNSU2, AUX360, AUX180, AUX45, AUX720, AUX1260
103  DOUBLE PRECISION AUX2520, AUX630
104 !
105 !=======================================================================
106 !
107 ! EXTRACTS THE TYPE OF ELEMENT FOR VELOCITY
108 !
109  ielmu = su%ELM
110  ielmv = sv%ELM
111 !
112 !-----------------------------------------------------------------------
113 !
114  IF(ielmu.EQ.11.AND.ielmv.EQ.11) THEN
115 !
116 !-----------------------------------------------------------------------
117 !
118 ! P1 DISCRETISATION OF THE VELOCITY:
119 !
120  DO ielem = 1 , nelem
121 !
122 ! INITIALISES THE GEOMETRICAL VARIABLES
123 !
124  x2 = xel(ielem,2)
125  x3 = xel(ielem,3)
126 !
127  y2 = yel(ielem,2)
128  y3 = yel(ielem,3)
129 !
130  u1 = u(ikle1(ielem))
131  u2 = u(ikle2(ielem))
132  u3 = u(ikle3(ielem))
133  v1 = v(ikle1(ielem))
134  v2 = v(ikle2(ielem))
135  v3 = v(ikle3(ielem))
136 !
137  unsu2 = xmul/(x2*y3-y2*x3)
138 !
139  aux720 = unsu2/360.d0
140  aux360 = unsu2/180.d0
141  aux180 = unsu2/90.d0
142  aux45 = 2.d0*unsu2/45.d0
143 !
144 !
145 ! INITIALISES THE INTERMEDIATE VARIABLES
146 !
147 !
148 ! COMPUTES 15 OF THE 36 TERMS (SELECTED AMONG THE LEAST COMPLEX)
149 !
150 !
151  ans1 = 7.d0*u3**2*y2**2-14.d0*u3*y2*v3*x2-78.d0*u1*y2*v1*x2+
152  & 7.d0*v3**2*x2**2+39.d0*v1**2*x2**2-7.d0*u2*y2*v3*x2-
153  & 15.d0*u2*y2*v1*x2+39.d0*u1**2*y2**2-15.d0*v2*x2*u1*y2-
154  & 7.d0*v2*x2*u3*y2-15.d0*u3*y2*v1*x2-15.d0*u1*y2*v3*x2+
155  & 7.d0*v2**2*x2**2+7.d0*u2**2*y2**2-14.d0*u2*y2*v2*x2+
156  & 7.d0*v3**2*x3**2-30.d0*u2*y3*u1*y2+14*u3*y3*v3*x2+
157  & 15.d0*u3*y2*v1*x3-30.d0*v1*x3*v3*x2-14.d0*u3*y3*v3*x3-
158  & 78.d0*v1**2*x3*x2-15.d0*u3*y3*v1*x3+15.d0*u1*y2*v3*x3+
159  & 15.d0*u3*y3*v1*x2+7.d0*u2*y3**2.d0*u3+14.d0*u3*y2*v3*x3+
160  & 78.d0*u1*y2*v1*x3-14.d0*u3**2*y3*y2+15.d0*u1*y3**2*u3+
161  & 15.d0*u2*y3**2.d0*u1-14.d0*v3**2*x3*x2+15.d0*v1*x3**2*v3-
162  & 15.d0*u1*y3*v3*x3-78.d0*u1**2*y3*y2+78.d0*u1*y3*v1*x2+
163  & 15.d0*u1*y3*v3*x2-30.d0*u1*y3*u3*y2+15.d0*v2*x3**2*v1+
164  & 7.d0*v2*x3**2*v3-14.d0*u2**2*y3*y2+7.d0*u3**2*y3**2+
165  & 39.d0*u1**2*y3**2+14.d0*u2*y2*v2*x3-78.d0*u1*y3*v1*x3-
166  & 14.d0*v2**2*x3*x2+15.d0*v1*x2**2*v3-14.d0*u2*y3*v2*x3-
167  & 15.d0*v2*x3*u1*y3+15.d0*v2*x3*u1*y2+7.d0*v2**2*x3**2+
168  & 7.d0*u2**2*y3**2+14.d0*u2*y3*v2*x2+7.d0*v2*x2*u3*y3
169  a11(ielem) = (7.d0*v2*x2**2*v3-14.d0*v2*x3*v3*x2+
170  & 15.d0*v2*x2*u1*y3+15.d0*u2*y2*v1*x3+
171  & 7.d0*v2*x3*u3*y2-30.d0*v2*x3*v1*x2-
172  & 7.d0*v2*x3*u3*y3+39.d0*v1**2*x3**2+
173  & 7.d0*u2*y2**2*u3+15.d0*v2*x2**2*v1-
174  & 14.d0*u2*y3*u3*y2-15.d0*u2*y3*v1*x3-
175  & 7.d0*u2*y3*v3*x3+7.d0*u2*y2*v3*x3+
176  & 15.d0*u2*y3*v1*x2+7.d0*u2*y3*v3*x2+
177  & 15.d0*u2*y2**2*u1+15.d0*u1*y2**2.d0*u3+
178  & ans1) * aux360
179 !
180  a12(ielem)= (-18.d0*u1**2*y3**2-18.d0*v2**2*x3**2-
181  & 18.d0*v1**2*x3**2+18.d0*u1**2*y3*y2+
182  & 18.d0*v1**2*x3*x2-10.d0*v1*x3**2*v3+
183  & 18.d0*v2**2*x3*x2+18.d0*u2**2*y3*y2+2.d0*v3**2*x3*x2+
184  & 2.d0*u3**2*y3*y2-5.d0*v1*x2*u3*y3-v2*x3*u1*y2-
185  & 5.d0*v2*x3*u3*y2+2.d0*v2*x3*v1*x2+10.d0*v2*x3*v3*x2-
186  & v2*x2*u1*y3-5.d0*v2*x2*u3*y3-u2*y2*v1*x3-
187  & 5.d0*u2*y2*v3*x3-5.d0*v1*x3*u3*y2+10.d0*v1*x3*v3*x2+
188  & 10.d0*u1*y3*u3*y2-18.d0*u1*y3*v1*x2-5.d0*u1*y3*v3*x2-
189  & 18.d0*u1*y2*v1*x3-5.d0*u1*y2*v3*x3+2.d0*u2*y3*u1*y2+
190  & 10.d0*u2*y3*u3*y2-u2*y3*v1*x2-5.d0*u2*y3*v3*x2-
191  & 18.d0*u2*y3*v2*x2-18.d0*u2*y2*v2*x3-2.d0*u3*y3*v3*x2-
192  & 2.d0*u3*y2*v3*x3-18.d0*u2**2*y3**2+2.d0*v2*x3*u1*y3+
193  & 10.d0*v2*x3*u3*y3+10.d0*v1*x3*u3*y3+
194  & 36.d0*u1*y3*v1*x3+10.d0*u1*y3*v3*x3-
195  & 2.d0*u3**2*y3**2-2.d0*v3**2*x3**2-10.d0*v2*x3**2*v3-
196  & 10.d0*u1*y3**2*u3-2.d0*v2*x3**2*v1-10.d0*u2*y3**2*u3-
197  & 2.d0*u2*y3**2*u1+10.d0*u2*y3*v3*x3+36.d0*u2*y3*v2*x3+
198  & 4.d0*u3*y3*v3*x3+2.d0*u2*y3*v1*x3)*(-aux720)
199 !
200  a13(ielem) =(2.d0*u2**2*y2**2+18.d0*u1**2*y2**2+
201  & 18.d0*v1**2*x2**2+2.d0*v2**2*x2**2+18.d0*v3**2*x2**2+
202  & 10.d0*u2*y2**2*u3-18.d0*u1**2*y3*y2-18.d0*v1**2*x3*x2+
203  & 10.d0*u2*y2**2*u1-2.d0*v2**2*x3*x2-2.d0*u2**2*y3*y2-
204  & 18.d0*v3**2*x3*x2-18.d0*u3**2*y3*y2+v1*x2*u3*y3-
205  & 2.d0*v1*x2*u3*y2+5.d0*v2*x3*u1*y2+5.d0*v2*x3*u3*y2-
206  & 10.d0*v2*x3*v1*x2-10.d0*v2*x3*v3*x2+5.d0*v2*x2*u1*y3-
207  & 10.d0*v2*x2*u1*y2+5.d0*v2*x2*u3*y3-10.d0*v2*x2*u3*y2+
208  & 5.d0*u2*y2*v1*x3-10.d0*u2*y2*v1*x2+5.d0*u2*y2*v3*x3-
209  & 10.d0*u2*y2*v3*x2+v1*x3*u3*y2-2.d0*v1*x3*v3*x2-
210  & 2.d0*u1*y3*u3*y2+18.d0*u1*y3*v1*x2+u1*y3*v3*x2+
211  & 18.d0*u1*y2*v1*x3-36.d0*u1*y2*v1*x2+u1*y2*v3*x3-
212  & 2.d0*u1*y2*v3*x2-10.d0*u2*y3*u1*y2-10.d0*u2*y3*u3*y2+
213  & 5.d0*u2*y3*v1*x2+5.d0*u2*y3*v3*x2+2.d0*u2*y3*v2*x2+
214  & 2.d0*u2*y2*v2*x3-4.d0*u2*y2*v2*x2+18.d0*u3*y3*v3*x2+
215  & 18.d0*u3*y2*v3*x3-36.d0*u3*y2*v3*x2+18.d0*u3**2*y2**2+
216  & 10.d0*v2*x2**2*v3+10.d0*v2*x2**2*v1+2.d0*v1*x2**2*v3+
217  & 2.d0*u1*y2**2*u3) * aux720
218 !
219  ans1 = 2.d0*u3**2*y2**2-4.d0*u3*y2*v3*x2+12.d0*u1*y2*v1*x2+
220  & 2.d0*v3**2*x2**2-6.d0*v1**2*x2**2-4.d0*u2*y2*v3*x2+
221  & 4.d0*u2*y2*v1*x2-6.d0*u1**2*y2**2+4.d0*v2*x2*u1*y2-
222  & 4.d0*v2*x2*u3*y2+2.d0*u3*y2*v1*x2+2.d0*u1*y2*v3*x2+
223  & 6.d0*v2**2*x2**2+6.d0*u2**2*y2**2-12.d0*u2*y2*v2*x2+
224  & 4.d0*v3**2*x3**2-4.d0*u2*y3*u1*y2+6.d0*u3*y3*v3*x2+
225  & 4.d0*u3*y2*v1*x3-8.d0*v1*x3*v3*x2-8.d0*u3*y3*v3*x3-
226  & 18.d0*v1**2*x3*x2-10.d0*u3*y3*v1*x3+4.d0*u1*y2*v3*x3+
227  & 4.d0*u3*y3*v1*x2+6.d0*u2*y3**2*u3+6.d0*u3*y2*v3*x3+
228  & 18.d0*u1*y2*v1*x3-6.d0*u3**2*y3*y2+10.d0*u1*y3**2*u3+
229  & 8.d0*u2*y3**2*u1-6.d0*v3**2*x3*x2+10.d0*v1*x3**2*v3-
230  & 10.d0*u1*y3*v3*x3-18.d0*u1**2*y3*y2+18.d0*u1*y3*v1*x2+
231  & 4.d0*u1*y3*v3*x2-8.d0*u1*y3*u3*y2+8.d0*v2*x3**2*v1+
232  & 6.d0*v2*x3**2*v3-14.d0*u2**2*y3*y2+4.d0*u3**2*y3**2+
233  & 24.d0*u1**2*y3**2+14.d0*u2*y2*v2*x3-48.d0*u1*y3*v1*x3-
234  & 14.d0*v2**2*x3*x2-2*v1*x2**2*v3-16.d0*u2*y3*v2*x3-
235  & 8.d0*v2*x3*u1*y3+2.d0*v2*x3*u1*y2+8.d0*v2**2*x3**2+
236  & 8.d0*u2**2*y3**2+14.d0*u2*y3*v2*x2+5.d0*v2*x2*u3*y3+
237  & 4.d0*v2*x2**2*v3-10.d0*v2*x3*v3*x2+2.d0*v2*x2*u1*y3
238  a14(ielem) = (2.d0*u2*y2*v1*x3+5.d0*v2*x3*u3*y2-4.d0*v2*x3*v1*x2-
239  & 6.d0*v2*x3*u3*y3+24.d0*v1**2*x3**2+4.d0*u2*y2**2*u3-
240  & 4.d0*v2*x2**2*v1-10.d0*u2*y3*u3*y2-8.d0*u2*y3*v1*x3-
241  & 6.d0*u2*y3*v3*x3+5.d0*u2*y2*v3*x3+2.d0*u2*y3*v1*x2+
242  & 5.d0*u2*y3*v3*x2-4.d0*u2*y2**2*u1-2.d0*u1*y2**2*u3+
243  & ans1)*(- aux180)
244 !
245  ans1 = 2.d0*u3**2*y2**2-4.d0*u3*y2*v3*x2+12.d0*u1*y2*v1*x2+
246  & 2.d0*v3**2*x2**2-6.d0*v1**2*x2**2-4.d0*u2*y2*v3*x2+
247  & 4.d0*u2*y2*v1*x2-6.d0*u1**2*y2**2+4.d0*v2*x2*u1*y2-
248  & 4.d0*v2*x2*u3*y2+2.d0*u3*y2*v1*x2+2.d0*u1*y2*v3*x2+
249  & 6.d0*v2**2*x2**2+6.d0*u2**2*y2**2-12.d0*u2*y2*v2*x2+
250  & 6.d0*v3**2*x3**2+6.d0*u2*y3*u1*y2+8.d0*u3*y3*v3*x2-
251  & 3.d0*u3*y2*v1*x3+6.d0*v1*x3*v3*x2-12.d0*u3*y3*v3*x3+
252  & 12.d0*v1**2*x3*x2+4.d0*u3*y3*v1*x3-3.d0*u1*y2*v3*x3-
253  & 3.d0*u3*y3*v1*x2+4.d0*u2*y3**2*u3+8.d0*u3*y2*v3*x3-
254  & 12.d0*u1*y2*v1*x3-8.d0*u3**2*y3*y2-4.d0*u1*y3**2*u3-
255  & 2.d0*u2*y3**2.d0*u1-8.d0*v3**2*x3*x2-4.d0*v1*x3**2*v3+
256  & 4.d0*u1*y3*v3*x3+12.d0*u1**2*y3*y2-12.d0*u1*y3*v1*x2-
257  & 3.d0*u1*y3*v3*x2+6.d0*u1*y3*u3*y2-2.d0*v2*x3**2*v1+
258  & 4.d0*v2*x3**2*v3-8.d0*u2**2*y3*y2+6.d0*u3**2*y3**2-
259  & 6.d0*u1**2*y3**2+8.d0*u2*y2*v2*x3+12.d0*u1*y3*v1*x3-
260  & 8.d0*v2**2*x3*x2-2.d0*v1*x2**2*v3-4.d0*u2*y3*v2*x3+
261  & 2.d0*v2*x3*u1*y3-3.d0*v2*x3*u1*y2+2.d0*v2**2*x3**2
262  a15(ielem) = (2.d0*u2**2*y3**2+8.d0*u2*y3*v2*x2+4.d0*v2*x2*u3*y3+
263  & 4.d0*v2*x2**2*v3-8.d0*v2*x3*v3*x2-3.d0*v2*x2*u1*y3-
264  & 3.d0*u2*y2*v1*x3+4.d0*v2*x3*u3*y2+6.d0*v2*x3*v1*x2-
265  & 4.d0*v2*x3*u3*y3-6.d0*v1**2*x3**2+4.d0*u2*y2**2*u3-
266  & 4.d0*v2*x2**2*v1-8.d0*u2*y3*u3*y2+2.d0*u2*y3*v1*x3-
267  & 4.d0*u2*y3*v3*x3+4.d0*u2*y2*v3*x3-3.d0*u2*y3*v1*x2+
268  & 4.d0*u2*y3*v3*x2-4.d0*u2*y2**2*u1-2.d0*u1*y2**2*u3+
269  & ans1)* aux180
270 !
271  ans1 = 8.d0*u3**2*y2**2-16.d0*u3*y2*v3*x2-48.d0*u1*y2*v1*x2+
272  & 8.d0*v3**2*x2**2+24.d0*v1**2*x2**2-6.d0*u2*y2*v3*x2-
273  & 10.d0*u2*y2*v1*x2+24.d0*u1**2*y2**2-10.d0*v2*x2*u1*y2-
274  & 6.d0*v2*x2*u3*y2-8.d0*u3*y2*v1*x2-8.d0*u1*y2*v3*x2+
275  & 4.d0*v2**2*x2**2+4.d0*u2**2*y2**2-8.d0*u2*y2*v2*x2+
276  & 6.d0*v3**2*x3**2-8.d0*u2*y3*u1*y2+14.d0*u3*y3*v3*x2+
277  & 2.d0*u3*y2*v1*x3-4.d0*v1*x3*v3*x2-12.d0*u3*y3*v3*x3-
278  & 18.d0*v1**2*x3*x2+4.d0*u3*y3*v1*x3+2.d0*u1*y2*v3*x3+
279  & 2.d0*u3*y3*v1*x2+4.d0*u2*y3**2*u3+14.d0*u3*y2*v3*x3+
280  & 18.d0*u1*y2*v1*x3-14.d0*u3**2*y3*y2-4.d0*u1*y3**2*u3-
281  & 2.d0*u2*y3**2*u1-14.d0*v3**2*x3*x2-4.d0*v1*x3**2*v3+
282  & 4.d0*u1*y3*v3*x3-18.d0*u1**2*y3*y2+18.d0*u1*y3*v1*x2+
283  & 2.d0*u1*y3*v3*x2-4.d0*u1*y3*u3*y2-2.d0*v2*x3**2*v1+
284  & 4.d0*v2*x3**2*v3-6.d0*u2**2*y3*y2+6.d0*u3**2*y3**2-
285  & 6.d0*u1**2*y3**2+6.d0*u2*y2*v2*x3+12.d0*u1*y3*v1*x3-
286  & 6.d0*v2**2*x3*x2+8.d0*v1*x2**2*v3-4.d0*u2*y3*v2*x3+
287  & 2.d0*v2*x3*u1*y3+4.d0*v2*x3*u1*y2+2.d0*v2**2*x3**2+
288  & 2.d0*u2**2*y3**2+6.d0*u2*y3*v2*x2+5.d0*v2*x2*u3*y3+
289  & 6.d0*v2*x2**2*v3-10.d0*v2*x3*v3*x2+4.d0*v2*x2*u1*y3+
290  & 4.d0*u2*y2*v1*x3+5.d0*v2*x3*u3*y2-8.d0*v2*x3*v1*x2
291  a16(ielem) = (-4.d0*v2*x3*u3*y3-6.d0*v1**2*x3**2+6.d0*u2*y2**2*u3+
292  & 10.d0*v2*x2**2*v1-10.d0*u2*y3*u3*y2+2.d0*u2*y3*v1*x3-
293  & 4.d0*u2*y3*v3*x3+5.d0*u2*y2*v3*x3+4.d0*u2*y3*v1*x2+
294  & 5.d0*u2*y3*v3*x2+10.d0*u2*y2**2*u1+8.d0*u1*y2**2*u3+
295  & ans1)*(-aux180)
296 !
297  a22(ielem)= ((7.d0*(v1*v3+v3**2+v1**2)+39.d0*v2**2+
298  & 15.d0*(v2*v3+v2*v1))*x3**2+(-7.d0*u3*v1-
299  & 14.d0*(u1*v1+u3*v3)-15.d0*(u2*v1+v2*u3+v2*u1+u2*v3)-
300  & 78.d0*u2*v2-7.d0*u1*v3)*y3*x3+(7.d0*(u1**2+u3**2+
301  & u1*u3)+39.d0*u2**2+15.d0*(u2*u3+u2*u1))*y3**2)
302  & *aux360
303 !
304  a23(ielem)=(((10.d0*(v1*v3+v2*v1)+18.d0*(v3**2+v2**2)+2.d0*(v2*v3+
305  & v1**2))*x3+(-u2*v3-v2*u3-5.d0*(u1*v3+u3*v1+v2*u1+
306  & u2*v1)-18.d0*(u2*v2+u3*v3)-2.d0*u1*v1)*y3)*x2+(-u2*v3-
307  & v2*u3-5.d0*(u1*v3+u3*v1+u2*v1+v2*u1)-18.d0*(u2*v2+
308  & u3*v3)-2.d0*u1*v1)*y2*x3+(18.d0*(u2**2+u3**2)+
309  & 2.d0*(u2*u3+u1**2)+10.d0*(u2*u1+u1*u3))*y3*y2)*aux720
310 !
311  a24(ielem) = (-8.d0*u1**2*y3**2-24.d0*v2**2*x3**2-
312  & 8.d0*v1**2*x3**2+2.d0*u1**2*y3*y2+2.d0*v1**2*x3*x2-
313  & 6.d0*v1*x3**2*v3+30.d0*v2**2*x3*x2+
314  & 30.d0*u2**2*y3*y2+2.d0*v3**2*x3*x2+2.d0*u3**2*y3*y2-
315  & v1*x2*u3*y3-6.d0*v2*x3*u1*y2-6.d0*v2*x3*u3*y2+
316  & 12.d0*v2*x3*v1*x2+12.d0*v2*x3*v3*x2-6.d0*v2*x2*u1*y3-
317  & 6.d0*v2*x2*u3*y3-6.d0*u2*y2*v1*x3-6.d0*u2*y2*v3*x3-
318  & v1*x3*u3*y2+2.d0*v1*x3*v3*x2+2.d0*u1*y3*u3*y2-
319  & 2.d0*u1*y3*v1*x2-u1*y3*v3*x2-2.d0*u1*y2*v1*x3-
320  & u1*y2*v3*x3+12.d0*u2*y3*u1*y2+12.d0*u2*y3*u3*y2-
321  & 6.d0*u2*y3*v1*x2-6.d0*u2*y3*v3*x2-30.d0*u2*y3*v2*x2-
322  & 30.d0*u2*y2*v2*x3-2.d0*u3*y3*v3*x2-2.d0*u3*y2*v3*x3-
323  & 24.d0*u2**2*y3**2+8.d0*v2*x3*u1*y3+10.d0*v2*x3*u3*y3+
324  & 6.d0*v1*x3*u3*y3+16.d0*u1*y3*v1*x3+6.d0*u1*y3*v3*x3-
325  & 4.d0*u3**2*y3**2-4.d0*v3**2*x3**2-10.d0*v2*x3**2*v3-
326  & 6.d0*u1*y3**2*u3-8.d0*v2*x3**2*v1-10.d0*u2*y3**2*u3-
327  & 8.d0*u2*y3**2*u1+10.d0*u2*y3*v3*x3+48.d0*u2*y3*v2*x3+
328  & 8.d0*u3*y3*v3*x3+8*u2*y3*v1*x3)*aux180
329 !
330  a25(ielem) = (6.d0*v3**2*x3**2+12.d0*u2*y3*u1*y2-2.d0*u3*y3*v3*x2-
331  & u3*y2*v1*x3+2.d0*v1*x3*v3*x2-12.d0*u3*y3*v3*x3+
332  & 2.d0*v1**2*x3*x2-4.d0*u3*y3*v1*x3-u1*y2*v3*x3-
333  & u3*y3*v1*x2-4.d0*u2*y3**2*u3-2.d0*u3*y2*v3*x3-
334  & 2.d0*u1*y2*v1*x3+2.d0*u3**2*y3*y2+4.d0*u1*y3**2*u3-
335  & 2.d0*u2*y3**2*u1+2.d0*v3**2*x3*x2+4.d0*v1*x3**2*v3-
336  & 4.d0*u1*y3*v3*x3+2.d0*u1**2*y3*y2-2.d0*u1*y3*v1*x2-
337  & u1*y3*v3*x2+2.d0*u1*y3*u3*y2-2.d0*v2*x3**2.d0*v1-
338  & 4.d0*v2*x3**2*v3+30.d0*u2**2*y3*y2+6.d0*u3**2*y3**2+
339  & 2.d0*u1**2*y3**2-30.d0*u2*y2*v2*x3-4.d0*u1*y3*v1*x3+
340  & 30.d0*v2**2*x3*x2+12.d0*u2*y3*v2*x3+2.d0*v2*x3*u1*y3-
341  & 6.d0*v2*x3*u1*y2-6.d0*v2**2*x3**2-6.d0*u2**2*y3**2-
342  & 30.d0*u2*y3*v2*x2-6.d0*v2*x2*u3*y3+12.d0*v2*x3*v3*x2-
343  & 6.d0*v2*x2*u1*y3-6.d0*u2*y2*v1*x3-6.d0*v2*x3*u3*y2+
344  & 12.d0*v2*x3*v1*x2+4.d0*v2*x3*u3*y3+2.d0*v1**2*x3**2+
345  & 12.d0*u2*y3*u3*y2+2.d0*u2*y3*v1*x3+4.d0*u2*y3*v3*x3-
346  & 6.d0*u2*y2*v3*x3-6.d0*u2*y3*v1*x2-6.d0*u2*y3*v3*x2)*
347  & (-aux180)
348 !
349  a26(ielem) = (2.d0*u1**2*y3**2-6.d0*v2**2*x3**2+2.d0*v1**2*x3**2+
350  & 4.d0*u1**2*y3*y2+4.d0*v1**2*x3*x2+4.d0*v1*x3**2*v3-
351  & 4.d0*v3**2*x3*x2-4.d0*u3**2*y3*y2+v2*x3*u1*y2-
352  & v2*x3*u3*y2-2.d0*v2*x3*v1*x2+2.d0*v2*x3*v3*x2+
353  & v2*x2*u1*y3-v2*x2*u3*y3+u2*y2*v1*x3-u2*y2*v3*x3-
354  & 4.d0*u1*y3*v1*x2-4.d0*u1*y2*v1*x3-2.d0*u2*y3*u1*y2+
355  & 2.d0*u2*y3*u3*y2+u2*y3*v1*x2-u2*y3*v3*x2+
356  & 4.d0*u3*y3*v3*x2+4.d0*u3*y2*v3*x3-6.d0*u2**2*y3**2+
357  & 2.d0*v2*x3*u1*y3+4.d0*v2*x3*u3*y3-4.d0*v1*x3*u3*y3-
358  & 4.d0*u1*y3*v1*x3-4.d0*u1*y3*v3*x3+6.d0*u3**2*y3**2+
359  & 6.d0*v3**2*x3**2-4.d0*v2*x3**2*v3+4.d0*u1*y3**2*u3-
360  & 2.d0*v2*x3**2*v1-4.d0*u2*y3**2*u3-2.d0*u2*y3**2*u1+
361  & 4.d0*u2*y3*v3*x3+12.d0*u2*y3*v2*x3-12.d0*u3*y3*v3*x3+
362  & 2.d0*u2*y3*v1*x3)*aux180
363 !
364  a33(ielem) = (15.d0*u2*y2**2*u3+7.d0*u2*y2**2*u1+7.d0*u1**2*y2**2+
365  & 7.d0*v1**2*x2**2+7.d0*u2**2*y2**2+7.d0*v2**2*x2**2+
366  & 39.d0*v3**2*x2**2-15.d0*v1*x2*u3*y2-7.d0*v2*x2*u1*y2-
367  & 15.d0*v2*x2*u3*y2-7.d0*u2*y2*v1*x2-15.d0*u2*y2*v3*x2-
368  & 14.d0*u1*y2*v1*x2-15.d0*u1*y2*v3*x2-
369  & 14.d0*u2*y2*v2*x2+15.d0*v2*x2**2*v3+
370  & 39.d0*u3**2*y2**2-78.d0*u3*y2*v3*x2+
371  & 7.d0*v2*x2**2*v1+15.d0*v1*x2**2*v3+
372  & 15.d0*u1*y2**2*u3)*aux360
373 !
374  a34(ielem) = (-(6.d0*(v3**2-v2**2)+4.d0*(v2*v3-v2*v1)-2.d0*(v1**2-
375  & v1*v3))*x2**2+(-(-2.d0*(v2*v3-v1*v3)+4.d0*(v2**2-
376  & v1**2))*x3-(-4.d0*(u2*v3-v2*u1+v2*u3-u1*v1-u2*v1)+
377  & 12.d0*(u2*v2-u3*v3)-2.d0*(u1*v3+u3*v1))*y2-
378  & (4.d0*(u1*v1-u2*v2)-u3*v1+v2*u3-u1*v3+u2*v3)*y3)*x2-
379  & (4.d0*(u1*v1-u2*v2)-u3*v1+v2*u3-u1*v3+
380  & u2*v3)*y2*x3-(-2.d0*(u1**2-u1*u3)-6.d0*(u2**2-u3**2)-
381  & 4.d0*(u2*u1-u2*u3))*y2**2-(4.d0*(u2**2-u1**2)+
382  & 2.d0*(u1*u3-u2*u3))*y3*y2)*aux180
383 !
384  a35(ielem) = -(6.d0*u2**2*y2**2+2.d0*u1**2*y2**2+2.d0*v1**2*x2**2+
385  & 6.d0*v2**2*x2**2-6.d0*v3**2*x2**2-4.d0*u2*y2**2*u3+
386  & 2.d0*u1**2*y3*y2+2.d0*v1**2*x3*x2+4.d0*u2*y2**2*u1+
387  & 2.d0*v2**2*x3*x2+2.d0*u2**2*y3*y2+30.d0*v3**2*x3*x2+
388  & 30.d0*u3**2*y3*y2-6.d0*v1*x2*u3*y3+2.d0*v1*x2*u3*y2-
389  & v2*x3*u1*y2-6.d0*v2*x3*u3*y2+2.d0*v2*x3*v1*x2+
390  & 12.d0*v2*x3*v3*x2-v2*x2*u1*y3-4.d0*v2*x2*u1*y2-
391  & 6.d0*v2*x2*u3*y3+4.d0*v2*x2*u3*y2-u2*y2*v1*x3-
392  & 4.d0*u2*y2*v1*x2-6.d0*u2*y2*v3*x3+4.d0*u2*y2*v3*x2-
393  & 6.d0*v1*x3*u3*y2+12.d0*v1*x3*v3*x2+12.d0*u1*y3*u3*y2-
394  & 2.d0*u1*y3*v1*x2-6.d0*u1*y3*v3*x2-2.d0*u1*y2*v1*x3-
395  & 4.d0*u1*y2*v1*x2-6.d0*u1*y2*v3*x3+2.d0*u1*y2*v3*x2+
396  & 2.d0*u2*y3*u1*y2+12.d0*u2*y3*u3*y2-u2*y3*v1*x2-
397  & 6.d0*u2*y3*v3*x2-2.d0*u2*y3*v2*x2-2.d0*u2*y2*v2*x3-
398  & 12.d0*u2*y2*v2*x2-30.d0*u3*y3*v3*x2-
399  & 30.d0*u3*y2*v3*x3+12.d0*u3*y2*v3*x2-6.d0*u3**2*y2**2-
400  & 4.d0*v2*x2**2*v3+4.d0*v2*x2**2*v1-2.d0*v1*x2**2*v3-
401  & 2.d0*u1*y2**2*u3)*aux180
402 !
403  ans1 = u3**2*y2**2-2.d0*u3*y2*v3*x2-2.d0*u1*y2*v1*x2+v3**2*x2**2+
404  & v1**2*x2**2-3.d0*u2*y2*v3*x2-3.d0*u2*y2*v1*x2+u1**2*y2**2-
405  & 3.d0*v2*x2*u1*y2-3.d0*v2*x2*u3*y2-u3*y2*v1*x2-u1*y2*v3*x2+
406  & 6.d0*v2**2*x2**2+6.d0*u2**2*y2**2-12.d0*u2*y2*v2*x2+
407  & v3**2*x3**2-2.d0*u2*y3*u1*y2+u3*y3*v3*x2-2.d0*u3*y3*v3*x3+
408  & v1**2*x3*x2-2.d0*u3*y3*v1*x3+2.d0*u2*y3**2*u3+u3*y2*v3*x3-
409  & u1*y2*v1*x3-u3**2*y3*y2+2.d0*u1*y3**2*u3+2.d0*u2*y3**2*u1-
410  & v3**2*x3*x2+2.d0*v1*x3**2*v3-2.d0*u1*y3*v3*x3+u1**2*y3*y2-
411  & u1*y3*v1*x2+2.d0*v2*x3**2*v1+2.d0*v2*x3**2*v3-
412  & 9.d0*u2**2*y3*y2+u3**2*y3**2+4.d0*u1**2*y3**2+
413  & 9.d0*u2*y2*v2*x3-8.d0*u1*y3*v1*x3-9.d0*v2**2*x3*x2+
414  & v1*x2**2*v3-8.d0*u2*y3*v2*x3-2.d0*v2*x3*u1*y3+
415  & v2*x3*u1*y2+4.d0*v2**2*x3**2+4.d0*u2**2*y3**2+
416  & 9.d0*u2*y3*v2*x2+2.d0*v2*x2*u3*y3+3.d0*v2*x2**2*v3-
417  & 4.d0*v2*x3*v3*x2+v2*x2*u1*y3+u2*y2*v1*x3+2.d0*v2*x3*u3*y2-
418  & 2.d0*v2*x3*v1*x2-2.d0*v2*x3*u3*y3+4.d0*v1**2*x3**2+
419  & 3.d0*u2*y2**2.d0*u3+3.d0*v2*x2**2*v1-4.d0*u2*y3*u3*y2-
420  & 2.d0*u2*y3*v1*x3-2.d0*u2*y3*v3*x3+2.d0*u2*y2*v3*x3+
421  & u2*y3*v1*x2+2.d0*u2*y3*v3*x2+3.d0*u2*y2**2*u1+u1*y2**2*u3
422  a44(ielem) = ans1*aux45*2.d0
423 !
424  ans1 = 2.d0*u3**2*y2**2-4.d0*u3*y2*v3*x2-4.d0*u1*y2*v1*x2+
425  & 2.d0*v3**2*x2**2+2.d0*v1**2*x2**2-6.d0*u2*y2*v3*x2-
426  & 6.d0*u2*y2*v1*x2+2.d0*u1**2*y2**2-6.d0*v2*x2*u1*y2-
427  & 6.d0*v2*x2*u3*y2-2.d0*u3*y2*v1*x2-2.d0*u1*y2*v3*x2+
428  & 12.d0*v2**2*x2**2+12.d0*u2**2*y2**2-24.d0*u2*y2*v2*x2-
429  & 4.d0*u2*y3*u1*y2+4.d0*u3*y3*v3*x2+u3*y2*v1*x3-
430  & 2.d0*v1*x3*v3*x2+2.d0*u3*y3*v1*x3+u1*y2*v3*x3+u3*y3*v1*x2+
431  & 2.d0*u2*y3**2*u3+4.d0*u3*y2*v3*x3-4.d0*u3**2*y3*y2-
432  & 2.d0*u1*y3**2*u3-4.d0*v3**2*x3*x2-2.d0*v1*x3**2*v3+
433  & 2.d0*u1*y3*v3*x3+u1*y3*v3*x2-2.d0*u1*y3*u3*y2+
434  & 2.d0*v2*x3**2*v3-12.d0*u2**2*y3*y2-2.d0*u1**2*y3**2+
435  & 12.d0*u2*y2*v2*x3+4.d0*u1*y3*v1*x3-12.d0*v2**2*x3*x2+
436  & 2.d0*v1*x2**2*v3-4.d0*u2*y3*v2*x3+2.d0*v2*x3*u1*y2+
437  & 2.d0*v2**2*x3**2+2.d0*u2**2*y3**2+12.d0*u2*y3*v2*x2+
438  & 4.d0*v2*x2*u3*y3+6.d0*v2*x2**2*v3-8.d0*v2*x3*v3*x2+
439  & 2.d0*v2*x2*u1*y3+2.d0*u2*y2*v1*x3+4.d0*v2*x3*u3*y2-
440  & 4.d0*v2*x3*v1*x2-2.d0*v2*x3*u3*y3-2.d0*v1**2*x3**2+
441  & 6.d0*u2*y2**2*u3+6.d0*v2*x2**2*v1-8.d0*u2*y3*u3*y2-
442  & 2.d0*u2*y3*v3*x3+4.d0*u2*y2*v3*x3+2.d0*u2*y3*v1*x2+
443  & 4.d0*u2*y3*v3*x2+6.d0*u2*y2**2*u1+2.d0*u1*y2**2*u3
444  a45(ielem) = ans1*(-aux45)
445 !
446  ans1 = u3**2*y2**2-2.d0*u3*y2*v3*x2-2.d0*u1*y2*v1*x2+v3**2*x2**2+
447  & v1**2*x2**2-3.d0*u2*y2*v3*x2-3.d0*u2*y2*v1*x2+u1**2*y2**2-
448  & 3.d0*v2*x2*u1*y2-3.d0*v2*x2*u3*y2-u3*y2*v1*x2-u1*y2*v3*x2+
449  & 6.d0*v2**2*x2**2+6.d0*u2**2*y2**2-12.d0*u2*y2*v2*x2+
450  & 6.d0*v3**2*x3**2-2.d0*u2*y3*u1*y2+3.d0*u3*y3*v3*x2+
451  & u3*y2*v1*x3-2.d0*v1*x3*v3*x2-12.d0*u3*y3*v3*x3-v1**2*x3*x2-
452  & 3.d0*u3*y3*v1*x3+u1*y2*v3*x3+u3*y3*v1*x2+3.d0*u2*y3**2*u3+
453  & 3.d0*u3*y2*v3*x3+u1*y2*v1*x3-3.d0*u3**2*y3*y2+
454  & 3.d0*u1*y3**2*u3+u2*y3**2*u1-3.d0*v3**2*x3*x2+
455  & 3.d0*v1*x3**2*v3-3.d0*u1*y3*v3*x3-u1**2*y3*y2+u1*y3*v1*x2+
456  & u1*y3*v3*x2-2.d0*u1*y3*u3*y2+v2*x3**2*v1+3.d0*v2*x3**2*v3-
457  & 3.d0*u2**2*y3*y2+6.d0*u3**2*y3**2+u1**2*y3**2+
458  & 3.d0*u2*y2*v2*x3-2.d0*u1*y3*v1*x3-3.d0*v2**2*x3*x2+
459  & v1*x2**2*v3-2.d0*u2*y3*v2*x3-v2*x3*u1*y3+v2*x3*u1*y2+
460  & v2**2*x3**2+u2**2*y3**2+3.d0*u2*y3*v2*x2+2.d0*v2*x2*u3*y3+
461  & 3.d0*v2*x2**2*v3-4.d0*v2*x3*v3*x2+v2*x2*u1*y3+u2*y2*v1*x3+
462  & 2.d0*v2*x3*u3*y2-2.d0*v2*x3*v1*x2-3.d0*v2*x3*u3*y3+
463  & v1**2*x3**2+3.d0*u2*y2**2*u3+3.d0*v2*x2**2*v1-
464  & 4.d0*u2*y3*u3*y2-u2*y3*v1*x3-3.d0*u2*y3*v3*x3+
465  & 2.d0*u2*y2*v3*x3+u2*y3*v1*x2+2.d0*u2*y3*v3*x2
466  a55(ielem) = (3.d0*u2*y2**2*u1+u1*y2**2*u3+ans1)*2.d0*aux45
467 !
468 !
469 ! USES HERE THE 'MAGIC SQUARE' PROPERTIES
470 ! (SUM OF EACH LINE = SUM OF EACH COLUMN = 0)
471 !
472  a16(ielem) = - a11(ielem) - a12(ielem) - a13(ielem)
473  & - a14(ielem) - a15(ielem)
474 !
475  a26(ielem) = - a12(ielem) - a22(ielem) - a23(ielem)
476  & - a24(ielem) - a25(ielem)
477 !
478  a36(ielem) = - a13(ielem) - a23(ielem) - a33(ielem)
479  & - a34(ielem) - a35(ielem)
480 !
481  a46(ielem) = - a14(ielem) - a24(ielem) - a34(ielem)
482  & - a44(ielem) - a45(ielem)
483 !
484  a56(ielem) = - a15(ielem) - a25(ielem) - a35(ielem)
485  & - a45(ielem) - a55(ielem)
486 !
487  a66(ielem) = - a16(ielem) - a26(ielem) - a36(ielem)
488  & - a46(ielem) - a56(ielem)
489 !
490  ENDDO ! IELEM
491 !
492 !-----------------------------------------------------------------------
493 !
494  ELSEIF(ielmu.EQ.13.AND.ielmv.EQ.13) THEN
495 !
496 !-----------------------------------------------------------------------
497 !
498 ! P2 DISCRETISATION OF THE VELOCITY:
499 !
500  DO ielem = 1 , nelem
501 !
502 ! INITIALISES THE GEOMETRICAL VARIABLES
503 !
504  x2 = xel(ielem,2)
505  x3 = xel(ielem,3)
506 !
507  y2 = yel(ielem,2)
508  y3 = yel(ielem,3)
509 !
510  u1 = u(ikle1(ielem))
511  u2 = u(ikle2(ielem))
512  u3 = u(ikle3(ielem))
513  u4 = u(ikle4(ielem))
514  u5 = u(ikle5(ielem))
515  u6 = u(ikle6(ielem))
516  v1 = v(ikle1(ielem))
517  v2 = v(ikle2(ielem))
518  v3 = v(ikle3(ielem))
519  v4 = v(ikle4(ielem))
520  v5 = v(ikle5(ielem))
521  v6 = v(ikle6(ielem))
522 !
523 ! INITIALISES THE INTERMEDIATE VARIABLES
524 !
525  unsu2 = xmul/(x2*y3-y2*x3)
526  aux630 = unsu2/630.d0
527  aux1260 = unsu2/1260.d0
528  aux2520 = unsu2/2520.d0
529 !
530 ! COMPUTES 15 OF THE 36 TERMS (SELECTED AMONG THE LEAST COMPLEX)
531 !
532  ans1 = 112.d0*v4**2*x2**2-96.d0*u5*y2*v5*x2+23.d0*v1*x2*u3*y2+
533  & 224.d0*u4*y2*v4*x3+48.d0*u5*y3*v4*x2+48.d0*v5*x2*u4*y3+
534  & 48.d0*u5**2*y2**2-224.d0*u4*y2*v4*x2-96.d0*u1*y3*v6*x3+
535  & 96.d0*u5*y3*v5*x2+48.d0*v5*x3*u4*y2-48.d0*u5*y3*v4*x3+
536  & 13.d0*v2**2*x3**2+48.d0*v5**2*x3**2+96.d0*u5*y2*v5*x3-
537  & 48.d0*v5*x3*u4*y3+48.d0*u5*y2*v4*x3-96.d0*v5*x3*v4*x2+
538  & 224.d0*v4*x2*u4*y3-224.d0*v4*x3*u4*y3+13.d0*u2**2*y3**2-
539  & 32.d0*v2*x2*u4*y3+112.d0*u4**2*y3**2-192.d0*v1*x3*v6*x2-
540  & 186.d0*v1*x3*u1*y3+23.d0*u1*y3*v3*x3-28.d0*u2*y2**2*u6+
541  & 13.d0*v2**2*x2**2-96.d0*u4*y2*v1*x2-112.d0*u4*y2*v6*x2+
542  & 96.d0*u1*y3*v6*x2-112.d0*v4*x3*u6*y3+112.d0*v4**2*x3**2-
543  & 112.d0*u4*y3*v6*x3-96.d0*v4*x2*u1*y2-112.d0*v4*x2*u6*y2+
544  & 112.d0*u6**2*y3**2-32.d0*u2*y2*v4*x3+32.d0*u2*y2*v4*x2+
545  & 28.d0*u2*y3*v6*x3+13.d0*u2**2*y2**2+13.d0*u3**2*y3**2-
546  & 96.d0*v5*x3*u5*y3+48.d0*u5*y3**2*u6-96.d0*u5*y2*u4*y3+
547  & 93.d0*u1**2*y3**2+93.d0*v1**2*x3**2+13.d0*v3**2*x3**2+
548  & 112.d0*v6**2*x3**2+48.d0*u5*y2**2*u6-224.d0*v6**2*x3*x2-
549  & 26.d0*v3**2*x3*x2-26.d0*v2**2*x2*x3-224.d0*u6**2*y2*y3+
550  & 48.d0*u5**2*y3**2+48.d0*v5*x2**2*v4-32.d0*v2*x2**2*v4+
551  & 4.d0*u5*y2**2*u1+32.d0*v2*x2*u4*y2+112.d0*u6**2*y2**2
552  ans2 = -32.d0*v2*x3**2*v4-28.d0*v2*x2**2*v6-
553  & 32.d0*u2*y2**2*u4+v2*x2**2*v3-28.d0*v4*x2**2*v3-
554  & 26.d0*v2*x2*u2*y2-32.d0*u3*y3**2*u6+93.d0*v1**2*x2**2-
555  & 186.d0*u1**2*y3*y2+96.d0*u1*y2**2*u6+112.d0*v6**2*x2**2+
556  & 4.d0*u5*y3**2*u1+v2*x3**2*v3-26.d0*u2**2*y2*y3+
557  & 96.d0*v4*x2**2*v1+4.d0*v5*x2**2*v1+96.d0*v4*x3**2*v1+
558  & 96.d0*v1*x2**2*v6-u2*y2*v3*x2+48.d0*v5**2*x2**2-
559  & 23.d0*v1*x3**2*v3-v2*x3*u3*y3+13.d0*v3**2*x2**2-
560  & 28.d0*u4*y2**2*u3-u2*y3*v3*x3-28.d0*u2*y3**2*u6-
561  & 23.d0*u2*y3**2*u1-23.d0*u1*y3**2*u3+112.d0*u4*y3**2*u6-
562  & 186.d0*v1*x2*u1*y2-96.d0*v1*x3*u6*y3-224.d0*u4**2*y2*y3-
563  & 224.d0*v4**2*x3*x2-23.d0*u1*y2**2*u3-32.d0*v6*x3**2*v3-
564  & 48.d0*v5*x2*u4*y2-48.d0*u5*y2*v4*x2-26.d0*u3**2*y3*y2-
565  & 186.d0*v1**2*x3*x2-23.d0*v2*x3**2*v1-v2*x2*u3*y2+
566  & 96.d0*u4*y2**2*u1-23.d0*v1*x2**2*v3+48.d0*v5*x2**2*v6+
567  & u2*y2**2*u3-28.d0*u4*y3**2*u3-32.d0*u2*y3**2*u4+
568  & 4.d0*v5*x3**2*v1-96.d0*u5**2*y2*y3-96.d0*v5**2*x3*x2+
569  & 48.d0*v5*x3**2*v4+48.d0*u5*y3**2*u4+13.d0*u3**2*y2**2+
570  & 224.d0*v6*x2*u6*y3-224.d0*v6*x2*u6*y2+32.d0*v6*x2*u3*y2-
571  & 32.d0*v3*x2**2*v6-32.d0*u2*y3*v4*x2+32.d0*u2*y3*v4*x3
572  ans3 = 48.d0*v5*x3**2*v6-26.d0*v3*x2*u3*y2+32.d0*v3*x2*u6*y2-
573  & 32.d0*v2*x3*u4*y2+93.d0*u1**2*y2**2+23.d0*u1*y2*v3*x2+
574  & 32.d0*v2*x3*u4*y3+224.d0*v6*x3*u6*y2-96.d0*u1*y2*v6*x2+
575  & 28.d0*v4*x2*u3*y2+26.d0*v2*x2*u2*y3+23.d0*v1*x3*u3*y3+
576  & 26.d0*u2*y2*v2*x3-26.d0*u2*y3*v2*x3+112.d0*v4*x3**2*v6+
577  & 4.d0*u5*y3*v1*x2-4.d0*u5*y3*v1*x3+u2*y3**2*u3-
578  & 192.d0*u1*y3*u6*y2+112.d0*u4*y2**2*u6+96.d0*v1*x3*u6*y2+
579  & 112.d0*u4**2*y2**2-96.d0*u5*y2*u6*y3+46.d0*u1*y3*u3*y2+
580  & 96.d0*v1*x3**2*v6+28.d0*u4*y2*v3*x2+48.d0*v5*x3*u6*y2-
581  & 23.d0*u1*y3*v3*x2-4.d0*v5*x3*u1*y3-8.d0*v5*x3*v1*x2-
582  & 48.d0*v5*x2*u6*y2+96.d0*u1*y3**2*u6-4.d0*v5*x2*u1*y2-
583  & 8.d0*u5*y2*u1*y3+48.d0*u5*y2**2*u4+26.d0*v3*x3*u3*y2+
584  & 26.d0*v3*x2*u3*y3-32.d0*v3*x2*u6*y3+64.d0*u3*y3*u6*y2-
585  & 96.d0*v5*x3*v6*x2-32.d0*u3*y3*v6*x2+186.d0*v1*x2*u1*y3+
586  & 96.d0*v1*x2*u6*y3+4.d0*v5*x3*u1*y2+46.d0*v1*x3*v3*x2+
587  & 96.d0*u4*y3**2*u1+64.d0*v6*x3*v3*x2-26.d0*v3*x3*u3*y3-
588  & 224.d0*v6*x3*u6*y3+4.d0*u5*y2*v1*x3+112.d0*v4*x2**2*v6+
589  & 32.d0*v3*x3*u6*y3-32.d0*v3*x3*u6*y2+48.d0*u5*y2*v6*x3+
590  & 46.d0*u2*y3*u1*y2+112.d0*u4*y3*v6*x2+u2*y3*v3*x2-
591  & 28.d0*u4*y3*v3*x2+96.d0*u4*y3*v1*x2-96.d0*u4*y3*v1*x3
592  ans4 = -23.d0*v1*x3*u3*y2-23.d0*u1*y2*v3*x3-23.d0*u2*y3*v1*x2+
593  & 96.d0*u1*y2*v6*x3-32.d0*v6*x3*u3*y2+32.d0*v6*x3*u3*y3-
594  & 28.d0*v2*x3*u6*y2-192.d0*v4*x3*v1*x2-28.d0*v4*x2*u3*y3+
595  & v2*x3*u3*y2+96.d0*v4*x2*u1*y3+56.d0*v2*x3*v6*x2-
596  & 48.d0*u5*y2*v6*x2+23.d0*u2*y3*v1*x3+56.d0*u2*y3*u6*y2+
597  & 112.d0*v4*x2*u6*y3+28.d0*u4*y3*v3*x3-2.d0*u2*y3*u3*y2-
598  & 28.d0*u2*y3*v6*x2-23.d0*v2*x3*u1*y2-96.d0*v1*x2*u6*y2+
599  & 112.d0*v4*x3*u6*y2-28.d0*v4*x3*u3*y2-2.d0*v2*x3*v3*x2-
600  & 224.d0*v4*x3*v6*x2+96.d0*v4*x3*u1*y2+28.d0*v4*x3*u3*y3+
601  & 46.d0*v2*x3*v1*x2-28.d0*v2*x3**2*v6-4.d0*u5*y2*v1*x2+
602  & 23.d0*v2*x3*u1*y3+28.d0*v2*x3*u6*y3-28.d0*v2*x2*u6*y3+
603  & 112.d0*u4*y2*v6*x3+v2*x2*u3*y3-32.d0*u3*y2**2*u6+
604  & 48.d0*v5*x2*u6*y3-23.d0*v1*x2*u3*y3+56.d0*v4*x3*v3*x2-
605  & 28.d0*v4*x3**2*v3-96.d0*v4*x3*u1*y3-224.d0*u4*y2*u6*y3+
606  & 23.d0*u2*y2*v1*x2-23.d0*v2*x2*u1*y3+56.d0*u4*y2*u3*y3+
607  & 96.d0*u4*y2*v1*x3-28.d0*u4*y2*v3*x3+u2*y2*v3*x3-
608  & 48.d0*u5*y3*v6*x3-48.d0*v5*x3*u6*y3+4.d0*v5*x2*u1*y3-
609  & 28.d0*u2*y2*v6*x3+28.d0*u2*y2*v6*x2+23.d0*v2*x2*u1*y2-
610  & 192.d0*u4*y2*u1*y3+48.d0*u5*y3*v6*x2+28.d0*v2*x2*u6*y2-
611  & 23.d0*u2*y2*v1*x3-23.d0*v2*x2**2*v1+186.d0*v1*x3*u1*y2
612  a11(ielem) = (64.d0*u2*y3*u4*y2+64.d0*v2*x3*v4*x2+
613  & ans1+ans2+ans3+ans4-23.d0*u2*y2**2*u1)*aux1260
614 !
615  ans1 =(8.d0*u2*u6+8.d0*u5*u1-32.d0*u5*u6+8.d0*u4*u3-32.d0*u4*u6+
616  & 10.d0*u3*u1-32.d0*u4*u1+32.d0*u6*u3-54.d0*u2**2-
617  & 64.d0*u5*u2+32.d0*u3*u5-96.d0*u5**2+18.d0*u2*u1+
618  & 10.d0*u3**2+10.d0*u2*u3-64.d0*u6*u1-32.d0*u4*u5-
619  & 32.d0*u2*u4-54.d0*u1**2+32.d0*u4**2-96.d0*u6**2)*y3*y2+
620  & (-32.d0*u4**2-32.d0*u3*u5+32.d0*u5*u6-8.d0*u2*u6+
621  & 32.d0*u2*u4+54.d0*u2**2-18.d0*u2*u1+32.d0*u4*u6-
622  & 8.d0*u5*u1+32.d0*u4*u1-32.d0*u6*u3-10.d0*u2*u3+64.d0*u5*u2-
623  & 10.d0*u3**2+32.d0*u4*u5+96.d0*u5**2+96.d0*u6**2-8.d0*u4*u3-
624  & 10.d0*u3*u1+64.d0*u6*u1+54.d0*u1**2)*y3**2+((-96.d0*v5**2+
625  & 10.d0*v2*v3+8.d0*v4*v3+8.d0*v2*v6-64.d0*v5*v2-54.d0*v1**2+
626  & 32.d0*v3*v5+32.d0*v4**2+32.d0*v3*v6-96.d0*v6**2+
627  & 10.d0*v3**2-32.d0*v5*v6-32.d0*v4*v6-32.d0*v4*v5-
628  & 32.d0*v4*v1-64.d0*v1*v6+8.d0*v5*v1+18.d0*v2*v1-
629  & 32.d0*v2*v4+10.d0*v1*v3-54.d0*v2**2)*x3+(96.d0*u5*v5+
630  & 54.d0*v1*u1-5.d0*u2*v3+16.d0*u4*v1-16.d0*u6*v3-4.d0*v2*u6-
631  & 4.d0*v4*u3-5.d0*v1*u3-5.d0*u1*v3+54.d0*u2*v2+16.d0*v4*u5-
632  & 4.d0*u5*v1+16.d0*u4*v5-4.d0*u2*v6-4.d0*v5*u1-4.d0*u4*v3+
633  & 96.d0*u6*v6+16.d0*v4*u6+16.d0*u4*v6+16.d0*u5*v6)*y3)*x2
634  ans2 =(16.d0*v5*u6+32.d0*u5*v2-16.d0*u5*v3-5.d0*v2*u3+
635  & 16.d0*u2*v4+32.d0*u1*v6-9.d0*v2*u1-16.d0*u3*v6-9.d0*u2*v1+
636  & 16.d0*v2*u4+16.d0*v4*u1-10.d0*u3*v3+32.d0*u2*v5-16.d0*u3*v5-
637  & 32.d0*u4*v4+32.d0*v1*u6)*y3*x2+x3*y2*(96.d0*u5*v5+
638  & 54.d0*v1*u1-5.d0*u2*v3+16.d0*u4*v1-16.d0*u6*v3-4.d0*v2*u6-
639  & 4.d0*v4*u3-5.d0*v1*u3-5.d0*u1*v3+54.d0*u2*v2+16.d0*v4*u5-
640  & 4.d0*u5*v1+16.d0*u4*v5-4.d0*u2*v6-4.d0*v5*u1-4.d0*u4*v3+
641  & 96.d0*u6*v6+16.d0*v4*u6+16.d0*u4*v6+16.d0*u5*v6+
642  & 16.d0*v5*u6+32.d0*u5*v2-16.d0*u5*v3-5.d0*v2*u3+16.d0*u2*v4+
643  & 32.d0*u1*v6-9.d0*v2*u1-16.d0*u3*v6-9.d0*u2*v1+16.d0*v2*u4+
644  & 16.d0*v4*u1-10.d0*u3*v3+32.d0*u2*v5-16.d0*u3*v5-
645  & 32.d0*u4*v4+32.d0*v1*u6)+(32.d0*v4*v5-18.d0*v2*v1+
646  & 32.d0*v4*v1-10.d0*v1*v3+32.d0*v5*v6- 8.d0*v5*v1+
647  & 32.d0*v2*v4-10.d0*v2*v3-8.d0*v4*v3+32.d0*v4*v6+
648  & 54.d0*v2**2-8.d0*v2*v6+96.d0*v5**2+54.d0*v1**2-32.d0*v3*v6-
649  & 32.d0*v4**2+96.d0*v6**2+64.d0*v1*v6-10.d0*v3**2+
650  & 64.d0*v5*v2-32.d0*v3*v5)*x3**2+(-192.d0*u5*v5-
651  & 108.d0*v1*u1+10.d0*u2*v3-32.d0*u4*v1+32.d0*u6*v3+
652  & 8.d0*v2*u6+8.d0*v4*u3+10.d0*v1*u3+10.d0*u1*v3-
653  & 108.d0*u2*v2-32.d0*v4*u5+8.d0*u5*v1-32.d0 *u4*v5)*y3*x3
654  a12(ielem) = ((8.d0*u2*v6+8.d0*v5*u1+8.d0*u4*v3-192.d0*u6*v6-
655  & 32.d0*v4*u6-32.d0*u4*v6-32.d0*u5*v6-32.d0*v5*u6-
656  & 64.d0*u5*v2+32.d0*u5*v3+10.d0*v2*u3-32.d0*u2*v4-
657  & 64.d0*u1*v6+18.d0*v2*u1+32.d0*u3*v6+18.d0*u2*v1-
658  & 32.d0*v2*u4-32.d0*v4*u1+20.d0*u3*v3-64.d0*u2*v5+
659  & 32.d0*u3*v5+64.d0*u4*v4-64.d0*v1*u6)*y3*x3+
660  & ans1+ans2)*aux2520
661 !
662  ans1 = -96.d0*v4**2*x2**2+192.d0*u5*y2*v5*x2-18.d0*v1*x2*u3*y2-
663  & 96.d0*u4*y2*v4*x3-16.d0*u5*y3*v4*x2-16.d0*v5*x2*u4*y3-
664  & 96.d0*u5**2*y2**2+192.d0*u4*y2*v4*x2-96.d0*u5*y3*v5*x2-
665  & 16.d0*v5*x3*u4*y2-96.d0*u5*y2*v5*x3-16.d0*u5*y2*v4*x3+
666  & 32.d0*v5*x3*v4*x2-96.d0*v4*x2*u4*y3+16.d0*v2*x2*u4*y3+
667  & 32.d0*v1*x3*v6*x2+8.d0*u2*y2**2*u6+10.d0*v2**2*x2**2+
668  & 16.d0*u2*y2*v5*x3+16.d0*u2*y3*v5*x2+64.d0*u4*y2*v1*x2+
669  & 32.d0*u4*y2*v6*x2-16.d0*u1*y3*v6*x2-32.d0*u2*y3*u5*y2+
670  & 64.d0*v4*x2*u1*y2+32.d0*v4*x2*u6*y2+16.d0*u2*y2*v4*x3-
671  & 32.d0*u2*y2*v4*x2+10.d0*u2**2*y2**2+32.d0*u5*y2*u4*y3+
672  & 32.d0*v5*x2**2*v2-32.d0*u5*y2**2*u6-32.d0*v6**2*x3*x2+
673  & 54.d0*v3**2*x3*x2-10.d0*v2**2*x2*x3-32.d0*u6**2*y2*y3-
674  & 32.d0*v5*x2**2*v4+32.d0*v2*x2**2*v4+8.d0*u5*y2**2*u1-
675  & 32.d0*v2*x2*u4*y2+32.d0*u6**2*y2**2+8.d0*v2*x2**2*v6+
676  & 32.d0*u2*y2**2*u4+10.d0*v2*x2**2*v3+8.d0*v4*x2**2*v3-
677  & 20.d0*v2*x2*u2*y2-54.d0*v1**2*x2**2+54.d0*u1**2*y3*y2-
678  & 32.d0*u1*y2**2*u6+32.d0*v6**2*x2**2-10.d0*u2**2*y2*y3-
679  & 64.d0*v4*x2**2*v1+8.d0*v5*x2**2*v1-32.d0*v5*x2*u2*y2-
680  & 32.d0*u5*y2*v2*x2-64.d0*v3*x2**2*v5-32.d0*v1*x2**2*v6
681  ans2 = -10.d0*u2*y2*v3*x2-96.d0*v5**2*x2**2-54.d0*v3**2*x2**2+
682  & 8.d0*u4*y2**2*u3+64.d0*v3*x2*u5*y2-64.d0*u3*y2**2*u5+
683  & 108.d0*v1*x2*u1*y2+96.d0*u4**2*y2*y3+96.d0*v4**2*x3*x2+
684  & 18.d0*u1*y2**2*u3+64.d0*u3*y2*v5*x2+32.d0*v5*x2*u4*y2+
685  & 32.d0*u5*y2*v4*x2+54.d0*u3**2*y3*y2+32.d0*u5*y2**2*u2+
686  & 54.d0*v1**2*x3*x2-10.d0*v2*x2*u3*y2-64.d0*u4*y2**2*u1+
687  & 18.d0*v1*x2**2*v3-32.d0*v5*x2**2*v6+10.d0*u2*y2**2*u3+
688  & 96.d0*u5**2*y2*y3+96.d0*v5**2*x3*x2-54.d0*u3**2*y2**2+
689  & 32.d0*v6*x2*u6*y3-64.d0*v6*x2*u6*y2+32.d0*v6*x2*u3*y2+
690  & 16.d0*v2*x3*u5*y2-32.d0*v3*x2**2*v6+16.d0*u2*y3*v4*x2-
691  & 32.d0*u2*y3*u4*y2-32.d0*v2*x3*v4*x2+108.d0*v3*x2*u3*y2+
692  & 32.d0*v3*x2*u6*y2+16.d0*v2*x3*u4*y2-32.d0*v2*x3*v5*x2-
693  & 54.d0*u1**2*y2**2-18.d0*u1*y2*v3*x2+32.d0*v6*x3*u6*y2+
694  & 32.d0*u1*y2*v6*x2-8.d0*v4*x2*u3*y2+10.d0*v2*x2*u2*y3+
695  & 10.d0*u2*y2*v2*x3+16.d0*v2*x2*u5*y3-32.d0*v5*x3*u3*y2+
696  & 4.d0*u5*y3*v1*x2+32.d0*u1*y3*u6*y2-32.d0*u4*y2**2*u6-
697  & 16.d0*v1*x3*u6*y2-96.d0*u4**2*y2**2+32.d0*u5*y2*u6*y3-
698  & 18.d0*u1*y3*u3*y2+64.d0*u5*y2*u3*y3-8.d0*u4*y2*v3*x2-
699  & 16.d0*v5*x3*u6*y2+9.d0*u1*y3*v3*x2+64.d0*v5*x3*v3*x2-
700  & 8.d0*v5*x3*v1*x2+32.d0*v5*x2*u6*y2-8.d0*v5*x2*u1*y2
701  ans3 = -8.d0*u5*y2*u1*y3-32.d0*u5*y2**2*u4-54.d0*v3*x3*u3*y2-
702  & 54.d0*v3*x2*u3*y3-16.d0*v3*x2*u6*y3+32.d0*u3*y3*u6*y2+
703  & 32.d0*v5*x3*v6*x2-16.d0*u3*y3*v6*x2-54.d0*v1*x2*u1*y3-
704  & 16.d0*v1*x2*u6*y3+4.d0*v5*x3*u1*y2-18.d0*v1*x3*v3*x2+
705  & 32.d0*v6*x3*v3*x2+4.d0*u5*y2*v1*x3-32.d0*u5*y2*v3*x3-
706  & 32.d0*v4*x2**2*v6-16.d0*v3*x3*u6*y2-16.d0*u5*y2*v6*x3-
707  & 10.d0*u2*y3*u1*y2-16.d0*u4*y3*v6*x2+5.d0*u2*y3*v3*x2+
708  & 4.d0*u4*y3*v3*x2-32.d0*u4*y3*v1*x2+9.d0*v1*x3*u3*y2+
709  & 9.d0*u1*y2*v3*x3+5.d0*u2*y3*v1*x2-16.d0*u1*y2*v6*x3-
710  & 16.d0*v6*x3*u3*y2+4.d0*v2*x3*u6*y2+64.d0*v4*x3*v1*x2+
711  & 4.d0*v4*x2*u3*y3+5.d0*v2*x3*u3*y2-32.d0*v4*x2*u1*y3-
712  & 8.d0*v2*x3*v6*x2+32.d0*u5*y2*v6*x2-8.d0*u2*y3*u6*y2-
713  & 16.d0*v4*x2*u6*y3-10.d0*u2*y3*u3*y2+4.d0*u2*y3*v6*x2+
714  & 5.d0*v2*x3*u1*y2+32.d0*v1*x2*u6*y2-16.d0*v4*x3*u6*y2+
715  & 4.d0*v4*x3*u3*y2-10.d0*v2*x3*v3*x2+32.d0*v4*x3*v6*x2-
716  & 32.d0*v4*x3*u1*y2-10.d0*v2*x3*v1*x2-8.d0*u5*y2*v1*x2+
717  & 4.d0*v2*x2*u6*y3-16.d0*u4*y2*v6*x3+5.d0*v2*x2*u3*y3-
718  & 32.d0*u3*y2**2*u6-16.d0*v5*x2*u6*y3+9.d0*v1*x2*u3*y3-
719  & 8.d0*v4*x3*v3*x2+32.d0*u4*y2*u6*y3-10.d0*u2*y2*v1*x2
720  a13(ielem) = (5.d0*v2*x2*u1*y3-8.d0*u4*y2*u3*y3-32.d0*u4*y2*v1*x3+
721  & 4.d0*u4*y2*v3*x3+5.d0*u2*y2*v3*x3-32.d0*v5*x2*u3*y3+
722  & 4.d0*v5*x2*u1*y3+4.d0*u2*y2*v6*x3-8.d0*u2*y2*v6*x2-
723  & 10.d0*v2*x2*u1*y2+64.d0*u4*y2*u1*y3-
724  & 16.d0*u5*y3*v6*x2-8.d0*v2*x2*u6*y2-
725  & 32.d0*u5*y3*v3*x2+5.d0*u2*y2*v1*x3+
726  & 10.d0*v2*x2**2*v1-54.d0*v1*x3*u1*y2+
727  & 10.d0*u2*y2**2*u1+ans1+ans2+ans3)*(-aux2520)
728 !
729  ans1 = -48.d0*v4**2*x2**2-96.d0*u5*y2*v5*x2-2.d0*v1*x2*u3*y2+
730  & 16.d0*u5*y3*v4*x2+16.d0*v5*x2*u4*y3+48.d0*u5**2*y2**2+
731  & 96.d0*u4*y2*v4*x2-64.d0*u1*y3*v6*x3+96.d0*u5*y3*v5*x2+
732  & 16.d0*v5*x3*u4*y2-32.d0*u5*y3*v4*x3+20.d0*v2**2*x3**2+
733  & 48.d0*v5**2*x3**2+96.d0*u5*y2*v5*x3-32.d0*v5*x3*u4*y3+
734  & 16.d0*u5*y2*v4*x3-32.d0*v5*x3*v4*x2-96.d0*v4*x3*u4*y3+
735  & 20.d0*u2**2*y3**2+8.d0*v2*x2*u4*y3+48.d0*u4**2*y3**2-
736  & 56.d0*v1*x3*v6*x2-120.d0*v1*x3*u1*y3+14.d0*u1*y3*v3*x3+
737  & 8.d0*u2*y2**2*u6+18.d0*v2**2*x2**2+20.d0*u2*y2*v5*x3-
738  & 16.d0*u2*y3*v5*x3+20.d0*u2*y3*v5*x2+16.d0*u4*y2*v1*x2+
739  & 32.d0*u4*y2*v6*x2+28.d0*u1*y3*v6*x2-40.d0*u2*y3*u5*y2-
740  & 64.d0*v4*x3*u6*y3+48.d0*v4**2*x3**2-64.d0*u4*y3*v6*x3+
741  & 16.d0*v4*x2*u1*y2+32.d0*v4*x2*u6*y2+80.d0*u6**2*y3**2+
742  & 8.d0*u2*y2*v4*x3-24.d0*u2*y2*v4*x2+16.d0*u2*y3*v6*x3+
743  & 18.d0*u2**2*y2**2+4.d0*u3**2*y3**2-96.d0*v5*x3*u5*y3+
744  & 32.d0*u5*y3**2*u6-32.d0*u5*y2*u4*y3+24.d0*v5*x2**2*v2+
745  & 60.d0*u1**2*y3**2+60.d0*v1**2*x3**2+4.d0*v3**2*x3**2+
746  & 80.d0*v6**2*x3**2-64.d0*v6**2*x3*x2-6.d0*v3**2*x3*x2-
747  & 8.d0*u5*y3**2*u3-38.d0*v2**2*x2*x3-64.d0*u6**2*y2*y3+
748  & 48.d0*u5**2*y3**2+24.d0*v2*x2**2*v4-8.d0*u5*y2**2*u1
749  ans2 = -24.d0*v2*x2*u4*y2-16.d0*u6**2*y2**2-8.d0*v2*x3**2*v4+
750  & 8.d0*v2*x2**2*v6+24.d0*u2*y2**2*u4-8.d0*v5*x3**2*v3-
751  & 8.d0*v2*x2**2*v3+8.d0*v4*x2**2*v3-36.d0*v2*x2*u2*y2-
752  & 24.d0*u3*y3**2*u6-6.d0*v1**2*x2**2-54.d0*u1**2*y3*y2-
753  & 8.d0*u1*y2**2*u6-16.d0*v6**2*x2**2-2.d0*v2*x3**2*v3-
754  & 38.d0*u2**2*y2*y3-16.d0*v4*x2**2*v1-8.d0*v5*x2**2*v1-
755  & 24.d0*v5*x2*u2*y2-24.d0*u5*y2*v2*x2+16.d0*v2*x3**2*v5+
756  & 56.d0*v4*x3**2*v1-8.d0*v1*x2**2*v6+8.d0*u2*y2*v3*x2+
757  & 48.d0*v5**2*x2**2-14.d0*v1*x3**2*v3+2.d0*v2*x3*u3*y3+
758  & 2.d0*v3**2*x2**2+8.d0*u4*y2**2*u3+2.d0*u2*y3*v3*x3-
759  & 16.d0*u2*y3**2*u6-16.d0*u2*y3**2*u1-14.d0*u1*y3**2*u3+
760  & 64.d0*u4*y3**2*u6+12.d0*v1*x2*u1*y2-64.d0*v1*x3*u6*y3+
761  & 2.d0*u1*y2**2*u3-24.d0*v6*x3**2*v3-6.d0*u3**2*y3*y2+
762  & 24.d0*u5*y2**2*u2-54.d0*v1**2*x3*x2-16.d0*v2*x3**2*v1+
763  & 8.d0*v2*x2*u3*y2-16.d0*u4*y2**2*u1+2.d0*v1*x2**2*v3-
764  & 8.d0*u2*y2**2*u3+16.d0*u2*y3**2*u5-16.d0*u4*y3**2*u3-
765  & 8.d0*u2*y3**2*u4-96.d0*u5**2*y2*y3-96.d0*v5**2*x3*x2+
766  & 32.d0*v5*x3**2*v4+32.d0*u5*y3**2*u4+2.d0*u3**2*y2**2-
767  & 16.d0*v2*x3*u5*y3+64.d0*v6*x2*u6*y3+32.d0*v6*x2*u6*y2-
768  & 8.d0*v6*x2*u3*y2+20.d0*v2*x3*u5*y2+8.d0*v3*x2**2*v6
769  ans3 = 8.d0*u2*y3*v4*x2+8.d0*u2*y3*v4*x3-16.d0*u2*y3*u4*y2-
770  & 16.d0*v2*x3*v4*x2+32.d0*v5*x3**2*v6-4.d0*v3*x2*u3*y2-
771  & 8.d0*v3*x2*u6*y2+8.d0*v2*x3*u4*y2-40.d0*v2*x3*v5*x2-
772  & 6.d0*u1**2*y2**2-2.d0*u1*y2*v3*x2+8.d0*v2*x3*u4*y3+
773  & 64.d0*v6*x3*u6*y2+8.d0*u1*y2*v6*x2-8.d0*v4*x2*u3*y2+
774  & 38.d0*v2*x2*u2*y3+14.d0*v1*x3*u3*y3+38.d0*u2*y2*v2*x3-
775  & 40.d0*u2*y3*v2*x3+20.d0*v2*x2*u5*y3-4.d0*v5*x3*u3*y2+
776  & 64.d0*v4*x3**2*v6-4.d0*u5*y3*v1*x2-2.d0*u2*y3**2*u3-
777  & 56.d0*u1*y3*u6*y2-32.d0*u4*y2**2*u6+8.d0*u5*y3*v3*x3+
778  & 28.d0*v1*x3*u6*y2-48.d0*u4**2*y2**2-32.d0*u5*y2*u6*y3+
779  & 12.d0*u1*y3*u3*y2+8.d0*u5*y2*u3*y3+64.d0*v1*x3**2*v6-
780  & 8.d0*u4*y2*v3*x2+16.d0*v5*x3*u6*y2-6.d0*u1*y3*v3*x2+
781  & 8.d0*v5*x3*v3*x2+8.d0*v5*x3*v1*x2+64.d0*u1*y3**2*u6+
782  & 8.d0*v5*x2*u1*y2+8.d0*u5*y2*u1*y3+6.d0*v3*x3*u3*y2+
783  & 6.d0*v3*x2*u3*y3-8.d0*v3*x2*u6*y3+16.d0*u3*y3*u6*y2-
784  & 32.d0*v5*x3*v6*x2-8.d0*u3*y3*v6*x2+54.d0*v1*x2*u1*y3+
785  & 28.d0*v1*x2*u6*y3-4.d0*v5*x3*u1*y2+8.d0*v5*x3*u3*y3+
786  & 12.d0*v1*x3*v3*x2+56.d0*u4*y3**2*u1+16.d0*v6*x3*v3*x2-
787  & 8.d0*v3*x3*u3*y3-160.d0*v6*x3*u6*y3-4.d0*u5*y2*v1*x3-
788  & 4.d0*u5*y2*v3*x3-32.d0*v4*x2**2*v6+24.d0*v3*x3*u6*y3
789  ans4 = -8.d0*v3*x3*u6*y2+16.d0*u5*y2*v6*x3+16.d0*u2*y3*u1*y2+
790  & 16.d0*u4*y3*v6*x2-5.d0*u2*y3*v3*x2-4.d0*u4*y3*v3*x2+
791  & 20.d0*u4*y3*v1*x2-56.d0*u4*y3*v1*x3-6.d0*v1*x3*u3*y2-
792  & 6.d0*u1*y2*v3*x3-8.d0*u2*y3*v1*x2+28.d0*u1*y2*v6*x3-
793  & 8.d0*v6*x3*u3*y2+24.d0*v6*x3*u3*y3-4.d0*v2*x3*u6*y2-
794  & 40.d0*v4*x3*v1*x2-4.d0*v4*x2*u3*y3-5.d0*v2*x3*u3*y2+
795  & 20.d0*v4*x2*u1*y3+8.d0*v2*x3*v6*x2+16.d0*u2*y3*v1*x3+
796  & 8.d0*u2*y3*u6*y2+16.d0*v4*x2*u6*y3+16.d0*u4*y3*v3*x3+
797  & 10.d0*u2*y3*u3*y2-4.d0*u2*y3*v6*x2-8.d0*v2*x3*u1*y2+
798  & 8.d0*v1*x2*u6*y2+16.d0*v4*x3*u6*y2-4.d0*v4*x3*u3*y2+
799  & 10.d0*v2*x3*v3*x2-32.d0*v4*x3*v6*x2+20.d0*v4*x3*u1*y2+
800  & 16.d0*v4*x3*u3*y3+16.d0*v2*x3*v1*x2-16.d0*v2*x3**2*v6+
801  & 8.d0*u5*y2*v1*x2+16.d0*v2*x3*u1*y3+16.d0*v2*x3*u6*y3-
802  & 4.d0*v2*x2*u6*y3+16.d0*u4*y2*v6*x3-5.d0*v2*x2*u3*y3+
803  & 8.d0*u3*y2**2*u6+16.d0*v5*x2*u6*y3-6.d0*v1*x2*u3*y3+
804  & 8.d0*v4*x3*v3*x2-16.d0*v4*x3**2*v3-56.d0*v4*x3*u1*y3-
805  & 32.d0*u4*y2*u6*y3-8.d0*v2*x2*u1*y3+8.d0*u4*y2*u3*y3+
806  & 20.d0*u4*y2*v1*x3-4.d0*u4*y2*v3*x3-5.d0*u2*y2*v3*x3-
807  & 4.d0*v5*x2*u3*y3-32.d0*u5*y3*v6*x3-32.d0*v5*x3*u6*y3
808  a14(ielem) = (-4.d0*v5*x2*u1*y3-4.d0*u2*y2*v6*x3-8.d0*u2*y2*v6*x2-
809  & 40.d0*u4*y2*u1*y3+16.d0*u5*y3*v6*x2-8.d0*v2*x2*u6*y2-
810  & 4.d0*u5*y3*v3*x2-8.d0*u2*y2*v1*x3+54.d0*v1*x3*u1*y2+
811  & ans1+ans2+ans3+ans4) * (-aux630)
812 !
813  ans1 = (-96.d0*u5*v5+12.d0*v1*u1+8.d0*u2*v3+12.d0*u4*v1-
814  & 16.d0*u6*v3-8.d0*v2*u6-8.d0*v4*u3-v1*u3-u1*v3-20.d0*u2*v2+
815  & 8.d0*u5*v1-8.d0*u2*v6+8.d0*v5*u1-8.d0*u4*v3+64.d0*u6*v6+
816  & 32.d0*v4*u6+32.d0*u4*v6-12.d0*u5*v2-12.d0*u5*v3+
817  & 8.d0*v2*u3-16.d0*u2*v4+12.d0*u1*v6-v2*u1-16.d0*u3*v6-
818  & u2*v1-16.d0*v2*u4+12.d0*v4*u1-20.d0*u3*v3-12.d0*u2*v5-
819  & 12.d0*u3*v5+64.d0*u4*v4+12.d0*v1*u6)*y3*x2+((24.d0*v3*v5+
820  & 24.d0*v5*v2+20.d0*v3**2+32.d0*v3*v6-24.d0*v1*v6-
821  & 16.d0*v2*v3+2.d0*v2*v1+16.d0*v4*v3-64.d0*v4**2+
822  & 96.d0*v5**2-64.d0*v6**2+20.d0*v2**2-16.d0*v5*v1-
823  & 64.d0*v4*v6+32.d0*v2*v4-12.d0*v1**2-24.d0*v4*v1+
824  & 2.d0*v1*v3+16.d0*v2*v6)*x3+(96.d0*u5*v5-12.d0*v1*u1-
825  & 8.d0*u2*v3-16.d0*u4*v1+8.d0*u6*v3+8.d0*v2*u6+8.d0*v4*u3+
826  & 2.d0*v1*u3+2.d0*u1*v3+36.d0*u2*v2-8.d0*u5*v1+8.d0*u2*v6-
827  & 8.d0*v5*u1+8.d0*u4*v3-32.d0*u6*v6-32.d0*v4*u6-32.d0*u4*v6+
828  & 24.d0*u5*v2-8.d0*v2*u3+24.d0*u2*v4-8.d0*u1*v6+8.d0*u3*v6+
829  & 24.d0*v2*u4-16.d0*v4*u1+4.d0*u3*v3+24.d0*u2*v5-
830  & 96.d0*u4*v4-8.d0*v1*u6)*y2)*x2+(-96.d0*u5*v5+12.d0*v1*u1+
831  & 8.d0*u2*v3+12.d0*u4*v1-16.d0*u6*v3-8.d0*v2*u6)*y2*x3
832  ans2 = (-8.d0*v4*u3-v1*u3-u1*v3-20.d0*u2*v2+8.d0*u5*v1-8.d0*u2*v6+
833  & 8.d0*v5*u1-8.d0*u4*v3+64.d0*u6*v6+32.d0*v4*u6+32.d0*u4*v6-
834  & 12.d0*u5*v2-12.d0*u5*v3+8.d0*v2*u3-16.d0*u2*v4+12.d0*u1*v6-
835  & v2*u1-16.d0*u3*v6-u2*v1-16.d0*v2*u4+12.d0*v4*u1-
836  & 20.d0*u3*v3-12.d0*u2*v5-12.d0*u3*v5+64.d0*u4*v4+
837  & 12.d0*v1*u6)*y2*x3+(-8.d0*u6*u3-24.d0*u2*u4+48.d0*u4**2-
838  & 2.d0*u3*u1+32.d0*u4*u6+8.d0*u6*u1-48.d0*u5**2+8.d0*u5*u1-
839  & 18.d0*u2**2-2.d0*u3**2+6.d0*u1**2+16.d0*u6**2+16.d0*u4*u1-
840  & 8.d0*u4*u3+8.d0*u2*u3-8.d0*u2*u6-24.d0*u5*u2)*y2**2+
841  & (-64.d0*u4**2-24.d0*u6*u1+24.d0*u5*u2+24.d0*u3*u5-
842  & 64.d0*u4*u6+16.d0*u2*u6-16.d0*u2*u3-16.d0*u5*u1-
843  & 12.d0*u1**2+20.d0*u2**2+20.d0*u3**2+32.d0*u6*u3+
844  & 96.d0*u5**2+2.d0*u2*u1+32.d0*u2*u4+2.d0*u3*u1-
845  & 24.d0*u4*u1-64.d0*u6**2+16.d0*u4*u3)*y3*y2+(96.d0*u5*v5-
846  & 12.d0*v1*u1-8.d0*u2*v3-8.d0*u4*v1+24.d0*u6*v3+
847  & 8.d0*v2 *u6+8.d0*v4*u3+4.d0*u2*v2-8.d0*u5*v1+8.d0*u2*v6-
848  & 8.d0*v5*u1+8.d0*u4*v3-96.d0*u6*v6-32.d0*v4*u6-32.d0*u4*v6+
849  & 24.d0*u5*v3-8.d0*v2*u3+8.d0*u2*v4-16.d0*u1*v6+2.d0*v2*u1+
850  & 24.d0*u3*v6+2.d0*u2*v1+8.d0*v2*u4-8.d0*v4*u1+36.d0*u3*v3+
851  & 24.d0*u3*v5-32.d0*u4*v4-16.d0*v1*u6)*y3*x3
852  a15(ielem) = ((16.d0*v1*v6-24.d0*v3*v6-18.d0*v3**2+48.d0*v6**2-
853  & 8.d0*v4*v3+ 6.d0*v1**2+8.d0*v5*v1+8.d0*v2*v3+
854  & 16.d0*v4**2-8.d0*v2*v4-48.d0*v5**2+32.d0*v4*v6+
855  & 8.d0*v4*v1-2.d0*v2**2-2.d0*v2*v1-8.d0*v2*v6-
856  & 24.d0*v3*v5)*x3**2+(-24.d0*v2*v4+6.d0*v1**2+
857  & 32.d0*v4*v6+16.d0*v4*v1-8.d0*v4*v3+8.d0*v5*v1+
858  & 48.d0*v4**2+8.d0*v2*v3+16.d0*v6**2-8.d0*v2*v6+
859  & 8.d0*v1*v6-18.d0*v2**2-48.d0*v5**2-2.d0*v3**2-
860  & 24.d0*v5*v2-2.d0*v1*v3-8.d0*v3*v6)*x2**2+
861  & (-48.d0*u5**2-24.d0*u3*u5-8.d0*u2*u4-2.d0*u2*u1+
862  & 6.d0*u1**2-2.d0*u2**2-18.d0*u3**2+16.d0*u4**2+
863  & 32.d0*u4*u6+8.d0*u2*u3+8.d0*u5*u1+48.d0*u6**2-
864  & 24.d0*u6*u3-8.d0*u2*u6-8.d0*u4*u3+8.d0*u4*u1+
865  & 16.d0*u6*u1)*y3**2+ans1+ans2) * (-aux630)
866 !
867  ans1 = -186.d0*u2*y3*v2*x3-23.d0*u2*y3**2*u1+48.d0*v4*x3**2*v6-
868  & 96.d0*u4*y3*v2*x3-23.d0*v2*x3**2*v3+112.d0*v4*x3**2*v5-
869  & 32.d0*v4*x3**2*v1+4.d0*v2*x3**2*v6+96.d0*v4*x3**2*v2-
870  & 28.d0*v5*x3**2*v1+48.d0*u4*y3**2*u6+4.d0*u2*y3**2*u6+
871  & 96.d0*u2*y3**2*u4+48.d0*u5*y3**2*u6-32.d0*v3*x3**2*v5-
872  & 23.d0*u2*y3**2*u3-28.d0*u5*y3**2*u1-28.d0*u4*y3**2*u3-
873  & 23.d0*v2*x3**2*v1+112.d0*u4**2*y3**2+v3*x3**2*v1-
874  & 32.d0*u4*y3**2*u1+112.d0*u5**2*y3**2+13.d0*u3**2*y3**2+
875  & 112.d0*v5**2*x3**2+13.d0*v3**2*x3**2+112.d0*u5*y3**2*u4+
876  & 48.d0*v6**2*x3**2-26.d0*v1*x3*u1*y3+13.d0*u1**2*y3**2-
877  & v3*x3*u1*y3-26.d0*v3*x3*u3*y3+u1*y3**2*u3+
878  & 48.d0*v5*x3**2*v6+112.d0*v4**2*x3**2-224.d0*v4*x3*u4*y3-
879  & 224.d0*v5*x3*u5*y3-112.d0*v5*x3*u4*y3-112.d0*v4*x3*u5*y3-
880  & 4.d0*v2*x3*u6*y3+23.d0*u2*y3*v3*x3+96.d0*v2*x3**2*v5+
881  & 23.d0*v2*x3*u1*y3+23.d0*v2*x3*u3*y3+23.d0*u2*y3*v1*x3-
882  & 4.d0*u2*y3*v6*x3+28.d0*u4*y3*v3*x3+32.d0*u4*y3*v1*x3-
883  & 48.d0*u4*y3*v6*x3+28.d0*u5*y3*v1*x3-48.d0*v4*x3*u6*y3+
884  & 32.d0*v4*x3*u1*y3+28.d0*v4*x3*u3*y3-32.d0*u3*y3**2*u5
885  a22(ielem) = (ans1-48.d0*u5*y3*v6*x3-48.d0*v5*x3*u6*y3+
886  & 28.d0*v5*x3*u1*y3+96.d0*u2*y3**2*u5+
887  & 93.d0*u2**2*y3**2-96.d0*u2*y3*v5*x3-
888  & 96.d0*v2*x3*u5*y3+32.d0*v3*x3*u5*y3+
889  & 32.d0*u3*y3*v5*x3+93.d0*v2**2*x3**2-
890  & 96.d0*u2*y3*v4*x3+48.d0*u6**2*y3**2+
891  & 13.d0*v1**2*x3**2-28.d0*v4*x3**2*v3-
892  & v1*x3*u3*y3-96.d0*v6*x3*u6*y3) * (aux1260)
893 !
894  ans1 = (-32.d0*v5**2-18.d0*v2*v3-8.d0*v4*v3-8.d0*v2*v6+
895  & 32.d0*v5*v2-10.d0*v1**2+32.d0*v3*v5+96.d0*v4**2+
896  & 64.d0*v3*v6+96.d0*v6**2+54.d0*v3**2+32.d0*v5*v6+
897  & 32.d0*v4*v6+32.d0*v4*v5-32.d0*v4*v1-32.d0*v1*v6-
898  & 8.d0*v5*v1-10.d0*v2*v1+64.d0*v2*v4-10.d0*v1*v3+
899  & 54.d0*v2**2)*x3+(32.d0*u5*v5+10.d0*v1*u1+9.d0*u2*v3+
900  & 16.d0*u4*v1-32.d0*u6*v3+4.d0*v2*u6+4.d0*v4*u3+5.d0*v1*u3+
901  & 5.d0*u1*v3-54.d0*u2*v2-16.d0*v4*u5+4.d0*u5*v1-16.d0*u4*v5+
902  & 4.d0*u2*v6+4.d0*v5*u1+4.d0*u4*v3-96.d0*u6*v6-16.d0*v4*u6-
903  & 16.d0*u4*v6-16.d0*u5*v6-16.d0*v5*u6-16.d0*u5*v2-
904  & 16.d0*u5*v3+9.d0*v2*u3-32.d0*u2*v4+16.d0*u1*v6+5.d0*v2*u1-
905  & 32.d0*u3*v6+5.d0*u2*v1-32.d0*v2*u4+16.d0*v4*u1-
906  & 54.d0*u3*v3-16.d0*u2*v5-16.d0*u3*v5-96.d0*u4*v4+
907  & 16.d0*v1*u6)*y3
908  a23(ielem) = (ans1*x2+(32.d0*u5*v5+10.d0*v1*u1+9.d0*u2*v3+
909  & 16.d0*u4*v1-32.d0*u6*v3+ 4.d0*v2*u6+4.d0*v4*u3+
910  & 5.d0*v1*u3+5.d0*u1*v3-54.d0*u2*v2-16.d0*v4*u5+
911  & 4.d0*u5*v1-16.d0*u4*v5+4.d0*u2*v6+4.d0*v5*u1+
912  & 4.d0*u4*v3-96.d0*u6*v6-16.d0*v4*u6-16.d0*u4*v6-
913  & 16.d0*u5*v6-16.d0*v5*u6-16.d0*u5*v2-16.d0*u5*v3+
914  & 9.d0*v2*u3-32.d0*u2*v4+16.d0*u1*v6+5.d0*v2*u1-
915  & 32.d0*u3*v6+5.d0*u2*v1-32.d0*v2*u4+16.d0*v4*u1-
916  & 54.d0*u3*v3-16.d0*u2*v5-16.d0*u3*v5-96.d0*u4*v4+
917  & 16.d0*v1*u6)*y2*x3+(96.d0*u4**2-10.d0*u1**2+
918  & 96.d0*u6**2+54.d0*u2**2+54.d0*u3**2-32.d0*u5**2+
919  & 64.d0*u6*u3+32.d0*u5*u6-8.d0*u5*u1-10.d0*u2*u1+
920  & 64.d0*u2*u4-10.d0*u3*u1+32.d0*u4*u5-32.d0*u6*u1-
921  & 8.d0*u2*u6-18.d0*u2*u3-8.d0*u4*u3+32.d0*u4*u6+
922  & 32.d0*u3*u5-32.d0*u4*u1+32.d0*u5*u2)*y3*y2) *
923  & aux2520
924 !
925  ans1 = ((8.d0*v2*v6+96.d0*v4**2+66.d0*v2**2+32.d0*v4*v6-
926  & 16.d0*v2*v1-32.d0*v4*v1+32.d0*v5* v6-24.d0*v5*v1-
927  & 8.d0*v3*v6+72.d0*v5*v2+ 2.d0*v1**2-32.d0*v3*v5+
928  & 96.d0*v4*v5+96.d0*v5**2-16.d0*v2*v3+2.d0*v3**2-
929  & 8.d0*v1*v6+72.d0*v2*v4+ 6.d0*v1*v3-24.d0*v4*v3)*x3+
930  & (-96.d0*u5*v5-2.d0* v1*u1+8.d0*u2*v3+16.d0*u4*v1+
931  & 4.d0*u6*v3-4.d0*v2*u6+12.d0*v4*u3-3.d0*v1*u3-
932  & 3.d0*u1*v3-66.d0*u2*v2-48.d0*v4*u5+12.d0*u5*v1-
933  & 48.d0*u4*v5-4.d0*u2*v6+12.d0*v5*u1+ 12.d0*u4*v3-
934  & 16.d0*v4*u6-16.d0*u4*v6-16.d0*u5*v6-16.d0*v5*u6-
935  & 36.d0*u5*v2+16.d0*u5*v3+8.d0*v2*u3-36.d0*u2*v4+
936  & 4.d0*u1*v6+8.d0*v2*u1+4.d0*u3*v6+8.d0*u2*v1-
937  & 36.d0*v2*u4+16.d0*v4*u1-2.d0*u3*v3-36.d0*u2*v5+
938  & 16.d0*u3*v5-96.d0*u4*v4+4.d0*v1*u6)*y3)*x2+
939  & (-96.d0*u5*v5-2.d0*v1*u1+8.d0*u2*v3+16.d0*u4*v1+
940  & 4.d0*u6*v3-4.d0*v2*u6+12.d0*v4*u3-3.d0*v1*u3-
941  & 3.d0*u1*v3-66.d0*u2*v2-48.d0*v4*u5+12.d0*u5*v1-
942  & 48.d0*u4*v5-4.d0*u2*v6+12.d0*v5*u1+12.d0*u4*v3-
943  & 16.d0*v4*u6-16.d0*u4*v6-16.d0*u5*v6-16.d0*v5*u6-
944  & 36.d0*u5*v2+16.d0*u5*v3+8.d0*v2*u3-36.d0*u2*v4)*y2*x3
945  ans2 = (4.d0*u1*v6+8.d0*v2*u1+4.d0*u3*v6+8.d0*u2*v1-
946  & 36.d0*v2*u4+16.d0*v4*u1-2.d0*u3*v3-36.d0*u2*v5+
947  & 16.d0*u3*v5-96.d0*u4*v4+4.d0*v1*u6)*y2*x3+
948  & (-8.d0*u6*u3+32.d0*u5*u6-32.d0*u3*u5-32.d0*u4*u1-
949  & 24.d0*u4*u3-24.d0*u5*u1+96.d0*u4**2+66.d0*u2**2+
950  & 2.d0*u3**2+8.d0*u2*u6+96.d0*u5**2-16.d0*u2*u1+
951  & 72.d0*u2*u4-16.d0*u2*u3+32.d0*u4*u6+6.d0*u3*u1-
952  & 8.d0*u6*u1+96.d0*u4*u5+2.d0*u1**2+72.d0*u5*u2)*y3*y2+
953  & (-64.d0*u4*u5+24.d0*u3*u5-32.d0*u5*u6-16.d0*u6*u1-
954  & 56.d0*u2*u4-60.d0*u2**2+16.d0*u2*u1+16.d0*u5*u1+
955  & 8.d0*u4*u1+8.d0*u6*u3-32.d0*u4*u6+16.d0*u4*u3-
956  & 64.d0*u5*u2+14.d0*u2*u3+2.d0*u3*u1-20.d0*u1**2-
957  & 4.d0*u3**2-80.d0*u5**2-48.d0*u6**2-48.d0*u4**2)*y3**2
958  a24(ielem) = (ans1+ans2+(-56.d0*v2*v4+14.d0*v2*v3+16.d0*v5*v1+
959  & 16.d0*v2*v1-64.d0*v4*v5-32.d0*v5*v6-16.d0*v1*v6-
960  & 80.d0*v5**2+16.d0*v4*v3-60.d0*v2**2-4.d0*v3**2-
961  & 48.d0*v6**2-20.d0*v1**2+2.d0*v1*v3-48.d0*v4**2-
962  & 32.d0*v4*v6+8.d0*v4*v1+8.d0*v3*v6-64.d0*v5*v2+
963  & 24.d0*v3*v5)*x3**2+(160.d0*u5*v5+40.d0*v1*u1-
964  & 14.d0*u2*v3-8.d0*u4*v1-8.d0*u6*v3-16.d0*v4*u3-
965  & 2.d0*v1*u3-2.d0*u1*v3+120.d0*u2*v2+64.d0*v4*u5-
966  & 16.d0*u5*v1+64.d0*u4*v5-16.d0*v5*u1-16.d0*u4*v3+
967  & 96.d0*u6*v6+32.d0*v4*u6+32.d0*u4*v6+32.d0*u5*v6+
968  & 32.d0*v5*u6+64.d0*u5*v2-24.d0*u5*v3-14.d0*v2*u3+
969  & 56.d0*u2*v4+16.d0*u1*v6-16.d0*v2*u1-8.d0*u3*v6-
970  & 16.d0*u2*v1+ 56.d0*v2*u4-8.d0*v4*u1+8.d0*u3*v3+
971  & 64.d0*u2*v5-24.d0*u3*v5+96.d0*u4*v4+
972  & 16.d0*v1*u6)*y3*x3)*aux630
973 !
974  ans1 = ((-8.d0*v5*v2+16.d0*v3*v5+24.d0*v3*v6+16.d0*v3**2-
975  & 2.d0*v2*v3+2.d0*v2*v1+8.d0*v2*v4-24.d0*v1*v6-32.d0*v5**2-
976  & 16.d0*v1**2-16.d0*v4*v1+32.d0*v4**2)*x3+(12.d0*v1*u6+
977  & 4.d0*u5*v2-32.d0*u4*v4-8.d0*u3*v5+4.d0*u2*v5-8.d0*u5*v3+
978  & v2*u3-4.d0*u2*v4+12.d0*u1*v6-v2*u1-12.d0*u3*v6-u2*v1-
979  & 4.d0*v2*u4+8.d0*v4*u1-16.d0*u3*v3+32.d0*u5*v5+16.d0*v1*u1+
980  & u2*v3+8.d0*u4*v1-12.d0*u6*v3)*y3)*x2+((12.d0*v1*u6+
981  & 4.d0*u5*v2-32.d0*u4*v4-8.d0*u3*v5+4.d0*u2*v5-8.d0*u5*v3+
982  & v2*u3-4.d0*u2*v4+12.d0*u1*v6-v2*u1-12.d0*u3*v6-u2*v1-
983  & 4.d0*v2*u4+8.d0*v4*u1-16.d0*u3*v3+32.d0*u5*v5+
984  & 16.d0*v1*u1+u2*v3+8.d0*u4*v1-12.d0*u6*v3)*y2+(-96.d0*u5*v5+
985  & 4.d0*v1*u1+8.d0*u4*v1+24.d0*u6*v3-8.d0*v2*u6+8.d0*v4*u3-
986  & 8.d0*v1*u3-8.d0*u1*v3-12.d0*u2*v2-32.d0*v4*u5+8.d0*u5*v1-
987  & 32.d0*u4*v5-8.d0*u2*v6+8.d0*v5*u1+8.d0*u4*v3+96.d0*u6*v6-
988  & 16.d0*u5*v2+24.d0*u5*v3-8.d0*u2*v4+2.d0*v2*u1+24.d0*u3*v6+
989  & 2.d0*u2*v1-8.d0*v2*u4+8.d0*v4*u1+36.d0*u3*v3-16.d0*u2*v5+
990  & 24.d0*u3*v5-32.d0*u4*v4)*y3)*x3
991  a26(ielem)=(ans1+(32.d0*v4*v5+8.d0*v2*v4-18.d0*v3**2+8.d0*v1*v3-
992  & 8.d0*v5*v1+48.d0*v5**2-24.d0*v3*v6+6.d0*v2**2-
993  & 8.d0*v4*v1-48.d0*v6**2-2.d0*v1**2-8.d0*v4*v3+
994  & 16.d0*v4**2-2.d0*v2*v1+8.d0*v2*v6+16.d0*v5*v2-
995  & 24.d0*v3*v5)*x3**2+(-16.d0*u4*u1-24.d0*u6*u1
996  & -8.d0*u5*u2+16.d0*u3*u5-16.d0*u1**2+8.d0*u2*u4+
997  & 16.d0*u3**2-32.d0*u5**2+2.d0*u2*u1+32.d0*u4**2-
998  & 2.d0*u2*u3+24.d0*u6*u3)*y3*y2+(-8.d0*u5*u1-24.d0*u3*u5-
999  & 24.d0*u6*u3+6.d0*u2**2+8.d0*u2*u6+32.d0*u4*u5+
1000  & 16.d0*u5*u2-2.d0*u2*u1-8.d0*u4*u3+8.d0*u2*u4+
1001  & 8.d0*u3*u1+16.d0*u4**2+48.d0*u5**2-2.d0*u1**2-
1002  & 8.d0*u4*u1-18.d0*u3**2-48.d0*u6**2)*y3**2)*(-aux630)
1003 !
1004  a33(ielem) = ((-224.d0*u5*v5-26.d0*v1*u1+23.d0*u2*v3-96.d0*u6*v3+
1005  & 28.d0*v2*u6-4.d0*v4*u3+23.d0*v1*u3+23.d0*u1*v3-
1006  & 26.d0*u2*v2-48.d0*v4*u5+28.d0*u5*v1-48.d0*u4*v5+
1007  & 28.d0*u2*v6+28.d0*v5*u1-4.d0*u4*v3-224.d0*u6*v6-
1008  & 48.d0*v4*u6-48.d0*u4*v6-112.d0*u5*v6-112.d0*v5*u6+
1009  & 32.d0*u5*v2-96.d0*u5*v3+23.d0*v2*u3+32.d0*u1*v6-
1010  & v2*u1-96.d0*u3*v6-u2*v1-186.d0*u3*v3+32.d0*u2*v5-
1011  & 96.d0*u3*v5-96.d0*u4*v4+32.d0*v1*u6)*y2*x2+
1012  & (4.d0*u4*u3+u2*u1+112.d0*u6**2+48.d0*u4**2+
1013  & 93.d0*u3**2-32.d0*u6*u1-23.d0*u3*u1+13.d0*u2**2-
1014  & 28.d0*u5*u1-28.d0*u2*u6+112.d0*u5**2-32.d0*u5*u2+
1015  & 13.d0*u1**2+48.d0*u4*u6+96.d0*u3*u5-23.d0*u2*u3+
1016  & 112.d0*u5*u6+48.d0*u4*u5+96.d0*u6*u3)*y2**2+
1017  & (-32.d0*v1*v6+48.d0*v4**2+96.d0*v3*v6+112.d0*v5*v6+
1018  & 48.d0*v4*v5+v2*v1+93.d0*v3**2-23.d0*v2*v3-
1019  & 23.d0*v1*v3-28.d0*v2*v6+112.d0*v5**2+4.d0*v4*v3+
1020  & 48.d0*v4*v6-28.d0*v5*v1+13.d0*v2**2+112.d0*v6**2+
1021  & 13.d0*v1**2+96.d0*v3*v5-32.d0*v5*v2)*x2**2)
1022  & *aux1260
1023 !
1024  ans1 = (-8.d0*v3*v6+32.d0*v5**2-24.d0*v2*v4-16.d0*v2**2+
1025  & 2.d0*v2*v3-32.d0*v6**2+16.d0*v1**2+16.d0*v1*v6+
1026  & 24.d0*v4*v1-16.d0*v5*v2-2.d0*v1*v3+8.d0*v3*v5)*x3*x2+
1027  & (96.d0*u5*v5-4.d0*v1*u1+8.d0*u6*v3-8.d0*v2*u6+
1028  & 8.d0*v4*u3-2.d0*v1*u3-2.d0*u1*v3-36.d0*u2*v2-8.d0*u5*v1-
1029  & 8.d0*u2*v6-8.d0*v5*u1+8.d0*u4*v3+32.d0*u6*v6+32.d0*u5*v6+
1030  & 32.d0*v5*u6-24.d0*u5*v2+16.d0*u5*v3-24.d0*u2*v4-
1031  & 8.d0*u1*v6+8.d0*v2*u1+8.d0*u3*v6+8.d0*u2*v1-24.d0*v2*u4+
1032  & 12.d0*u3*v3-24.d0*u2*v5+16.d0*u3*v5-96.d0*u4*v4-
1033  & 8.d0*v1*u6)*y2*x2+(16.d0*u2*v2+u1*v3-8.d0*v1*u6+
1034  & 12.d0*v2*u4+8.d0*u5*v2-4.d0*u3*v5+8.d0*u2*v5-4.d0*u5*v3-
1035  & 8.d0*u1*v6+12.d0*u2*v4-u2*v3-v2*u3-16.d0*v1*u1+4.d0*u6*v3+
1036  & 4.d0*u3*v6-12.d0*u4*v1+32.d0*u6*v6+v1*u3-12.d0*v4*u1-
1037  & 32.d0*u5*v5)*y2*x3+(2.d0*u3*u1-8.d0*u4*u3-8.d0*u2*u1-
1038  & 32.d0*u5*u6+8.d0*u5*u1+24.d0*u2*u4+8.d0*u6*u1-8.d0*u6*u3+
1039  & 48.d0*u4**2-48.d0*u5**2+18.d0*u2**2+2.d0*u1**2-
1040  & 16.d0*u6**2-6.d0*u3**2+8.d0*u2*u6-16.d0*u3*u5+
1041  & 24.d0*u5*u2)*y2**2
1042  a34(ielem) = (ans1+(8.d0*v1*v6-8.d0*v4*v3+18.d0*v2**2-16.d0*v6**2+
1043  & 2.d0*v1**2-6.d0*v3**2+2.d0*v1*v3+8.d0*v2*v6+
1044  & 8.d0*v5*v1-32.d0*v5*v6+24.d0*v2*v4-48.d0*v5**2-
1045  & 8.d0*v3*v6-8.d0*v2*v1+48.d0*v4**2-16.d0*v3*v5+
1046  & 24.d0*v5*v2)*x2**2+(16.d0*u2*v2+u1*v3-8.d0*v1*u6+
1047  & 12.d0*v2*u4+8.d0*u5*v2-4.d0*u3*v5+8.d0*u2*v5-
1048  & 4.d0*u5*v3-8.d0*u1*v6+12.d0*u2*v4-u2*v3-v2*u3-
1049  & 16.d0*v1*u1+4.d0*u6*v3+4.d0*u3*v6-12.d0*u4*v1+
1050  & 32.d0*u6*v6+v1*u3-12.d0*v4*u1-32.d0*u5*v5)*y3*x2+
1051  & (-8.d0*u6*u3-16.d0*u5*u2+24.d0*u4*u1-2.d0*u3*u1+
1052  & 16.d0*u6*u1+32.d0*u5**2+8.d0*u3*u5+16.d0*u1**2-
1053  & 32.d0*u6**2-24.d0*u2*u4+2.d0*u2*u3-
1054  & 16.d0*u2**2)*y3*y2)*aux630
1055 !
1056  ans1 = ((96.d0*u5*v5-4.d0*v1*u1+8.d0*u6*v3-8.d0*v2*u6+8.d0*v4*u3-
1057  & 2.d0*v1*u3-2.d0*u1*v3-36.d0*u2*v2-8.d0*u5*v1-8.d0*u2*v6-
1058  & 8.d0*v5*u1+8.d0*u4*v3+32.d0*u6*v6+32.d0*u5*v6+
1059  & 32.d0*v5*u6-24.d0*u5*v2+16.d0*u5*v3-24.d0*u2*v4-
1060  & 8.d0*u1*v6+8.d0*v2*u1+8.d0*u3*v6+8.d0*u2*v1-24.d0*v2*u4+
1061  & 12.d0*u3*v3-24.d0*u2*v5+16.d0*u3*v5-96.d0*u4*v4-
1062  & 8.d0*v1*u6)*y2+(-96.d0*u5*v5-2.d0*v1*u1+8.d0*u2*v3+
1063  & 4.d0*u4*v1-36.d0*u6*v3+12.d0*v2*u6-4.d0*v4*u3+8.d0*v1*u3+
1064  & 8.d0*u1*v3-2.d0*u2*v2-16.d0*v4*u5+12.d0*u5*v1-16.d0*u4*v5+
1065  & 12.d0*u2*v6+12.d0*v5*u1-4.d0*u4*v3-96.d0*u6*v6-
1066  & 16.d0*v4*u6-16.d0*u4*v6-48.d0*u5*v6-48.d0*v5*u6+
1067  & 16.d0*u5*v2-36.d0*u5*v3+8.d0*v2*u3+4.d0*u2*v4+16.d0*u1*v6-
1068  & 3.d0*v2*u1-36.d0*u3*v6-3.d0*u2*v1+4.d0*v2*u4+4.d0*v4*u1-
1069  & 66.d0*u3*v3+16.d0*u2*v5-36.d0*u3*v5+16.d0*v1*u6)*y3)*x2+
1070  & (-96.d0*u5*v5-2.d0*v1*u1+8.d0*u2*v3+4.d0*u4*v1-
1071  & 36.d0*u6*v3+12.d0*v2*u6-4.d0*v4*u3+8.d0*v1*u3+8.d0*u1*v3-
1072  & 2.d0*u2*v2-16.d0*v4*u5+12.d0*u5*v1-16.d0*u4*v5+
1073  & 12.d0*u2*v6+12.d0*v5*u1-4.d0*u4*v3-96.d0*u6*v6-
1074  & 16.d0*v4*u6-16.d0*u4*v6-48.d0*u5*v6-48.d0*v5*u6+
1075  & 16.d0*u5*v2-36.d0*u5*v3+8.d0*v2*u3+4.d0*u2*v4)*y2*x3
1076  ans2 = (16.d0*u1*v6-3.d0*v2*u1-36.d0*u3*v6-3.d0*u2*v1+
1077  & 4.d0*v2*u4+4.d0*v4*u1-66.d0*u3*v3+16.d0*u2*v5-
1078  & 36.d0*u3*v5+16.d0*v1*u6)*y2*x3+(72.d0*v3*v6+
1079  & 2.d0*v1**2+66.d0*v3**2+72.d0*v3*v5-32.d0*v1*v6-
1080  & 16.d0*v2*v3-32.d0*v5*v2+6.d0*v2*v1+96.d0*v5**2+
1081  & 96.d0*v6**2+ 32.d0*v4*v5+2.d0*v2**2+
1082  & 32.d0*v4*v6-8.d0*v2*v4+96.d0*v5*v6-24.d0*v5*v1+
1083  & 8.d0*v4*v3-24.d0*v2*v6-16.d0*v1*v3-8.d0*v4*v1)*x3*x2+
1084  & (8.d0*v1*v6-8.d0*v4*v3+18.d0*v2**2-16.d0*v6**2+
1085  & 2.d0*v1**2-6.d0*v3**2+2.d0*v1*v3+8.d0*v2*v6+
1086  & 8.d0*v5*v1-32.d0*v5*v6+24.d0*v2*v4-48.d0*v5**2-
1087  & 8.d0*v3*v6-8.d0*v2*v1+48.d0*v4**2-16.d0*v3*v5+
1088  & 24.d0*v5*v2)*x2**2+(2.d0*u3*u1-8.d0*u4*u3-8.d0*u2*u1-
1089  & 32.d0*u5*u6+8.d0*u5*u1+24.d0*u2*u4+8.d0*u6*u1-
1090  & 8.d0*u6*u3+48.d0*u4**2-48.d0*u5**2+18.d0*u2**2+
1091  & 2.d0*u1**2-16.d0*u6**2-6.d0*u3**2+8.d0*u2*u6-
1092  & 16.d0*u3*u5+24.d0*u5*u2)*y2**2
1093  a35(ielem) = ((72.d0*u6*u3+96.d0*u5*u6- 24.d0*u5*u1-
1094  & 16.d0*u3*u1-8.d0*u4*u1+8.d0*u4*u3+32.d0*u4*u6+
1095  & 72.d0*u3*u5-32.d0*u6*u1+32.d0*u4*u5-32.d0*u5*u2+
1096  & 66.d0*u3**2-24.d0*u2*u6-8.d0*u2*u4-16.d0*u2*u3+
1097  & 96.d0*u5**2+2.d0*u1**2+96.d0*u6**2+6.d0*u2*u1+
1098  & 2.d0*u2**2)*y3*y2+ans1+ans2)*(-aux630)
1099 !
1100  ans1 = ((4.d0*v1*v6+4.d0*v6**2+8.d0*v3*v5+4.d0*v2*v1+6.d0*v2*v3-
1101  & 12.d0*v4**2-36.d0*v5**2-8.d0*v5*v6-21.d0*v2**2+
1102  & 8.d0*v5*v1-v3**2-24.d0*v4*v5+v1**2+12.d0*v4*v1+
1103  & 4.d0*v4*v3-4.d0*v2*v6-24.d0*v2*v4-2.d0*v1*v3-
1104  & 24.d0*v5*v2)*x3+(-48.d0*u5*v5-2.d0*v1*u1+3.d0*u2*v3+
1105  & 6.d0*u4*v1+2.d0*u6*v3+6.d0*v4*u3-v1*u3-u1*v3-
1106  & 24.d0*u2*v2-24.d0*v4*u5+6.d0*u5*v1-24.d0*u4*v5+6.d0*v5*u1+
1107  & 6.d0*u4*v3-8.d0*u6*v6-12.d0*v4*u6-12.d0*u4*v6-12.d0*u5*v6-
1108  & 12.d0*v5*u6-12.d0*u5*v2+6.d0*u5*v3+3.d0*v2*u3-12.d0*u2*v4+
1109  & 2.d0*u1*v6+3.d0*v2*u1+2.d0*u3*v6+3.d0*u2*v1-12.d0*v2*u4+
1110  & 6.d0*v4*u1-2.d0*u3*v3-12.d0*u2*v5+6.d0*u3*v5-48.d0*u4*v4+
1111  & 2.d0*v1*u6)*y2)*x2+(12.d0*v4*v5+6.d0*v4*v1-4.d0*v4*v3+
1112  & 10.d0*v1*v6+10.d0*v2**2-2.d0*v2*v3+16.d0*v6**2+6.d0*v2*v4+
1113  & 16.d0*v5**2+12.d0*v4*v6-4.d0*v3*v6+12.d0*v4**2+
1114  & 10.d0*v1**2-4.d0*v2*v1-2.d0*v2*v6-2.d0*v1*v3+8.d0*v5*v6-
1115  & 2.d0*v5*v1+v3**2+10.d0*v5*v2-4.d0*v3*v5)*x3**2+
1116  & (24.d0*v4**2+v1**2-6.d0*v5*v1+12.d0*v2**2+24.d0*v5**2-
1117  & 2.d0*v1*v6+12.d0*v4*v6-3*v2*v1-3.d0*v2*v3+4.d0*v6**2+
1118  & v1*v3+24.d0*v4*v5-6.d0*v4*v1+12.d0*v5*v6+v3**2-6.d0*v4*v3-
1119  & 6.d0*v3*v5+12.d0*v5*v2+12.d0*v2*v4-2.d0*v3*v6)*x2**2
1120  ans2 = (-32.d0*u5*v5-20.d0*v1*u1+2.d0*u2*v3-6.d0*u4*v1+4.d0*u6*v3+
1121  & 2.d0*v2*u6+4.d0*v4*u3+2.d0*v1*u3+2.d0*u1*v3-20.d0*u2*v2-
1122  & 12.d0*v4*u5+2.d0*u5*v1-12.d0*u4*v5+2.d0*u2*v6+2.d0*v5*u1+
1123  & 4.d0*u4*v3-32.d0*u6*v6-12.d0*v4*u6-12.d0*u4*v6-8.d0*u5*v6-
1124  & 8.d0*v5*u6-10.d0*u5*v2+4.d0*u5*v3+2.d0*v2*u3-6.d0*u2*v4-
1125  & 10.d0*u1*v6+4.d0*v2*u1+4.d0*u3*v6+4.d0*u2*v1-6.d0*v2*u4-
1126  & 6.d0*v4*u1-2.d0*u3*v3-10.d0*u2*v5+4.d0*u3*v5-24.d0*u4*v4-
1127  & 10.d0*v1*u6)*y3*x3+(u1**2+8.d0*u5*u1-8.d0*u5*u6+4.d0*u4*u3+
1128  & 6.d0*u2*u3+4.d0*u6*u1-24.d0*u4*u5-4*u2*u6-24.d0*u2*u4-
1129  & 12.d0*u4**2+8.d0*u3*u5+4.d0*u6**2+12.d0*u4*u1-2.d0*u3*u1-
1130  & 21.d0*u2**2-u3**2-36.d0*u5**2+4.d0*u2*u1-
1131  & 24.d0*u5*u2)*y3*y2+(u3**2-4.d0*u3*u5+12.d0*u4**2-
1132  & 2.d0*u2*u3+16.d0*u6**2+10.d0*u2**2+16.d0*u5**2-4.d0*u2*u1+
1133  & 12.d0*u4*u6-2.d0*u5*u1+6.d0*u4*u1+10.d0*u5*u2-4.d0*u6*u3-
1134  & 4.d0*u4*u3+8.d0*u5*u6-2.d0*u3*u1-2.d0*u2*u6+6.d0*u2*u4+
1135  & 12.d0*u4*u5+10.d0*u6*u1+10.d0*u1**2)*y3**2+
1136  & (36.d0*u5*v5-v1*u1-3.d0*u2*v3-6.d0*u4*v1+2.d0*v2*u6)*y2*x3
1137  a44(ielem) = ((-2.d0*v4*u3+ v1*u3+u1*v3+21.d0*u2*v2+12.d0*v4*u5-
1138  & 4.d0*u5*v1+12.d0*u4*v5+2.d0*u2*v6-4.d0*v5*u1-
1139  & 2.d0*u4*v3-4.d0*u6*v6+4.d0*u5*v6+4.d0*v5*u6+
1140  & 12.d0*u5*v2-4.d0*u5*v3-3.d0*v2*u3+12.d0*u2*v4-
1141  & 2.d0*u1*v6-2.d0*v2*u1-2.d0*u2*v1+12.d0*v2*u4-
1142  & 6.d0*v4*u1+u3*v3+12.d0*u2*v5-4.d0*u3*v5+12.d0*u4*v4-
1143  & 2.d0*v1*u6)*y2*x3+(36.d0*u5*v5- v1*u1-3.d0*u2*v3-
1144  & 6.d0*u4*v1+2.d0*v2*u6-2.d0*v4*u3+v1*u3+u1*v3+
1145  & 21.d0*u2*v2+12.d0*v4*u5-4.d0*u5*v1+12.d0*u4*v5+
1146  & 2.d0*u2*v6-4.d0*v5*u1-2.d0*u4*v3-4.d0*u6*v6+
1147  & 4.d0*u5*v6+4.d0*v5*u6+12.d0*u5*v2-4.d0*u5*v3-
1148  & 3.d0*v2*u3+12.d0*u2*v4-2.d0*u1*v6-2.d0*v2*u1-
1149  & 2.d0*u2*v1+12.d0*v2*u4-6.d0*v4*u1+u3*v3+12.d0*u2*v5-
1150  & 4.d0*u3*v5+12.d0*u4*v4-2.d0*v1*u6)*y3*x2+(u3*u1-
1151  & 2.d0*u6*u1+12.d0*u4*u6-3.d0*u2*u1+ 24.d0*u4**2+
1152  & 24.d0*u5**2+12.d0*u2*u4-6.d0*u5*u1-2.d0*u6*u3+u1**2+
1153  & 4.d0*u6**2+12.d0*u2**2+u3**2+24.d0*u4*u5-6.d0*u4*u3-
1154  & 6.d0*u4*u1+12.d0*u5*u6-3.d0*u2*u3-6.d0*u3*u5+
1155  & 12.d0*u5*u2)*y2**2+ans1+ans2)*8.d0*aux630
1156 !
1157  ans1 = (-2.d0*v2*u3-4.d0*v1*u1+4.d0*u6*v3-4.d0*v4*u1+4.d0*v4*u3+
1158  & 4.d0*u4*v3-4.d0*v5*u1-8.d0*v4*u6+4.d0*u3*v5-8.d0*u4*v6-
1159  & 4.d0*u5*v1-4.d0*u4*v1+8.d0*v5*u6+4.d0*u5*v3+4.d0*u3*v6+
1160  & 2.d0*u2*v1-2.d0*u2*v3+2.d0*v2*u1-48.d0*u4*v4-4.d0*u1*v6+
1161  & 8.d0*u5*v6-4.d0*v1*u6+48.d0*u5*v5+4.d0*u3*v3)*y2*x2+
1162  & (-56.d0*u5*v5-20.d0*v1*u1+u2*v3-8.d0*u4*v1+4.d0*u6*v3+
1163  & 4.d0*v2*u6+4.d0*v4*u3+2.d0*v1*u3+2.d0*u1*v3-4.d0*u2*v2-
1164  & 16.d0*v4*u5+4.d0*u5*v1-16.d0*u4*v5+4.d0*u2*v6+4.d0*v5*u1+
1165  & 4.d0*u4*v3-24.d0*u6*v6-16.d0*v4*u6-16.d0*u4*v6-
1166  & 16.d0*u5*v6-16.d0*v5*u6+v2*u3+4.d0*u2*v4-8.d0*u1*v6+
1167  & 2.d0*v2*u1+4.d0*u3*v6+2.d0*u2*v1+4.d0*v2*u4-8.d0*v4*u1-
1168  & 4.d0*u3*v3-24.d0*u4*v4-8.d0*v1*u6)*y3*x2+((-56.d0*u5*v5-
1169  & 20.d0*v1*u1+u2*v3-8.d0*u4*v1+4.d0*u6*v3+4.d0*v2*u6+4*v4*u3+
1170  & 2.d0*v1*u3+2.d0*u1*v3-4.d0*u2*v2-16.d0*v4*u5+4.d0*u5*v1-
1171  & 16.d0*u4*v5+4.d0*u2*v6+4.d0*v5*u1+4.d0*u4*v3-24.d0*u6*v6-
1172  & 16.d0*v4*u6-16.d0*u4*v6-16.d0*u5*v6-16.d0*v5*u6+v2*u3+
1173  & 4.d0*u2*v4-8.d0*u1*v6+2.d0*v2*u1+4.d0*u3*v6+2.d0*u2*v1+
1174  & 4.d0*v2*u4-8.d0*v4*u1-4.d0*u3*v3-24.d0*u4*v4-
1175  & 8.d0*v1*u6)*y2)*x3
1176  ans2 = (4.d0*u5*v2+4.d0*u2*v5+48.d0*u5*v5-8.d0*v4*u6+4.d0*u2*v4-
1177  & 8.d0*u4*v6+2.d0*u1*v3+8.d0*u4*v5-2.d0*u2*v3+8.d0*v4*u5-
1178  & 4.d0*v1*u6+4.d0*v2*u4+2.d0*v1*u3-4.d0*v4*u1-4.d0*v5*u1-
1179  & 4.d0*u5*v1-4.d0*u4*v1+4.d0*u2*v2-4.d0*u1*v6+4.d0*v2*u6-
1180  & 2.d0*v2*u3-4.d0*v1*u1-48.d0*u6*v6+4.d0*u2*v6)*y3*x3+
1181  & (-4.d0*u3*u1+32.d0*u4*u5-8.d0*u5*u1+16.d0*u6*u1-2.d0*u2*u3+
1182  & 32.d0*u5*u6+32.d0*u4*u6+24.d0*u4**2+24.d0*u6**2-8.d0*u4*u3+
1183  & 20.d0*u1**2-8.d0*u2*u4+4.d0*u3**2-8.d0*u6*u3+4.d0*u2**2-
1184  & 8.d0*u2*u6+56.d0*u5**2-4.d0*u2*u1+16.d0*u4*u1)*y3*y2+
1185  & (24.d0*u6**2+2.d0*u1**2-4.d0*u2*u4-2.d0*u3*u1-2.d0*u2**2+
1186  & 4.d0*u5*u1+4.d0*u4*u1+8.d0*u4*u6-8.d0*u4*u5-4.d0*u2*u6+
1187  & 4.d0*u6*u1-4.d0*u5*u2-24.d0*u5**2+2.d0*u2*u3)*y3**2+
1188  & (-8.d0*v3*v6+16.d0*v1*v6+32.d0*v5*v6+4.d0*v3**2+4.d0*v2**2-
1189  & 4.d0*v2*v1+56.d0*v5**2-2.d0*v2*v3+20.d0*v1**2-8.d0*v2*v4+
1190  & 32.d0*v4*v6+24.d0*v6**2-8.d0*v5*v1+32.d0*v4*v5+16.d0*v4*v1-
1191  & 8.d0*v4*v3-8.d0*v2*v6-4.d0*v1*v3+24.d0*v4**2)*x3*x2
1192  a46(ielem) = ((2.d0*v2*v3-4.d0*v2*v6-2.d0*v1*v3+4.d0*v1*v6+
1193  & 8.d0*v4*v6+4.d0*v4*v1-2.d0*v2**2-8.d0*v4*v5-24.d0*v5**2+
1194  & 24.d0*v6**2+2.d0*v1**2-4.d0*v2*v4+4.d0*v5*v1-
1195  & 4.d0*v5*v2)*x3**2+(-4.d0*v4*v3-8.d0*v5*v6-2.d0*v2*v1-
1196  & 2.d0*v3**2+4.d0*v1*v6-24.d0*v5**2+4.d0*v5*v1+2.d0*v2*v3+
1197  & 8.d0*v4*v6+24.d0*v4**2-4.d0*v3*v6+4.d0*v4*v1-4.d0*v3*v5+
1198  & 2.d0*v1**2)*x2**2+(-2.d0*u2*u1+4.d0*u6*u1+4.d0*u5*u1-
1199  & 4.d0*u4*u3-24.d0*u5**2+8.d0*u4*u6-8.d0*u5*u6+24.d0*u4**2-
1200  & 4.d0*u6*u3-2.d0*u3**2+4.d0*u4*u1+2.d0*u1**2+2.d0*u2*u3-
1201  & 4.d0*u3*u5)*y2**2+ans1+ans2)*4.d0*(-aux630)
1202 !
1203  ans1 = 24.d0*v4**2*x2**2-48.d0*u5*y2*v5*x2-v1*x2*u3*y2+
1204  & 12.d0*u4*y2*v4*x3+12.d0*u5*y3*v4*x2+12.d0*v5*x2*u4*y3+
1205  & 24.d0*u5**2*y2**2-48.d0*u4*y2*v4*x2+6.d0*u1*y3*v6*x3+
1206  & 36.d0*u5*y3*v5*x2+12.d0*v5*x3*u4*y2-12.d0*u5*y3*v4*x3+
1207  & v2**2*x3**2+24.d0*v5**2*x3**2+36.d0*u5*y2*v5*x3-
1208  & 12.d0*v5*x3*u4*y3+12.d0*u5*y2*v4*x3-24.d0*v5*x3*v4*x2+
1209  & 12.d0*v4*x2*u4*y3-8.d0*v4*x3*u4*y3+u2**2*y3**2+
1210  & 4.d0*u4**2*y3**2+4.d0*v1*x3*v6*x2-2.d0*v1*x3*u1*y3+
1211  & 3.d0*u1*y3*v3*x3+12.d0*v2**2*x2**2+6.d0*u2*y3*v5*x3+
1212  & 6.d0*u4*y2*v1*x2-12.d0*u4*y2*v6*x2-2.d0*u1*y3*v6*x2-
1213  & 12.d0*v4*x3*u6*y3+4.d0*v4**2*x3**2-12.d0*u4*y3*v6*x3+
1214  & 6.d0*v4*x2*u1*y2-12.d0*v4*x2*u6*y2+24.d0*u6**2*y3**2-
1215  & 12.d0*u2*y2*v4*x2+6.d0*u2*y3*v6*x3+12.d0*u2**2*y2**2+
1216  & 12.d0*u3**2*y3**2-48.d0*v5*x3*u5*y3+24.d0*u5*y3**2*u6-
1217  & 24.d0*u5*y2*u4*y3+12.d0*v5*x2**2*v2+u1**2*y3**2+
1218  & v1**2*x3**2+12.d0*v3**2*x3**2+24.d0*v6**2*x3**2+
1219  & 12.d0*u5*y2**2*u6-12.d0*v6**2*x3*x2-3.d0*v3**2*x3*x2+
1220  & 12.d0*u5*y3**2*u3-3.d0*v2**2*x2*x3-12.d0*u6**2*y2*y3+
1221  & 24.d0*u5**2*y3**2+24.d0*v5*x2**2*v4+12.d0*v2*x2**2*v4-
1222  & 6.d0*u5*y2**2*u1-12.d0*v2*x2*u4*y2+4.d0*u6**2*y2**2
1223  ans2 = -2.d0*v2*x3**2*v4+12.d0*u2*y2**2*u4+12.d0*v5*x3**2*v3-
1224  & 3.d0*v2*x2**2*v3-6.d0*v4*x2**2*v3-24.d0*v2*x2*u2*y2+
1225  & 12.d0*u3*y3**2*u6+v1**2*x2**2-u1**2*y3*y2-
1226  & 2.d0*u1*y2**2*u6+4.d0*v6**2*x2**2-6.d0*u5*y3**2*u1-
1227  & 3.d0*v2*x3**2*v3-3.d0*u2**2*y2*y3-6.d0*v4*x2**2*v1-
1228  & 6.d0*v5*x2**2*v1-12.d0*v5*x2*u2*y2-12.d0*u5*y2*v2*x2-
1229  & 6.d0*v2*x3**2*v5-2.d0*v4*x3**2*v1-6.d0*v3*x2**2*v5-
1230  & 2.d0*v1*x2**2*v6+3.d0*u2*y2*v3*x2+24.d0*v5**2*x2**2-
1231  & 3.d0*v1*x3**2*v3+3.d0*v2*x3*u3*y3+v3**2*x2**2-
1232  & 6.d0*u4*y2**2*u3+6.d0*v3*x2*u5*y2+3.d0*u2*y3*v3*x3-
1233  & 6.d0*u2*y3**2*u6-6.d0*u3*y2**2*u5+u2*y3**2*u1-
1234  & 3.d0*u1*y3**2*u3+12.d0*u4*y3**2*u6-2.d0*v1*x2*u1*y2+
1235  & 6.d0*v1*x3*u6*y3-12.d0*u4**2*y2*y3-12.d0*v4**2*x3*x2+
1236  & u1*y2**2*u3+12.d0*v6*x3**2*v3+6.d0*u3*y2*v5*x2-
1237  & 24.d0*v5*x2*u4*y2-24.d0*u5*y2*v4*x2-3.d0*u3**2*y3*y2+
1238  & 12.d0*u5*y2**2*u2-v1**2*x3*x2+v2*x3**2*v1+
1239  & 3.d0*v2*x2*u3*y2-6*u4*y2**2*u1+v1*x2**2*v3+
1240  & 12.d0*v5*x2**2*v6-3.d0*u2*y2**2*u3
1241  ans3 = -6.d0*u2*y3**2*u5-2.d0*u2*y3**2*u4-6.d0*v5*x3**2*v1-
1242  & 36.d0*u5**2*y2*y3-36.d0*v5**2*x3*x2+12.d0*v5*x3**2*v4+
1243  & 12.d0*u5*y3**2*u4+u3**2*y2**2+6.d0*v2*x3*u5*y3+
1244  & 12.d0*v6*x2*u6*y3-8.d0*v6*x2*u6*y2+2.d0*v6*x2*u3*y2-
1245  & 2.d0*v3*x2**2*v6+2*u2*y3*v4*x3+24.d0*v5*x3**2*v6-
1246  & 2.d0*v3*x2*u3*y2+2.d0*v3*x2*u6*y2+u1**2*y2**2-
1247  & u1*y2*v3*x2+2.d0*v2*x3*u4*y3+12.d0*v6*x3*u6*y2+
1248  & 2.d0*u1*y2*v6*x2+6.d0*v4*x2*u3*y2+3.d0*v2*x2*u2*y3+
1249  & 3.d0*v1*x3*u3*y3+3.d0*u2*y2*v2*x3-2.d0*u2*y3*v2*x3+
1250  & 12.d0*v4*x3**2*v6-4.d0*u5*y3*v1*x2+6.d0*u5*y3*v1*x3-
1251  & 3.d0*u2*y3**2*u3+4.d0*u1*y3*u6*y2+12.d0*u4*y2**2*u6-
1252  & 12.d0*u5*y3*v3*x3-2.d0*v1*x3*u6*y2+24.d0*u4**2*y2**2-
1253  & 24.d0*u5*y2*u6*y3-6.d0*v1*x3**2*v6+6.d0*u4*y2*v3*x2+
1254  & 12.d0*v5*x3*u6*y2+6.d0*v5*x3*u1*y3+8.d0*v5*x3*v1*x2-
1255  & 12.d0*v5*x2*u6*y2-6.d0*u1*y3**2*u6+6.d0*v5*x2*u1*y2+
1256  & 8.d0*u5*y2*u1*y3+24.d0*u5*y2**2*u4+3.d0*v3*x3*u3*y2+
1257  & 3.d0*v3*x2*u3*y3-24.d0*v5*x3*v6*x2+v1*x2*u1*y3-
1258  & 2.d0*v1*x2*u6*y3-4.d0*v5*x3*u1*y2-12.d0*v5*x3*u3*y3-
1259  & 2.d0*u4*y3**2*u1-24*v3*x3*u3*y3
1260  ans4 = -48.d0*v6*x3*u6*y3-4.d0*u5*y2*v1*x3+12.d0*v4*x2**2*v6-
1261  & 12.d0*v3*x3*u6*y3+12.d0*u5*y2*v6*x3+8.d0*u4*y3*v6*x2-
1262  & u2*y3*v3*x2-2.d0*u4*y3*v3*x2-2.d0*u4*y3*v1*x2+
1263  & 2.d0*u4*y3*v1*x3-2.d0*u1*y2*v6*x3-12.d0*v6*x3*u3*y3-
1264  & 2.d0*v2*x3*u6*y2+4.d0*v4*x3*v1*x2-2.d0*v4*x2*u3*y3-
1265  & v2*x3*u3*y2-2.d0*v4*x2*u1*y3+4.d0*v2*x3*v6*x2-
1266  & 12.d0*u5*y2*v6*x2-u2*y3*v1*x3+4.d0*u2*y3*u6*y2+
1267  & 8.d0*v4*x2*u6*y3+2.d0*u2*y3*u3*y2-2.d0*u2*y3*v6*x2+
1268  & 2.d0*v1*x2*u6*y2+8.d0*v4*x3*u6*y2-2.d0*v4*x3*u3*y2+
1269  & 2.d0*v2*x3*v3*x2-16.d0*v4*x3*v6*x2-2.d0*v4*x3*u1*y2-
1270  & 6.d0*v2*x3**2*v6+6.d0*u5*y2*v1*x2-v2*x3*u1*y3+
1271  & 6.d0*v2*x3*u6*y3-2.d0*v2*x2*u6*y3+8.d0*u4*y2*v6*x3-
1272  & v2*x2*u3*y3-2.d0*u3*y2**2*u6+12.d0*v5*x2*u6*y3+
1273  & 4.d0*v4*x3*v3*x2+2.d0*v4*x3*u1*y3-16.d0*u4*y2*u6*y3+
1274  & 3.d0*u2*y2*v1*x2+4.d0*u4*y2*u3*y3-2.d0*u4*y2*v1*x3-
1275  & 2.d0*u4*y2*v3*x3-u2*y2*v3*x3-24.d0*u5*y3*v6*x3-
1276  & 24.d0*v5*x3*u6*y3-4.d0*v5*x2*u1*y3-2.d0*u2*y2*v6*x3+
1277  & 3.d0*v2*x2*u1*y2+4.d0*u4*y2*u1*y3+12.d0*u5*y3*v6*x2-
1278  & 3.d0*v2*x2**2*v1+v1*x3*u1*y2-3.d0*u2*y2**2*u1
1279  a55(ielem) = (ans1+ans2+ans3+ans4)*8.d0*aux630
1280 !
1281 !
1282 ! USES HERE THE 'MAGIC SQUARE' PROPERTIES TO GET THE REMAINING TERMS
1283 ! (SUM OF EACH LINE = SUM OF EACH COLUMN = 0)
1284 !
1285  a16(ielem) = - a11(ielem) - a12(ielem) - a13(ielem)
1286  & - a14(ielem) - a15(ielem)
1287 !
1288  a25(ielem) = - a12(ielem) - a22(ielem) - a23(ielem)
1289  & - a24(ielem) - a26(ielem)
1290 !
1291  a36(ielem) = - a13(ielem) - a23(ielem) - a33(ielem)
1292  & - a34(ielem) - a35(ielem)
1293 !
1294  a45(ielem) = - a14(ielem) - a24(ielem) - a34(ielem)
1295  & - a44(ielem) - a46(ielem)
1296 !
1297  a56(ielem) = - a15(ielem) - a25(ielem) - a35(ielem)
1298  & - a45(ielem) - a55(ielem)
1299 !
1300  a66(ielem) = - a16(ielem) - a26(ielem) - a36(ielem)
1301  & - a46(ielem) - a56(ielem)
1302 !
1303  ENDDO ! IELEM
1304 !
1305 !-----------------------------------------------------------------------
1306 !
1307  ELSE
1308  IF(ielmu.EQ.ielmv) THEN
1309  WRITE(lu,101) ielmu
1310 101 FORMAT(1x,'MT04CC (BIEF) :',/,
1311  & 1x,'DISCRETIZATION OF U AND V : ',1i6,' NOT AVAILABLE')
1312  ELSE
1313  WRITE(lu,201) ielmu,ielmv
1314 201 FORMAT(1x,'MT04CC (BIEF) :',/,
1315  & 1x,'U AND V OF A DIFFERENT DISCRETISATION:',1i6,3x,1i6)
1316  ENDIF
1317 !
1318  CALL plante(1)
1319  stop
1320 !
1321  ENDIF
1322 !
1323 !-----------------------------------------------------------------------
1324 !
1325  RETURN
1326  END
subroutine mt04cc(A11, A12, A13, A14, A15, A16, A22, A23, A24, A25, A26, A33, A34, A35, A36, A44, A45, A46, A55, A56, A66, XMUL, SU, SV, U, V, XEL, YEL, IKLE1, IKLE2, IKLE3, IKLE4, IKLE5, IKLE6, NELEM, NELMAX)
Definition: mt04cc.f:14
Definition: bief.f:3