412 using namespace amrex;
425 bool print_initial = ( Math::abs(
m_eb_point[0]-1.666667e-01)<1.e-4 &&
426 Math::abs(
m_eb_point[1]+4.194018e-01)<1.e-4 &&
427 Math::abs(
m_eb_point[2]+1.666667e-01)<1.e-4 );
428 const bool print_F1 = print_initial &&
false;
429 const bool print_F2 = print_initial &&
false;
430 const bool print_F3 = print_initial &&
false;
431 const bool print_F4 = print_initial &&
false;
432 const bool print_F5 = print_initial &&
false;
433 const bool print_F6 = print_initial &&
false;
434 const bool print_F7 = print_initial &&
false;
437 m_F1.
add_vertex(v0);
if(print_F1) printf(
"Initial: add v0 -> F1\n");
438 m_F4.
add_vertex(v0);
if(print_F4) printf(
"Initial: add v0 -> F4\n");
439 m_F5.
add_vertex(v0);
if(print_F5) printf(
"Initial: add v0 -> F5\n");
446 amrex::Array<bool,8> vertex_intersected{};
454 amrex::Array<path_data,3> p1, p2, p3;
455 path_data p4, p5, p6;
488 for (
int i = 0; i < 8; ++i) vertex_intersected[i] =
false;
490 if (p1[0].intersected) {
491 if (p1[0].intersected_start) {
492 m_F1.
add_vertex(v0);
if(print_F1) printf(
"Path 1: v0--v1: add v0 -> F1\n");
493 m_F4.
add_vertex(v0);
if(print_F4) printf(
"Path 1: v0--v1: add v0 -> F4\n");
494 m_F5.
add_vertex(v0);
if(print_F5) printf(
"Path 1: v0--v1: add v0 -> F5\n");
495 m_F7.
add_vertex(v0);
if(print_F7) printf(
"Path 1: v0--v1: add v0 -> F7\n");
496 if (!vertex_intersected[0]) {
497 vertex_intersected[0] =
true;
500 }
else if (p1[0].intersected_end) {
501 m_F1.
add_vertex(v1);
if(print_F1) printf(
"Path 1: v0--v1: add v1 -> F1\n");
502 m_F2.
add_vertex(v1);
if(print_F2) printf(
"Path 1: v0--v1: add v1 -> F2\n");
503 m_F5.
add_vertex(v1);
if(print_F5) printf(
"Path 1: v0--v1: add v1 -> F5\n");
504 m_F7.
add_vertex(v1);
if(print_F7) printf(
"Path 1: v0--v1: add v1 -> F7\n");
505 if (!vertex_intersected[1]) {
506 vertex_intersected[1] =
true;
510 m_F1.
add_vertex(p1[0].vIP);
if(print_F1) printf(
"Path 1: v0--v1: add vIP -> F1\n");
511 m_F5.
add_vertex(p1[0].vIP);
if(print_F5) printf(
"Path 1: v0--v1: add vIP -> F5\n");
512 m_F7.
add_vertex(p1[0].vIP);
if(print_F7) printf(
"Path 1: v0--v1: add vIP -> F7\n");
519 m_F1.
add_vertex(v1);
if(print_F1) printf(
"Path 1: after v0--v1, cuts-mod-2==0: add v1 -> F1\n");
520 m_F2.
add_vertex(v1);
if(print_F2) printf(
"Path 1: after v0--v1, cuts-mod-2==0: add v1 -> F2\n");
521 m_F5.
add_vertex(v1);
if(print_F5) printf(
"Path 1: after v0--v1, cuts-mod-2==0: add v1 -> F5\n");
524 if (p1[1].intersected) {
525 if (p1[1].intersected_start) {
526 m_F1.
add_vertex(v1);
if(print_F1) printf(
"Path 1: v1--v4: add v1 -> F1\n");
527 m_F2.
add_vertex(v1);
if(print_F2) printf(
"Path 1: v1--v4: add v1 -> F2\n");
528 m_F5.
add_vertex(v1);
if(print_F5) printf(
"Path 1: v1--v4: add v1 -> F5\n");
529 m_F7.
add_vertex(v1);
if(print_F7) printf(
"Path 1: v1--v4: add v1 -> F7\n");
530 if (!vertex_intersected[1]) {
531 vertex_intersected[1] =
true;
534 }
else if (p1[1].intersected_end) {
535 m_F2.
add_vertex(v4);
if(print_F2) printf(
"Path 1: v1--v4: add v4 -> F2\n");
536 m_F3.
add_vertex(v4);
if(print_F3) printf(
"Path 1: v1--v4: add v4 -> F3\n");
537 m_F5.
add_vertex(v4);
if(print_F5) printf(
"Path 1: v1--v4: add v4 -> F5\n");
538 m_F7.
add_vertex(v4);
if(print_F7) printf(
"Path 1: v1--v4: add v4 -> F7\n");
539 if (!vertex_intersected[4]) {
540 vertex_intersected[4] =
true;
544 m_F2.
add_vertex(p1[1].vIP);
if(print_F2) printf(
"Path 1: v1--v4: add vIP -> F2\n");
545 m_F5.
add_vertex(p1[1].vIP);
if(print_F5) printf(
"Path 1: v1--v4: add vIP -> F5\n");
546 m_F7.
add_vertex(p1[1].vIP);
if(print_F7) printf(
"Path 1: v1--v4: add vIP -> F7\n");
553 m_F2.
add_vertex(v4);
if(print_F2) printf(
"Path 1: after v1--v4, cuts-mod-2==0: add v4 -> F2\n");
554 m_F3.
add_vertex(v4);
if(print_F3) printf(
"Path 1: after v1--v4, cuts-mod-2==0: add v4 -> F3\n");
555 m_F5.
add_vertex(v4);
if(print_F5) printf(
"Path 1: after v1--v4, cuts-mod-2==0: add v4 -> F5\n");
558 if (p1[2].intersected) {
559 if (p1[2].intersected_start) {
560 m_F2.
add_vertex(v4);
if(print_F2) printf(
"Path 1: v4--v7: add v4 -> F2\n");
561 m_F3.
add_vertex(v4);
if(print_F3) printf(
"Path 1: v4--v7: add v4 -> F3\n");
562 m_F5.
add_vertex(v4);
if(print_F5) printf(
"Path 1: v4--v7: add v4 -> F5\n");
563 m_F7.
add_vertex(v4);
if(print_F7) printf(
"Path 1: v4--v7: add v4 -> F7\n");
564 if (!vertex_intersected[4]) {
565 vertex_intersected[4] =
true;
568 }
else if (p1[2].intersected_end) {
569 m_F2.
add_vertex(v7);
if(print_F2) printf(
"Path 1: v4--v7: add v7 -> F2\n");
570 m_F3.
add_vertex(v7);
if(print_F3) printf(
"Path 1: v4--v7: add v7 -> F3\n");
571 m_F6.
add_vertex(v7);
if(print_F6) printf(
"Path 1: v4--v7: add v7 -> F6\n");
572 m_F7.
add_vertex(v7);
if(print_F7) printf(
"Path 1: v4--v7: add v7 -> F7\n");
573 if (!vertex_intersected[7]) {
574 vertex_intersected[7] =
true;
578 m_F2.
add_vertex(p1[2].vIP);
if(print_F2) printf(
"Path 1: v4--v7: add vIP -> F2\n");
579 m_F3.
add_vertex(p1[2].vIP);
if(print_F3) printf(
"Path 1: v4--v7: add vIP -> F3\n");
580 m_F7.
add_vertex(p1[2].vIP);
if(print_F7) printf(
"Path 1: v4--v7: add vIP -> F7\n");
586 if (cuts == 2 && add_v7) {
588 m_F2.
add_vertex(v7);
if(print_F2) printf(
"Path 1: after v4--v7, cuts == 2 && add_v7: add v7 -> F2\n");
589 m_F3.
add_vertex(v7);
if(print_F3) printf(
"Path 1: after v4--v7, cuts == 2 && add_v7: add v7 -> F3\n");
590 m_F6.
add_vertex(v7);
if(print_F6) printf(
"Path 1: after v4--v7, cuts == 2 && add_v7: add v7 -> F6\n");
597 if (p4.intersected) {
598 if (p4.intersected_start) {
599 m_F1.
add_vertex(v1);
if(print_F1) printf(
"Path 4: v1--v5: add v1 -> F1\n");
600 m_F2.
add_vertex(v1);
if(print_F2) printf(
"Path 4: v1--v5: add v1 -> F2\n");
601 m_F5.
add_vertex(v1);
if(print_F5) printf(
"Path 4: v1--v5: add v1 -> F5\n");
602 m_F7.
add_vertex(v1);
if(print_F7) printf(
"Path 4: v1--v5: add v1 -> F7\n");
603 }
else if (p4.intersected_end) {
604 m_F1.
add_vertex(v5);
if(print_F1) printf(
"Path 4: v1--v5: add v5 -> F1\n");
605 m_F2.
add_vertex(v5);
if(print_F2) printf(
"Path 4: v1--v5: add v5 -> F2\n");
606 m_F6.
add_vertex(v5);
if(print_F6) printf(
"Path 4: v1--v5: add v5 -> F6\n");
607 m_F7.
add_vertex(v5);
if(print_F7) printf(
"Path 4: v1--v5: add v5 -> F7\n");
609 m_F1.
add_vertex(p4.vIP);
if(print_F1) printf(
"Path 4: v1--v5: add vIP -> F1\n");
610 m_F2.
add_vertex(p4.vIP);
if(print_F2) printf(
"Path 4: v1--v5: add vIP -> F2\n");
611 m_F7.
add_vertex(p4.vIP);
if(print_F7) printf(
"Path 4: v1--v5: add vIP -> F7\n");
617 for (
int i = 0; i < 8; ++i) vertex_intersected[i] =
false;
619 if (p2[0].intersected) {
620 if (p2[0].intersected_start) {
621 m_F1.
add_vertex(v0);
if(print_F1) printf(
"Path 2: v0--v2: add v0 -> F1\n");
622 m_F4.
add_vertex(v0);
if(print_F4) printf(
"Path 2: v0--v2: add v0 -> F4\n");
623 m_F5.
add_vertex(v0);
if(print_F5) printf(
"Path 2: v0--v2: add v0 -> F5\n");
624 m_F7.
add_vertex(v0);
if(print_F7) printf(
"Path 2: v0--v2: add v0 -> F7\n");
625 if (!vertex_intersected[0]) {
626 vertex_intersected[0] =
true;
629 }
else if (p2[0].intersected_end) {
630 m_F1.
add_vertex(v2);
if(print_F1) printf(
"Path 2: v0--v2: add v2 -> F1\n");
631 m_F4.
add_vertex(v2);
if(print_F4) printf(
"Path 2: v0--v2: add v2 -> F4\n");
632 m_F6.
add_vertex(v2);
if(print_F6) printf(
"Path 2: v0--v2: add v2 -> F6\n");
633 m_F7.
add_vertex(v2);
if(print_F7) printf(
"Path 2: v0--v2: add v2 -> F7\n");
634 if (!vertex_intersected[2]) {
635 vertex_intersected[2] =
true;
639 m_F1.
add_vertex(p2[0].vIP);
if(print_F1) printf(
"Path 2: v0--v2: add vIP -> F1\n");
640 m_F4.
add_vertex(p2[0].vIP);
if(print_F4) printf(
"Path 2: v0--v2: add vIP -> F4\n");
641 m_F7.
add_vertex(p2[0].vIP);
if(print_F7) printf(
"Path 2: v0--v2: add vIP -> F7\n");
648 m_F1.
add_vertex(v2);
if(print_F1) printf(
"Path 2: after v0--v2, cuts-mod-2==0: add v2 -> F1\n");
649 m_F4.
add_vertex(v2);
if(print_F4) printf(
"Path 2: after v0--v2, cuts-mod-2==0: add v2 -> F4\n");
650 m_F6.
add_vertex(v2);
if(print_F6) printf(
"Path 2: after v0--v2, cuts-mod-2==0: add v2 -> F6\n");
653 if (p2[1].intersected) {
654 if (p2[1].intersected_start) {
655 m_F1.
add_vertex(v2);
if(print_F1) printf(
"Path 2: v2--v5: add v2 -> F1\n");
656 m_F4.
add_vertex(v2);
if(print_F4) printf(
"Path 2: v2--v5: add v2 -> F4\n");
657 m_F6.
add_vertex(v2);
if(print_F6) printf(
"Path 2: v2--v5: add v2 -> F6\n");
658 m_F7.
add_vertex(v2);
if(print_F7) printf(
"Path 2: v2--v5: add v2 -> F7\n");
659 if (!vertex_intersected[2]) {
660 vertex_intersected[2] =
true;
663 }
else if (p2[1].intersected_end) {
664 m_F1.
add_vertex(v5);
if(print_F1) printf(
"Path 2: v2--v5: add v5 -> F1\n");
665 m_F2.
add_vertex(v5);
if(print_F2) printf(
"Path 2: v2--v5: add v5 -> F2\n");
666 m_F6.
add_vertex(v5);
if(print_F6) printf(
"Path 2: v2--v5: add v5 -> F6\n");
667 m_F7.
add_vertex(v5);
if(print_F7) printf(
"Path 2: v2--v5: add v5 -> F7\n");
668 if (!vertex_intersected[5]) {
669 vertex_intersected[5] =
true;
673 m_F1.
add_vertex(p2[1].vIP);
if(print_F1) printf(
"Path 2: v2--v5: add vIP -> F1\n");
674 m_F6.
add_vertex(p2[1].vIP);
if(print_F6) printf(
"Path 2: v2--v5: add vIP -> F6\n");
675 m_F7.
add_vertex(p2[1].vIP);
if(print_F7) printf(
"Path 2: v2--v5: add vIP -> F7\n");
681 m_F1.
add_vertex(v5);
if(print_F1) printf(
"Path 2: after v2--v5, cuts-mod-2==0: add v5 -> F1\n");
682 m_F2.
add_vertex(v5);
if(print_F2) printf(
"Path 2: after v2--v5, cuts-mod-2==0: add v5 -> F2\n");
683 m_F6.
add_vertex(v5);
if(print_F6) printf(
"Path 2: after v2--v5, cuts-mod-2==0: add v5 -> F6\n");
686 if (p2[2].intersected) {
687 if (p2[2].intersected_start) {
688 m_F1.
add_vertex(v5);
if(print_F1) printf(
"Path 2: v5--v7: add v5 -> F1\n");
689 m_F2.
add_vertex(v5);
if(print_F2) printf(
"Path 2: v5--v7: add v5 -> F2\n");
690 m_F6.
add_vertex(v5);
if(print_F6) printf(
"Path 2: v5--v7: add v5 -> F6\n");
691 m_F7.
add_vertex(v5);
if(print_F7) printf(
"Path 2: v5--v7: add v5 -> F7\n");
692 if (!vertex_intersected[5]) {
693 vertex_intersected[5] =
true;
696 }
else if (p2[2].intersected_end) {
697 m_F2.
add_vertex(v7);
if(print_F2) printf(
"Path 2: v5--v7: add v7 -> F2\n");
698 m_F3.
add_vertex(v7);
if(print_F3) printf(
"Path 2: v5--v7: add v7 -> F3\n");
699 m_F6.
add_vertex(v7);
if(print_F6) printf(
"Path 2: v5--v7: add v7 -> F6\n");
700 m_F7.
add_vertex(v7);
if(print_F7) printf(
"Path 2: v5--v7: add v7 -> F7\n");
701 if (!vertex_intersected[7]) {
702 vertex_intersected[7] =
true;
706 m_F2.
add_vertex(p2[2].vIP);
if(print_F2) printf(
"Path 2: v5--v7: add vIP -> F2\n");
707 m_F6.
add_vertex(p2[2].vIP);
if(print_F6) printf(
"Path 2: v5--v7: add vIP -> F6\n");
708 m_F7.
add_vertex(p2[2].vIP);
if(print_F7) printf(
"Path 2: v5--v7: add vIP -> F7\n");
713 if (cuts == 2 && add_v7) {
715 m_F2.
add_vertex(v7);
if(print_F2) printf(
"Path 2: after v5--v7, cuts == 2 && add_v7: add v7 -> F2\n");
716 m_F3.
add_vertex(v7);
if(print_F3) printf(
"Path 2: after v5--v7, cuts == 2 && add_v7: add v7 -> F3\n");
717 m_F6.
add_vertex(v7);
if(print_F6) printf(
"Path 2: after v5--v7, cuts == 2 && add_v7: add v7 -> F6\n");
725 if (p5.intersected) {
726 if (p5.intersected_start) {
727 m_F1.
add_vertex(v2);
if(print_F1) printf(
"Path 5: v2--v6: add v2 -> F1\n");
728 m_F4.
add_vertex(v2);
if(print_F4) printf(
"Path 5: v2--v6: add v2 -> F4\n");
729 m_F6.
add_vertex(v2);
if(print_F6) printf(
"Path 5: v2--v6: add v2 -> F6\n");
730 m_F7.
add_vertex(v2);
if(print_F7) printf(
"Path 5: v2--v6: add v2 -> F7\n");
731 }
else if (p5.intersected_end) {
732 m_F3.
add_vertex(v6);
if(print_F3) printf(
"Path 5: v2--v6: add v6 -> F3\n");
733 m_F4.
add_vertex(v6);
if(print_F4) printf(
"Path 5: v2--v6: add v6 -> F4\n");
734 m_F6.
add_vertex(v6);
if(print_F6) printf(
"Path 5: v2--v6: add v6 -> F6\n");
735 m_F7.
add_vertex(v6);
if(print_F7) printf(
"Path 5: v2--v6: add v6 -> F7\n");
737 m_F4.
add_vertex(p5.vIP);
if(print_F4) printf(
"Path 5: v2--v6: add vIP -> F4\n");
738 m_F6.
add_vertex(p5.vIP);
if(print_F6) printf(
"Path 5: v2--v6: add vIP -> F6\n");
739 m_F7.
add_vertex(p5.vIP);
if(print_F7) printf(
"Path 5: v2--v6: add vIP -> F7\n");
746 for (
int i = 0; i < 8; ++i) vertex_intersected[i] =
false;
748 if (p3[0].intersected) {
749 if (p3[0].intersected_start) {
750 m_F1.
add_vertex(v0);
if(print_F1) printf(
"Path 3: v0--v3: add v0 -> F1\n");
751 m_F4.
add_vertex(v0);
if(print_F4) printf(
"Path 3: v0--v3: add v0 -> F4\n");
752 m_F5.
add_vertex(v0);
if(print_F5) printf(
"Path 3: v0--v3: add v0 -> F5\n");
753 m_F7.
add_vertex(v0);
if(print_F7) printf(
"Path 3: v0--v3: add v0 -> F7\n");
754 if (!vertex_intersected[0]) {
755 vertex_intersected[0] =
true;
758 }
else if (p3[0].intersected_end) {
759 m_F3.
add_vertex(v3);
if(print_F3) printf(
"Path 3: v0--v3: add v3 -> F3\n");
760 m_F4.
add_vertex(v3);
if(print_F4) printf(
"Path 3: v0--v3: add v3 -> F4\n");
761 m_F5.
add_vertex(v3);
if(print_F5) printf(
"Path 3: v0--v3: add v3 -> F5\n");
762 m_F7.
add_vertex(v3);
if(print_F7) printf(
"Path 3: v0--v3: add v3 -> F7\n");
763 if (!vertex_intersected[3]) {
764 vertex_intersected[3] =
true;
768 m_F4.
add_vertex(p3[0].vIP);
if(print_F4) printf(
"Path 3: v0--v3: add vIP -> F4\n");
769 m_F5.
add_vertex(p3[0].vIP);
if(print_F5) printf(
"Path 3: v0--v3: add vIP -> F5\n");
770 m_F7.
add_vertex(p3[0].vIP);
if(print_F7) printf(
"Path 3: v0--v3: add vIP -> F7\n");
777 m_F3.
add_vertex(v3);
if(print_F3) printf(
"Path 3: after v0--v3, cuts-mod-2 == 0: add v3 -> F3\n");
778 m_F4.
add_vertex(v3);
if(print_F4) printf(
"Path 3: after v0--v3, cuts-mod-2 == 0: add v3 -> F4\n");
779 m_F5.
add_vertex(v3);
if(print_F5) printf(
"Path 3: after v0--v3, cuts-mod-2 == 0: add v3 -> F5\n");
782 if (p3[1].intersected) {
783 if (p3[1].intersected_start) {
784 m_F3.
add_vertex(v3);
if(print_F3) printf(
"Path 3: v3--v6: add v3 -> F3\n");
785 m_F4.
add_vertex(v3);
if(print_F4) printf(
"Path 3: v3--v6: add v3 -> F4\n");
786 m_F5.
add_vertex(v3);
if(print_F5) printf(
"Path 3: v3--v6: add v3 -> F5\n");
787 m_F7.
add_vertex(v3);
if(print_F7) printf(
"Path 3: v3--v6: add v3 -> F7\n");
788 if (!vertex_intersected[3]) {
789 vertex_intersected[3] =
true;
792 }
else if (p3[1].intersected_end) {
793 m_F3.
add_vertex(v6);
if(print_F3) printf(
"Path 3: v3--v6: add v6 -> F3\n");
794 m_F4.
add_vertex(v6);
if(print_F4) printf(
"Path 3: v3--v6: add v6 -> F4\n");
795 m_F6.
add_vertex(v6);
if(print_F6) printf(
"Path 3: v3--v6: add v6 -> F6\n");
796 m_F7.
add_vertex(v6);
if(print_F7) printf(
"Path 3: v3--v6: add v6 -> F7\n");
797 if (!vertex_intersected[6]) {
798 vertex_intersected[6] =
true;
802 m_F3.
add_vertex(p3[1].vIP);
if(print_F3) printf(
"Path 3: v3--v6: add vIP -> F3\n");
803 m_F4.
add_vertex(p3[1].vIP);
if(print_F4) printf(
"Path 3: v3--v6: add vIP -> F4\n");
804 m_F7.
add_vertex(p3[1].vIP);
if(print_F7) printf(
"Path 3: v3--v6: add vIP -> F7\n");
811 m_F3.
add_vertex(v6);
if(print_F3) printf(
"Path 3: after v3--v6, cuts-mod-2 == 0: add v6 -> F3\n");
812 m_F4.
add_vertex(v6);
if(print_F4) printf(
"Path 3: after v3--v6, cuts-mod-2 == 0: add v6 -> F4\n");
813 m_F6.
add_vertex(v6);
if(print_F6) printf(
"Path 3: after v3--v6, cuts-mod-2 == 0: add v6 -> F6\n");
816 if (p3[2].intersected) {
817 if (p3[2].intersected_start) {
818 m_F3.
add_vertex(v6);
if(print_F3) printf(
"Path 3: v6--v7: add v6 -> F3\n");
819 m_F4.
add_vertex(v6);
if(print_F4) printf(
"Path 3: v6--v7: add v6 -> F4\n");
820 m_F6.
add_vertex(v6);
if(print_F6) printf(
"Path 3: v6--v7: add v6 -> F6\n");
821 m_F7.
add_vertex(v6);
if(print_F7) printf(
"Path 3: v6--v7: add v6 -> F7\n");
822 if (!vertex_intersected[6]) {
823 vertex_intersected[6] =
true;
826 }
else if (p3[2].intersected_end) {
827 m_F2.
add_vertex(v7);
if(print_F2) printf(
"Path 3: v6--v7: add v7 -> F2\n");
828 m_F3.
add_vertex(v7);
if(print_F3) printf(
"Path 3: v6--v7: add v7 -> F3\n");
829 m_F6.
add_vertex(v7);
if(print_F6) printf(
"Path 3: v6--v7: add v7 -> F6\n");
830 m_F7.
add_vertex(v7);
if(print_F7) printf(
"Path 3: v6--v7: add v7 -> F7\n");
831 if (!vertex_intersected[7]) {
832 vertex_intersected[7] =
true;
836 m_F3.
add_vertex(p3[2].vIP);
if(print_F3) printf(
"Path 3: v6--v7: add vIP -> F3\n");
837 m_F6.
add_vertex(p3[2].vIP);
if(print_F6) printf(
"Path 3: v6--v7: add vIP -> F6\n");
838 m_F7.
add_vertex(p3[2].vIP);
if(print_F7) printf(
"Path 3: v6--v7: add vIP -> F7\n");
843 if (cuts == 2 && add_v7) {
845 m_F2.
add_vertex(v7);
if(print_F2) printf(
"Path 3: after v6--v7, cuts == 2 && add_v7: add v7 -> F2\n");
846 m_F3.
add_vertex(v7);
if(print_F3) printf(
"Path 3: after v6--v7, cuts == 2 && add_v7: add v7 -> F3\n");
847 m_F6.
add_vertex(v7);
if(print_F6) printf(
"Path 3: after v6--v7, cuts == 2 && add_v7: add v7 -> F6\n");
855 if (p6.intersected) {
856 if (p6.intersected_start) {
857 m_F3.
add_vertex(v3);
if(print_F3) printf(
"Path 6: v3--v4: add v3 -> F3\n");
858 m_F4.
add_vertex(v3);
if(print_F4) printf(
"Path 6: v3--v4: add v3 -> F4\n");
859 m_F5.
add_vertex(v3);
if(print_F5) printf(
"Path 6: v3--v4: add v3 -> F5\n");
860 m_F7.
add_vertex(v3);
if(print_F7) printf(
"Path 6: v3--v4: add v3 -> F7\n");
861 }
else if (p6.intersected_end) {
862 m_F2.
add_vertex(v4);
if(print_F2) printf(
"Path 6: v3--v4: add v4 -> F2\n");
863 m_F3.
add_vertex(v4);
if(print_F3) printf(
"Path 6: v3--v4: add v4 -> F3\n");
864 m_F5.
add_vertex(v4);
if(print_F5) printf(
"Path 6: v3--v4: add v4 -> F5\n");
865 m_F7.
add_vertex(v4);
if(print_F7) printf(
"Path 6: v3--v4: add v4 -> F7\n");
867 m_F3.
add_vertex(p6.vIP);
if(print_F3) printf(
"Path 6: v3--v4: add vIP -> F3\n");
868 m_F5.
add_vertex(p6.vIP);
if(print_F5) printf(
"Path 6: v3--v4: add vIP -> F5\n");
869 m_F7.
add_vertex(p6.vIP);
if(print_F7) printf(
"Path 6: v3--v4: add vIP -> F7\n");
873 if (print_F1 || print_F2 || print_F3 || print_F4 || print_F5 || print_F6 || print_F7){
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int intersect_plane_edge(amrex::RealVect const &a_plane_point, amrex::RealVect const &a_plane_normal, amrex::RealVect const &a_edge_point0, amrex::RealVect const &a_edge_point1, amrex::RealVect &a_intersection_point, amrex::Real &a_intersection_dist)
Definition: ERF_EBCutCell.H:15
AMREX_GPU_HOST_DEVICE void add_vertex(amrex::RealVect const &a_v)
Definition: ERF_EBPolygon.H:43