241{
242 size_t cnt;
243 size_t istart, iend;
244
245 const size_t nVerts = 4;
247 const size_t nFaceInteriorPoints =
249
250
251 const size_t nAllPoints =
253 if (nEdgeInteriorPoints == 0)
254 {
255 return;
256 }
257
258
259 istart = nVerts;
260 for (size_t i = cnt = istart; i < nAllPoints; i++)
261 {
264 {
268 cnt++;
269 }
270 }
271
272
273 iend = istart + nEdgeInteriorPoints;
274 for (size_t i = istart; i < iend; i++)
275 {
276 for (size_t j = istart + 1; j < iend; j++)
277 {
279 {
283 }
284 }
285 }
286
287
288 istart = iend;
289 for (size_t i = cnt = istart; i < nAllPoints; i++)
290 {
293 {
297 cnt++;
298 }
299 }
300
301
302 iend = istart + nEdgeInteriorPoints;
303 for (size_t i = istart; i < iend; i++)
304 {
305 for (size_t j = istart + 1; j < iend; j++)
306 {
308 {
312 }
313 }
314 }
315
316
317 istart = iend;
318 for (size_t i = cnt = istart; i < nAllPoints; i++)
319 {
322 {
326 cnt++;
327 }
328 }
329
330
331 iend = istart + nEdgeInteriorPoints;
332 for (size_t i = istart; i < iend; i++)
333 {
334 for (size_t j = istart + 1; j < iend; j++)
335 {
337 {
341 }
342 }
343 }
344
345
346 istart = iend;
347 for (size_t i = cnt = istart; i < nAllPoints; i++)
348 {
351 {
355 cnt++;
356 }
357 }
358
359
360 iend = istart + nEdgeInteriorPoints;
361 for (size_t i = istart; i < iend; i++)
362 {
363 for (size_t j = istart + 1; j < iend; j++)
364 {
366 {
370 }
371 }
372 }
373
374
375 istart = iend;
376 for (size_t i = cnt = istart; i < nAllPoints; i++)
377 {
380 {
384 cnt++;
385 }
386 }
387
388
389 iend = istart + nEdgeInteriorPoints;
390 for (size_t i = istart; i < iend; i++)
391 {
392 for (size_t j = istart + 1; j < iend; j++)
393 {
395 {
399 }
400 }
401 }
402
403
404 istart = iend;
405 for (size_t i = cnt = istart; i < nAllPoints; i++)
406 {
409 {
413 cnt++;
414 }
415 }
416
417
418 iend = istart + nEdgeInteriorPoints;
419 for (size_t i = istart; i < iend; i++)
420 {
421 for (size_t j = istart + 1; j < iend; j++)
422 {
424 {
428 }
429 }
430 }
431
433 {
434
435 return;
436 }
437
438
439 istart = iend;
440 for (size_t i = cnt = istart; i < nAllPoints; i++)
441 {
443 {
447 cnt++;
448 }
449 }
450
451
452 iend = istart + nFaceInteriorPoints;
453 bool repeat = true;
454 while (repeat)
455 {
456 repeat = false;
457 for (size_t i = istart; i < iend - 1; i++)
458 {
460 {
464 repeat = true;
465 }
466 }
467 }
468 size_t offset = 0;
470 while (npl > 1)
471 {
472 repeat = true;
473 while (repeat)
474 {
475 repeat = false;
476 for (size_t i = offset + istart; i < offset + istart + npl - 1; i++)
477 {
479 {
483 repeat = true;
484 }
485 }
486 }
487 offset += npl;
488 npl--;
489 }
490
491
492 istart = iend;
493 for (size_t i = cnt = istart; i < nAllPoints; i++)
494 {
496 {
500 cnt++;
501 }
502 }
503
504
505 iend = istart + nFaceInteriorPoints;
506 repeat = true;
507 while (repeat)
508 {
509 repeat = false;
510 for (size_t i = istart; i < iend - 1; i++)
511 {
513 {
517 repeat = true;
518 }
519 }
520 }
521 offset = 0;
523 while (npl > 1)
524 {
525 repeat = true;
526 while (repeat)
527 {
528 repeat = false;
529 for (size_t i = offset + istart; i < offset + istart + npl - 1; i++)
530 {
532 {
536 repeat = true;
537 }
538 }
539 }
540 offset += npl;
541 npl--;
542 }
543
544
545 istart = iend;
546 for (size_t i = cnt = istart; i < nAllPoints; i++)
547 {
549 1E-9)
550 {
554 cnt++;
555 }
556 }
557
558
559 iend = istart + nFaceInteriorPoints;
560 repeat = true;
561 while (repeat)
562 {
563 repeat = false;
564 for (size_t i = istart; i < iend - 1; i++)
565 {
567 {
571 repeat = true;
572 }
573 }
574 }
575 offset = 0;
577 while (npl > 1)
578 {
579 repeat = true;
580 while (repeat)
581 {
582 repeat = false;
583 for (size_t i = offset + istart; i < offset + istart + npl - 1; i++)
584 {
586 {
590 repeat = true;
591 }
592 }
593 }
594 offset += npl;
595 npl--;
596 }
597
598
599 istart = iend;
600 for (size_t i = cnt = istart; i < nAllPoints; i++)
601 {
603 {
607 cnt++;
608 }
609 }
610
611
612 iend = istart + nFaceInteriorPoints;
613 repeat = true;
614 while (repeat)
615 {
616 repeat = false;
617 for (size_t i = istart; i < iend - 1; i++)
618 {
620 {
624 repeat = true;
625 }
626 }
627 }
628 offset = 0;
630 while (npl > 1)
631 {
632 repeat = true;
633 while (repeat)
634 {
635 repeat = false;
636 for (size_t i = offset + istart; i < offset + istart + npl - 1; i++)
637 {
639 {
643 repeat = true;
644 }
645 }
646 }
647 offset += npl;
648 npl--;
649 }
650}
Array< OneD, DataType > m_points[3]
Storage for the point locations, allowing for up to a 3D points storage.
size_t GetNumPoints() const
static const NekDouble kNekZeroTol