676 s6 =
s8 +
y[4] *
y[0] *
x[4] * z[3] - 2.0 *
y[4] * z[0] *
x[4] *
y[7] +
677 2.0 *
y[4] *
x[0] *
y[7] * z[4] -
y[4] * z[0] *
x[4] *
y[3] -
678 y[4] *
x[0] *
y[7] * z[3] +
y[4] * z[0] *
x[3] *
y[7] -
679 y[4] *
y[0] *
x[3] * z[4] +
y[0] *
x[4] *
y[3] * z[7] -
680 y[0] *
x[7] *
y[3] * z[4] -
y[0] *
x[3] *
y[4] * z[7] +
681 y[0] *
x[7] *
y[4] * z[3] +
x[2] *
y[7] *
y[7] * z[3] -
682 z[2] *
x[3] *
y[7] *
y[7] - 2.0 * z[2] *
x[0] *
y[3] *
y[3] +
683 2.0 *
y[0] * z[1] *
x[0] *
y[4] +
s7;
684 s8 = -2.0 *
y[0] *
y[1] *
x[0] * z[4] -
y[0] *
y[1] *
x[0] * z[5] -
685 y[0] *
y[0] *
x[3] * z[7] - z[1] *
x[0] *
y[3] *
y[3] -
686 y[0] *
x[1] *
y[5] * z[0] - 2.0 * z[0] *
x[7] *
y[3] *
y[3] +
687 x[0] *
y[3] *
y[3] * z[4] + 2.0 *
x[0] *
y[3] *
y[3] * z[7] -
688 z[0] *
x[4] *
y[3] *
y[3] + 2.0 *
x[2] *
y[3] *
y[3] * z[0] +
689 x[1] *
y[3] *
y[3] * z[0] + 2.0 *
y[7] * z[6] *
x[7] *
y[3] +
690 2.0 *
y[7] *
y[6] *
x[3] * z[7] - 2.0 *
y[7] *
y[6] *
x[7] * z[3] -
691 2.0 *
y[7] *
x[6] *
y[3] * z[7];
692 s7 =
s8 +
y[4] *
x[4] *
y[3] * z[7] -
y[4] *
x[4] *
y[7] * z[3] +
693 y[4] *
x[3] *
y[7] * z[4] -
y[4] *
x[7] *
y[3] * z[4] +
694 2.0 *
y[4] *
y[0] *
x[4] * z[7] - 2.0 *
y[4] *
y[0] *
x[7] * z[4] +
695 2.0 *
x[6] *
y[7] *
y[7] * z[3] +
y[4] *
x[0] *
y[3] * z[4] +
696 y[0] *
y[1] *
x[5] * z[0] +
y[0] * z[1] *
x[0] *
y[5] -
697 x[2] *
y[0] *
y[0] * z[3] +
x[4] *
y[3] *
y[3] * z[7] -
698 x[7] *
y[3] *
y[3] * z[4] -
x[5] *
y[4] *
y[4] * z[1] +
699 y[3] * z[0] *
x[3] *
y[4];
700 s8 =
y[3] *
y[0] *
x[4] * z[3] + 2.0 *
y[3] *
y[0] *
x[7] * z[3] +
701 2.0 *
y[3] *
y[2] *
x[0] * z[3] - 2.0 *
y[3] *
y[2] *
x[3] * z[0] +
702 2.0 *
y[3] * z[2] *
x[3] *
y[0] +
y[3] * z[1] *
x[3] *
y[0] -
703 2.0 *
y[3] *
x[2] *
y[0] * z[3] -
y[3] *
x[1] *
y[0] * z[3] -
704 y[3] *
y[1] *
x[3] * z[0] - 2.0 *
y[3] *
x[0] *
y[7] * z[3] -
705 y[3] *
x[0] *
y[4] * z[3] - 2.0 *
y[3] *
y[0] *
x[3] * z[7] -
706 y[3] *
y[0] *
x[3] * z[4] + 2.0 *
y[3] * z[0] *
x[3] *
y[7] +
707 y[3] *
y[1] *
x[0] * z[3] + z[5] *
x[1] *
y[4] *
y[4];
708 s5 =
s8 - 2.0 *
y[0] *
y[0] *
x[3] * z[4] -
709 2.0 *
y[0] *
x[1] *
y[4] * z[0] +
y[3] *
x[7] *
y[4] * z[3] -
710 y[3] *
x[4] *
y[7] * z[3] +
y[3] *
x[3] *
y[7] * z[4] -
711 y[3] *
x[3] *
y[4] * z[7] +
y[3] *
x[0] *
y[7] * z[4] -
712 y[3] * z[0] *
x[4] *
y[7] - 2.0 *
y[4] *
y[5] *
x[0] * z[4] +
s6 +
713 y[7] *
x[0] *
y[3] * z[7] -
y[7] * z[0] *
x[7] *
y[3] +
714 y[7] *
y[0] *
x[7] * z[3] -
y[7] *
y[0] *
x[3] * z[7] +
715 2.0 *
y[0] *
y[1] *
x[4] * z[0] +
s7;
716 s8 = -2.0 *
y[7] *
x[7] *
y[3] * z[4] -
717 2.0 *
y[7] *
x[3] *
y[4] * z[7] + 2.0 *
y[7] *
x[4] *
y[3] * z[7] +
718 y[7] *
y[0] *
x[4] * z[7] -
y[7] *
y[0] *
x[7] * z[4] +
719 2.0 *
y[7] *
x[7] *
y[4] * z[3] -
y[7] *
x[0] *
y[4] * z[7] +
720 y[7] * z[0] *
x[7] *
y[4] + z[5] *
x[4] *
y[7] *
y[7] +
721 2.0 * z[6] *
x[4] *
y[7] *
y[7] -
x[5] *
y[7] *
y[7] * z[4] -
722 2.0 *
x[6] *
y[7] *
y[7] * z[4] + 2.0 *
y[7] *
x[6] *
y[4] * z[7] -
723 2.0 *
y[7] * z[6] *
x[7] *
y[4] + 2.0 *
y[7] *
y[6] *
x[7] * z[4];
724 s7 =
s8 - 2.0 *
y[7] *
y[6] *
x[4] * z[7] -
y[7] * z[5] *
x[7] *
y[4] -
725 y[7] *
y[5] *
x[4] * z[7] -
x[0] *
y[7] *
y[7] * z[3] +
726 z[0] *
x[3] *
y[7] *
y[7] +
y[7] *
x[5] *
y[4] * z[7] +
727 y[7] *
y[5] *
x[7] * z[4] -
y[4] *
x[1] *
y[5] * z[0] -
728 x[1] *
y[0] *
y[0] * z[2] -
y[4] *
y[5] *
x[1] * z[4] -
729 2.0 *
y[4] * z[5] *
x[4] *
y[0] -
y[4] *
y[1] *
x[0] * z[4] +
730 y[4] *
y[5] *
x[4] * z[1] +
y[0] * z[0] *
x[3] *
y[7] -
731 y[0] * z[1] *
x[0] *
y[2];
732 s8 = 2.0 *
y[0] *
x[1] *
y[3] * z[0] +
y[4] *
y[1] *
x[4] * z[0] +
733 2.0 *
y[0] *
y[1] *
x[0] * z[3] +
y[4] *
x[1] *
y[0] * z[5] -
734 y[4] * z[1] *
x[5] *
y[0] +
y[4] * z[1] *
x[0] *
y[5] -
735 y[4] * z[1] *
x[4] *
y[0] +
y[4] *
x[1] *
y[0] * z[4] -
736 y[4] * z[5] *
x[4] *
y[1] +
x[5] *
y[4] *
y[4] * z[6] -
737 z[5] *
x[6] *
y[4] *
y[4] +
y[4] *
x[5] *
y[1] * z[4] -
738 y[0] * z[2] *
x[0] *
y[3] +
y[0] *
y[5] *
x[4] * z[0] +
739 y[0] *
x[1] *
y[2] * z[0];
740 s6 =
s8 - 2.0 *
y[0] * z[0] *
x[4] *
y[3] -
741 2.0 *
y[0] *
x[0] *
y[4] * z[3] - 2.0 *
y[0] * z[1] *
x[0] *
y[3] -
742 y[0] *
x[0] *
y[7] * z[3] - 2.0 *
y[0] *
y[1] *
x[3] * z[0] +
743 y[0] *
x[2] *
y[3] * z[0] -
y[0] *
y[1] *
x[2] * z[0] +
744 y[0] *
y[1] *
x[0] * z[2] -
y[0] *
x[2] *
y[1] * z[3] +
745 y[0] *
x[0] *
y[3] * z[7] +
y[0] *
x[2] *
y[3] * z[1] -
746 y[0] *
y[2] *
x[3] * z[0] +
y[0] *
y[2] *
x[0] * z[3] -
747 y[0] *
y[5] *
x[0] * z[4] -
y[4] *
y[5] *
x[4] * z[6] +
s7;
748 s8 =
s6 +
y[4] * z[6] *
x[5] *
y[7] -
y[4] *
x[6] *
y[7] * z[5] +
749 y[4] *
x[6] *
y[5] * z[7] -
y[4] * z[6] *
x[7] *
y[5] -
750 y[4] *
x[5] *
y[6] * z[4] +
y[4] * z[5] *
x[4] *
y[6] +
751 y[4] *
y[5] *
x[6] * z[4] - 2.0 *
y[1] *
y[1] *
x[0] * z[5] +
752 2.0 *
y[1] *
y[1] *
x[5] * z[0] - 2.0 *
y[2] *
y[2] *
x[6] * z[3] +
753 x[5] *
y[1] *
y[1] * z[4] - z[5] *
x[4] *
y[1] *
y[1] -
754 x[6] *
y[2] *
y[2] * z[7] + z[6] *
x[7] *
y[2] *
y[2];
755 s7 =
s8 -
x[1] *
y[5] *
y[5] * z[0] + z[1] *
x[0] *
y[5] *
y[5] +
756 y[1] *
y[5] *
x[4] * z[1] -
y[1] *
y[5] *
x[1] * z[4] -
757 2.0 *
y[2] * z[2] *
x[3] *
y[6] + 2.0 *
y[1] * z[1] *
x[0] *
y[5] -
758 2.0 *
y[1] * z[1] *
x[5] *
y[0] + 2.0 *
y[1] *
x[1] *
y[0] * z[5] -
759 y[2] *
x[2] *
y[3] * z[7] -
y[2] * z[2] *
x[3] *
y[7] +
760 y[2] *
x[2] *
y[7] * z[3] +
y[2] * z[2] *
x[7] *
y[3] -
761 2.0 *
y[2] *
x[2] *
y[3] * z[6] + 2.0 *
y[2] *
x[2] *
y[6] * z[3] +
762 2.0 *
y[2] * z[2] *
x[6] *
y[3] -
y[3] *
y[2] *
x[6] * z[3];
763 s8 =
y[3] *
y[2] *
x[3] * z[6] +
y[3] *
x[2] *
y[6] * z[3] -
764 y[3] * z[2] *
x[3] *
y[6] -
y[2] *
y[2] *
x[7] * z[3] +
765 2.0 *
y[2] *
y[2] *
x[3] * z[6] +
y[2] *
y[2] *
x[3] * z[7] -
766 2.0 *
y[1] *
x[1] *
y[5] * z[0] -
x[2] *
y[3] *
y[3] * z[6] +
767 z[2] *
x[6] *
y[3] *
y[3] + 2.0 *
y[6] *
x[2] *
y[5] * z[6] +
768 2.0 *
y[6] *
x[6] *
y[2] * z[5] - 2.0 *
y[6] *
x[5] *
y[2] * z[6] +
769 2.0 *
y[3] *
x[2] *
y[7] * z[3] - 2.0 *
y[3] * z[2] *
x[3] *
y[7] -
770 y[0] * z[0] *
x[7] *
y[3] -
y[0] * z[2] *
x[1] *
y[3];
771 s4 =
s8 -
y[2] *
y[6] *
x[7] * z[2] +
y[0] * z[2] *
x[3] *
y[1] +
772 y[1] * z[5] *
x[1] *
y[4] -
y[1] *
x[5] *
y[4] * z[1] +
773 2.0 *
y[0] * z[0] *
x[3] *
y[4] + 2.0 *
y[0] *
x[0] *
y[3] * z[4] +
774 2.0 * z[2] *
x[7] *
y[3] *
y[3] - 2.0 * z[5] *
x[7] *
y[4] *
y[4] +
775 x[6] *
y[4] *
y[4] * z[7] - z[6] *
x[7] *
y[4] *
y[4] +
776 y[1] *
y[1] *
x[0] * z[3] +
y[3] *
x[6] *
y[7] * z[2] -
777 y[3] * z[6] *
x[2] *
y[7] + 2.0 *
y[3] *
y[2] *
x[3] * z[7] +
s5 +
779 s8 =
s4 +
y[2] *
x[6] *
y[7] * z[2] -
y[2] *
y[6] *
x[7] * z[3] +
780 y[2] *
y[6] *
x[2] * z[7] -
y[2] * z[6] *
x[2] *
y[7] -
781 y[2] *
x[6] *
y[3] * z[7] +
y[2] *
y[6] *
x[3] * z[7] +
782 y[2] * z[6] *
x[7] *
y[3] - 2.0 *
y[3] *
y[2] *
x[7] * z[3] -
783 x[6] *
y[3] *
y[3] * z[7] +
y[1] *
y[1] *
x[4] * z[0] -
784 y[1] *
y[1] *
x[3] * z[0] +
x[2] *
y[6] *
y[6] * z[3] -
785 z[2] *
x[3] *
y[6] *
y[6] -
y[1] *
y[1] *
x[0] * z[4];
786 s7 =
s8 +
y[5] *
x[1] *
y[0] * z[5] +
y[6] *
x[2] *
y[7] * z[3] -
787 y[6] *
y[2] *
x[6] * z[3] +
y[6] *
y[2] *
x[3] * z[6] -
788 y[6] *
x[2] *
y[3] * z[6] +
y[6] * z[2] *
x[6] *
y[3] -
789 y[5] *
y[1] *
x[0] * z[5] -
y[5] * z[1] *
x[5] *
y[0] +
790 y[5] *
y[1] *
x[5] * z[0] -
y[6] * z[2] *
x[3] *
y[7] -
791 y[7] *
y[6] *
x[7] * z[2] + 2.0 *
y[6] *
y[6] *
x[2] * z[7] +
792 y[6] *
y[6] *
x[3] * z[7] +
x[6] *
y[7] *
y[7] * z[2] -
793 z[6] *
x[2] *
y[7] *
y[7];
794 s8 = -
x[2] *
y[1] *
y[1] * z[3] + 2.0 *
y[1] *
y[1] *
x[0] * z[2] -
795 2.0 *
y[1] *
y[1] *
x[2] * z[0] + z[2] *
x[3] *
y[1] *
y[1] -
796 z[1] *
x[0] *
y[2] *
y[2] +
x[1] *
y[2] *
y[2] * z[0] +
797 y[2] *
y[2] *
x[0] * z[3] -
y[2] *
y[2] *
x[3] * z[0] -
798 2.0 *
y[2] *
y[2] *
x[3] * z[1] +
y[1] *
x[1] *
y[3] * z[0] -
799 2.0 *
y[6] *
y[6] *
x[7] * z[2] + 2.0 *
y[5] *
y[5] *
x[4] * z[1] -
800 2.0 *
y[5] *
y[5] *
x[1] * z[4] -
y[6] *
y[6] *
x[7] * z[3] -
801 2.0 *
y[1] *
x[1] *
y[0] * z[2];
802 s6 =
s8 + 2.0 *
y[1] * z[1] *
x[2] *
y[0] -
803 2.0 *
y[1] * z[1] *
x[0] *
y[2] + 2.0 *
y[1] *
x[1] *
y[2] * z[0] +
804 y[1] *
x[2] *
y[3] * z[1] -
y[1] *
y[2] *
x[3] * z[1] -
805 y[1] * z[2] *
x[1] *
y[3] +
y[1] *
y[2] *
x[1] * z[3] -
806 y[2] *
x[1] *
y[0] * z[2] +
y[2] * z[1] *
x[2] *
y[0] +
807 y[2] *
x[2] *
y[3] * z[0] -
y[7] *
x[6] *
y[2] * z[7] +
808 y[7] * z[6] *
x[7] *
y[2] +
y[7] *
y[6] *
x[2] * z[7] -
809 y[6] *
x[6] *
y[3] * z[7] +
y[6] *
x[6] *
y[7] * z[3] +
s7;
810 s8 =
s6 -
y[6] * z[6] *
x[3] *
y[7] +
y[6] * z[6] *
x[7] *
y[3] +
811 2.0 *
y[2] *
y[2] *
x[1] * z[3] +
x[2] *
y[3] *
y[3] * z[1] -
812 z[2] *
x[1] *
y[3] *
y[3] +
y[1] *
x[1] *
y[0] * z[4] +
813 y[1] * z[1] *
x[3] *
y[0] -
y[1] *
x[1] *
y[0] * z[3] +
814 2.0 *
y[5] *
x[5] *
y[1] * z[4] - 2.0 *
y[5] *
x[5] *
y[4] * z[1] +
815 2.0 *
y[5] * z[5] *
x[1] *
y[4] - 2.0 *
y[5] * z[5] *
x[4] *
y[1] -
816 2.0 *
y[6] *
x[6] *
y[2] * z[7] + 2.0 *
y[6] *
x[6] *
y[7] * z[2];
817 s7 =
s8 + 2.0 *
y[6] * z[6] *
x[7] *
y[2] -
818 2.0 *
y[6] * z[6] *
x[2] *
y[7] -
y[1] * z[1] *
x[4] *
y[0] +
819 y[1] * z[1] *
x[0] *
y[4] -
y[1] * z[1] *
x[0] *
y[3] +
820 2.0 *
y[6] *
y[6] *
x[7] * z[5] + 2.0 *
y[5] *
y[5] *
x[6] * z[4] -
821 2.0 *
y[5] *
y[5] *
x[4] * z[6] +
x[6] *
y[5] *
y[5] * z[7] -
822 y[3] *
x[2] *
y[1] * z[3] -
y[3] *
y[2] *
x[3] * z[1] +
823 y[3] * z[2] *
x[3] *
y[1] +
y[3] *
y[2] *
x[1] * z[3] -
824 y[2] *
x[2] *
y[0] * z[3] +
y[2] * z[2] *
x[3] *
y[0];
825 s8 =
s7 + 2.0 *
y[2] *
x[2] *
y[3] * z[1] -
826 2.0 *
y[2] *
x[2] *
y[1] * z[3] +
y[2] *
y[1] *
x[0] * z[2] -
827 y[2] *
y[1] *
x[2] * z[0] + 2.0 *
y[2] * z[2] *
x[3] *
y[1] -
828 2.0 *
y[2] * z[2] *
x[1] *
y[3] -
y[2] * z[2] *
x[0] *
y[3] +
829 y[5] * z[6] *
x[5] *
y[7] -
y[5] *
x[6] *
y[7] * z[5] -
830 y[5] *
y[6] *
x[4] * z[7] -
y[5] *
y[6] *
x[5] * z[7] -
831 2.0 *
y[5] *
x[5] *
y[6] * z[4] + 2.0 *
y[5] *
x[5] *
y[4] * z[6] -
832 2.0 *
y[5] * z[5] *
x[6] *
y[4] + 2.0 *
y[5] * z[5] *
x[4] *
y[6];
833 s5 =
s8 -
y[1] *
y[5] *
x[0] * z[4] - z[6] *
x[7] *
y[5] *
y[5] +
834 y[6] *
y[6] *
x[7] * z[4] -
y[6] *
y[6] *
x[4] * z[7] -
835 2.0 *
y[6] *
y[6] *
x[5] * z[7] -
x[5] *
y[6] *
y[6] * z[4] +
836 z[5] *
x[4] *
y[6] *
y[6] + z[6] *
x[5] *
y[7] *
y[7] -
837 x[6] *
y[7] *
y[7] * z[5] +
y[1] *
y[5] *
x[4] * z[0] +
838 y[7] *
y[6] *
x[7] * z[5] +
y[6] *
y[5] *
x[7] * z[4] +
839 y[5] *
y[6] *
x[7] * z[5] +
y[6] *
y[5] *
x[6] * z[4] -
840 y[6] *
y[5] *
x[4] * z[6] + 2.0 *
y[6] * z[6] *
x[5] *
y[7];
841 s8 =
s5 - 2.0 *
y[6] *
x[6] *
y[7] * z[5] +
842 2.0 *
y[6] *
x[6] *
y[5] * z[7] - 2.0 *
y[6] * z[6] *
x[7] *
y[5] -
843 y[6] *
x[5] *
y[7] * z[4] -
y[6] *
x[6] *
y[7] * z[4] +
844 y[6] *
x[6] *
y[4] * z[7] -
y[6] * z[6] *
x[7] *
y[4] +
845 y[6] * z[5] *
x[4] *
y[7] +
y[6] * z[6] *
x[4] *
y[7] +
846 y[6] *
x[5] *
y[4] * z[6] -
y[6] * z[5] *
x[6] *
y[4] +
847 y[7] *
x[6] *
y[5] * z[7] -
y[7] * z[6] *
x[7] *
y[5] -
848 2.0 *
y[6] *
x[6] *
y[5] * z[2];
849 s7 =
s8 -
y[7] *
y[6] *
x[5] * z[7] + 2.0 *
y[4] *
y[5] *
x[4] * z[0] +
850 2.0 *
x[3] *
y[7] *
y[7] * z[4] - 2.0 *
x[4] *
y[7] *
y[7] * z[3] -
851 z[0] *
x[4] *
y[7] *
y[7] +
x[0] *
y[7] *
y[7] * z[4] -
852 y[0] * z[5] *
x[4] *
y[1] +
y[0] *
x[5] *
y[1] * z[4] -
853 y[0] *
x[5] *
y[4] * z[0] +
y[0] * z[5] *
x[0] *
y[4] -
854 y[5] *
y[5] *
x[0] * z[4] +
y[5] *
y[5] *
x[4] * z[0] +
855 2.0 *
y[1] *
y[1] *
x[2] * z[5] - 2.0 *
y[1] *
y[1] *
x[5] * z[2] +
856 z[1] *
x[5] *
y[2] *
y[2];
857 s8 =
s7 -
x[1] *
y[2] *
y[2] * z[5] -
y[5] * z[5] *
x[4] *
y[0] +
858 y[5] * z[5] *
x[0] *
y[4] -
y[5] *
x[5] *
y[4] * z[0] -
859 y[2] *
x[1] *
y[6] * z[5] -
y[2] *
y[1] *
x[5] * z[6] +
860 y[2] * z[1] *
x[5] *
y[6] +
y[2] *
y[1] *
x[6] * z[5] -
861 y[1] * z[1] *
x[6] *
y[5] -
y[1] *
x[1] *
y[6] * z[5] +
862 y[1] *
x[1] *
y[5] * z[6] +
y[1] * z[1] *
x[5] *
y[6] +
863 y[5] *
x[5] *
y[0] * z[4] +
y[2] *
y[1] *
x[2] * z[5] -
864 y[2] * z[1] *
x[2] *
y[5];
865 s6 =
s8 +
y[2] *
x[1] *
y[5] * z[2] -
y[2] *
y[1] *
x[5] * z[2] -
866 y[1] *
y[1] *
x[5] * z[6] +
y[1] *
y[1] *
x[6] * z[5] -
867 z[1] *
x[2] *
y[5] *
y[5] +
x[1] *
y[5] *
y[5] * z[2] +
868 2.0 *
y[1] * z[1] *
x[5] *
y[2] - 2.0 *
y[1] *
x[1] *
y[2] * z[5] -
869 2.0 *
y[1] * z[1] *
x[2] *
y[5] + 2.0 *
y[1] *
x[1] *
y[5] * z[2] -
870 y[1] *
y[1] *
x[6] * z[2] +
y[1] *
y[1] *
x[2] * z[6] -
871 2.0 *
y[5] *
x[1] *
y[6] * z[5] - 2.0 *
y[5] *
y[1] *
x[5] * z[6] +
872 2.0 *
y[5] * z[1] *
x[5] *
y[6] + 2.0 *
y[5] *
y[1] *
x[6] * z[5];
873 s8 =
s6 -
y[6] * z[1] *
x[6] *
y[5] -
y[6] *
y[1] *
x[5] * z[6] +
874 y[6] *
x[1] *
y[5] * z[6] +
y[6] *
y[1] *
x[6] * z[5] -
875 2.0 * z[1] *
x[6] *
y[5] *
y[5] + 2.0 *
x[1] *
y[5] *
y[5] * z[6] -
876 x[1] *
y[6] *
y[6] * z[5] + z[1] *
x[5] *
y[6] *
y[6] +
877 y[5] * z[1] *
x[5] *
y[2] -
y[5] *
x[1] *
y[2] * z[5] +
878 y[5] *
y[1] *
x[2] * z[5] -
y[5] *
y[1] *
x[5] * z[2] -
879 y[6] * z[1] *
x[2] *
y[5] +
y[6] *
x[1] *
y[5] * z[2];
880 s7 =
s8 -
y[1] * z[1] *
x[2] *
y[6] -
y[1] *
x[1] *
y[2] * z[6] +
881 y[1] *
x[1] *
y[6] * z[2] +
y[1] * z[1] *
x[6] *
y[2] +
882 y[5] *
x[5] *
y[6] * z[2] -
y[5] *
x[2] *
y[6] * z[5] +
883 y[5] *
x[6] *
y[2] * z[5] -
y[5] *
x[5] *
y[2] * z[6] -
884 x[6] *
y[5] *
y[5] * z[2] +
x[2] *
y[5] *
y[5] * z[6] -
885 y[5] *
y[5] *
x[4] * z[7] +
y[5] *
y[5] *
x[7] * z[4] -
886 y[1] *
x[6] *
y[5] * z[2] +
y[1] *
x[2] *
y[5] * z[6] -
887 y[2] *
x[6] *
y[5] * z[2] - 2.0 *
y[2] *
y[1] *
x[6] * z[2];
888 s8 =
s7 - 2.0 *
y[2] * z[1] *
x[2] *
y[6] +
889 2.0 *
y[2] *
x[1] *
y[6] * z[2] + 2.0 *
y[2] *
y[1] *
x[2] * z[6] -
890 2.0 *
x[1] *
y[2] *
y[2] * z[6] + 2.0 * z[1] *
x[6] *
y[2] *
y[2] +
891 x[6] *
y[2] *
y[2] * z[5] -
x[5] *
y[2] *
y[2] * z[6] +
892 2.0 *
x[5] *
y[6] *
y[6] * z[2] - 2.0 *
x[2] *
y[6] *
y[6] * z[5] -
893 z[1] *
x[2] *
y[6] *
y[6] -
y[6] *
y[1] *
x[6] * z[2] -
894 y[6] *
x[1] *
y[2] * z[6] +
y[6] * z[1] *
x[6] *
y[2] +
895 y[6] *
y[1] *
x[2] * z[6] +
x[1] *
y[6] *
y[6] * z[2];
896 s3 =
s8 +
y[2] *
x[5] *
y[6] * z[2] +
y[2] *
x[2] *
y[5] * z[6] -
897 y[2] *
x[2] *
y[6] * z[5] +
y[5] * z[5] *
x[4] *
y[7] +
898 y[5] *
x[5] *
y[4] * z[7] -
y[5] * z[5] *
x[7] *
y[4] -
899 y[5] *
x[5] *
y[7] * z[4] + 2.0 *
y[4] *
x[5] *
y[0] * z[4] -
900 y[3] * z[6] *
x[3] *
y[7] +
y[3] *
y[6] *
x[3] * z[7] +
901 y[3] *
x[6] *
y[7] * z[3] -
y[3] *
y[6] *
x[7] * z[3] -
902 y[2] *
y[1] *
x[3] * z[0] -
y[2] * z[1] *
x[0] *
y[3] +
903 y[2] *
y[1] *
x[0] * z[3] +
y[2] *
x[1] *
y[3] * z[0];
904 s8 =
y[1] *
x[0] * z[3] +
x[1] *
y[3] * z[0] -
y[0] *
x[3] * z[7] -
905 x[1] *
y[5] * z[0] -
y[0] *
x[3] * z[4] -
x[1] *
y[0] * z[2] +
906 z[1] *
x[2] *
y[0] -
y[1] *
x[0] * z[5] - z[1] *
x[0] *
y[2] -
907 y[1] *
x[0] * z[4] + z[1] *
x[5] *
y[2] + z[0] *
x[7] *
y[4] +
908 z[0] *
x[3] *
y[7] + z[1] *
x[0] *
y[4] -
x[1] *
y[2] * z[5] +
909 x[2] *
y[3] * z[0] +
y[1] *
x[2] * z[5] -
x[2] *
y[3] * z[7];
910 s7 =
s8 - z[1] *
x[2] *
y[5] -
y[1] *
x[3] * z[0] -
x[0] *
y[7] * z[3] -
911 z[1] *
x[0] *
y[3] +
y[5] *
x[4] * z[0] -
x[0] *
y[4] * z[3] +
912 y[5] *
x[7] * z[4] - z[0] *
x[4] *
y[3] +
x[1] *
y[0] * z[4] -
913 z[2] *
x[3] *
y[7] -
y[6] *
x[7] * z[2] +
x[1] *
y[5] * z[2] +
914 y[6] *
x[7] * z[5] +
x[0] *
y[7] * z[4] +
x[1] *
y[2] * z[0] -
915 z[1] *
x[4] *
y[0] - z[0] *
x[4] *
y[7] - z[2] *
x[0] *
y[3];
916 s8 =
x[5] *
y[0] * z[4] + z[1] *
x[0] *
y[5] -
x[2] *
y[0] * z[3] -
917 z[1] *
x[5] *
y[0] +
y[1] *
x[5] * z[0] -
x[1] *
y[0] * z[3] -
918 x[1] *
y[4] * z[0] -
y[1] *
x[5] * z[2] +
x[2] *
y[7] * z[3] +
919 y[0] *
x[4] * z[3] -
x[0] *
y[4] * z[7] +
x[1] *
y[0] * z[5] -
920 y[1] *
x[6] * z[2] -
y[2] *
x[6] * z[3] +
y[0] *
x[7] * z[3] -
921 y[2] *
x[7] * z[3] + z[2] *
x[7] *
y[3] +
y[2] *
x[0] * z[3];
922 s6 =
s8 +
y[2] *
x[3] * z[7] -
y[2] *
x[3] * z[0] -
x[6] *
y[5] * z[2] -
923 y[5] *
x[0] * z[4] + z[2] *
x[3] *
y[0] +
x[2] *
y[3] * z[1] +
924 x[0] *
y[3] * z[7] -
x[2] *
y[1] * z[3] +
y[1] *
x[4] * z[0] +
925 y[1] *
x[0] * z[2] - z[1] *
x[2] *
y[6] +
y[2] *
x[3] * z[6] -
926 y[1] *
x[2] * z[0] + z[1] *
x[3] *
y[0] -
x[1] *
y[2] * z[6] -
927 x[2] *
y[3] * z[6] +
x[0] *
y[3] * z[4] + z[0] *
x[3] *
y[4] +
s7;
928 s8 =
x[5] *
y[4] * z[7] +
s6 +
y[5] *
x[6] * z[4] -
y[5] *
x[4] * z[6] +
929 z[6] *
x[5] *
y[7] -
x[6] *
y[2] * z[7] -
x[6] *
y[7] * z[5] +
930 x[5] *
y[6] * z[2] +
x[6] *
y[5] * z[7] +
x[6] *
y[7] * z[2] +
931 y[6] *
x[7] * z[4] -
y[6] *
x[4] * z[7] -
y[6] *
x[7] * z[3] +
932 z[6] *
x[7] *
y[2] +
x[2] *
y[5] * z[6] -
x[2] *
y[6] * z[5] +
933 y[6] *
x[2] * z[7] +
x[6] *
y[2] * z[5];
934 s7 =
s8 -
x[5] *
y[2] * z[6] - z[6] *
x[7] *
y[5] - z[5] *
x[7] *
y[4] +
935 z[5] *
x[0] *
y[4] -
y[5] *
x[4] * z[7] +
y[0] *
x[4] * z[7] -
936 z[6] *
x[2] *
y[7] -
x[5] *
y[4] * z[0] -
x[5] *
y[7] * z[4] -
937 y[0] *
x[7] * z[4] +
y[5] *
x[4] * z[1] -
x[6] *
y[7] * z[4] +
938 x[7] *
y[4] * z[3] -
x[4] *
y[7] * z[3] +
x[3] *
y[7] * z[4] -
939 x[7] *
y[3] * z[4] -
x[6] *
y[3] * z[7] +
x[6] *
y[4] * z[7];
940 s8 = -
x[3] *
y[4] * z[7] +
x[4] *
y[3] * z[7] - z[6] *
x[7] *
y[4] -
941 z[1] *
x[6] *
y[5] +
x[6] *
y[7] * z[3] -
x[1] *
y[6] * z[5] -
942 y[1] *
x[5] * z[6] + z[5] *
x[4] *
y[7] - z[5] *
x[4] *
y[0] +
943 x[1] *
y[5] * z[6] -
y[6] *
x[5] * z[7] -
y[2] *
x[3] * z[1] +
944 z[1] *
x[5] *
y[6] -
y[5] *
x[1] * z[4] + z[6] *
x[4] *
y[7] +
945 x[5] *
y[1] * z[4] -
x[5] *
y[6] * z[4] +
y[6] *
x[3] * z[7] -
947 s5 =
s8 +
x[5] *
y[4] * z[6] + z[5] *
x[1] *
y[4] +
y[1] *
x[6] * z[5] -
948 z[6] *
x[3] *
y[7] + z[6] *
x[7] *
y[3] - z[5] *
x[6] *
y[4] -
949 z[5] *
x[4] *
y[1] + z[5] *
x[4] *
y[6] +
x[1] *
y[6] * z[2] +
950 x[2] *
y[6] * z[3] + z[2] *
x[6] *
y[3] + z[1] *
x[6] *
y[2] +
951 z[2] *
x[3] *
y[1] - z[2] *
x[1] *
y[3] - z[2] *
x[3] *
y[6] +
952 y[2] *
x[1] * z[3] +
y[1] *
x[2] * z[6] - z[0] *
x[7] *
y[3] +
s7;
957 s8 = -z[2] *
x[1] *
y[2] * z[5] + z[2] *
y[1] *
x[2] * z[5] -
958 z[2] * z[1] *
x[2] *
y[5] + z[2] * z[1] *
x[5] *
y[2] +
959 2.0 *
y[5] *
x[7] * z[4] * z[4] -
y[1] *
x[2] * z[0] * z[0] +
960 x[0] *
y[3] * z[7] * z[7] - 2.0 * z[5] * z[5] *
x[4] *
y[1] +
961 2.0 * z[5] * z[5] *
x[1] *
y[4] + z[5] * z[5] *
x[0] *
y[4] -
962 2.0 * z[2] * z[2] *
x[1] *
y[3] + 2.0 * z[2] * z[2] *
x[3] *
y[1] -
963 x[0] *
y[4] * z[7] * z[7] -
y[0] *
x[3] * z[7] * z[7] +
964 x[1] *
y[0] * z[5] * z[5];
965 s7 =
s8 -
y[1] *
x[0] * z[5] * z[5] + z[1] *
y[1] *
x[2] * z[6] +
966 y[1] *
x[0] * z[2] * z[2] + z[2] * z[2] *
x[3] *
y[0] -
967 z[2] * z[2] *
x[0] *
y[3] -
x[1] *
y[0] * z[2] * z[2] +
968 2.0 * z[5] * z[5] *
x[4] *
y[6] - 2.0 * z[5] * z[5] *
x[6] *
y[4] -
969 z[5] * z[5] *
x[7] *
y[4] -
x[6] *
y[7] * z[5] * z[5] +
970 2.0 * z[2] *
y[1] *
x[2] * z[6] - 2.0 * z[2] *
x[1] *
y[2] * z[6] +
971 2.0 * z[2] * z[1] *
x[6] *
y[2] -
y[6] *
x[5] * z[7] * z[7] +
972 2.0 *
x[6] *
y[4] * z[7] * z[7];
973 s8 = -2.0 *
y[6] *
x[4] * z[7] * z[7] +
x[6] *
y[5] * z[7] * z[7] -
974 2.0 * z[2] * z[1] *
x[2] *
y[6] + z[4] *
y[6] *
x[7] * z[5] +
975 x[5] *
y[4] * z[6] * z[6] + z[6] * z[6] *
x[4] *
y[7] -
976 z[6] * z[6] *
x[7] *
y[4] - 2.0 * z[6] * z[6] *
x[7] *
y[5] +
977 2.0 * z[6] * z[6] *
x[5] *
y[7] -
y[5] *
x[4] * z[6] * z[6] +
978 2.0 * z[0] * z[0] *
x[3] *
y[4] -
x[6] *
y[5] * z[2] * z[2] +
979 z[1] * z[1] *
x[5] *
y[6] - z[1] * z[1] *
x[6] *
y[5] -
980 z[5] * z[5] *
x[4] *
y[0];
981 s6 =
s8 + 2.0 *
x[1] *
y[3] * z[0] * z[0] +
982 2.0 *
x[1] *
y[6] * z[2] * z[2] - 2.0 *
y[1] *
x[6] * z[2] * z[2] -
983 y[1] *
x[5] * z[2] * z[2] - z[1] * z[1] *
x[2] *
y[6] -
984 2.0 * z[1] * z[1] *
x[2] *
y[5] + 2.0 * z[1] * z[1] *
x[5] *
y[2] +
985 z[1] *
y[1] *
x[6] * z[5] +
y[1] *
x[2] * z[5] * z[5] +
986 z[2] * z[1] *
x[2] *
y[0] + z[1] *
x[1] *
y[5] * z[6] -
987 z[1] *
x[1] *
y[6] * z[5] - z[1] *
y[1] *
x[5] * z[6] -
988 z[1] *
x[2] *
y[6] * z[5] + z[1] *
x[6] *
y[2] * z[5] +
s7;
989 s8 = -
x[1] *
y[2] * z[5] * z[5] + z[1] *
x[5] *
y[6] * z[2] -
990 2.0 * z[2] * z[2] *
x[3] *
y[6] + 2.0 * z[2] * z[2] *
x[6] *
y[3] +
991 z[2] * z[2] *
x[7] *
y[3] - z[2] * z[2] *
x[3] *
y[7] -
992 z[1] *
x[6] *
y[5] * z[2] + 2.0 * z[1] *
x[1] *
y[5] * z[2] -
993 2.0 *
x[3] *
y[4] * z[7] * z[7] + 2.0 *
x[4] *
y[3] * z[7] * z[7] +
994 x[5] *
y[6] * z[2] * z[2] +
y[1] *
x[2] * z[6] * z[6] +
995 y[0] *
x[4] * z[7] * z[7] + z[2] *
x[2] *
y[3] * z[0] -
996 x[1] *
y[2] * z[6] * z[6];
997 s7 =
s8 - z[7] * z[2] *
x[3] *
y[7] +
x[2] *
y[6] * z[3] * z[3] -
998 y[2] *
x[6] * z[3] * z[3] - z[6] *
x[2] *
y[3] * z[7] -
999 z[2] * z[1] *
x[0] *
y[2] + z[6] * z[2] *
x[6] *
y[3] -
1000 z[6] * z[2] *
x[3] *
y[6] + z[6] *
x[2] *
y[6] * z[3] +
1001 z[2] *
x[1] *
y[2] * z[0] + z[6] *
y[2] *
x[3] * z[7] -
1002 z[4] * z[5] *
x[6] *
y[4] + z[4] * z[5] *
x[4] *
y[6] -
1003 z[4] *
y[6] *
x[5] * z[7] + z[4] * z[6] *
x[4] *
y[7] +
1004 z[4] *
x[5] *
y[4] * z[6];
1005 s8 = -z[6] *
y[2] *
x[6] * z[3] - z[4] *
y[5] *
x[4] * z[6] -
1006 z[2] *
y[1] *
x[5] * z[6] + z[2] *
x[1] *
y[5] * z[6] +
1007 z[4] *
x[6] *
y[4] * z[7] + 2.0 * z[4] * z[5] *
x[4] *
y[7] -
1008 z[4] * z[6] *
x[7] *
y[4] +
x[6] *
y[7] * z[3] * z[3] -
1009 2.0 * z[4] * z[5] *
x[7] *
y[4] - 2.0 * z[4] *
y[5] *
x[4] * z[7] -
1010 z[4] *
y[6] *
x[4] * z[7] + z[4] *
x[6] *
y[5] * z[7] -
1011 z[4] *
x[6] *
y[7] * z[5] + 2.0 * z[4] *
x[5] *
y[4] * z[7] +
1012 z[2] *
x[2] *
y[5] * z[6] - z[2] *
x[2] *
y[6] * z[5];
1013 s5 =
s8 + z[2] *
x[6] *
y[2] * z[5] - z[2] *
x[5] *
y[2] * z[6] -
1014 z[2] *
x[2] *
y[3] * z[7] -
x[2] *
y[3] * z[7] * z[7] +
1015 2.0 * z[2] *
x[2] *
y[3] * z[1] - z[2] *
y[2] *
x[3] * z[0] +
1016 z[2] *
y[2] *
x[0] * z[3] - z[2] *
x[2] *
y[0] * z[3] -
1017 z[7] *
y[2] *
x[7] * z[3] + z[7] * z[2] *
x[7] *
y[3] +
1018 z[7] *
x[2] *
y[7] * z[3] + z[6] *
y[1] *
x[2] * z[5] -
1019 z[6] *
x[1] *
y[2] * z[5] + z[5] *
x[1] *
y[5] * z[2] +
s6 +
s7;
1020 s8 = z[5] * z[1] *
x[5] *
y[2] - z[5] * z[1] *
x[2] *
y[5] -
1021 y[6] *
x[7] * z[2] * z[2] + 2.0 * z[2] *
x[2] *
y[6] * z[3] -
1022 2.0 * z[2] *
x[2] *
y[3] * z[6] + 2.0 * z[2] *
y[2] *
x[3] * z[6] +
1023 y[2] *
x[3] * z[6] * z[6] +
y[6] *
x[7] * z[5] * z[5] +
1024 z[2] *
y[2] *
x[3] * z[7] - z[2] *
y[2] *
x[7] * z[3] -
1025 2.0 * z[2] *
y[2] *
x[6] * z[3] + z[2] *
x[2] *
y[7] * z[3] +
1026 x[6] *
y[2] * z[5] * z[5] - 2.0 * z[2] *
x[2] *
y[1] * z[3] -
1027 x[2] *
y[6] * z[5] * z[5];
1028 s7 =
s8 -
y[1] *
x[5] * z[6] * z[6] + z[6] *
x[1] *
y[6] * z[2] -
1029 z[3] * z[2] *
x[3] *
y[6] + z[6] * z[1] *
x[6] *
y[2] -
1030 z[6] * z[1] *
x[2] *
y[6] - z[6] *
y[1] *
x[6] * z[2] -
1031 2.0 *
x[5] *
y[2] * z[6] * z[6] + z[4] * z[1] *
x[0] *
y[4] -
1032 z[3] *
x[2] *
y[3] * z[6] - z[5] *
y[1] *
x[5] * z[2] +
1033 z[3] *
y[2] *
x[3] * z[6] + 2.0 *
x[2] *
y[5] * z[6] * z[6] -
1034 z[5] *
x[1] *
y[5] * z[0] +
y[2] *
x[3] * z[7] * z[7] -
1035 x[2] *
y[3] * z[6] * z[6];
1036 s8 = z[5] *
y[5] *
x[4] * z[0] + z[3] * z[2] *
x[6] *
y[3] +
1037 x[1] *
y[5] * z[6] * z[6] + z[5] *
y[5] *
x[7] * z[4] -
1038 z[1] *
x[1] *
y[2] * z[6] + z[1] *
x[1] *
y[6] * z[2] +
1039 2.0 * z[6] *
y[6] *
x[7] * z[5] - z[7] *
y[6] *
x[7] * z[2] -
1040 z[3] *
y[6] *
x[7] * z[2] +
x[6] *
y[7] * z[2] * z[2] -
1041 2.0 * z[6] *
y[6] *
x[7] * z[2] - 2.0 *
x[6] *
y[3] * z[7] * z[7] -
1042 x[6] *
y[2] * z[7] * z[7] - z[5] *
x[6] *
y[5] * z[2] +
1043 y[6] *
x[2] * z[7] * z[7];
1044 s6 =
s8 + 2.0 *
y[6] *
x[3] * z[7] * z[7] + z[6] * z[6] *
x[7] *
y[3] -
1045 y[6] *
x[7] * z[3] * z[3] + z[5] *
x[5] *
y[0] * z[4] +
1046 2.0 * z[6] * z[6] *
x[7] *
y[2] - 2.0 * z[6] * z[6] *
x[2] *
y[7] -
1047 z[6] * z[6] *
x[3] *
y[7] + z[7] *
y[6] *
x[7] * z[5] +
1048 z[7] *
y[5] *
x[7] * z[4] - 2.0 * z[7] *
x[7] *
y[3] * z[4] +
1049 2.0 * z[7] *
x[3] *
y[7] * z[4] - 2.0 * z[7] *
x[4] *
y[7] * z[3] +
1050 2.0 * z[7] *
x[7] *
y[4] * z[3] - z[7] *
y[0] *
x[7] * z[4] -
1051 2.0 * z[7] * z[6] *
x[3] *
y[7] +
s7;
1052 s8 =
s6 + 2.0 * z[7] * z[6] *
x[7] *
y[3] +
1053 2.0 * z[7] *
x[6] *
y[7] * z[3] + z[7] *
x[6] *
y[7] * z[2] -
1054 2.0 * z[7] *
y[6] *
x[7] * z[3] + z[7] * z[6] *
x[7] *
y[2] -
1055 z[7] * z[6] *
x[2] *
y[7] + z[5] *
y[1] *
x[5] * z[0] -
1056 z[5] * z[1] *
x[5] *
y[0] + 2.0 *
y[1] *
x[6] * z[5] * z[5] -
1057 2.0 *
x[1] *
y[6] * z[5] * z[5] + z[5] * z[1] *
x[0] *
y[5] +
1058 z[6] *
y[6] *
x[3] * z[7] + 2.0 * z[6] *
x[6] *
y[7] * z[2] -
1059 z[6] *
y[6] *
x[7] * z[3];
1060 s7 =
s8 + 2.0 * z[6] *
y[6] *
x[2] * z[7] - z[6] *
x[6] *
y[3] * z[7] +
1061 z[6] *
x[6] *
y[7] * z[3] - 2.0 * z[6] *
x[6] *
y[2] * z[7] -
1062 2.0 * z[1] *
y[1] *
x[5] * z[2] - z[1] *
y[1] *
x[6] * z[2] -
1063 z[7] * z[0] *
x[7] *
y[3] - 2.0 * z[6] *
x[6] *
y[5] * z[2] -
1064 z[2] * z[6] *
x[3] *
y[7] + z[2] *
x[6] *
y[7] * z[3] -
1065 z[2] * z[6] *
x[2] *
y[7] +
y[5] *
x[6] * z[4] * z[4] +
1066 z[2] *
y[6] *
x[2] * z[7] +
y[6] *
x[7] * z[4] * z[4] +
1067 z[2] * z[6] *
x[7] *
y[2] - 2.0 *
x[5] *
y[7] * z[4] * z[4];
1068 s8 = -
x[6] *
y[7] * z[4] * z[4] - z[5] *
y[5] *
x[0] * z[4] -
1069 z[2] *
x[6] *
y[2] * z[7] -
x[5] *
y[6] * z[4] * z[4] -
1070 2.0 * z[5] *
y[1] *
x[5] * z[6] + 2.0 * z[5] * z[1] *
x[5] *
y[6] +
1071 2.0 * z[5] *
x[1] *
y[5] * z[6] - 2.0 * z[5] * z[1] *
x[6] *
y[5] -
1072 z[5] *
x[5] *
y[2] * z[6] + z[5] *
x[5] *
y[6] * z[2] +
1073 z[5] *
x[2] *
y[5] * z[6] + z[5] * z[5] *
x[4] *
y[7] -
1074 y[5] *
x[4] * z[7] * z[7] +
x[5] *
y[4] * z[7] * z[7] +
1075 z[6] * z[1] *
x[5] *
y[6] + z[6] *
y[1] *
x[6] * z[5];
1076 s4 =
s8 - z[6] * z[1] *
x[6] *
y[5] - z[6] *
x[1] *
y[6] * z[5] +
1077 z[2] * z[6] *
x[7] *
y[3] + 2.0 * z[6] *
x[6] *
y[2] * z[5] +
1078 2.0 * z[6] *
x[5] *
y[6] * z[2] - 2.0 * z[6] *
x[2] *
y[6] * z[5] +
1079 z[7] * z[0] *
x[3] *
y[7] + z[7] * z[0] *
x[7] *
y[4] +
1080 z[3] * z[6] *
x[7] *
y[3] - z[3] * z[6] *
x[3] *
y[7] -
1081 z[3] *
x[6] *
y[3] * z[7] + z[3] *
y[6] *
x[2] * z[7] -
1082 z[3] *
x[6] *
y[2] * z[7] + z[5] *
x[5] *
y[4] * z[7] +
s5 +
s7;
1083 s8 =
s4 + z[3] *
y[6] *
x[3] * z[7] - z[7] *
x[0] *
y[7] * z[3] +
1084 z[6] *
x[5] *
y[4] * z[7] + z[7] *
y[0] *
x[7] * z[3] +
1085 z[5] * z[6] *
x[4] *
y[7] - 2.0 * z[5] *
x[5] *
y[6] * z[4] +
1086 2.0 * z[5] *
x[5] *
y[4] * z[6] - z[5] *
x[5] *
y[7] * z[4] -
1087 z[5] *
y[6] *
x[5] * z[7] - z[5] * z[6] *
x[7] *
y[4] -
1088 z[7] * z[0] *
x[4] *
y[7] - z[5] * z[6] *
x[7] *
y[5] -
1089 z[5] *
y[5] *
x[4] * z[7] + z[7] *
x[0] *
y[7] * z[4];
1090 s7 =
s8 - 2.0 * z[5] *
y[5] *
x[4] * z[6] + z[5] * z[6] *
x[5] *
y[7] +
1091 z[5] *
x[6] *
y[5] * z[7] + 2.0 * z[5] *
y[5] *
x[6] * z[4] +
1092 z[6] * z[5] *
x[4] *
y[6] - z[6] *
x[5] *
y[6] * z[4] -
1093 z[6] * z[5] *
x[6] *
y[4] - z[6] *
x[6] *
y[7] * z[4] -
1094 2.0 * z[6] *
y[6] *
x[5] * z[7] + z[6] *
x[6] *
y[4] * z[7] -
1095 z[6] *
y[5] *
x[4] * z[7] - z[6] *
y[6] *
x[4] * z[7] +
1096 z[6] *
y[6] *
x[7] * z[4] + z[6] *
y[5] *
x[6] * z[4] +
1097 2.0 * z[6] *
x[6] *
y[5] * z[7];
1098 s8 = -2.0 * z[6] *
x[6] *
y[7] * z[5] - z[2] *
y[1] *
x[2] * z[0] +
1099 2.0 * z[7] * z[6] *
x[4] *
y[7] - 2.0 * z[7] *
x[6] *
y[7] * z[4] -
1100 2.0 * z[7] * z[6] *
x[7] *
y[4] + z[7] * z[5] *
x[4] *
y[7] -
1101 z[7] * z[5] *
x[7] *
y[4] - z[7] *
x[5] *
y[7] * z[4] +
1102 2.0 * z[7] *
y[6] *
x[7] * z[4] - z[7] * z[6] *
x[7] *
y[5] +
1103 z[7] * z[6] *
x[5] *
y[7] - z[7] *
x[6] *
y[7] * z[5] +
1104 z[1] * z[1] *
x[6] *
y[2] +
s7 +
x[1] *
y[5] * z[2] * z[2];
1105 s6 =
s8 + 2.0 * z[2] *
y[2] *
x[1] * z[3] -
1106 2.0 * z[2] *
y[2] *
x[3] * z[1] - 2.0 *
x[1] *
y[4] * z[0] * z[0] +
1107 2.0 *
y[1] *
x[4] * z[0] * z[0] + 2.0 *
x[2] *
y[7] * z[3] * z[3] -
1108 2.0 *
y[2] *
x[7] * z[3] * z[3] -
x[1] *
y[5] * z[0] * z[0] +
1109 z[0] * z[0] *
x[7] *
y[4] + z[0] * z[0] *
x[3] *
y[7] +
1110 x[2] *
y[3] * z[0] * z[0] - 2.0 *
y[1] *
x[3] * z[0] * z[0] +
1111 y[5] *
x[4] * z[0] * z[0] - 2.0 * z[0] * z[0] *
x[4] *
y[3] +
1112 x[1] *
y[2] * z[0] * z[0] - z[0] * z[0] *
x[4] *
y[7] +
1113 y[1] *
x[5] * z[0] * z[0];
1114 s8 =
s6 -
y[2] *
x[3] * z[0] * z[0] +
y[1] *
x[0] * z[3] * z[3] -
1115 2.0 *
x[0] *
y[7] * z[3] * z[3] -
x[0] *
y[4] * z[3] * z[3] -
1116 2.0 *
x[2] *
y[0] * z[3] * z[3] -
x[1] *
y[0] * z[3] * z[3] +
1117 y[0] *
x[4] * z[3] * z[3] - 2.0 * z[0] *
y[1] *
x[0] * z[4] +
1118 2.0 * z[0] * z[1] *
x[0] *
y[4] + 2.0 * z[0] *
x[1] *
y[0] * z[4] -
1119 2.0 * z[0] * z[1] *
x[4] *
y[0] - 2.0 * z[3] *
x[2] *
y[3] * z[7] -
1120 2.0 * z[3] * z[2] *
x[3] *
y[7] + 2.0 * z[3] * z[2] *
x[7] *
y[3];
1121 s7 =
s8 + 2.0 * z[3] *
y[2] *
x[3] * z[7] +
1122 2.0 * z[5] *
y[5] *
x[4] * z[1] + 2.0 * z[0] *
y[1] *
x[0] * z[3] -
1123 z[0] *
y[0] *
x[3] * z[7] - 2.0 * z[0] *
y[0] *
x[3] * z[4] -
1124 z[0] *
x[1] *
y[0] * z[2] + z[0] * z[1] *
x[2] *
y[0] -
1125 z[0] *
y[1] *
x[0] * z[5] - z[0] * z[1] *
x[0] *
y[2] -
1126 z[0] *
x[0] *
y[7] * z[3] - 2.0 * z[0] * z[1] *
x[0] *
y[3] -
1127 z[5] *
x[5] *
y[4] * z[0] - 2.0 * z[0] *
x[0] *
y[4] * z[3] +
1128 z[0] *
x[0] *
y[7] * z[4] - z[0] * z[2] *
x[0] *
y[3];
1129 s8 =
s7 + z[0] *
x[5] *
y[0] * z[4] + z[0] * z[1] *
x[0] *
y[5] -
1130 z[0] *
x[2] *
y[0] * z[3] - z[0] * z[1] *
x[5] *
y[0] -
1131 2.0 * z[0] *
x[1] *
y[0] * z[3] + 2.0 * z[0] *
y[0] *
x[4] * z[3] -
1132 z[0] *
x[0] *
y[4] * z[7] + z[0] *
x[1] *
y[0] * z[5] +
1133 z[0] *
y[0] *
x[7] * z[3] + z[0] *
y[2] *
x[0] * z[3] -
1134 z[0] *
y[5] *
x[0] * z[4] + z[0] * z[2] *
x[3] *
y[0] +
1135 z[0] *
x[2] *
y[3] * z[1] + z[0] *
x[0] *
y[3] * z[7] -
1136 z[0] *
x[2] *
y[1] * z[3];
1137 s5 =
s8 + z[0] *
y[1] *
x[0] * z[2] + z[3] *
x[1] *
y[3] * z[0] -
1138 2.0 * z[3] *
y[0] *
x[3] * z[7] - z[3] *
y[0] *
x[3] * z[4] -
1139 z[3] *
x[1] *
y[0] * z[2] + z[3] * z[0] *
x[7] *
y[4] +
1140 2.0 * z[3] * z[0] *
x[3] *
y[7] + 2.0 * z[3] *
x[2] *
y[3] * z[0] -
1141 z[3] *
y[1] *
x[3] * z[0] - z[3] * z[1] *
x[0] *
y[3] -
1142 z[3] * z[0] *
x[4] *
y[3] + z[3] *
x[1] *
y[2] * z[0] -
1143 z[3] * z[0] *
x[4] *
y[7] - 2.0 * z[3] * z[2] *
x[0] *
y[3] -
1144 z[3] *
x[0] *
y[4] * z[7] - 2.0 * z[3] *
y[2] *
x[3] * z[0];
1145 s8 =
s5 + 2.0 * z[3] * z[2] *
x[3] *
y[0] + z[3] *
x[2] *
y[3] * z[1] +
1146 2.0 * z[3] *
x[0] *
y[3] * z[7] + z[3] *
y[1] *
x[0] * z[2] -
1147 z[4] *
y[0] *
x[3] * z[7] - z[4] *
x[1] *
y[5] * z[0] -
1148 z[4] *
y[1] *
x[0] * z[5] + 2.0 * z[4] * z[0] *
x[7] *
y[4] +
1149 z[4] * z[0] *
x[3] *
y[7] + 2.0 * z[4] *
y[5] *
x[4] * z[0] +
1150 2.0 *
y[0] *
x[7] * z[3] * z[3] + 2.0 *
y[2] *
x[0] * z[3] * z[3] -
1151 x[2] *
y[1] * z[3] * z[3] -
y[0] *
x[3] * z[4] * z[4];
1152 s7 =
s8 -
y[1] *
x[0] * z[4] * z[4] +
x[1] *
y[0] * z[4] * z[4] +
1153 2.0 *
x[0] *
y[7] * z[4] * z[4] + 2.0 *
x[5] *
y[0] * z[4] * z[4] -
1154 2.0 *
y[5] *
x[0] * z[4] * z[4] + 2.0 * z[1] * z[1] *
x[2] *
y[0] -
1155 2.0 * z[1] * z[1] *
x[0] *
y[2] + z[1] * z[1] *
x[0] *
y[4] -
1156 z[1] * z[1] *
x[0] *
y[3] - z[1] * z[1] *
x[4] *
y[0] +
1157 2.0 * z[1] * z[1] *
x[0] *
y[5] - 2.0 * z[1] * z[1] *
x[5] *
y[0] +
1158 x[2] *
y[3] * z[1] * z[1] -
x[5] *
y[4] * z[0] * z[0] -
1159 z[0] * z[0] *
x[7] *
y[3];
1160 s8 =
s7 +
x[7] *
y[4] * z[3] * z[3] -
x[4] *
y[7] * z[3] * z[3] +
1161 y[2] *
x[1] * z[3] * z[3] +
x[0] *
y[3] * z[4] * z[4] -
1162 2.0 *
y[0] *
x[7] * z[4] * z[4] +
x[3] *
y[7] * z[4] * z[4] -
1163 x[7] *
y[3] * z[4] * z[4] -
y[5] *
x[1] * z[4] * z[4] +
1164 x[5] *
y[1] * z[4] * z[4] + z[1] * z[1] *
x[3] *
y[0] +
1165 y[5] *
x[4] * z[1] * z[1] -
y[2] *
x[3] * z[1] * z[1] -
1166 x[5] *
y[4] * z[1] * z[1] - z[4] *
x[0] *
y[4] * z[3] -
1167 z[4] * z[0] *
x[4] *
y[3];
1168 s6 =
s8 - z[4] * z[1] *
x[4] *
y[0] - 2.0 * z[4] * z[0] *
x[4] *
y[7] +
1169 z[4] *
y[1] *
x[5] * z[0] - 2.0 * z[5] *
x[5] *
y[4] * z[1] -
1170 z[4] *
x[1] *
y[4] * z[0] + z[4] *
y[0] *
x[4] * z[3] -
1171 2.0 * z[4] *
x[0] *
y[4] * z[7] + z[4] *
x[1] *
y[0] * z[5] -
1172 2.0 * z[1] *
x[1] *
y[2] * z[5] + z[4] *
x[0] *
y[3] * z[7] +
1173 2.0 * z[5] *
x[5] *
y[1] * z[4] + z[4] *
y[1] *
x[4] * z[0] +
1174 z[1] *
y[1] *
x[0] * z[3] + z[1] *
x[1] *
y[3] * z[0] -
1175 2.0 * z[1] *
x[1] *
y[5] * z[0] - 2.0 * z[1] *
x[1] *
y[0] * z[2];
1176 s8 =
s6 - 2.0 * z[1] *
y[1] *
x[0] * z[5] - z[1] *
y[1] *
x[0] * z[4] +
1177 2.0 * z[1] *
y[1] *
x[2] * z[5] - z[1] *
y[1] *
x[3] * z[0] -
1178 2.0 * z[5] *
y[5] *
x[1] * z[4] + z[1] *
y[5] *
x[4] * z[0] +
1179 z[1] *
x[1] *
y[0] * z[4] + 2.0 * z[1] *
x[1] *
y[2] * z[0] -
1180 z[1] * z[2] *
x[0] *
y[3] + 2.0 * z[1] *
y[1] *
x[5] * z[0] -
1181 z[1] *
x[1] *
y[0] * z[3] - z[1] *
x[1] *
y[4] * z[0] +
1182 2.0 * z[1] *
x[1] *
y[0] * z[5] - z[1] *
y[2] *
x[3] * z[0];
1183 s7 =
s8 + z[1] * z[2] *
x[3] *
y[0] - z[1] *
x[2] *
y[1] * z[3] +
1184 z[1] *
y[1] *
x[4] * z[0] + 2.0 * z[1] *
y[1] *
x[0] * z[2] +
1185 2.0 * z[0] * z[1] *
x[3] *
y[0] + 2.0 * z[0] *
x[0] *
y[3] * z[4] +
1186 z[0] * z[5] *
x[0] *
y[4] + z[0] *
y[0] *
x[4] * z[7] -
1187 z[0] *
y[0] *
x[7] * z[4] - z[0] *
x[7] *
y[3] * z[4] -
1188 z[0] * z[5] *
x[4] *
y[0] - z[0] *
x[5] *
y[4] * z[1] +
1189 z[3] * z[1] *
x[3] *
y[0] + z[3] *
x[0] *
y[3] * z[4] +
1190 z[3] * z[0] *
x[3] *
y[4] + z[3] *
y[0] *
x[4] * z[7];
1191 s8 =
s7 + z[3] *
x[3] *
y[7] * z[4] - z[3] *
x[7] *
y[3] * z[4] -
1192 z[3] *
x[3] *
y[4] * z[7] + z[3] *
x[4] *
y[3] * z[7] -
1193 z[3] *
y[2] *
x[3] * z[1] + z[3] * z[2] *
x[3] *
y[1] -
1194 z[3] * z[2] *
x[1] *
y[3] - 2.0 * z[3] * z[0] *
x[7] *
y[3] +
1195 z[4] * z[0] *
x[3] *
y[4] + 2.0 * z[4] * z[5] *
x[0] *
y[4] +
1196 2.0 * z[4] *
y[0] *
x[4] * z[7] - 2.0 * z[4] *
x[5] *
y[4] * z[0] +
1197 z[4] *
y[5] *
x[4] * z[1] + z[4] *
x[7] *
y[4] * z[3] -
1198 z[4] *
x[4] *
y[7] * z[3];
1199 s3 =
s8 - z[4] *
x[3] *
y[4] * z[7] + z[4] *
x[4] *
y[3] * z[7] -
1200 2.0 * z[4] * z[5] *
x[4] *
y[0] - z[4] *
x[5] *
y[4] * z[1] +
1201 z[4] * z[5] *
x[1] *
y[4] - z[4] * z[5] *
x[4] *
y[1] -
1202 2.0 * z[1] *
y[1] *
x[2] * z[0] + z[1] * z[5] *
x[0] *
y[4] -
1203 z[1] * z[5] *
x[4] *
y[0] - z[1] *
y[5] *
x[1] * z[4] +
1204 z[1] *
x[5] *
y[1] * z[4] + z[1] * z[5] *
x[1] *
y[4] -
1205 z[1] * z[5] *
x[4] *
y[1] + z[1] * z[2] *
x[3] *
y[1] -
1206 z[1] * z[2] *
x[1] *
y[3] + z[1] *
y[2] *
x[1] * z[3];
1207 s8 =
y[1] *
x[0] * z[3] +
x[1] *
y[3] * z[0] -
y[0] *
x[3] * z[7] -
1208 x[1] *
y[5] * z[0] -
y[0] *
x[3] * z[4] -
x[1] *
y[0] * z[2] +
1209 z[1] *
x[2] *
y[0] -
y[1] *
x[0] * z[5] - z[1] *
x[0] *
y[2] -
1210 y[1] *
x[0] * z[4] + z[1] *
x[5] *
y[2] + z[0] *
x[7] *
y[4] +
1211 z[0] *
x[3] *
y[7] + z[1] *
x[0] *
y[4] -
x[1] *
y[2] * z[5] +
1212 x[2] *
y[3] * z[0] +
y[1] *
x[2] * z[5] -
x[2] *
y[3] * z[7];
1213 s7 =
s8 - z[1] *
x[2] *
y[5] -
y[1] *
x[3] * z[0] -
x[0] *
y[7] * z[3] -
1214 z[1] *
x[0] *
y[3] +
y[5] *
x[4] * z[0] -
x[0] *
y[4] * z[3] +
1215 y[5] *
x[7] * z[4] - z[0] *
x[4] *
y[3] +
x[1] *
y[0] * z[4] -
1216 z[2] *
x[3] *
y[7] -
y[6] *
x[7] * z[2] +
x[1] *
y[5] * z[2] +
1217 y[6] *
x[7] * z[5] +
x[0] *
y[7] * z[4] +
x[1] *
y[2] * z[0] -
1218 z[1] *
x[4] *
y[0] - z[0] *
x[4] *
y[7] - z[2] *
x[0] *
y[3];
1219 s8 =
x[5] *
y[0] * z[4] + z[1] *
x[0] *
y[5] -
x[2] *
y[0] * z[3] -
1220 z[1] *
x[5] *
y[0] +
y[1] *
x[5] * z[0] -
x[1] *
y[0] * z[3] -
1221 x[1] *
y[4] * z[0] -
y[1] *
x[5] * z[2] +
x[2] *
y[7] * z[3] +
1222 y[0] *
x[4] * z[3] -
x[0] *
y[4] * z[7] +
x[1] *
y[0] * z[5] -
1223 y[1] *
x[6] * z[2] -
y[2] *
x[6] * z[3] +
y[0] *
x[7] * z[3] -
1224 y[2] *
x[7] * z[3] + z[2] *
x[7] *
y[3] +
y[2] *
x[0] * z[3];
1225 s6 =
s8 +
y[2] *
x[3] * z[7] -
y[2] *
x[3] * z[0] -
x[6] *
y[5] * z[2] -
1226 y[5] *
x[0] * z[4] + z[2] *
x[3] *
y[0] +
x[2] *
y[3] * z[1] +
1227 x[0] *
y[3] * z[7] -
x[2] *
y[1] * z[3] +
y[1] *
x[4] * z[0] +
1228 y[1] *
x[0] * z[2] - z[1] *
x[2] *
y[6] +
y[2] *
x[3] * z[6] -
1229 y[1] *
x[2] * z[0] + z[1] *
x[3] *
y[0] -
x[1] *
y[2] * z[6] -
1230 x[2] *
y[3] * z[6] +
x[0] *
y[3] * z[4] + z[0] *
x[3] *
y[4] +
s7;
1231 s8 =
x[5] *
y[4] * z[7] +
s6 +
y[5] *
x[6] * z[4] -
y[5] *
x[4] * z[6] +
1232 z[6] *
x[5] *
y[7] -
x[6] *
y[2] * z[7] -
x[6] *
y[7] * z[5] +
1233 x[5] *
y[6] * z[2] +
x[6] *
y[5] * z[7] +
x[6] *
y[7] * z[2] +
1234 y[6] *
x[7] * z[4] -
y[6] *
x[4] * z[7] -
y[6] *
x[7] * z[3] +
1235 z[6] *
x[7] *
y[2] +
x[2] *
y[5] * z[6] -
x[2] *
y[6] * z[5] +
1236 y[6] *
x[2] * z[7] +
x[6] *
y[2] * z[5];
1237 s7 =
s8 -
x[5] *
y[2] * z[6] - z[6] *
x[7] *
y[5] - z[5] *
x[7] *
y[4] +
1238 z[5] *
x[0] *
y[4] -
y[5] *
x[4] * z[7] +
y[0] *
x[4] * z[7] -
1239 z[6] *
x[2] *
y[7] -
x[5] *
y[4] * z[0] -
x[5] *
y[7] * z[4] -
1240 y[0] *
x[7] * z[4] +
y[5] *
x[4] * z[1] -
x[6] *
y[7] * z[4] +
1241 x[7] *
y[4] * z[3] -
x[4] *
y[7] * z[3] +
x[3] *
y[7] * z[4] -
1242 x[7] *
y[3] * z[4] -
x[6] *
y[3] * z[7] +
x[6] *
y[4] * z[7];
1243 s8 = -
x[3] *
y[4] * z[7] +
x[4] *
y[3] * z[7] - z[6] *
x[7] *
y[4] -
1244 z[1] *
x[6] *
y[5] +
x[6] *
y[7] * z[3] -
x[1] *
y[6] * z[5] -
1245 y[1] *
x[5] * z[6] + z[5] *
x[4] *
y[7] - z[5] *
x[4] *
y[0] +
1246 x[1] *
y[5] * z[6] -
y[6] *
x[5] * z[7] -
y[2] *
x[3] * z[1] +
1247 z[1] *
x[5] *
y[6] -
y[5] *
x[1] * z[4] + z[6] *
x[4] *
y[7] +
1248 x[5] *
y[1] * z[4] -
x[5] *
y[6] * z[4] +
y[6] *
x[3] * z[7] -
1250 s5 =
s8 +
x[5] *
y[4] * z[6] + z[5] *
x[1] *
y[4] +
y[1] *
x[6] * z[5] -
1251 z[6] *
x[3] *
y[7] + z[6] *
x[7] *
y[3] - z[5] *
x[6] *
y[4] -
1252 z[5] *
x[4] *
y[1] + z[5] *
x[4] *
y[6] +
x[1] *
y[6] * z[2] +
1253 x[2] *
y[6] * z[3] + z[2] *
x[6] *
y[3] + z[1] *
x[6] *
y[2] +
1254 z[2] *
x[3] *
y[1] - z[2] *
x[1] *
y[3] - z[2] *
x[3] *
y[6] +
1255 y[2] *
x[1] * z[3] +
y[1] *
x[2] * z[6] - z[0] *
x[7] *
y[3] +
s7;
1276 template <
int structdim,
int dim,
int spacedim>
1288 template <
int dim,
int spacedim>
1294 return (accessor.vertex(1) - accessor.vertex(0)).norm();
1307 accessor.get_triangulation().get_vertices(),
1320 accessor.get_triangulation().get_vertices(),
1361 accessor.vertex(2) - accessor.vertex(0));
1364 accessor.vertex(3) - accessor.vertex(2) -
1365 accessor.vertex(1) + accessor.vertex(0));
1368 accessor.vertex(1) + accessor.vertex(0),
1369 accessor.vertex(2) - accessor.vertex(0));
1371 double a = scalar_product(
w_1,
w_1);
1372 double b = scalar_product(
w_2,
w_2);
1373 double c = scalar_product(
w_3,
w_3);
1374 double d = scalar_product(
w_1,
w_2);
1375 double e = scalar_product(
w_1,
w_3);
1376 double f = scalar_product(
w_2,
w_3);
1378 return 0.03025074832140047 *
1380 a + 0.0048207809894260144 * b +
1381 0.0048207809894260144 * c + 0.13886368840594743 * d +
1382 0.13886368840594743 * e + 0.0096415619788520288 * f) +
1383 0.056712962962962937 *
1385 a + 0.0048207809894260144 * b + 0.10890625570683385 * c +
1386 0.13886368840594743 * d + 0.66001895641514374 * e +
1387 0.045826333352825557 * f) +
1388 0.056712962962962937 *
1390 a + 0.0048207809894260144 * b + 0.44888729929169013 * c +
1391 0.13886368840594743 * d + 1.3399810435848563 * e +
1392 0.09303735505312187 * f) +
1393 0.03025074832140047 *
1395 a + 0.0048207809894260144 * b + 0.86595709258347853 * c +
1396 0.13886368840594743 * d + 1.8611363115940525 * e +
1397 0.12922212642709538 * f) +
1398 0.056712962962962937 *
1400 a + 0.10890625570683385 * b + 0.0048207809894260144 * c +
1401 0.66001895641514374 * d + 0.13886368840594743 * e +
1402 0.045826333352825557 * f) +
1403 0.10632332575267359 *
std::sqrt(a + 0.10890625570683385 * b +
1404 0.10890625570683385 * c +
1405 0.66001895641514374 * d +
1406 0.66001895641514374 * e +
1407 0.2178125114136677 * f) +
1408 0.10632332575267359 *
std::sqrt(a + 0.10890625570683385 * b +
1409 0.44888729929169013 * c +
1410 0.66001895641514374 * d +
1411 1.3399810435848563 * e +
1412 0.44220644500147605 * f) +
1413 0.056712962962962937 *
1415 a + 0.10890625570683385 * b + 0.86595709258347853 * c +
1416 0.66001895641514374 * d + 1.8611363115940525 * e +
1417 0.61419262306231814 * f) +
1418 0.056712962962962937 *
1420 a + 0.44888729929169013 * b + 0.0048207809894260144 * c +
1421 1.3399810435848563 * d + 0.13886368840594743 * e +
1422 0.09303735505312187 * f) +
1423 0.10632332575267359 *
std::sqrt(a + 0.44888729929169013 * b +
1424 0.10890625570683385 * c +
1425 1.3399810435848563 * d +
1426 0.66001895641514374 * e +
1427 0.44220644500147605 * f) +
1428 0.10632332575267359 *
1430 0.44888729929169013 * c +
1431 1.3399810435848563 * d + 1.3399810435848563 * e +
1432 0.89777459858338027 * f) +
1433 0.056712962962962937 *
1435 0.86595709258347853 * c +
1436 1.3399810435848563 * d + 1.8611363115940525 * e +
1437 1.2469436885317342 * f) +
1438 0.03025074832140047 *
std::sqrt(a + 0.86595709258347853 * b +
1439 0.0048207809894260144 * c +
1440 1.8611363115940525 * d +
1441 0.13886368840594743 * e +
1442 0.12922212642709538 * f) +
1443 0.056712962962962937 *
1445 a + 0.86595709258347853 * b + 0.10890625570683385 * c +
1446 1.8611363115940525 * d + 0.66001895641514374 * e +
1447 0.61419262306231814 * f) +
1448 0.056712962962962937 *
1450 0.44888729929169013 * c +
1451 1.8611363115940525 * d + 1.3399810435848563 * e +
1452 1.2469436885317342 * f) +
1453 0.03025074832140047 *
1455 0.86595709258347853 * c +
1456 1.8611363115940525 * d + 1.8611363115940525 * e +
1457 1.7319141851669571 * f);
1480 template <
int structdim,
int dim,
int spacedim>
1487 return std::numeric_limits<double>::quiet_NaN();
1491 template <
int dim,
int spacedim>
1496 return obj.get_manifold().get_new_point_on_line(
it);
1499 template <
int dim,
int spacedim>
1504 return obj.get_manifold().get_new_point_on_quad(
it);
1507 template <
int dim,
int spacedim>
1512 return obj.get_manifold().get_new_point_on_hex(
it);
1515 template <
int structdim,
int dim,
int spacedim>
1525 return obj.get_manifold().get_new_point(
1542template <
int structdim,
int dim,
int spacedim>
1545template <
int structdim,
int dim,
int spacedim>
1548template <
int structdim,
int dim,
int spacedim>
1555template <
int structdim,
int dim,
int spacedim>
1558 const std::initializer_list<int> &
new_indices)
const
1561 this->objects().get_bounding_object_indices(this->present_index);
1575template <
int structdim,
int dim,
int spacedim>
1578 const std::initializer_list<unsigned int> &
new_indices)
const
1581 this->objects().get_bounding_object_indices(this->present_index);
1595template <
int structdim,
int dim,
int spacedim>
1601 return ::barycenter(*
this);
1606template <
int structdim,
int dim,
int spacedim>
1612 return ::measure(*
this);
1617template <
int structdim,
int dim,
int spacedim>
1622 std::make_pair(this->vertex(0), this->vertex(0));
1624 for (
unsigned int v = 1; v < this->n_vertices(); ++v)
1627 for (
unsigned int k = 0;
k < spacedim; ++
k)
1629 boundary_points.first[
k] =
std::min(boundary_points.first[
k],
x[
k]);
1630 boundary_points.second[
k] =
std::max(boundary_points.second[
k],
x[
k]);
1639template <
int structdim,
int dim,
int spacedim>
1642 const unsigned int )
const
1645 return std::numeric_limits<double>::signaling_NaN();
1657 return this->diameter();
1668 return this->diameter();
1676 const unsigned int lines[2][2] = {
1682 return std::max(this->line(lines[
axis][0])->diameter(),
1683 this->line(lines[
axis][1])->diameter());
1690 const unsigned int lines[2][2] = {
1696 return std::max(this->line(lines[
axis][0])->diameter(),
1697 this->line(lines[
axis][1])->diameter());
1705 const unsigned int lines[3][4] = {
1712 double lengths[4] = {this->line(lines[
axis][0])->diameter(),
1713 this->line(lines[
axis][1])->diameter(),
1714 this->line(lines[
axis][2])->diameter(),
1715 this->line(lines[
axis][3])->diameter()};
1730 if (this->has_children())
1731 for (
unsigned int c = 0; c < this->n_children(); ++c)
1737 for (
const unsigned int i : this->face_indices())
1739 for (
const unsigned int i : this->line_indices())
1744template <
int structdim,
int dim,
int spacedim>
1751 std::array<double, GeometryInfo<structdim>::vertices_per_cell> w;
1755 p[i] = this->vertex(i);
1759 return this->get_manifold().get_new_point(
make_array_view(p.begin(), p.end()),
1766template <
int structdim,
int dim,
int spacedim>
1774 vertices[v] = this->vertex(v);
1777 GridTools::affine_cell_approximation<structdim, spacedim>(
vertices);
1779 A_b.first.covariant_form().transpose();
1785template <
int structdim,
int dim,
int spacedim>
1797 return p / this->n_vertices();
1807template <
int spacedim>
1818template <
int spacedim>
1828template <
int spacedim>
1838template <
int spacedim>
1844 if (this->has_children())
1845 for (
unsigned int c = 0; c < this->n_children(); ++c)
1846 this->child(c)->recursively_set_user_flag();
1851template <
int spacedim>
1857 if (this->has_children())
1858 for (
unsigned int c = 0; c < this->n_children(); ++c)
1859 this->child(c)->recursively_clear_user_flag();
1864template <
int spacedim>
1874template <
int spacedim>
1884template <
int spacedim>
1894template <
int spacedim>
1905template <
int spacedim>
1909 set_user_pointer(p);
1911 if (this->has_children())
1912 for (
unsigned int c = 0; c < this->n_children(); ++c)
1913 this->child(c)->recursively_set_user_pointer(p);
1918template <
int spacedim>
1922 clear_user_pointer();
1924 if (this->has_children())
1925 for (
unsigned int c = 0; c < this->n_children(); ++c)
1926 this->child(c)->recursively_clear_user_pointer();
1931template <
int spacedim>
1941template <
int spacedim>
1951template <
int spacedim>
1962template <
int spacedim>
1968 if (this->has_children())
1969 for (
unsigned int c = 0; c < this->n_children(); ++c)
1970 this->child(c)->recursively_set_user_index(p);
1975template <
int spacedim>
1981 if (this->has_children())
1982 for (
unsigned int c = 0; c < this->n_children(); ++c)
1983 this->child(c)->recursively_clear_user_index();
1996 return (this->vertex(0)[0] <= p[0]) && (p[0] <= this->vertex(1)[0]);
2029 static const int direction[4] = {-1, 1, 1, -1};
2030 for (
unsigned int f = 0; f < 4; ++f)
2054 if ((-face[1] *
to_p[0] + face[0] *
to_p[1]) < 0)
2085 const unsigned int dim = 3;
2086 const unsigned int spacedim = 3;
2090 for (
unsigned int v = 1; v < this->n_vertices(); ++v)
2091 for (
unsigned int d = 0; d < dim; ++d)
2099 for (
unsigned int d = 0; d < dim; ++d)
2100 if ((p[d] <
minp[d]) || (p[d] >
maxp[d]))
2116 .transform_real_to_unit_cell(cell_iterator, p)));
2129template <
int dim,
int spacedim>
2135 ExcMessage(
"The current iterator points to an inactive cell. "
2136 "You cannot convert it to an iterator to an active cell."));
2137 Assert(&this->get_triangulation() == &dof_handler.get_triangulation(),
2138 ExcMessage(
"The triangulation associated with the iterator does not "
2139 "match that of the DoFHandler."));
2142 &dof_handler.get_triangulation(),
2153template <
int dim,
int spacedim>
2154template <
int dim_,
int spacedim_>
2163 this->reference_cell()
2165 .transform_real_to_unit_cell(cell_iterator, p);
2199template <
int dim,
int spacedim>
2203 for (
const auto face : this->face_indices())
2204 if (at_boundary(face))
2212template <
int dim,
int spacedim>
2217 return this->
tria->levels[this->present_level]
2218 ->cells.boundary_or_material_id[this->present_index]
2224template <
int dim,
int spacedim>
2231 this->
tria->levels[this->present_level]
2232 ->cells.boundary_or_material_id[this->present_index]
2238template <
int dim,
int spacedim>
2245 if (this->has_children())
2246 for (
unsigned int c = 0; c < this->n_children(); ++c)
2247 this->child(c)->recursively_set_material_id(
mat_id);
2252template <
int dim,
int spacedim>
2258 Assert(this->is_active(),
2259 ExcMessage(
"set_subdomain_id() can only be called on active cells!"));
2260 this->
tria->levels[this->present_level]->subdomain_ids[this->present_index] =
2266template <
int dim,
int spacedim>
2272 this->
tria->levels[this->present_level]
2277template <
int dim,
int spacedim>
2282 if (dim == spacedim)
2285 return this->
tria->levels[this->present_level]
2286 ->direction_flags[this->present_index];
2291template <
int dim,
int spacedim>
2298 this->
tria->levels[this->present_level]
2302 ExcMessage(
"If dim==spacedim, direction flags are always true and "
2303 "can not be set to anything else."));
2308template <
int dim,
int spacedim>
2314 this->
tria->levels[this->present_level]->parents[this->present_index / 2] =
2320template <
int dim,
int spacedim>
2329 return this->
tria->levels[this->present_level]
2330 ->parents[this->present_index / 2];
2335template <
int dim,
int spacedim>
2338 const unsigned int active_cell_index)
const
2340 this->
tria->levels[this->present_level]
2341 ->active_cell_indices[this->present_index] = active_cell_index;
2346template <
int dim,
int spacedim>
2351 this->
tria->levels[this->present_level]
2352 ->global_active_cell_indices[this->present_index] = index;
2357template <
int dim,
int spacedim>
2362 this->
tria->levels[this->present_level]
2363 ->global_level_cell_indices[this->present_index] = index;
2368template <
int dim,
int spacedim>
2375 this->present_level - 1,
2382template <
int dim,
int spacedim>
2387 if (this->has_children())
2388 for (
unsigned int c = 0; c < this->n_children(); ++c)
2396template <
int dim,
int spacedim>
2399 const unsigned int i,
2406 this->
tria->levels[this->present_level]
2408 .first = pointer->present_level;
2409 this->
tria->levels[this->present_level]
2411 .second = pointer->present_index;
2415 this->
tria->levels[this->present_level]
2418 this->
tria->levels[this->present_level]
2426template <
int dim,
int spacedim>
2430 std::array<unsigned char, 30> id;
2433 const unsigned int n_child_indices = ptr.level();
2435 while (ptr.level() > 0)
2438 const unsigned int n_children = parent->n_children();
2441 unsigned char v =
static_cast<unsigned char>(-1);
2442 for (
unsigned int c = 0; c < n_children; ++c)
2444 if (parent->child_index(c) == ptr.index())
2452 id[ptr.level() - 1] = v;
2454 ptr.copy_from(*parent);
2460 return {this->
tria->coarse_cell_index_to_coarse_cell_id(coarse_index),
2467template <
int dim,
int spacedim>
2470 const unsigned int neighbor)
const
2483 if ((dim == 1) && (spacedim == dim))
2487 this->neighbor(neighbor);
2533template <
int dim,
int spacedim>
2536 const unsigned int face_no)
const
2538 const unsigned int n2 = neighbor_of_neighbor_internal(
face_no);
2547template <
int dim,
int spacedim>
2550 const unsigned int face_no)
const
2552 return neighbor_of_neighbor_internal(
face_no) ==
2558template <
int dim,
int spacedim>
2559std::pair<unsigned int, unsigned int>
2561 const unsigned int neighbor)
const
2566 Assert(neighbor_is_coarser(neighbor),
2575 this->neighbor(neighbor);
2613 if (face->has_children())
2634 this->neighbor(neighbor);
2686 if (!face->has_children())
2696 return std::make_pair(
face_no,
2709 return std::make_pair(
face_no,
2734template <
int dim,
int spacedim>
2737 const unsigned int i_face)
const
2753 if (this->
tria->periodic_face_map.find(
2755 this->tria->periodic_face_map.
end())
2762template <
int dim,
int spacedim>
2789template <
int dim,
int spacedim>
2792 const unsigned int i_face)
const
2794 if (!(this->face(
i_face)->at_boundary()))
2795 return this->neighbor(
i_face);
2796 else if (this->has_periodic_neighbor(
i_face))
2797 return this->periodic_neighbor(
i_face);
2801 return this->neighbor(
i_face);
2806template <
int dim,
int spacedim>
2809 const unsigned int i_face,
2826 cell_iterator
my_it(*
this);
2858template <
int dim,
int spacedim>
2859std::pair<unsigned int, unsigned int>
2861 const unsigned int i_face)
const
2878 cell_iterator
my_it(*
this);
2919template <
int dim,
int spacedim>
2922 const unsigned int i_face)
const
2924 return periodic_neighbor(
i_face)->index();
2929template <
int dim,
int spacedim>
2932 const unsigned int i_face)
const
2934 return periodic_neighbor(
i_face)->level();
2939template <
int dim,
int spacedim>
2942 const unsigned int i_face)
const
2944 return periodic_neighbor_face_no(
i_face);
2949template <
int dim,
int spacedim>
2952 const unsigned int i_face)
const
2964 cell_iterator
my_it(*
this);
2980template <
int dim,
int spacedim>
2983 const unsigned int i_face)
const
3004 cell_iterator
my_it(*
this);
3028 const unsigned int neighbor_level =
nb_face_pair->second.first.first->level();
3035template <
int dim,
int spacedim>
3042 return (neighbor_index(i) == -1);
3047template <
int dim,
int spacedim>
3052 return at_boundary();
3055 for (
unsigned int l = 0; l < this->n_lines(); ++l)
3056 if (this->line(l)->at_boundary())
3065template <
int dim,
int spacedim>
3068 const unsigned int face,
3069 const unsigned int subface)
const
3071 Assert(!this->has_children(),
3072 ExcMessage(
"The present cell must not have children!"));
3073 Assert(!this->at_boundary(face),
3074 ExcMessage(
"The present cell must have a valid neighbor!"));
3075 Assert(this->neighbor(face)->has_children() ==
true,
3076 ExcMessage(
"The neighbor must have children!"));
3094 this->neighbor_of_neighbor(face);
3100 (!(this->line_orientation(face)) !=
3122 this->neighbor_of_neighbor(face);
3125 this->neighbor(face)->refinement_case(),
3226 this->neighbor(face);
3246 neighbor->refinement_case(),
3256 Assert((this->face(face)->child(subface) ==
3278 if (neighbor_is_coarser(face))
3280 std::pair<unsigned int, unsigned int> indices =
3281 neighbor_of_coarser_neighbor(face);
3334 ->refinement_case() ==
3342 neighbor->refinement_case(),
3354 neighbor->refinement_case(),
3430 mother_face->child(subface / 2)->refinement_case()));
3447 switch (this->subface_case(face))
3457 mother_face->child(subface / 2)->child(subface % 2);
3515template <
int structdim,
int dim,
int spacedim>
3524template <
int structdim,
int dim,
int spacedim>
3533template <
int structdim,
int dim,
int spacedim>
3542#include "tria_accessor.inst"