1
// This code conforms with the UFC specification version 2.0.0
2
// and was automatically generated by FFC version 0.9.10.
1
// This code conforms with the UFC specification version 2.0.2
2
// and was automatically generated by FFC version 1.0-beta+.
4
4
// This code was generated with the following parameters:
149
149
double basisvalues[4] = {0.0, 0.0, 0.0, 0.0};
151
151
// Declare helper variables.
154
152
double tmp0 = 0.5*(2.0 + Y + Z + 2.0*X);
156
154
// Compute basisvalues.
157
155
basisvalues[0] = 1.0;
158
156
basisvalues[1] = tmp0;
159
for (unsigned int r = 0; r < 1; r++)
161
rr = (r + 1)*(r + 1 + 1)*(r + 1 + 2)/6 + 1*(1 + 1)/2;
162
ss = r*(r + 1)*(r + 2)/6;
163
basisvalues[rr] = basisvalues[ss]*(r*(1.0 + Y) + (2.0 + Z + 3.0*Y)/2.0);
164
}// end loop over 'r'
165
for (unsigned int r = 0; r < 1; r++)
167
for (unsigned int s = 0; s < 1 - r; s++)
169
rr = (r + s + 1)*(r + s + 1 + 1)*(r + s + 1 + 2)/6 + (s + 1)*(s + 1 + 1)/2 + 1;
170
ss = (r + s)*(r + s + 1)*(r + s + 2)/6 + s*(s + 1)/2;
171
basisvalues[rr] = basisvalues[ss]*(1.0 + r + s + Z*(2.0 + r + s));
172
}// end loop over 's'
173
}// end loop over 'r'
174
for (unsigned int r = 0; r < 2; r++)
176
for (unsigned int s = 0; s < 2 - r; s++)
178
for (unsigned int t = 0; t < 2 - r - s; t++)
180
rr = (r + s + t)*(r + s + t + 1)*(r + s + t + 2)/6 + (s + t)*(s + t + 1)/2 + t;
181
basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s)*(1.5 + r + s + t));
182
}// end loop over 't'
183
}// end loop over 's'
184
}// end loop over 'r'
157
basisvalues[2] = 0.5*(2.0 + 3.0*Y + Z)*basisvalues[0];
158
basisvalues[3] = (2.0*Z + 1.0)*basisvalues[0];
159
basisvalues[0] *= std::sqrt(0.75);
160
basisvalues[3] *= std::sqrt(1.25);
161
basisvalues[2] *= std::sqrt(2.5);
162
basisvalues[1] *= std::sqrt(7.5);
186
164
// Table(s) of coefficients.
187
165
static const double coefficients0[4] = \
201
179
double basisvalues[4] = {0.0, 0.0, 0.0, 0.0};
203
181
// Declare helper variables.
206
182
double tmp0 = 0.5*(2.0 + Y + Z + 2.0*X);
208
184
// Compute basisvalues.
209
185
basisvalues[0] = 1.0;
210
186
basisvalues[1] = tmp0;
211
for (unsigned int r = 0; r < 1; r++)
213
rr = (r + 1)*(r + 1 + 1)*(r + 1 + 2)/6 + 1*(1 + 1)/2;
214
ss = r*(r + 1)*(r + 2)/6;
215
basisvalues[rr] = basisvalues[ss]*(r*(1.0 + Y) + (2.0 + Z + 3.0*Y)/2.0);
216
}// end loop over 'r'
217
for (unsigned int r = 0; r < 1; r++)
219
for (unsigned int s = 0; s < 1 - r; s++)
221
rr = (r + s + 1)*(r + s + 1 + 1)*(r + s + 1 + 2)/6 + (s + 1)*(s + 1 + 1)/2 + 1;
222
ss = (r + s)*(r + s + 1)*(r + s + 2)/6 + s*(s + 1)/2;
223
basisvalues[rr] = basisvalues[ss]*(1.0 + r + s + Z*(2.0 + r + s));
224
}// end loop over 's'
225
}// end loop over 'r'
226
for (unsigned int r = 0; r < 2; r++)
228
for (unsigned int s = 0; s < 2 - r; s++)
230
for (unsigned int t = 0; t < 2 - r - s; t++)
232
rr = (r + s + t)*(r + s + t + 1)*(r + s + t + 2)/6 + (s + t)*(s + t + 1)/2 + t;
233
basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s)*(1.5 + r + s + t));
234
}// end loop over 't'
235
}// end loop over 's'
236
}// end loop over 'r'
187
basisvalues[2] = 0.5*(2.0 + 3.0*Y + Z)*basisvalues[0];
188
basisvalues[3] = (2.0*Z + 1.0)*basisvalues[0];
189
basisvalues[0] *= std::sqrt(0.75);
190
basisvalues[3] *= std::sqrt(1.25);
191
basisvalues[2] *= std::sqrt(2.5);
192
basisvalues[1] *= std::sqrt(7.5);
238
194
// Table(s) of coefficients.
239
195
static const double coefficients0[4] = \
253
209
double basisvalues[4] = {0.0, 0.0, 0.0, 0.0};
255
211
// Declare helper variables.
258
212
double tmp0 = 0.5*(2.0 + Y + Z + 2.0*X);
260
214
// Compute basisvalues.
261
215
basisvalues[0] = 1.0;
262
216
basisvalues[1] = tmp0;
263
for (unsigned int r = 0; r < 1; r++)
265
rr = (r + 1)*(r + 1 + 1)*(r + 1 + 2)/6 + 1*(1 + 1)/2;
266
ss = r*(r + 1)*(r + 2)/6;
267
basisvalues[rr] = basisvalues[ss]*(r*(1.0 + Y) + (2.0 + Z + 3.0*Y)/2.0);
268
}// end loop over 'r'
269
for (unsigned int r = 0; r < 1; r++)
271
for (unsigned int s = 0; s < 1 - r; s++)
273
rr = (r + s + 1)*(r + s + 1 + 1)*(r + s + 1 + 2)/6 + (s + 1)*(s + 1 + 1)/2 + 1;
274
ss = (r + s)*(r + s + 1)*(r + s + 2)/6 + s*(s + 1)/2;
275
basisvalues[rr] = basisvalues[ss]*(1.0 + r + s + Z*(2.0 + r + s));
276
}// end loop over 's'
277
}// end loop over 'r'
278
for (unsigned int r = 0; r < 2; r++)
280
for (unsigned int s = 0; s < 2 - r; s++)
282
for (unsigned int t = 0; t < 2 - r - s; t++)
284
rr = (r + s + t)*(r + s + t + 1)*(r + s + t + 2)/6 + (s + t)*(s + t + 1)/2 + t;
285
basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s)*(1.5 + r + s + t));
286
}// end loop over 't'
287
}// end loop over 's'
288
}// end loop over 'r'
217
basisvalues[2] = 0.5*(2.0 + 3.0*Y + Z)*basisvalues[0];
218
basisvalues[3] = (2.0*Z + 1.0)*basisvalues[0];
219
basisvalues[0] *= std::sqrt(0.75);
220
basisvalues[3] *= std::sqrt(1.25);
221
basisvalues[2] *= std::sqrt(2.5);
222
basisvalues[1] *= std::sqrt(7.5);
290
224
// Table(s) of coefficients.
291
225
static const double coefficients0[4] = \
305
239
double basisvalues[4] = {0.0, 0.0, 0.0, 0.0};
307
241
// Declare helper variables.
310
242
double tmp0 = 0.5*(2.0 + Y + Z + 2.0*X);
312
244
// Compute basisvalues.
313
245
basisvalues[0] = 1.0;
314
246
basisvalues[1] = tmp0;
315
for (unsigned int r = 0; r < 1; r++)
317
rr = (r + 1)*(r + 1 + 1)*(r + 1 + 2)/6 + 1*(1 + 1)/2;
318
ss = r*(r + 1)*(r + 2)/6;
319
basisvalues[rr] = basisvalues[ss]*(r*(1.0 + Y) + (2.0 + Z + 3.0*Y)/2.0);
320
}// end loop over 'r'
321
for (unsigned int r = 0; r < 1; r++)
323
for (unsigned int s = 0; s < 1 - r; s++)
325
rr = (r + s + 1)*(r + s + 1 + 1)*(r + s + 1 + 2)/6 + (s + 1)*(s + 1 + 1)/2 + 1;
326
ss = (r + s)*(r + s + 1)*(r + s + 2)/6 + s*(s + 1)/2;
327
basisvalues[rr] = basisvalues[ss]*(1.0 + r + s + Z*(2.0 + r + s));
328
}// end loop over 's'
329
}// end loop over 'r'
330
for (unsigned int r = 0; r < 2; r++)
332
for (unsigned int s = 0; s < 2 - r; s++)
334
for (unsigned int t = 0; t < 2 - r - s; t++)
336
rr = (r + s + t)*(r + s + t + 1)*(r + s + t + 2)/6 + (s + t)*(s + t + 1)/2 + t;
337
basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s)*(1.5 + r + s + t));
338
}// end loop over 't'
339
}// end loop over 's'
340
}// end loop over 'r'
247
basisvalues[2] = 0.5*(2.0 + 3.0*Y + Z)*basisvalues[0];
248
basisvalues[3] = (2.0*Z + 1.0)*basisvalues[0];
249
basisvalues[0] *= std::sqrt(0.75);
250
basisvalues[3] *= std::sqrt(1.25);
251
basisvalues[2] *= std::sqrt(2.5);
252
basisvalues[1] *= std::sqrt(7.5);
342
254
// Table(s) of coefficients.
343
255
static const double coefficients0[4] = \
500
412
double basisvalues[4] = {0.0, 0.0, 0.0, 0.0};
502
414
// Declare helper variables.
505
415
double tmp0 = 0.5*(2.0 + Y + Z + 2.0*X);
507
417
// Compute basisvalues.
508
418
basisvalues[0] = 1.0;
509
419
basisvalues[1] = tmp0;
510
for (unsigned int r = 0; r < 1; r++)
512
rr = (r + 1)*(r + 1 + 1)*(r + 1 + 2)/6 + 1*(1 + 1)/2;
513
ss = r*(r + 1)*(r + 2)/6;
514
basisvalues[rr] = basisvalues[ss]*(r*(1.0 + Y) + (2.0 + Z + 3.0*Y)/2.0);
515
}// end loop over 'r'
516
for (unsigned int r = 0; r < 1; r++)
518
for (unsigned int s = 0; s < 1 - r; s++)
520
rr = (r + s + 1)*(r + s + 1 + 1)*(r + s + 1 + 2)/6 + (s + 1)*(s + 1 + 1)/2 + 1;
521
ss = (r + s)*(r + s + 1)*(r + s + 2)/6 + s*(s + 1)/2;
522
basisvalues[rr] = basisvalues[ss]*(1.0 + r + s + Z*(2.0 + r + s));
523
}// end loop over 's'
524
}// end loop over 'r'
525
for (unsigned int r = 0; r < 2; r++)
527
for (unsigned int s = 0; s < 2 - r; s++)
529
for (unsigned int t = 0; t < 2 - r - s; t++)
531
rr = (r + s + t)*(r + s + t + 1)*(r + s + t + 2)/6 + (s + t)*(s + t + 1)/2 + t;
532
basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s)*(1.5 + r + s + t));
533
}// end loop over 't'
534
}// end loop over 's'
535
}// end loop over 'r'
420
basisvalues[2] = 0.5*(2.0 + 3.0*Y + Z)*basisvalues[0];
421
basisvalues[3] = (2.0*Z + 1.0)*basisvalues[0];
422
basisvalues[0] *= std::sqrt(0.75);
423
basisvalues[3] *= std::sqrt(1.25);
424
basisvalues[2] *= std::sqrt(2.5);
425
basisvalues[1] *= std::sqrt(7.5);
537
427
// Table(s) of coefficients.
538
428
static const double coefficients0[4] = \
694
584
double basisvalues[4] = {0.0, 0.0, 0.0, 0.0};
696
586
// Declare helper variables.
699
587
double tmp0 = 0.5*(2.0 + Y + Z + 2.0*X);
701
589
// Compute basisvalues.
702
590
basisvalues[0] = 1.0;
703
591
basisvalues[1] = tmp0;
704
for (unsigned int r = 0; r < 1; r++)
706
rr = (r + 1)*(r + 1 + 1)*(r + 1 + 2)/6 + 1*(1 + 1)/2;
707
ss = r*(r + 1)*(r + 2)/6;
708
basisvalues[rr] = basisvalues[ss]*(r*(1.0 + Y) + (2.0 + Z + 3.0*Y)/2.0);
709
}// end loop over 'r'
710
for (unsigned int r = 0; r < 1; r++)
712
for (unsigned int s = 0; s < 1 - r; s++)
714
rr = (r + s + 1)*(r + s + 1 + 1)*(r + s + 1 + 2)/6 + (s + 1)*(s + 1 + 1)/2 + 1;
715
ss = (r + s)*(r + s + 1)*(r + s + 2)/6 + s*(s + 1)/2;
716
basisvalues[rr] = basisvalues[ss]*(1.0 + r + s + Z*(2.0 + r + s));
717
}// end loop over 's'
718
}// end loop over 'r'
719
for (unsigned int r = 0; r < 2; r++)
721
for (unsigned int s = 0; s < 2 - r; s++)
723
for (unsigned int t = 0; t < 2 - r - s; t++)
725
rr = (r + s + t)*(r + s + t + 1)*(r + s + t + 2)/6 + (s + t)*(s + t + 1)/2 + t;
726
basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s)*(1.5 + r + s + t));
727
}// end loop over 't'
728
}// end loop over 's'
729
}// end loop over 'r'
592
basisvalues[2] = 0.5*(2.0 + 3.0*Y + Z)*basisvalues[0];
593
basisvalues[3] = (2.0*Z + 1.0)*basisvalues[0];
594
basisvalues[0] *= std::sqrt(0.75);
595
basisvalues[3] *= std::sqrt(1.25);
596
basisvalues[2] *= std::sqrt(2.5);
597
basisvalues[1] *= std::sqrt(7.5);
731
599
// Table(s) of coefficients.
732
600
static const double coefficients0[4] = \
888
756
double basisvalues[4] = {0.0, 0.0, 0.0, 0.0};
890
758
// Declare helper variables.
893
759
double tmp0 = 0.5*(2.0 + Y + Z + 2.0*X);
895
761
// Compute basisvalues.
896
762
basisvalues[0] = 1.0;
897
763
basisvalues[1] = tmp0;
898
for (unsigned int r = 0; r < 1; r++)
900
rr = (r + 1)*(r + 1 + 1)*(r + 1 + 2)/6 + 1*(1 + 1)/2;
901
ss = r*(r + 1)*(r + 2)/6;
902
basisvalues[rr] = basisvalues[ss]*(r*(1.0 + Y) + (2.0 + Z + 3.0*Y)/2.0);
903
}// end loop over 'r'
904
for (unsigned int r = 0; r < 1; r++)
906
for (unsigned int s = 0; s < 1 - r; s++)
908
rr = (r + s + 1)*(r + s + 1 + 1)*(r + s + 1 + 2)/6 + (s + 1)*(s + 1 + 1)/2 + 1;
909
ss = (r + s)*(r + s + 1)*(r + s + 2)/6 + s*(s + 1)/2;
910
basisvalues[rr] = basisvalues[ss]*(1.0 + r + s + Z*(2.0 + r + s));
911
}// end loop over 's'
912
}// end loop over 'r'
913
for (unsigned int r = 0; r < 2; r++)
915
for (unsigned int s = 0; s < 2 - r; s++)
917
for (unsigned int t = 0; t < 2 - r - s; t++)
919
rr = (r + s + t)*(r + s + t + 1)*(r + s + t + 2)/6 + (s + t)*(s + t + 1)/2 + t;
920
basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s)*(1.5 + r + s + t));
921
}// end loop over 't'
922
}// end loop over 's'
923
}// end loop over 'r'
764
basisvalues[2] = 0.5*(2.0 + 3.0*Y + Z)*basisvalues[0];
765
basisvalues[3] = (2.0*Z + 1.0)*basisvalues[0];
766
basisvalues[0] *= std::sqrt(0.75);
767
basisvalues[3] *= std::sqrt(1.25);
768
basisvalues[2] *= std::sqrt(2.5);
769
basisvalues[1] *= std::sqrt(7.5);
925
771
// Table(s) of coefficients.
926
772
static const double coefficients0[4] = \
1082
928
double basisvalues[4] = {0.0, 0.0, 0.0, 0.0};
1084
930
// Declare helper variables.
1085
unsigned int rr = 0;
1086
unsigned int ss = 0;
1087
931
double tmp0 = 0.5*(2.0 + Y + Z + 2.0*X);
1089
933
// Compute basisvalues.
1090
934
basisvalues[0] = 1.0;
1091
935
basisvalues[1] = tmp0;
1092
for (unsigned int r = 0; r < 1; r++)
1094
rr = (r + 1)*(r + 1 + 1)*(r + 1 + 2)/6 + 1*(1 + 1)/2;
1095
ss = r*(r + 1)*(r + 2)/6;
1096
basisvalues[rr] = basisvalues[ss]*(r*(1.0 + Y) + (2.0 + Z + 3.0*Y)/2.0);
1097
}// end loop over 'r'
1098
for (unsigned int r = 0; r < 1; r++)
1100
for (unsigned int s = 0; s < 1 - r; s++)
1102
rr = (r + s + 1)*(r + s + 1 + 1)*(r + s + 1 + 2)/6 + (s + 1)*(s + 1 + 1)/2 + 1;
1103
ss = (r + s)*(r + s + 1)*(r + s + 2)/6 + s*(s + 1)/2;
1104
basisvalues[rr] = basisvalues[ss]*(1.0 + r + s + Z*(2.0 + r + s));
1105
}// end loop over 's'
1106
}// end loop over 'r'
1107
for (unsigned int r = 0; r < 2; r++)
1109
for (unsigned int s = 0; s < 2 - r; s++)
1111
for (unsigned int t = 0; t < 2 - r - s; t++)
1113
rr = (r + s + t)*(r + s + t + 1)*(r + s + t + 2)/6 + (s + t)*(s + t + 1)/2 + t;
1114
basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s)*(1.5 + r + s + t));
1115
}// end loop over 't'
1116
}// end loop over 's'
1117
}// end loop over 'r'
936
basisvalues[2] = 0.5*(2.0 + 3.0*Y + Z)*basisvalues[0];
937
basisvalues[3] = (2.0*Z + 1.0)*basisvalues[0];
938
basisvalues[0] *= std::sqrt(0.75);
939
basisvalues[3] *= std::sqrt(1.25);
940
basisvalues[2] *= std::sqrt(2.5);
941
basisvalues[1] *= std::sqrt(7.5);
1119
943
// Table(s) of coefficients.
1120
944
static const double coefficients0[4] = \