~ubuntu-branches/ubuntu/raring/ffc/raring

« back to all changes in this revision

Viewing changes to test/regression/references/r_auto/MixedPoisson.h

  • Committer: Package Import Robot
  • Author(s): Johannes Ring
  • Date: 2011-10-26 17:52:20 UTC
  • mfrom: (1.1.10)
  • Revision ID: package-import@ubuntu.com-20111026175220-ope1dzqv4jn2b8pq
Tags: 1.0-beta2-1
* New upstream release. This release includes some performance
  improvements for evaluating basis functions. It also adds support
  for Bessel functions and error functions.
* debian/control: Bump version numbers for python-ufc, python-fiat,
  python-instant, and python-ufl.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
// This code conforms with the UFC specification version 2.0.0
2
 
// and was automatically generated by FFC version 1.0-beta.
 
1
// This code conforms with the UFC specification version 2.0.2
 
2
// and was automatically generated by FFC version 1.0-beta+.
3
3
// 
4
4
// This code was generated with the following parameters:
5
5
// 
140
140
      double basisvalues[3] = {0.0, 0.0, 0.0};
141
141
      
142
142
      // Declare helper variables.
143
 
      unsigned int rr = 0;
144
 
      unsigned int ss = 0;
145
143
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
146
144
      
147
145
      // Compute basisvalues.
148
146
      basisvalues[0] = 1.0;
149
147
      basisvalues[1] = tmp0;
150
 
      for (unsigned int r = 0; r < 1; r++)
151
 
      {
152
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
153
 
        ss = r*(r + 1)/2;
154
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
155
 
      }// end loop over 'r'
156
 
      for (unsigned int r = 0; r < 2; r++)
157
 
      {
158
 
        for (unsigned int s = 0; s < 2 - r; s++)
159
 
        {
160
 
          rr = (r + s)*(r + s + 1)/2 + s;
161
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
162
 
        }// end loop over 's'
163
 
      }// end loop over 'r'
 
148
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
149
      basisvalues[0] *= std::sqrt(0.5);
 
150
      basisvalues[2] *= std::sqrt(1.0);
 
151
      basisvalues[1] *= std::sqrt(3.0);
164
152
      
165
153
      // Table(s) of coefficients.
166
154
      static const double coefficients0[3] = \
190
178
      double basisvalues[3] = {0.0, 0.0, 0.0};
191
179
      
192
180
      // Declare helper variables.
193
 
      unsigned int rr = 0;
194
 
      unsigned int ss = 0;
195
181
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
196
182
      
197
183
      // Compute basisvalues.
198
184
      basisvalues[0] = 1.0;
199
185
      basisvalues[1] = tmp0;
200
 
      for (unsigned int r = 0; r < 1; r++)
201
 
      {
202
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
203
 
        ss = r*(r + 1)/2;
204
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
205
 
      }// end loop over 'r'
206
 
      for (unsigned int r = 0; r < 2; r++)
207
 
      {
208
 
        for (unsigned int s = 0; s < 2 - r; s++)
209
 
        {
210
 
          rr = (r + s)*(r + s + 1)/2 + s;
211
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
212
 
        }// end loop over 's'
213
 
      }// end loop over 'r'
 
186
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
187
      basisvalues[0] *= std::sqrt(0.5);
 
188
      basisvalues[2] *= std::sqrt(1.0);
 
189
      basisvalues[1] *= std::sqrt(3.0);
214
190
      
215
191
      // Table(s) of coefficients.
216
192
      static const double coefficients0[3] = \
240
216
      double basisvalues[3] = {0.0, 0.0, 0.0};
241
217
      
242
218
      // Declare helper variables.
243
 
      unsigned int rr = 0;
244
 
      unsigned int ss = 0;
245
219
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
246
220
      
247
221
      // Compute basisvalues.
248
222
      basisvalues[0] = 1.0;
249
223
      basisvalues[1] = tmp0;
250
 
      for (unsigned int r = 0; r < 1; r++)
251
 
      {
252
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
253
 
        ss = r*(r + 1)/2;
254
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
255
 
      }// end loop over 'r'
256
 
      for (unsigned int r = 0; r < 2; r++)
257
 
      {
258
 
        for (unsigned int s = 0; s < 2 - r; s++)
259
 
        {
260
 
          rr = (r + s)*(r + s + 1)/2 + s;
261
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
262
 
        }// end loop over 's'
263
 
      }// end loop over 'r'
 
224
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
225
      basisvalues[0] *= std::sqrt(0.5);
 
226
      basisvalues[2] *= std::sqrt(1.0);
 
227
      basisvalues[1] *= std::sqrt(3.0);
264
228
      
265
229
      // Table(s) of coefficients.
266
230
      static const double coefficients0[3] = \
290
254
      double basisvalues[3] = {0.0, 0.0, 0.0};
291
255
      
292
256
      // Declare helper variables.
293
 
      unsigned int rr = 0;
294
 
      unsigned int ss = 0;
295
257
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
296
258
      
297
259
      // Compute basisvalues.
298
260
      basisvalues[0] = 1.0;
299
261
      basisvalues[1] = tmp0;
300
 
      for (unsigned int r = 0; r < 1; r++)
301
 
      {
302
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
303
 
        ss = r*(r + 1)/2;
304
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
305
 
      }// end loop over 'r'
306
 
      for (unsigned int r = 0; r < 2; r++)
307
 
      {
308
 
        for (unsigned int s = 0; s < 2 - r; s++)
309
 
        {
310
 
          rr = (r + s)*(r + s + 1)/2 + s;
311
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
312
 
        }// end loop over 's'
313
 
      }// end loop over 'r'
 
262
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
263
      basisvalues[0] *= std::sqrt(0.5);
 
264
      basisvalues[2] *= std::sqrt(1.0);
 
265
      basisvalues[1] *= std::sqrt(3.0);
314
266
      
315
267
      // Table(s) of coefficients.
316
268
      static const double coefficients0[3] = \
340
292
      double basisvalues[3] = {0.0, 0.0, 0.0};
341
293
      
342
294
      // Declare helper variables.
343
 
      unsigned int rr = 0;
344
 
      unsigned int ss = 0;
345
295
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
346
296
      
347
297
      // Compute basisvalues.
348
298
      basisvalues[0] = 1.0;
349
299
      basisvalues[1] = tmp0;
350
 
      for (unsigned int r = 0; r < 1; r++)
351
 
      {
352
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
353
 
        ss = r*(r + 1)/2;
354
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
355
 
      }// end loop over 'r'
356
 
      for (unsigned int r = 0; r < 2; r++)
357
 
      {
358
 
        for (unsigned int s = 0; s < 2 - r; s++)
359
 
        {
360
 
          rr = (r + s)*(r + s + 1)/2 + s;
361
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
362
 
        }// end loop over 's'
363
 
      }// end loop over 'r'
 
300
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
301
      basisvalues[0] *= std::sqrt(0.5);
 
302
      basisvalues[2] *= std::sqrt(1.0);
 
303
      basisvalues[1] *= std::sqrt(3.0);
364
304
      
365
305
      // Table(s) of coefficients.
366
306
      static const double coefficients0[3] = \
390
330
      double basisvalues[3] = {0.0, 0.0, 0.0};
391
331
      
392
332
      // Declare helper variables.
393
 
      unsigned int rr = 0;
394
 
      unsigned int ss = 0;
395
333
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
396
334
      
397
335
      // Compute basisvalues.
398
336
      basisvalues[0] = 1.0;
399
337
      basisvalues[1] = tmp0;
400
 
      for (unsigned int r = 0; r < 1; r++)
401
 
      {
402
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
403
 
        ss = r*(r + 1)/2;
404
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
405
 
      }// end loop over 'r'
406
 
      for (unsigned int r = 0; r < 2; r++)
407
 
      {
408
 
        for (unsigned int s = 0; s < 2 - r; s++)
409
 
        {
410
 
          rr = (r + s)*(r + s + 1)/2 + s;
411
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
412
 
        }// end loop over 's'
413
 
      }// end loop over 'r'
 
338
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
339
      basisvalues[0] *= std::sqrt(0.5);
 
340
      basisvalues[2] *= std::sqrt(1.0);
 
341
      basisvalues[1] *= std::sqrt(3.0);
414
342
      
415
343
      // Table(s) of coefficients.
416
344
      static const double coefficients0[3] = \
562
490
      double basisvalues[3] = {0.0, 0.0, 0.0};
563
491
      
564
492
      // Declare helper variables.
565
 
      unsigned int rr = 0;
566
 
      unsigned int ss = 0;
567
493
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
568
494
      
569
495
      // Compute basisvalues.
570
496
      basisvalues[0] = 1.0;
571
497
      basisvalues[1] = tmp0;
572
 
      for (unsigned int r = 0; r < 1; r++)
573
 
      {
574
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
575
 
        ss = r*(r + 1)/2;
576
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
577
 
      }// end loop over 'r'
578
 
      for (unsigned int r = 0; r < 2; r++)
579
 
      {
580
 
        for (unsigned int s = 0; s < 2 - r; s++)
581
 
        {
582
 
          rr = (r + s)*(r + s + 1)/2 + s;
583
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
584
 
        }// end loop over 's'
585
 
      }// end loop over 'r'
 
498
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
499
      basisvalues[0] *= std::sqrt(0.5);
 
500
      basisvalues[2] *= std::sqrt(1.0);
 
501
      basisvalues[1] *= std::sqrt(3.0);
586
502
      
587
503
      // Table(s) of coefficients.
588
504
      static const double coefficients0[3] = \
731
647
      double basisvalues[3] = {0.0, 0.0, 0.0};
732
648
      
733
649
      // Declare helper variables.
734
 
      unsigned int rr = 0;
735
 
      unsigned int ss = 0;
736
650
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
737
651
      
738
652
      // Compute basisvalues.
739
653
      basisvalues[0] = 1.0;
740
654
      basisvalues[1] = tmp0;
741
 
      for (unsigned int r = 0; r < 1; r++)
742
 
      {
743
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
744
 
        ss = r*(r + 1)/2;
745
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
746
 
      }// end loop over 'r'
747
 
      for (unsigned int r = 0; r < 2; r++)
748
 
      {
749
 
        for (unsigned int s = 0; s < 2 - r; s++)
750
 
        {
751
 
          rr = (r + s)*(r + s + 1)/2 + s;
752
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
753
 
        }// end loop over 's'
754
 
      }// end loop over 'r'
 
655
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
656
      basisvalues[0] *= std::sqrt(0.5);
 
657
      basisvalues[2] *= std::sqrt(1.0);
 
658
      basisvalues[1] *= std::sqrt(3.0);
755
659
      
756
660
      // Table(s) of coefficients.
757
661
      static const double coefficients0[3] = \
900
804
      double basisvalues[3] = {0.0, 0.0, 0.0};
901
805
      
902
806
      // Declare helper variables.
903
 
      unsigned int rr = 0;
904
 
      unsigned int ss = 0;
905
807
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
906
808
      
907
809
      // Compute basisvalues.
908
810
      basisvalues[0] = 1.0;
909
811
      basisvalues[1] = tmp0;
910
 
      for (unsigned int r = 0; r < 1; r++)
911
 
      {
912
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
913
 
        ss = r*(r + 1)/2;
914
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
915
 
      }// end loop over 'r'
916
 
      for (unsigned int r = 0; r < 2; r++)
917
 
      {
918
 
        for (unsigned int s = 0; s < 2 - r; s++)
919
 
        {
920
 
          rr = (r + s)*(r + s + 1)/2 + s;
921
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
922
 
        }// end loop over 's'
923
 
      }// end loop over 'r'
 
812
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
813
      basisvalues[0] *= std::sqrt(0.5);
 
814
      basisvalues[2] *= std::sqrt(1.0);
 
815
      basisvalues[1] *= std::sqrt(3.0);
924
816
      
925
817
      // Table(s) of coefficients.
926
818
      static const double coefficients0[3] = \
1069
961
      double basisvalues[3] = {0.0, 0.0, 0.0};
1070
962
      
1071
963
      // Declare helper variables.
1072
 
      unsigned int rr = 0;
1073
 
      unsigned int ss = 0;
1074
964
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
1075
965
      
1076
966
      // Compute basisvalues.
1077
967
      basisvalues[0] = 1.0;
1078
968
      basisvalues[1] = tmp0;
1079
 
      for (unsigned int r = 0; r < 1; r++)
1080
 
      {
1081
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
1082
 
        ss = r*(r + 1)/2;
1083
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
1084
 
      }// end loop over 'r'
1085
 
      for (unsigned int r = 0; r < 2; r++)
1086
 
      {
1087
 
        for (unsigned int s = 0; s < 2 - r; s++)
1088
 
        {
1089
 
          rr = (r + s)*(r + s + 1)/2 + s;
1090
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
1091
 
        }// end loop over 's'
1092
 
      }// end loop over 'r'
 
969
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
970
      basisvalues[0] *= std::sqrt(0.5);
 
971
      basisvalues[2] *= std::sqrt(1.0);
 
972
      basisvalues[1] *= std::sqrt(3.0);
1093
973
      
1094
974
      // Table(s) of coefficients.
1095
975
      static const double coefficients0[3] = \
1238
1118
      double basisvalues[3] = {0.0, 0.0, 0.0};
1239
1119
      
1240
1120
      // Declare helper variables.
1241
 
      unsigned int rr = 0;
1242
 
      unsigned int ss = 0;
1243
1121
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
1244
1122
      
1245
1123
      // Compute basisvalues.
1246
1124
      basisvalues[0] = 1.0;
1247
1125
      basisvalues[1] = tmp0;
1248
 
      for (unsigned int r = 0; r < 1; r++)
1249
 
      {
1250
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
1251
 
        ss = r*(r + 1)/2;
1252
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
1253
 
      }// end loop over 'r'
1254
 
      for (unsigned int r = 0; r < 2; r++)
1255
 
      {
1256
 
        for (unsigned int s = 0; s < 2 - r; s++)
1257
 
        {
1258
 
          rr = (r + s)*(r + s + 1)/2 + s;
1259
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
1260
 
        }// end loop over 's'
1261
 
      }// end loop over 'r'
 
1126
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
1127
      basisvalues[0] *= std::sqrt(0.5);
 
1128
      basisvalues[2] *= std::sqrt(1.0);
 
1129
      basisvalues[1] *= std::sqrt(3.0);
1262
1130
      
1263
1131
      // Table(s) of coefficients.
1264
1132
      static const double coefficients0[3] = \
1407
1275
      double basisvalues[3] = {0.0, 0.0, 0.0};
1408
1276
      
1409
1277
      // Declare helper variables.
1410
 
      unsigned int rr = 0;
1411
 
      unsigned int ss = 0;
1412
1278
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
1413
1279
      
1414
1280
      // Compute basisvalues.
1415
1281
      basisvalues[0] = 1.0;
1416
1282
      basisvalues[1] = tmp0;
1417
 
      for (unsigned int r = 0; r < 1; r++)
1418
 
      {
1419
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
1420
 
        ss = r*(r + 1)/2;
1421
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
1422
 
      }// end loop over 'r'
1423
 
      for (unsigned int r = 0; r < 2; r++)
1424
 
      {
1425
 
        for (unsigned int s = 0; s < 2 - r; s++)
1426
 
        {
1427
 
          rr = (r + s)*(r + s + 1)/2 + s;
1428
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
1429
 
        }// end loop over 's'
1430
 
      }// end loop over 'r'
 
1283
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
1284
      basisvalues[0] *= std::sqrt(0.5);
 
1285
      basisvalues[2] *= std::sqrt(1.0);
 
1286
      basisvalues[1] *= std::sqrt(3.0);
1431
1287
      
1432
1288
      // Table(s) of coefficients.
1433
1289
      static const double coefficients0[3] = \
2359
2215
      double basisvalues[3] = {0.0, 0.0, 0.0};
2360
2216
      
2361
2217
      // Declare helper variables.
2362
 
      unsigned int rr = 0;
2363
 
      unsigned int ss = 0;
2364
2218
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
2365
2219
      
2366
2220
      // Compute basisvalues.
2367
2221
      basisvalues[0] = 1.0;
2368
2222
      basisvalues[1] = tmp0;
2369
 
      for (unsigned int r = 0; r < 1; r++)
2370
 
      {
2371
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
2372
 
        ss = r*(r + 1)/2;
2373
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
2374
 
      }// end loop over 'r'
2375
 
      for (unsigned int r = 0; r < 2; r++)
2376
 
      {
2377
 
        for (unsigned int s = 0; s < 2 - r; s++)
2378
 
        {
2379
 
          rr = (r + s)*(r + s + 1)/2 + s;
2380
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
2381
 
        }// end loop over 's'
2382
 
      }// end loop over 'r'
 
2223
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2224
      basisvalues[0] *= std::sqrt(0.5);
 
2225
      basisvalues[2] *= std::sqrt(1.0);
 
2226
      basisvalues[1] *= std::sqrt(3.0);
2383
2227
      
2384
2228
      // Table(s) of coefficients.
2385
2229
      static const double coefficients0[3] = \
2409
2253
      double basisvalues[3] = {0.0, 0.0, 0.0};
2410
2254
      
2411
2255
      // Declare helper variables.
2412
 
      unsigned int rr = 0;
2413
 
      unsigned int ss = 0;
2414
2256
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
2415
2257
      
2416
2258
      // Compute basisvalues.
2417
2259
      basisvalues[0] = 1.0;
2418
2260
      basisvalues[1] = tmp0;
2419
 
      for (unsigned int r = 0; r < 1; r++)
2420
 
      {
2421
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
2422
 
        ss = r*(r + 1)/2;
2423
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
2424
 
      }// end loop over 'r'
2425
 
      for (unsigned int r = 0; r < 2; r++)
2426
 
      {
2427
 
        for (unsigned int s = 0; s < 2 - r; s++)
2428
 
        {
2429
 
          rr = (r + s)*(r + s + 1)/2 + s;
2430
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
2431
 
        }// end loop over 's'
2432
 
      }// end loop over 'r'
 
2261
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2262
      basisvalues[0] *= std::sqrt(0.5);
 
2263
      basisvalues[2] *= std::sqrt(1.0);
 
2264
      basisvalues[1] *= std::sqrt(3.0);
2433
2265
      
2434
2266
      // Table(s) of coefficients.
2435
2267
      static const double coefficients0[3] = \
2459
2291
      double basisvalues[3] = {0.0, 0.0, 0.0};
2460
2292
      
2461
2293
      // Declare helper variables.
2462
 
      unsigned int rr = 0;
2463
 
      unsigned int ss = 0;
2464
2294
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
2465
2295
      
2466
2296
      // Compute basisvalues.
2467
2297
      basisvalues[0] = 1.0;
2468
2298
      basisvalues[1] = tmp0;
2469
 
      for (unsigned int r = 0; r < 1; r++)
2470
 
      {
2471
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
2472
 
        ss = r*(r + 1)/2;
2473
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
2474
 
      }// end loop over 'r'
2475
 
      for (unsigned int r = 0; r < 2; r++)
2476
 
      {
2477
 
        for (unsigned int s = 0; s < 2 - r; s++)
2478
 
        {
2479
 
          rr = (r + s)*(r + s + 1)/2 + s;
2480
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
2481
 
        }// end loop over 's'
2482
 
      }// end loop over 'r'
 
2299
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2300
      basisvalues[0] *= std::sqrt(0.5);
 
2301
      basisvalues[2] *= std::sqrt(1.0);
 
2302
      basisvalues[1] *= std::sqrt(3.0);
2483
2303
      
2484
2304
      // Table(s) of coefficients.
2485
2305
      static const double coefficients0[3] = \
2509
2329
      double basisvalues[3] = {0.0, 0.0, 0.0};
2510
2330
      
2511
2331
      // Declare helper variables.
2512
 
      unsigned int rr = 0;
2513
 
      unsigned int ss = 0;
2514
2332
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
2515
2333
      
2516
2334
      // Compute basisvalues.
2517
2335
      basisvalues[0] = 1.0;
2518
2336
      basisvalues[1] = tmp0;
2519
 
      for (unsigned int r = 0; r < 1; r++)
2520
 
      {
2521
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
2522
 
        ss = r*(r + 1)/2;
2523
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
2524
 
      }// end loop over 'r'
2525
 
      for (unsigned int r = 0; r < 2; r++)
2526
 
      {
2527
 
        for (unsigned int s = 0; s < 2 - r; s++)
2528
 
        {
2529
 
          rr = (r + s)*(r + s + 1)/2 + s;
2530
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
2531
 
        }// end loop over 's'
2532
 
      }// end loop over 'r'
 
2337
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2338
      basisvalues[0] *= std::sqrt(0.5);
 
2339
      basisvalues[2] *= std::sqrt(1.0);
 
2340
      basisvalues[1] *= std::sqrt(3.0);
2533
2341
      
2534
2342
      // Table(s) of coefficients.
2535
2343
      static const double coefficients0[3] = \
2559
2367
      double basisvalues[3] = {0.0, 0.0, 0.0};
2560
2368
      
2561
2369
      // Declare helper variables.
2562
 
      unsigned int rr = 0;
2563
 
      unsigned int ss = 0;
2564
2370
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
2565
2371
      
2566
2372
      // Compute basisvalues.
2567
2373
      basisvalues[0] = 1.0;
2568
2374
      basisvalues[1] = tmp0;
2569
 
      for (unsigned int r = 0; r < 1; r++)
2570
 
      {
2571
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
2572
 
        ss = r*(r + 1)/2;
2573
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
2574
 
      }// end loop over 'r'
2575
 
      for (unsigned int r = 0; r < 2; r++)
2576
 
      {
2577
 
        for (unsigned int s = 0; s < 2 - r; s++)
2578
 
        {
2579
 
          rr = (r + s)*(r + s + 1)/2 + s;
2580
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
2581
 
        }// end loop over 's'
2582
 
      }// end loop over 'r'
 
2375
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2376
      basisvalues[0] *= std::sqrt(0.5);
 
2377
      basisvalues[2] *= std::sqrt(1.0);
 
2378
      basisvalues[1] *= std::sqrt(3.0);
2583
2379
      
2584
2380
      // Table(s) of coefficients.
2585
2381
      static const double coefficients0[3] = \
2609
2405
      double basisvalues[3] = {0.0, 0.0, 0.0};
2610
2406
      
2611
2407
      // Declare helper variables.
2612
 
      unsigned int rr = 0;
2613
 
      unsigned int ss = 0;
2614
2408
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
2615
2409
      
2616
2410
      // Compute basisvalues.
2617
2411
      basisvalues[0] = 1.0;
2618
2412
      basisvalues[1] = tmp0;
2619
 
      for (unsigned int r = 0; r < 1; r++)
2620
 
      {
2621
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
2622
 
        ss = r*(r + 1)/2;
2623
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
2624
 
      }// end loop over 'r'
2625
 
      for (unsigned int r = 0; r < 2; r++)
2626
 
      {
2627
 
        for (unsigned int s = 0; s < 2 - r; s++)
2628
 
        {
2629
 
          rr = (r + s)*(r + s + 1)/2 + s;
2630
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
2631
 
        }// end loop over 's'
2632
 
      }// end loop over 'r'
 
2413
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2414
      basisvalues[0] *= std::sqrt(0.5);
 
2415
      basisvalues[2] *= std::sqrt(1.0);
 
2416
      basisvalues[1] *= std::sqrt(3.0);
2633
2417
      
2634
2418
      // Table(s) of coefficients.
2635
2419
      static const double coefficients0[3] = \
2803
2587
      double basisvalues[3] = {0.0, 0.0, 0.0};
2804
2588
      
2805
2589
      // Declare helper variables.
2806
 
      unsigned int rr = 0;
2807
 
      unsigned int ss = 0;
2808
2590
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
2809
2591
      
2810
2592
      // Compute basisvalues.
2811
2593
      basisvalues[0] = 1.0;
2812
2594
      basisvalues[1] = tmp0;
2813
 
      for (unsigned int r = 0; r < 1; r++)
2814
 
      {
2815
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
2816
 
        ss = r*(r + 1)/2;
2817
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
2818
 
      }// end loop over 'r'
2819
 
      for (unsigned int r = 0; r < 2; r++)
2820
 
      {
2821
 
        for (unsigned int s = 0; s < 2 - r; s++)
2822
 
        {
2823
 
          rr = (r + s)*(r + s + 1)/2 + s;
2824
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
2825
 
        }// end loop over 's'
2826
 
      }// end loop over 'r'
 
2595
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2596
      basisvalues[0] *= std::sqrt(0.5);
 
2597
      basisvalues[2] *= std::sqrt(1.0);
 
2598
      basisvalues[1] *= std::sqrt(3.0);
2827
2599
      
2828
2600
      // Table(s) of coefficients.
2829
2601
      static const double coefficients0[3] = \
2972
2744
      double basisvalues[3] = {0.0, 0.0, 0.0};
2973
2745
      
2974
2746
      // Declare helper variables.
2975
 
      unsigned int rr = 0;
2976
 
      unsigned int ss = 0;
2977
2747
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
2978
2748
      
2979
2749
      // Compute basisvalues.
2980
2750
      basisvalues[0] = 1.0;
2981
2751
      basisvalues[1] = tmp0;
2982
 
      for (unsigned int r = 0; r < 1; r++)
2983
 
      {
2984
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
2985
 
        ss = r*(r + 1)/2;
2986
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
2987
 
      }// end loop over 'r'
2988
 
      for (unsigned int r = 0; r < 2; r++)
2989
 
      {
2990
 
        for (unsigned int s = 0; s < 2 - r; s++)
2991
 
        {
2992
 
          rr = (r + s)*(r + s + 1)/2 + s;
2993
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
2994
 
        }// end loop over 's'
2995
 
      }// end loop over 'r'
 
2752
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2753
      basisvalues[0] *= std::sqrt(0.5);
 
2754
      basisvalues[2] *= std::sqrt(1.0);
 
2755
      basisvalues[1] *= std::sqrt(3.0);
2996
2756
      
2997
2757
      // Table(s) of coefficients.
2998
2758
      static const double coefficients0[3] = \
3141
2901
      double basisvalues[3] = {0.0, 0.0, 0.0};
3142
2902
      
3143
2903
      // Declare helper variables.
3144
 
      unsigned int rr = 0;
3145
 
      unsigned int ss = 0;
3146
2904
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
3147
2905
      
3148
2906
      // Compute basisvalues.
3149
2907
      basisvalues[0] = 1.0;
3150
2908
      basisvalues[1] = tmp0;
3151
 
      for (unsigned int r = 0; r < 1; r++)
3152
 
      {
3153
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
3154
 
        ss = r*(r + 1)/2;
3155
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
3156
 
      }// end loop over 'r'
3157
 
      for (unsigned int r = 0; r < 2; r++)
3158
 
      {
3159
 
        for (unsigned int s = 0; s < 2 - r; s++)
3160
 
        {
3161
 
          rr = (r + s)*(r + s + 1)/2 + s;
3162
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
3163
 
        }// end loop over 's'
3164
 
      }// end loop over 'r'
 
2909
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
2910
      basisvalues[0] *= std::sqrt(0.5);
 
2911
      basisvalues[2] *= std::sqrt(1.0);
 
2912
      basisvalues[1] *= std::sqrt(3.0);
3165
2913
      
3166
2914
      // Table(s) of coefficients.
3167
2915
      static const double coefficients0[3] = \
3310
3058
      double basisvalues[3] = {0.0, 0.0, 0.0};
3311
3059
      
3312
3060
      // Declare helper variables.
3313
 
      unsigned int rr = 0;
3314
 
      unsigned int ss = 0;
3315
3061
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
3316
3062
      
3317
3063
      // Compute basisvalues.
3318
3064
      basisvalues[0] = 1.0;
3319
3065
      basisvalues[1] = tmp0;
3320
 
      for (unsigned int r = 0; r < 1; r++)
3321
 
      {
3322
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
3323
 
        ss = r*(r + 1)/2;
3324
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
3325
 
      }// end loop over 'r'
3326
 
      for (unsigned int r = 0; r < 2; r++)
3327
 
      {
3328
 
        for (unsigned int s = 0; s < 2 - r; s++)
3329
 
        {
3330
 
          rr = (r + s)*(r + s + 1)/2 + s;
3331
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
3332
 
        }// end loop over 's'
3333
 
      }// end loop over 'r'
 
3066
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
3067
      basisvalues[0] *= std::sqrt(0.5);
 
3068
      basisvalues[2] *= std::sqrt(1.0);
 
3069
      basisvalues[1] *= std::sqrt(3.0);
3334
3070
      
3335
3071
      // Table(s) of coefficients.
3336
3072
      static const double coefficients0[3] = \
3479
3215
      double basisvalues[3] = {0.0, 0.0, 0.0};
3480
3216
      
3481
3217
      // Declare helper variables.
3482
 
      unsigned int rr = 0;
3483
 
      unsigned int ss = 0;
3484
3218
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
3485
3219
      
3486
3220
      // Compute basisvalues.
3487
3221
      basisvalues[0] = 1.0;
3488
3222
      basisvalues[1] = tmp0;
3489
 
      for (unsigned int r = 0; r < 1; r++)
3490
 
      {
3491
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
3492
 
        ss = r*(r + 1)/2;
3493
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
3494
 
      }// end loop over 'r'
3495
 
      for (unsigned int r = 0; r < 2; r++)
3496
 
      {
3497
 
        for (unsigned int s = 0; s < 2 - r; s++)
3498
 
        {
3499
 
          rr = (r + s)*(r + s + 1)/2 + s;
3500
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
3501
 
        }// end loop over 's'
3502
 
      }// end loop over 'r'
 
3223
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
3224
      basisvalues[0] *= std::sqrt(0.5);
 
3225
      basisvalues[2] *= std::sqrt(1.0);
 
3226
      basisvalues[1] *= std::sqrt(3.0);
3503
3227
      
3504
3228
      // Table(s) of coefficients.
3505
3229
      static const double coefficients0[3] = \
3648
3372
      double basisvalues[3] = {0.0, 0.0, 0.0};
3649
3373
      
3650
3374
      // Declare helper variables.
3651
 
      unsigned int rr = 0;
3652
 
      unsigned int ss = 0;
3653
3375
      double tmp0 = (1.0 + Y + 2.0*X)/2.0;
3654
3376
      
3655
3377
      // Compute basisvalues.
3656
3378
      basisvalues[0] = 1.0;
3657
3379
      basisvalues[1] = tmp0;
3658
 
      for (unsigned int r = 0; r < 1; r++)
3659
 
      {
3660
 
        rr = (r + 1)*(r + 1 + 1)/2 + 1;
3661
 
        ss = r*(r + 1)/2;
3662
 
        basisvalues[rr] = basisvalues[ss]*(0.5 + r + Y*(1.5 + r));
3663
 
      }// end loop over 'r'
3664
 
      for (unsigned int r = 0; r < 2; r++)
3665
 
      {
3666
 
        for (unsigned int s = 0; s < 2 - r; s++)
3667
 
        {
3668
 
          rr = (r + s)*(r + s + 1)/2 + s;
3669
 
          basisvalues[rr] *= std::sqrt((0.5 + r)*(1.0 + r + s));
3670
 
        }// end loop over 's'
3671
 
      }// end loop over 'r'
 
3380
      basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
 
3381
      basisvalues[0] *= std::sqrt(0.5);
 
3382
      basisvalues[2] *= std::sqrt(1.0);
 
3383
      basisvalues[1] *= std::sqrt(3.0);
3672
3384
      
3673
3385
      // Table(s) of coefficients.
3674
3386
      static const double coefficients0[3] = \