diff --git a/generate/requirements.txt b/generate/requirements.txt index e2f30d43ab7842631b9e627b50dc79e87fb27c4f..1282836520fb11d6c80d4eadc9964dbccd3a3c05 100644 --- a/generate/requirements.txt +++ b/generate/requirements.txt @@ -1,4 +1,4 @@ --extra-index-url https://test.pypi.org/simple/ -hfg @ git+ssh://git@i10git.cs.fau.de/terraneo/hyteg-form-generator.git@b1fc76d83c82c5a46dc74ae2e44eb42a56b8de6f +hfg @ git+ssh://git@i10git.cs.fau.de/terraneo/hyteg-form-generator.git@7a34a9c06147551bef2183bccd6ad479c313aa5a tomli >= 1.1.0 ; python_version < "3.11" diff --git a/operators/curl_curl/N1E1ElementwiseCurlCurl.cpp b/operators/curl_curl/N1E1ElementwiseCurlCurl.cpp index 3aeff715a8883af6e9a8360cfb406247435e4ed3..50887f1c54c8ec495c31de2eb18306e0e09d58ce 100644 --- a/operators/curl_curl/N1E1ElementwiseCurlCurl.cpp +++ b/operators/curl_curl/N1E1ElementwiseCurlCurl.cpp @@ -58,7 +58,7 @@ N1E1ElementwiseCurlCurl::apply(const n1e1::N1E1VectorFunction<double> &src, // However, we must not zero out anything that is not flagged with the // specified BCs. Therefore, we first zero out everything that flagged, and // then, later, the halos of the highest dim primitives. - dst.interpolate(real_c(0), level, flag); + dst.interpolate(walberla::numeric_cast<double>(0), level, flag); } if (storage_->hasGlobalCells()) { @@ -83,22 +83,30 @@ N1E1ElementwiseCurlCurl::apply(const n1e1::N1E1VectorFunction<double> &src, (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; apply_macro_3D( @@ -151,22 +159,30 @@ N1E1ElementwiseCurlCurl::toMatrix(const std::shared_ptr<SparseMatrixProxy> &mat, (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; toMatrix_macro_3D( @@ -207,22 +223,30 @@ void N1E1ElementwiseCurlCurl::computeInverseDiagonalOperatorValues() { (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; computeInverseDiagonalOperatorValues_macro_3D( diff --git a/operators/curl_curl/N1E1ElementwiseCurlCurl.hpp b/operators/curl_curl/N1E1ElementwiseCurlCurl.hpp index 88e4ef5b0bef57f9d0b2851ec3c25be3b06dea98..b163507ca2ade7a878673d5e095ce702e7a4c240 100644 --- a/operators/curl_curl/N1E1ElementwiseCurlCurl.hpp +++ b/operators/curl_curl/N1E1ElementwiseCurlCurl.hpp @@ -26,24 +26,24 @@ #pragma once -#include "hyteg/n1e1functionspace/N1E1VectorFunction.hpp" +#include "hyteg/n1e1functionspace/N1E1MacroCell.hpp" + +#include "hyteg/communication/Syncing.hpp" #include "hyteg/edgedofspace/EdgeDoFMacroCell.hpp" +#include "hyteg/operators/Operator.hpp" + +#include "hyteg/solvers/Smoothables.hpp" + #include "hyteg/primitivestorage/PrimitiveStorage.hpp" #include "core/DataTypes.h" -#include "hyteg/n1e1functionspace/N1E1MacroCell.hpp" +#include "hyteg/n1e1functionspace/N1E1VectorFunction.hpp" #include "hyteg/LikwidWrapper.hpp" -#include "hyteg/solvers/Smoothables.hpp" - -#include "hyteg/communication/Syncing.hpp" - -#include "hyteg/operators/Operator.hpp" - #include "hyteg/sparseassembly/SparseMatrixProxy.hpp" #define FUNC_PREFIX @@ -103,8 +103,8 @@ private: /// ------------- /// 89 202 2 0 1 0 0 3 void toMatrix_macro_3D( - int64_t *RESTRICT _data_dst, int64_t *RESTRICT _data_src, - const Cell &cell, const uint_t level, double macro_vertex_coord_id_0comp0, + idx_t *RESTRICT _data_dst, idx_t *RESTRICT _data_src, const Cell &cell, + const uint_t level, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, diff --git a/operators/curl_curl/noarch/N1E1ElementwiseCurlCurl_toMatrix_macro_3D.cpp b/operators/curl_curl/noarch/N1E1ElementwiseCurlCurl_toMatrix_macro_3D.cpp index 4e2dd22663875095a275b1f85dd101ab85f5f42d..2076c6d02d4ec7158b0a19352fab63903bd02e47 100644 --- a/operators/curl_curl/noarch/N1E1ElementwiseCurlCurl_toMatrix_macro_3D.cpp +++ b/operators/curl_curl/noarch/N1E1ElementwiseCurlCurl_toMatrix_macro_3D.cpp @@ -56,7 +56,7 @@ namespace hyteg { namespace operatorgeneration { -void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, int64_t * RESTRICT _data_src, const Cell& cell, const uint_t level, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const +void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( idx_t * RESTRICT _data_dst, idx_t * RESTRICT _data_src, const Cell& cell, const uint_t level, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { const double tmp_WHITE_UP_0 = 1.0 / (micro_edges_per_macro_edge_float)*1.0; @@ -703,7 +703,7 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, std::vector< uint_t > _data_rowIdx( 6 ); std::vector< uint_t > _data_colIdx( 6 ); - std::vector< double > _data_mat( 36 ); + std::vector< real_t > _data_mat( 36 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))])); @@ -722,42 +722,42 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, const Eigen::DiagonalMatrix< real_t, 6 > basisTransformation = n1e1::macrocell::basisTransformation( level, cell, {ctr_0, ctr_1, ctr_2}, celldof::CellType::WHITE_UP ); - _data_mat[0] = (basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0))*elMat_0_0; - _data_mat[1] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1)*elMat_0_1; - _data_mat[2] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2)*elMat_0_2; - _data_mat[3] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3)*elMat_0_3; - _data_mat[4] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4)*elMat_0_4; - _data_mat[5] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5)*elMat_0_5; - _data_mat[6] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1)*elMat_1_0; - _data_mat[7] = (basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1))*elMat_1_1; - _data_mat[8] = basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2)*elMat_1_2; - _data_mat[9] = basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3)*elMat_1_3; - _data_mat[10] = basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4)*elMat_1_4; - _data_mat[11] = basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5)*elMat_1_5; - _data_mat[12] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2)*elMat_2_0; - _data_mat[13] = basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2)*elMat_2_1; - _data_mat[14] = (basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2))*elMat_2_2; - _data_mat[15] = basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3)*elMat_2_3; - _data_mat[16] = basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4)*elMat_2_4; - _data_mat[17] = basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5)*elMat_2_5; - _data_mat[18] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3)*elMat_3_0; - _data_mat[19] = basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3)*elMat_3_1; - _data_mat[20] = basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3)*elMat_3_2; - _data_mat[21] = (basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3))*elMat_3_3; - _data_mat[22] = basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4)*elMat_3_4; - _data_mat[23] = basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5)*elMat_3_5; - _data_mat[24] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4)*elMat_4_0; - _data_mat[25] = basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4)*elMat_4_1; - _data_mat[26] = basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4)*elMat_4_2; - _data_mat[27] = basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4)*elMat_4_3; - _data_mat[28] = (basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4))*elMat_4_4; - _data_mat[29] = basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5)*elMat_4_5; - _data_mat[30] = basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5)*elMat_5_0; - _data_mat[31] = basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5)*elMat_5_1; - _data_mat[32] = basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5)*elMat_5_2; - _data_mat[33] = basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5)*elMat_5_3; - _data_mat[34] = basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5)*elMat_5_4; - _data_mat[35] = (basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5))*elMat_5_5; + _data_mat[0] = ((real_t)((basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0))*elMat_0_0)); + _data_mat[1] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1)*elMat_0_1)); + _data_mat[2] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2)*elMat_0_2)); + _data_mat[3] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3)*elMat_0_3)); + _data_mat[4] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4)*elMat_0_4)); + _data_mat[5] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5)*elMat_0_5)); + _data_mat[6] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1)*elMat_1_0)); + _data_mat[7] = ((real_t)((basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1))*elMat_1_1)); + _data_mat[8] = ((real_t)(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2)*elMat_1_2)); + _data_mat[9] = ((real_t)(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3)*elMat_1_3)); + _data_mat[10] = ((real_t)(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4)*elMat_1_4)); + _data_mat[11] = ((real_t)(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5)*elMat_1_5)); + _data_mat[12] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2)*elMat_2_0)); + _data_mat[13] = ((real_t)(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2)*elMat_2_1)); + _data_mat[14] = ((real_t)((basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2))*elMat_2_2)); + _data_mat[15] = ((real_t)(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3)*elMat_2_3)); + _data_mat[16] = ((real_t)(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4)*elMat_2_4)); + _data_mat[17] = ((real_t)(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5)*elMat_2_5)); + _data_mat[18] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3)*elMat_3_0)); + _data_mat[19] = ((real_t)(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3)*elMat_3_1)); + _data_mat[20] = ((real_t)(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3)*elMat_3_2)); + _data_mat[21] = ((real_t)((basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3))*elMat_3_3)); + _data_mat[22] = ((real_t)(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4)*elMat_3_4)); + _data_mat[23] = ((real_t)(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5)*elMat_3_5)); + _data_mat[24] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4)*elMat_4_0)); + _data_mat[25] = ((real_t)(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4)*elMat_4_1)); + _data_mat[26] = ((real_t)(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4)*elMat_4_2)); + _data_mat[27] = ((real_t)(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4)*elMat_4_3)); + _data_mat[28] = ((real_t)((basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4))*elMat_4_4)); + _data_mat[29] = ((real_t)(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5)*elMat_4_5)); + _data_mat[30] = ((real_t)(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5)*elMat_5_0)); + _data_mat[31] = ((real_t)(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5)*elMat_5_1)); + _data_mat[32] = ((real_t)(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5)*elMat_5_2)); + _data_mat[33] = ((real_t)(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5)*elMat_5_3)); + _data_mat[34] = ((real_t)(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5)*elMat_5_4)); + _data_mat[35] = ((real_t)((basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5))*elMat_5_5)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -769,7 +769,7 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, std::vector< uint_t > _data_rowIdx( 6 ); std::vector< uint_t > _data_colIdx( 6 ); - std::vector< double > _data_mat( 36 ); + std::vector< real_t > _data_mat( 36 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1])); @@ -788,42 +788,42 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, const Eigen::DiagonalMatrix< real_t, 6 > basisTransformation = n1e1::macrocell::basisTransformation( level, cell, {ctr_0, ctr_1, ctr_2}, celldof::CellType::WHITE_DOWN ); - _data_mat[0] = Dummy_394*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)); - _data_mat[1] = Dummy_395*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[2] = Dummy_396*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[3] = Dummy_397*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[4] = Dummy_398*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[5] = Dummy_399*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[6] = Dummy_400*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[7] = Dummy_401*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)); - _data_mat[8] = Dummy_402*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[9] = Dummy_403*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[10] = Dummy_404*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[11] = Dummy_405*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[12] = Dummy_406*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[13] = Dummy_407*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[14] = Dummy_408*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)); - _data_mat[15] = Dummy_409*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[16] = Dummy_410*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[17] = Dummy_411*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[18] = Dummy_412*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[19] = Dummy_413*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[20] = Dummy_414*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[21] = Dummy_415*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)); - _data_mat[22] = Dummy_416*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[23] = Dummy_417*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[24] = Dummy_418*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[25] = Dummy_419*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[26] = Dummy_420*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[27] = Dummy_421*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[28] = Dummy_422*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)); - _data_mat[29] = Dummy_423*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[30] = Dummy_424*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[31] = Dummy_425*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[32] = Dummy_426*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[33] = Dummy_427*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[34] = Dummy_428*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[35] = Dummy_429*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)); + _data_mat[0] = ((real_t)(Dummy_394*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)))); + _data_mat[1] = ((real_t)(Dummy_395*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[2] = ((real_t)(Dummy_396*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[3] = ((real_t)(Dummy_397*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[4] = ((real_t)(Dummy_398*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[5] = ((real_t)(Dummy_399*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[6] = ((real_t)(Dummy_400*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[7] = ((real_t)(Dummy_401*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)))); + _data_mat[8] = ((real_t)(Dummy_402*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[9] = ((real_t)(Dummy_403*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[10] = ((real_t)(Dummy_404*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[11] = ((real_t)(Dummy_405*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[12] = ((real_t)(Dummy_406*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[13] = ((real_t)(Dummy_407*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[14] = ((real_t)(Dummy_408*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)))); + _data_mat[15] = ((real_t)(Dummy_409*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[16] = ((real_t)(Dummy_410*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[17] = ((real_t)(Dummy_411*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[18] = ((real_t)(Dummy_412*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[19] = ((real_t)(Dummy_413*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[20] = ((real_t)(Dummy_414*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[21] = ((real_t)(Dummy_415*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)))); + _data_mat[22] = ((real_t)(Dummy_416*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[23] = ((real_t)(Dummy_417*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[24] = ((real_t)(Dummy_418*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[25] = ((real_t)(Dummy_419*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[26] = ((real_t)(Dummy_420*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[27] = ((real_t)(Dummy_421*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[28] = ((real_t)(Dummy_422*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)))); + _data_mat[29] = ((real_t)(Dummy_423*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[30] = ((real_t)(Dummy_424*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[31] = ((real_t)(Dummy_425*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[32] = ((real_t)(Dummy_426*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[33] = ((real_t)(Dummy_427*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[34] = ((real_t)(Dummy_428*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[35] = ((real_t)(Dummy_429*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)))); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -835,7 +835,7 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, std::vector< uint_t > _data_rowIdx( 6 ); std::vector< uint_t > _data_colIdx( 6 ); - std::vector< double > _data_mat( 36 ); + std::vector< real_t > _data_mat( 36 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))])); @@ -854,42 +854,42 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, const Eigen::DiagonalMatrix< real_t, 6 > basisTransformation = n1e1::macrocell::basisTransformation( level, cell, {ctr_0, ctr_1, ctr_2}, celldof::CellType::BLUE_UP ); - _data_mat[0] = Dummy_492*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)); - _data_mat[1] = Dummy_493*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[2] = Dummy_494*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[3] = Dummy_495*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[4] = Dummy_496*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[5] = Dummy_497*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[6] = Dummy_498*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[7] = Dummy_499*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)); - _data_mat[8] = Dummy_500*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[9] = Dummy_501*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[10] = Dummy_502*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[11] = Dummy_503*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[12] = Dummy_504*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[13] = Dummy_505*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[14] = Dummy_506*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)); - _data_mat[15] = Dummy_507*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[16] = Dummy_508*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[17] = Dummy_509*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[18] = Dummy_510*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[19] = Dummy_511*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[20] = Dummy_512*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[21] = Dummy_513*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)); - _data_mat[22] = Dummy_514*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[23] = Dummy_515*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[24] = Dummy_516*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[25] = Dummy_517*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[26] = Dummy_518*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[27] = Dummy_519*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[28] = Dummy_520*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)); - _data_mat[29] = Dummy_521*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[30] = Dummy_522*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[31] = Dummy_523*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[32] = Dummy_524*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[33] = Dummy_525*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[34] = Dummy_526*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[35] = Dummy_527*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)); + _data_mat[0] = ((real_t)(Dummy_492*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)))); + _data_mat[1] = ((real_t)(Dummy_493*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[2] = ((real_t)(Dummy_494*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[3] = ((real_t)(Dummy_495*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[4] = ((real_t)(Dummy_496*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[5] = ((real_t)(Dummy_497*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[6] = ((real_t)(Dummy_498*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[7] = ((real_t)(Dummy_499*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)))); + _data_mat[8] = ((real_t)(Dummy_500*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[9] = ((real_t)(Dummy_501*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[10] = ((real_t)(Dummy_502*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[11] = ((real_t)(Dummy_503*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[12] = ((real_t)(Dummy_504*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[13] = ((real_t)(Dummy_505*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[14] = ((real_t)(Dummy_506*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)))); + _data_mat[15] = ((real_t)(Dummy_507*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[16] = ((real_t)(Dummy_508*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[17] = ((real_t)(Dummy_509*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[18] = ((real_t)(Dummy_510*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[19] = ((real_t)(Dummy_511*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[20] = ((real_t)(Dummy_512*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[21] = ((real_t)(Dummy_513*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)))); + _data_mat[22] = ((real_t)(Dummy_514*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[23] = ((real_t)(Dummy_515*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[24] = ((real_t)(Dummy_516*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[25] = ((real_t)(Dummy_517*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[26] = ((real_t)(Dummy_518*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[27] = ((real_t)(Dummy_519*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[28] = ((real_t)(Dummy_520*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)))); + _data_mat[29] = ((real_t)(Dummy_521*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[30] = ((real_t)(Dummy_522*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[31] = ((real_t)(Dummy_523*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[32] = ((real_t)(Dummy_524*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[33] = ((real_t)(Dummy_525*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[34] = ((real_t)(Dummy_526*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[35] = ((real_t)(Dummy_527*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)))); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -901,7 +901,7 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, std::vector< uint_t > _data_rowIdx( 6 ); std::vector< uint_t > _data_colIdx( 6 ); - std::vector< double > _data_mat( 36 ); + std::vector< real_t > _data_mat( 36 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))])); @@ -920,42 +920,42 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, const Eigen::DiagonalMatrix< real_t, 6 > basisTransformation = n1e1::macrocell::basisTransformation( level, cell, {ctr_0, ctr_1, ctr_2}, celldof::CellType::BLUE_DOWN ); - _data_mat[0] = Dummy_590*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)); - _data_mat[1] = Dummy_591*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[2] = Dummy_592*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[3] = Dummy_593*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[4] = Dummy_594*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[5] = Dummy_595*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[6] = Dummy_596*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[7] = Dummy_597*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)); - _data_mat[8] = Dummy_598*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[9] = Dummy_599*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[10] = Dummy_600*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[11] = Dummy_601*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[12] = Dummy_602*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[13] = Dummy_603*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[14] = Dummy_604*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)); - _data_mat[15] = Dummy_605*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[16] = Dummy_606*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[17] = Dummy_607*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[18] = Dummy_608*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[19] = Dummy_609*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[20] = Dummy_610*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[21] = Dummy_611*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)); - _data_mat[22] = Dummy_612*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[23] = Dummy_613*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[24] = Dummy_614*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[25] = Dummy_615*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[26] = Dummy_616*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[27] = Dummy_617*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[28] = Dummy_618*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)); - _data_mat[29] = Dummy_619*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[30] = Dummy_620*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[31] = Dummy_621*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[32] = Dummy_622*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[33] = Dummy_623*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[34] = Dummy_624*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[35] = Dummy_625*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)); + _data_mat[0] = ((real_t)(Dummy_590*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)))); + _data_mat[1] = ((real_t)(Dummy_591*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[2] = ((real_t)(Dummy_592*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[3] = ((real_t)(Dummy_593*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[4] = ((real_t)(Dummy_594*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[5] = ((real_t)(Dummy_595*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[6] = ((real_t)(Dummy_596*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[7] = ((real_t)(Dummy_597*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)))); + _data_mat[8] = ((real_t)(Dummy_598*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[9] = ((real_t)(Dummy_599*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[10] = ((real_t)(Dummy_600*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[11] = ((real_t)(Dummy_601*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[12] = ((real_t)(Dummy_602*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[13] = ((real_t)(Dummy_603*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[14] = ((real_t)(Dummy_604*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)))); + _data_mat[15] = ((real_t)(Dummy_605*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[16] = ((real_t)(Dummy_606*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[17] = ((real_t)(Dummy_607*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[18] = ((real_t)(Dummy_608*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[19] = ((real_t)(Dummy_609*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[20] = ((real_t)(Dummy_610*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[21] = ((real_t)(Dummy_611*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)))); + _data_mat[22] = ((real_t)(Dummy_612*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[23] = ((real_t)(Dummy_613*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[24] = ((real_t)(Dummy_614*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[25] = ((real_t)(Dummy_615*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[26] = ((real_t)(Dummy_616*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[27] = ((real_t)(Dummy_617*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[28] = ((real_t)(Dummy_618*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)))); + _data_mat[29] = ((real_t)(Dummy_619*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[30] = ((real_t)(Dummy_620*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[31] = ((real_t)(Dummy_621*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[32] = ((real_t)(Dummy_622*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[33] = ((real_t)(Dummy_623*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[34] = ((real_t)(Dummy_624*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[35] = ((real_t)(Dummy_625*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)))); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -967,7 +967,7 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, std::vector< uint_t > _data_rowIdx( 6 ); std::vector< uint_t > _data_colIdx( 6 ); - std::vector< double > _data_mat( 36 ); + std::vector< real_t > _data_mat( 36 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))])); @@ -986,42 +986,42 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, const Eigen::DiagonalMatrix< real_t, 6 > basisTransformation = n1e1::macrocell::basisTransformation( level, cell, {ctr_0, ctr_1, ctr_2}, celldof::CellType::GREEN_UP ); - _data_mat[0] = Dummy_688*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)); - _data_mat[1] = Dummy_689*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[2] = Dummy_690*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[3] = Dummy_691*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[4] = Dummy_692*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[5] = Dummy_693*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[6] = Dummy_694*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[7] = Dummy_695*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)); - _data_mat[8] = Dummy_696*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[9] = Dummy_697*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[10] = Dummy_698*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[11] = Dummy_699*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[12] = Dummy_700*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[13] = Dummy_701*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[14] = Dummy_702*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)); - _data_mat[15] = Dummy_703*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[16] = Dummy_704*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[17] = Dummy_705*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[18] = Dummy_706*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[19] = Dummy_707*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[20] = Dummy_708*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[21] = Dummy_709*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)); - _data_mat[22] = Dummy_710*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[23] = Dummy_711*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[24] = Dummy_712*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[25] = Dummy_713*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[26] = Dummy_714*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[27] = Dummy_715*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[28] = Dummy_716*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)); - _data_mat[29] = Dummy_717*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[30] = Dummy_718*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[31] = Dummy_719*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[32] = Dummy_720*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[33] = Dummy_721*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[34] = Dummy_722*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[35] = Dummy_723*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)); + _data_mat[0] = ((real_t)(Dummy_688*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)))); + _data_mat[1] = ((real_t)(Dummy_689*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[2] = ((real_t)(Dummy_690*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[3] = ((real_t)(Dummy_691*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[4] = ((real_t)(Dummy_692*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[5] = ((real_t)(Dummy_693*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[6] = ((real_t)(Dummy_694*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[7] = ((real_t)(Dummy_695*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)))); + _data_mat[8] = ((real_t)(Dummy_696*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[9] = ((real_t)(Dummy_697*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[10] = ((real_t)(Dummy_698*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[11] = ((real_t)(Dummy_699*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[12] = ((real_t)(Dummy_700*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[13] = ((real_t)(Dummy_701*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[14] = ((real_t)(Dummy_702*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)))); + _data_mat[15] = ((real_t)(Dummy_703*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[16] = ((real_t)(Dummy_704*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[17] = ((real_t)(Dummy_705*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[18] = ((real_t)(Dummy_706*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[19] = ((real_t)(Dummy_707*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[20] = ((real_t)(Dummy_708*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[21] = ((real_t)(Dummy_709*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)))); + _data_mat[22] = ((real_t)(Dummy_710*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[23] = ((real_t)(Dummy_711*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[24] = ((real_t)(Dummy_712*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[25] = ((real_t)(Dummy_713*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[26] = ((real_t)(Dummy_714*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[27] = ((real_t)(Dummy_715*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[28] = ((real_t)(Dummy_716*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)))); + _data_mat[29] = ((real_t)(Dummy_717*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[30] = ((real_t)(Dummy_718*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[31] = ((real_t)(Dummy_719*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[32] = ((real_t)(Dummy_720*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[33] = ((real_t)(Dummy_721*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[34] = ((real_t)(Dummy_722*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[35] = ((real_t)(Dummy_723*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)))); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -1033,7 +1033,7 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, std::vector< uint_t > _data_rowIdx( 6 ); std::vector< uint_t > _data_colIdx( 6 ); - std::vector< double > _data_mat( 36 ); + std::vector< real_t > _data_mat( 36 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))])); @@ -1052,42 +1052,42 @@ void N1E1ElementwiseCurlCurl::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, const Eigen::DiagonalMatrix< real_t, 6 > basisTransformation = n1e1::macrocell::basisTransformation( level, cell, {ctr_0, ctr_1, ctr_2}, celldof::CellType::GREEN_DOWN ); - _data_mat[0] = Dummy_786*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)); - _data_mat[1] = Dummy_787*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[2] = Dummy_788*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[3] = Dummy_789*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[4] = Dummy_790*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[5] = Dummy_791*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[6] = Dummy_792*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1); - _data_mat[7] = Dummy_793*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)); - _data_mat[8] = Dummy_794*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[9] = Dummy_795*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[10] = Dummy_796*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[11] = Dummy_797*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[12] = Dummy_798*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2); - _data_mat[13] = Dummy_799*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2); - _data_mat[14] = Dummy_800*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)); - _data_mat[15] = Dummy_801*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[16] = Dummy_802*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[17] = Dummy_803*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[18] = Dummy_804*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3); - _data_mat[19] = Dummy_805*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3); - _data_mat[20] = Dummy_806*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3); - _data_mat[21] = Dummy_807*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)); - _data_mat[22] = Dummy_808*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[23] = Dummy_809*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[24] = Dummy_810*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4); - _data_mat[25] = Dummy_811*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4); - _data_mat[26] = Dummy_812*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4); - _data_mat[27] = Dummy_813*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4); - _data_mat[28] = Dummy_814*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)); - _data_mat[29] = Dummy_815*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[30] = Dummy_816*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5); - _data_mat[31] = Dummy_817*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5); - _data_mat[32] = Dummy_818*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5); - _data_mat[33] = Dummy_819*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5); - _data_mat[34] = Dummy_820*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5); - _data_mat[35] = Dummy_821*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)); + _data_mat[0] = ((real_t)(Dummy_786*(basisTransformation.diagonal()(0)*basisTransformation.diagonal()(0)))); + _data_mat[1] = ((real_t)(Dummy_787*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[2] = ((real_t)(Dummy_788*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[3] = ((real_t)(Dummy_789*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[4] = ((real_t)(Dummy_790*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[5] = ((real_t)(Dummy_791*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[6] = ((real_t)(Dummy_792*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(1))); + _data_mat[7] = ((real_t)(Dummy_793*(basisTransformation.diagonal()(1)*basisTransformation.diagonal()(1)))); + _data_mat[8] = ((real_t)(Dummy_794*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[9] = ((real_t)(Dummy_795*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[10] = ((real_t)(Dummy_796*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[11] = ((real_t)(Dummy_797*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[12] = ((real_t)(Dummy_798*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(2))); + _data_mat[13] = ((real_t)(Dummy_799*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(2))); + _data_mat[14] = ((real_t)(Dummy_800*(basisTransformation.diagonal()(2)*basisTransformation.diagonal()(2)))); + _data_mat[15] = ((real_t)(Dummy_801*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[16] = ((real_t)(Dummy_802*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[17] = ((real_t)(Dummy_803*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[18] = ((real_t)(Dummy_804*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(3))); + _data_mat[19] = ((real_t)(Dummy_805*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(3))); + _data_mat[20] = ((real_t)(Dummy_806*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(3))); + _data_mat[21] = ((real_t)(Dummy_807*(basisTransformation.diagonal()(3)*basisTransformation.diagonal()(3)))); + _data_mat[22] = ((real_t)(Dummy_808*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[23] = ((real_t)(Dummy_809*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[24] = ((real_t)(Dummy_810*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(4))); + _data_mat[25] = ((real_t)(Dummy_811*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(4))); + _data_mat[26] = ((real_t)(Dummy_812*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(4))); + _data_mat[27] = ((real_t)(Dummy_813*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(4))); + _data_mat[28] = ((real_t)(Dummy_814*(basisTransformation.diagonal()(4)*basisTransformation.diagonal()(4)))); + _data_mat[29] = ((real_t)(Dummy_815*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[30] = ((real_t)(Dummy_816*basisTransformation.diagonal()(0)*basisTransformation.diagonal()(5))); + _data_mat[31] = ((real_t)(Dummy_817*basisTransformation.diagonal()(1)*basisTransformation.diagonal()(5))); + _data_mat[32] = ((real_t)(Dummy_818*basisTransformation.diagonal()(2)*basisTransformation.diagonal()(5))); + _data_mat[33] = ((real_t)(Dummy_819*basisTransformation.diagonal()(3)*basisTransformation.diagonal()(5))); + _data_mat[34] = ((real_t)(Dummy_820*basisTransformation.diagonal()(4)*basisTransformation.diagonal()(5))); + _data_mat[35] = ((real_t)(Dummy_821*(basisTransformation.diagonal()(5)*basisTransformation.diagonal()(5)))); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); diff --git a/operators/diffusion/P1ElementwiseDiffusion.cpp b/operators/diffusion/P1ElementwiseDiffusion.cpp index 848f4113aaaff451751400ba3c20f7e450ded42a..6cb8edaaff10f7836c33910d09ff70131a2d9b17 100644 --- a/operators/diffusion/P1ElementwiseDiffusion.cpp +++ b/operators/diffusion/P1ElementwiseDiffusion.cpp @@ -60,7 +60,7 @@ inline void P1ElementwiseDiffusion::apply(const P1Function<double> &src, // However, we must not zero out anything that is not flagged with the // specified BCs. Therefore, we first zero out everything that flagged, and // then, later, the halos of the highest dim primitives. - dst.interpolate(real_c(0), level, flag); + dst.interpolate(walberla::numeric_cast<double>(0), level, flag); } if (storage_->hasGlobalCells()) { @@ -80,7 +80,7 @@ inline void P1ElementwiseDiffusion::apply(const P1Function<double> &src, if (!vertexdof::macrocell::isOnCellFace(idx, level).empty()) { auto arrayIdx = vertexdof::macrocell::index(level, idx.x(), idx.y(), idx.z()); - _data_dst[arrayIdx] = real_c(0); + _data_dst[arrayIdx] = double(0); } } @@ -88,22 +88,30 @@ inline void P1ElementwiseDiffusion::apply(const P1Function<double> &src, (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; apply_macro_3D( @@ -144,7 +152,7 @@ inline void P1ElementwiseDiffusion::apply(const P1Function<double> &src, for (const auto &idx : vertexdof::macroface::Iterator(level)) { if (vertexdof::macroface::isVertexOnBoundary(level, idx)) { auto arrayIdx = vertexdof::macroface::index(level, idx.x(), idx.y()); - _data_dst[arrayIdx] = real_c(0); + _data_dst[arrayIdx] = double(0); } } @@ -152,16 +160,18 @@ inline void P1ElementwiseDiffusion::apply(const P1Function<double> &src, (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; apply_macro_2D( @@ -205,22 +215,30 @@ inline void P1ElementwiseDiffusion::toMatrix( (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; toMatrix_macro_3D( @@ -246,16 +264,18 @@ inline void P1ElementwiseDiffusion::toMatrix( (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; toMatrix_macro_2D( @@ -289,22 +309,30 @@ void P1ElementwiseDiffusion::computeInverseDiagonalOperatorValues() { (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; computeInverseDiagonalOperatorValues_macro_3D( @@ -339,16 +367,18 @@ void P1ElementwiseDiffusion::computeInverseDiagonalOperatorValues() { (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; computeInverseDiagonalOperatorValues_macro_2D( diff --git a/operators/diffusion/P1ElementwiseDiffusion.hpp b/operators/diffusion/P1ElementwiseDiffusion.hpp index d5b6800d7a4b20956c506be9c7a3effd1e02572c..bd44a810e4d304f27c28154d265efab5e7eb06fb 100644 --- a/operators/diffusion/P1ElementwiseDiffusion.hpp +++ b/operators/diffusion/P1ElementwiseDiffusion.hpp @@ -26,21 +26,21 @@ #pragma once -#include "hyteg/edgedofspace/EdgeDoFMacroCell.hpp" - -#include "hyteg/primitivestorage/PrimitiveStorage.hpp" +#include "hyteg/communication/Syncing.hpp" -#include "core/DataTypes.h" +#include "hyteg/edgedofspace/EdgeDoFMacroCell.hpp" -#include "hyteg/LikwidWrapper.hpp" +#include "hyteg/operators/Operator.hpp" #include "hyteg/p1functionspace/P1Function.hpp" #include "hyteg/solvers/Smoothables.hpp" -#include "hyteg/communication/Syncing.hpp" +#include "hyteg/primitivestorage/PrimitiveStorage.hpp" -#include "hyteg/operators/Operator.hpp" +#include "core/DataTypes.h" + +#include "hyteg/LikwidWrapper.hpp" #include "hyteg/sparseassembly/SparseMatrixProxy.hpp" @@ -115,14 +115,16 @@ private: /// ------ ------ ------ ------ ----- ------------- ---------------- /// ------------- /// 23 29 2 0 1 0 0 3 - void toMatrix_macro_2D( - int64_t *RESTRICT _data_dst, int64_t *RESTRICT _data_src, - double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, - double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, - double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, - std::shared_ptr<SparseMatrixProxy> mat, - int64_t micro_edges_per_macro_edge, - double micro_edges_per_macro_edge_float) const; + void toMatrix_macro_2D(idx_t *RESTRICT _data_dst, idx_t *RESTRICT _data_src, + double macro_vertex_coord_id_0comp0, + double macro_vertex_coord_id_0comp1, + double macro_vertex_coord_id_1comp0, + double macro_vertex_coord_id_1comp1, + double macro_vertex_coord_id_2comp0, + double macro_vertex_coord_id_2comp1, + std::shared_ptr<SparseMatrixProxy> mat, + int64_t micro_edges_per_macro_edge, + double micro_edges_per_macro_edge_float) const; /// Kernel type: toMatrix /// - quadrature rule: Xiao-Gimbutas | points: 1, degree: 1 /// - operations per element: @@ -132,7 +134,7 @@ private: /// ------------- /// 73 84 2 0 1 0 0 3 void toMatrix_macro_3D( - int64_t *RESTRICT _data_dst, int64_t *RESTRICT _data_src, + idx_t *RESTRICT _data_dst, idx_t *RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, diff --git a/operators/diffusion/noarch/P1ElementwiseDiffusion_toMatrix_macro_2D.cpp b/operators/diffusion/noarch/P1ElementwiseDiffusion_toMatrix_macro_2D.cpp index 2b7b3d267867ad2f8ce218f5b2f82a1737eebb37..71cf889288d3c42cfb5ef7d6c1c2d076c0667867 100644 --- a/operators/diffusion/noarch/P1ElementwiseDiffusion_toMatrix_macro_2D.cpp +++ b/operators/diffusion/noarch/P1ElementwiseDiffusion_toMatrix_macro_2D.cpp @@ -54,7 +54,7 @@ namespace hyteg { namespace operatorgeneration { -void P1ElementwiseDiffusion::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, int64_t * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const +void P1ElementwiseDiffusion::toMatrix_macro_2D( idx_t * RESTRICT _data_dst, idx_t * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { const double tmp_GRAY_0 = 1.0 / (micro_edges_per_macro_edge_float)*1.0; @@ -136,7 +136,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 3 ); std::vector< uint_t > _data_colIdx( 3 ); - std::vector< double > _data_mat( 9 ); + std::vector< real_t > _data_mat( 9 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); @@ -149,15 +149,15 @@ void P1ElementwiseDiffusion::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_1_0; - _data_mat[4] = elMat_1_1; - _data_mat[5] = elMat_1_2; - _data_mat[6] = elMat_2_0; - _data_mat[7] = elMat_2_1; - _data_mat[8] = elMat_2_2; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_1_0)); + _data_mat[4] = ((real_t)(elMat_1_1)); + _data_mat[5] = ((real_t)(elMat_1_2)); + _data_mat[6] = ((real_t)(elMat_2_0)); + _data_mat[7] = ((real_t)(elMat_2_1)); + _data_mat[8] = ((real_t)(elMat_2_2)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -168,7 +168,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 3 ); std::vector< uint_t > _data_colIdx( 3 ); - std::vector< double > _data_mat( 9 ); + std::vector< real_t > _data_mat( 9 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))])); @@ -181,15 +181,15 @@ void P1ElementwiseDiffusion::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_1782; - _data_mat[1] = Dummy_1783; - _data_mat[2] = Dummy_1784; - _data_mat[3] = Dummy_1785; - _data_mat[4] = Dummy_1786; - _data_mat[5] = Dummy_1787; - _data_mat[6] = Dummy_1788; - _data_mat[7] = Dummy_1789; - _data_mat[8] = Dummy_1790; + _data_mat[0] = ((real_t)(Dummy_1782)); + _data_mat[1] = ((real_t)(Dummy_1783)); + _data_mat[2] = ((real_t)(Dummy_1784)); + _data_mat[3] = ((real_t)(Dummy_1785)); + _data_mat[4] = ((real_t)(Dummy_1786)); + _data_mat[5] = ((real_t)(Dummy_1787)); + _data_mat[6] = ((real_t)(Dummy_1788)); + _data_mat[7] = ((real_t)(Dummy_1789)); + _data_mat[8] = ((real_t)(Dummy_1790)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -202,7 +202,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 3 ); std::vector< uint_t > _data_colIdx( 3 ); - std::vector< double > _data_mat( 9 ); + std::vector< real_t > _data_mat( 9 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_1*(micro_edges_per_macro_edge + 2) - ctr_1 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2)) - 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_1*(micro_edges_per_macro_edge + 2) - ctr_1 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2))])); @@ -215,15 +215,15 @@ void P1ElementwiseDiffusion::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_1_0; - _data_mat[4] = elMat_1_1; - _data_mat[5] = elMat_1_2; - _data_mat[6] = elMat_2_0; - _data_mat[7] = elMat_2_1; - _data_mat[8] = elMat_2_2; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_1_0)); + _data_mat[4] = ((real_t)(elMat_1_1)); + _data_mat[5] = ((real_t)(elMat_1_2)); + _data_mat[6] = ((real_t)(elMat_2_0)); + _data_mat[7] = ((real_t)(elMat_2_1)); + _data_mat[8] = ((real_t)(elMat_2_2)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); diff --git a/operators/diffusion/noarch/P1ElementwiseDiffusion_toMatrix_macro_3D.cpp b/operators/diffusion/noarch/P1ElementwiseDiffusion_toMatrix_macro_3D.cpp index 0b9f8ed04615a30a40ec37a3c4a2a07a56f28123..2ba1e81858762b32b32917da5829d5d72747d5dc 100644 --- a/operators/diffusion/noarch/P1ElementwiseDiffusion_toMatrix_macro_3D.cpp +++ b/operators/diffusion/noarch/P1ElementwiseDiffusion_toMatrix_macro_3D.cpp @@ -54,7 +54,7 @@ namespace hyteg { namespace operatorgeneration { -void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, int64_t * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const +void P1ElementwiseDiffusion::toMatrix_macro_3D( idx_t * RESTRICT _data_dst, idx_t * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { const double tmp_WHITE_UP_0 = 1.0 / (micro_edges_per_macro_edge_float)*1.0; @@ -499,7 +499,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -514,22 +514,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -540,7 +540,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -555,22 +555,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2006; - _data_mat[1] = Dummy_2007; - _data_mat[2] = Dummy_2008; - _data_mat[3] = Dummy_2009; - _data_mat[4] = Dummy_2010; - _data_mat[5] = Dummy_2011; - _data_mat[6] = Dummy_2012; - _data_mat[7] = Dummy_2013; - _data_mat[8] = Dummy_2014; - _data_mat[9] = Dummy_2015; - _data_mat[10] = Dummy_2016; - _data_mat[11] = Dummy_2017; - _data_mat[12] = Dummy_2018; - _data_mat[13] = Dummy_2019; - _data_mat[14] = Dummy_2020; - _data_mat[15] = Dummy_2021; + _data_mat[0] = ((real_t)(Dummy_2006)); + _data_mat[1] = ((real_t)(Dummy_2007)); + _data_mat[2] = ((real_t)(Dummy_2008)); + _data_mat[3] = ((real_t)(Dummy_2009)); + _data_mat[4] = ((real_t)(Dummy_2010)); + _data_mat[5] = ((real_t)(Dummy_2011)); + _data_mat[6] = ((real_t)(Dummy_2012)); + _data_mat[7] = ((real_t)(Dummy_2013)); + _data_mat[8] = ((real_t)(Dummy_2014)); + _data_mat[9] = ((real_t)(Dummy_2015)); + _data_mat[10] = ((real_t)(Dummy_2016)); + _data_mat[11] = ((real_t)(Dummy_2017)); + _data_mat[12] = ((real_t)(Dummy_2018)); + _data_mat[13] = ((real_t)(Dummy_2019)); + _data_mat[14] = ((real_t)(Dummy_2020)); + _data_mat[15] = ((real_t)(Dummy_2021)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -581,7 +581,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); @@ -596,22 +596,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2063; - _data_mat[1] = Dummy_2064; - _data_mat[2] = Dummy_2065; - _data_mat[3] = Dummy_2066; - _data_mat[4] = Dummy_2067; - _data_mat[5] = Dummy_2068; - _data_mat[6] = Dummy_2069; - _data_mat[7] = Dummy_2070; - _data_mat[8] = Dummy_2071; - _data_mat[9] = Dummy_2072; - _data_mat[10] = Dummy_2073; - _data_mat[11] = Dummy_2074; - _data_mat[12] = Dummy_2075; - _data_mat[13] = Dummy_2076; - _data_mat[14] = Dummy_2077; - _data_mat[15] = Dummy_2078; + _data_mat[0] = ((real_t)(Dummy_2063)); + _data_mat[1] = ((real_t)(Dummy_2064)); + _data_mat[2] = ((real_t)(Dummy_2065)); + _data_mat[3] = ((real_t)(Dummy_2066)); + _data_mat[4] = ((real_t)(Dummy_2067)); + _data_mat[5] = ((real_t)(Dummy_2068)); + _data_mat[6] = ((real_t)(Dummy_2069)); + _data_mat[7] = ((real_t)(Dummy_2070)); + _data_mat[8] = ((real_t)(Dummy_2071)); + _data_mat[9] = ((real_t)(Dummy_2072)); + _data_mat[10] = ((real_t)(Dummy_2073)); + _data_mat[11] = ((real_t)(Dummy_2074)); + _data_mat[12] = ((real_t)(Dummy_2075)); + _data_mat[13] = ((real_t)(Dummy_2076)); + _data_mat[14] = ((real_t)(Dummy_2077)); + _data_mat[15] = ((real_t)(Dummy_2078)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -622,7 +622,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))])); @@ -637,22 +637,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2120; - _data_mat[1] = Dummy_2121; - _data_mat[2] = Dummy_2122; - _data_mat[3] = Dummy_2123; - _data_mat[4] = Dummy_2124; - _data_mat[5] = Dummy_2125; - _data_mat[6] = Dummy_2126; - _data_mat[7] = Dummy_2127; - _data_mat[8] = Dummy_2128; - _data_mat[9] = Dummy_2129; - _data_mat[10] = Dummy_2130; - _data_mat[11] = Dummy_2131; - _data_mat[12] = Dummy_2132; - _data_mat[13] = Dummy_2133; - _data_mat[14] = Dummy_2134; - _data_mat[15] = Dummy_2135; + _data_mat[0] = ((real_t)(Dummy_2120)); + _data_mat[1] = ((real_t)(Dummy_2121)); + _data_mat[2] = ((real_t)(Dummy_2122)); + _data_mat[3] = ((real_t)(Dummy_2123)); + _data_mat[4] = ((real_t)(Dummy_2124)); + _data_mat[5] = ((real_t)(Dummy_2125)); + _data_mat[6] = ((real_t)(Dummy_2126)); + _data_mat[7] = ((real_t)(Dummy_2127)); + _data_mat[8] = ((real_t)(Dummy_2128)); + _data_mat[9] = ((real_t)(Dummy_2129)); + _data_mat[10] = ((real_t)(Dummy_2130)); + _data_mat[11] = ((real_t)(Dummy_2131)); + _data_mat[12] = ((real_t)(Dummy_2132)); + _data_mat[13] = ((real_t)(Dummy_2133)); + _data_mat[14] = ((real_t)(Dummy_2134)); + _data_mat[15] = ((real_t)(Dummy_2135)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -663,7 +663,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); @@ -678,22 +678,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2177; - _data_mat[1] = Dummy_2178; - _data_mat[2] = Dummy_2179; - _data_mat[3] = Dummy_2180; - _data_mat[4] = Dummy_2181; - _data_mat[5] = Dummy_2182; - _data_mat[6] = Dummy_2183; - _data_mat[7] = Dummy_2184; - _data_mat[8] = Dummy_2185; - _data_mat[9] = Dummy_2186; - _data_mat[10] = Dummy_2187; - _data_mat[11] = Dummy_2188; - _data_mat[12] = Dummy_2189; - _data_mat[13] = Dummy_2190; - _data_mat[14] = Dummy_2191; - _data_mat[15] = Dummy_2192; + _data_mat[0] = ((real_t)(Dummy_2177)); + _data_mat[1] = ((real_t)(Dummy_2178)); + _data_mat[2] = ((real_t)(Dummy_2179)); + _data_mat[3] = ((real_t)(Dummy_2180)); + _data_mat[4] = ((real_t)(Dummy_2181)); + _data_mat[5] = ((real_t)(Dummy_2182)); + _data_mat[6] = ((real_t)(Dummy_2183)); + _data_mat[7] = ((real_t)(Dummy_2184)); + _data_mat[8] = ((real_t)(Dummy_2185)); + _data_mat[9] = ((real_t)(Dummy_2186)); + _data_mat[10] = ((real_t)(Dummy_2187)); + _data_mat[11] = ((real_t)(Dummy_2188)); + _data_mat[12] = ((real_t)(Dummy_2189)); + _data_mat[13] = ((real_t)(Dummy_2190)); + _data_mat[14] = ((real_t)(Dummy_2191)); + _data_mat[15] = ((real_t)(Dummy_2192)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -704,7 +704,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -719,22 +719,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2234; - _data_mat[1] = Dummy_2235; - _data_mat[2] = Dummy_2236; - _data_mat[3] = Dummy_2237; - _data_mat[4] = Dummy_2238; - _data_mat[5] = Dummy_2239; - _data_mat[6] = Dummy_2240; - _data_mat[7] = Dummy_2241; - _data_mat[8] = Dummy_2242; - _data_mat[9] = Dummy_2243; - _data_mat[10] = Dummy_2244; - _data_mat[11] = Dummy_2245; - _data_mat[12] = Dummy_2246; - _data_mat[13] = Dummy_2247; - _data_mat[14] = Dummy_2248; - _data_mat[15] = Dummy_2249; + _data_mat[0] = ((real_t)(Dummy_2234)); + _data_mat[1] = ((real_t)(Dummy_2235)); + _data_mat[2] = ((real_t)(Dummy_2236)); + _data_mat[3] = ((real_t)(Dummy_2237)); + _data_mat[4] = ((real_t)(Dummy_2238)); + _data_mat[5] = ((real_t)(Dummy_2239)); + _data_mat[6] = ((real_t)(Dummy_2240)); + _data_mat[7] = ((real_t)(Dummy_2241)); + _data_mat[8] = ((real_t)(Dummy_2242)); + _data_mat[9] = ((real_t)(Dummy_2243)); + _data_mat[10] = ((real_t)(Dummy_2244)); + _data_mat[11] = ((real_t)(Dummy_2245)); + _data_mat[12] = ((real_t)(Dummy_2246)); + _data_mat[13] = ((real_t)(Dummy_2247)); + _data_mat[14] = ((real_t)(Dummy_2248)); + _data_mat[15] = ((real_t)(Dummy_2249)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -813,7 +813,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ctr_1 - ctr_2 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 2])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ctr_1 - ctr_2 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 1])); @@ -828,22 +828,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -925,7 +925,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ctr_1 - ctr_2 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[-ctr_1 - ctr_2 + micro_edges_per_macro_edge + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 2])); @@ -940,22 +940,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2291; - _data_mat[1] = Dummy_2292; - _data_mat[2] = Dummy_2293; - _data_mat[3] = Dummy_2294; - _data_mat[4] = Dummy_2295; - _data_mat[5] = Dummy_2296; - _data_mat[6] = Dummy_2297; - _data_mat[7] = Dummy_2298; - _data_mat[8] = Dummy_2299; - _data_mat[9] = Dummy_2300; - _data_mat[10] = Dummy_2301; - _data_mat[11] = Dummy_2302; - _data_mat[12] = Dummy_2303; - _data_mat[13] = Dummy_2304; - _data_mat[14] = Dummy_2305; - _data_mat[15] = Dummy_2306; + _data_mat[0] = ((real_t)(Dummy_2291)); + _data_mat[1] = ((real_t)(Dummy_2292)); + _data_mat[2] = ((real_t)(Dummy_2293)); + _data_mat[3] = ((real_t)(Dummy_2294)); + _data_mat[4] = ((real_t)(Dummy_2295)); + _data_mat[5] = ((real_t)(Dummy_2296)); + _data_mat[6] = ((real_t)(Dummy_2297)); + _data_mat[7] = ((real_t)(Dummy_2298)); + _data_mat[8] = ((real_t)(Dummy_2299)); + _data_mat[9] = ((real_t)(Dummy_2300)); + _data_mat[10] = ((real_t)(Dummy_2301)); + _data_mat[11] = ((real_t)(Dummy_2302)); + _data_mat[12] = ((real_t)(Dummy_2303)); + _data_mat[13] = ((real_t)(Dummy_2304)); + _data_mat[14] = ((real_t)(Dummy_2305)); + _data_mat[15] = ((real_t)(Dummy_2306)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -1040,7 +1040,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[-ctr_1 - ctr_2 + micro_edges_per_macro_edge + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 2])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ctr_1 - ctr_2 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - 2])); @@ -1055,22 +1055,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2348; - _data_mat[1] = Dummy_2349; - _data_mat[2] = Dummy_2350; - _data_mat[3] = Dummy_2351; - _data_mat[4] = Dummy_2352; - _data_mat[5] = Dummy_2353; - _data_mat[6] = Dummy_2354; - _data_mat[7] = Dummy_2355; - _data_mat[8] = Dummy_2356; - _data_mat[9] = Dummy_2357; - _data_mat[10] = Dummy_2358; - _data_mat[11] = Dummy_2359; - _data_mat[12] = Dummy_2360; - _data_mat[13] = Dummy_2361; - _data_mat[14] = Dummy_2362; - _data_mat[15] = Dummy_2363; + _data_mat[0] = ((real_t)(Dummy_2348)); + _data_mat[1] = ((real_t)(Dummy_2349)); + _data_mat[2] = ((real_t)(Dummy_2350)); + _data_mat[3] = ((real_t)(Dummy_2351)); + _data_mat[4] = ((real_t)(Dummy_2352)); + _data_mat[5] = ((real_t)(Dummy_2353)); + _data_mat[6] = ((real_t)(Dummy_2354)); + _data_mat[7] = ((real_t)(Dummy_2355)); + _data_mat[8] = ((real_t)(Dummy_2356)); + _data_mat[9] = ((real_t)(Dummy_2357)); + _data_mat[10] = ((real_t)(Dummy_2358)); + _data_mat[11] = ((real_t)(Dummy_2359)); + _data_mat[12] = ((real_t)(Dummy_2360)); + _data_mat[13] = ((real_t)(Dummy_2361)); + _data_mat[14] = ((real_t)(Dummy_2362)); + _data_mat[15] = ((real_t)(Dummy_2363)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -1152,7 +1152,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ctr_1 - ctr_2 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[-ctr_1 - ctr_2 + micro_edges_per_macro_edge + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 2])); @@ -1167,22 +1167,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2405; - _data_mat[1] = Dummy_2406; - _data_mat[2] = Dummy_2407; - _data_mat[3] = Dummy_2408; - _data_mat[4] = Dummy_2409; - _data_mat[5] = Dummy_2410; - _data_mat[6] = Dummy_2411; - _data_mat[7] = Dummy_2412; - _data_mat[8] = Dummy_2413; - _data_mat[9] = Dummy_2414; - _data_mat[10] = Dummy_2415; - _data_mat[11] = Dummy_2416; - _data_mat[12] = Dummy_2417; - _data_mat[13] = Dummy_2418; - _data_mat[14] = Dummy_2419; - _data_mat[15] = Dummy_2420; + _data_mat[0] = ((real_t)(Dummy_2405)); + _data_mat[1] = ((real_t)(Dummy_2406)); + _data_mat[2] = ((real_t)(Dummy_2407)); + _data_mat[3] = ((real_t)(Dummy_2408)); + _data_mat[4] = ((real_t)(Dummy_2409)); + _data_mat[5] = ((real_t)(Dummy_2410)); + _data_mat[6] = ((real_t)(Dummy_2411)); + _data_mat[7] = ((real_t)(Dummy_2412)); + _data_mat[8] = ((real_t)(Dummy_2413)); + _data_mat[9] = ((real_t)(Dummy_2414)); + _data_mat[10] = ((real_t)(Dummy_2415)); + _data_mat[11] = ((real_t)(Dummy_2416)); + _data_mat[12] = ((real_t)(Dummy_2417)); + _data_mat[13] = ((real_t)(Dummy_2418)); + _data_mat[14] = ((real_t)(Dummy_2419)); + _data_mat[15] = ((real_t)(Dummy_2420)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -1267,7 +1267,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[-ctr_1 - ctr_2 + micro_edges_per_macro_edge + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 2])); _data_rowIdx[1] = ((uint64_t)(_data_dst[-ctr_1 - ctr_2 + micro_edges_per_macro_edge + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 1])); @@ -1282,22 +1282,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = Dummy_2462; - _data_mat[1] = Dummy_2463; - _data_mat[2] = Dummy_2464; - _data_mat[3] = Dummy_2465; - _data_mat[4] = Dummy_2466; - _data_mat[5] = Dummy_2467; - _data_mat[6] = Dummy_2468; - _data_mat[7] = Dummy_2469; - _data_mat[8] = Dummy_2470; - _data_mat[9] = Dummy_2471; - _data_mat[10] = Dummy_2472; - _data_mat[11] = Dummy_2473; - _data_mat[12] = Dummy_2474; - _data_mat[13] = Dummy_2475; - _data_mat[14] = Dummy_2476; - _data_mat[15] = Dummy_2477; + _data_mat[0] = ((real_t)(Dummy_2462)); + _data_mat[1] = ((real_t)(Dummy_2463)); + _data_mat[2] = ((real_t)(Dummy_2464)); + _data_mat[3] = ((real_t)(Dummy_2465)); + _data_mat[4] = ((real_t)(Dummy_2466)); + _data_mat[5] = ((real_t)(Dummy_2467)); + _data_mat[6] = ((real_t)(Dummy_2468)); + _data_mat[7] = ((real_t)(Dummy_2469)); + _data_mat[8] = ((real_t)(Dummy_2470)); + _data_mat[9] = ((real_t)(Dummy_2471)); + _data_mat[10] = ((real_t)(Dummy_2472)); + _data_mat[11] = ((real_t)(Dummy_2473)); + _data_mat[12] = ((real_t)(Dummy_2474)); + _data_mat[13] = ((real_t)(Dummy_2475)); + _data_mat[14] = ((real_t)(Dummy_2476)); + _data_mat[15] = ((real_t)(Dummy_2477)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -1310,7 +1310,7 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ctr_1 - ctr_2 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) - 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ctr_1 - ctr_2 + micro_edges_per_macro_edge - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); @@ -1325,22 +1325,22 @@ void P1ElementwiseDiffusion::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, i - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); diff --git a/operators/div_k_grad/P1ElementwiseDivKGrad.cpp b/operators/div_k_grad/P1ElementwiseDivKGrad.cpp index 3912f28853160713041867a2cc6a6a1b1c15495b..354d3031b7e263ae425fd4f6388cafe3f06229fa 100644 --- a/operators/div_k_grad/P1ElementwiseDivKGrad.cpp +++ b/operators/div_k_grad/P1ElementwiseDivKGrad.cpp @@ -64,7 +64,7 @@ inline void P1ElementwiseDivKGrad::apply(const P1Function<double> &src, // However, we must not zero out anything that is not flagged with the // specified BCs. Therefore, we first zero out everything that flagged, and // then, later, the halos of the highest dim primitives. - dst.interpolate(real_c(0), level, flag); + dst.interpolate(walberla::numeric_cast<double>(0), level, flag); } if (storage_->hasGlobalCells()) { @@ -85,7 +85,7 @@ inline void P1ElementwiseDivKGrad::apply(const P1Function<double> &src, if (!vertexdof::macrocell::isOnCellFace(idx, level).empty()) { auto arrayIdx = vertexdof::macrocell::index(level, idx.x(), idx.y(), idx.z()); - _data_dst[arrayIdx] = real_c(0); + _data_dst[arrayIdx] = double(0); } } @@ -93,22 +93,30 @@ inline void P1ElementwiseDivKGrad::apply(const P1Function<double> &src, (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; apply_macro_3D( @@ -150,7 +158,7 @@ inline void P1ElementwiseDivKGrad::apply(const P1Function<double> &src, for (const auto &idx : vertexdof::macroface::Iterator(level)) { if (vertexdof::macroface::isVertexOnBoundary(level, idx)) { auto arrayIdx = vertexdof::macroface::index(level, idx.x(), idx.y()); - _data_dst[arrayIdx] = real_c(0); + _data_dst[arrayIdx] = double(0); } } @@ -158,16 +166,18 @@ inline void P1ElementwiseDivKGrad::apply(const P1Function<double> &src, (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; apply_macro_2D( @@ -215,22 +225,30 @@ inline void P1ElementwiseDivKGrad::toMatrix( (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; toMatrix_macro_3D( @@ -259,16 +277,18 @@ inline void P1ElementwiseDivKGrad::toMatrix( (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; toMatrix_macro_2D( @@ -306,22 +326,30 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues() { (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; computeInverseDiagonalOperatorValues_macro_3D( @@ -359,16 +387,18 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues() { (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; computeInverseDiagonalOperatorValues_macro_2D( diff --git a/operators/div_k_grad/P1ElementwiseDivKGrad.hpp b/operators/div_k_grad/P1ElementwiseDivKGrad.hpp index 088291a99dde63bb79c9ccd000f1929f91d1ae16..ecfc268337a51a358931011bfe48697405df848e 100644 --- a/operators/div_k_grad/P1ElementwiseDivKGrad.hpp +++ b/operators/div_k_grad/P1ElementwiseDivKGrad.hpp @@ -26,21 +26,21 @@ #pragma once -#include "hyteg/edgedofspace/EdgeDoFMacroCell.hpp" - -#include "hyteg/primitivestorage/PrimitiveStorage.hpp" +#include "hyteg/communication/Syncing.hpp" -#include "core/DataTypes.h" +#include "hyteg/edgedofspace/EdgeDoFMacroCell.hpp" -#include "hyteg/LikwidWrapper.hpp" +#include "hyteg/operators/Operator.hpp" #include "hyteg/p1functionspace/P1Function.hpp" #include "hyteg/solvers/Smoothables.hpp" -#include "hyteg/communication/Syncing.hpp" +#include "hyteg/primitivestorage/PrimitiveStorage.hpp" -#include "hyteg/operators/Operator.hpp" +#include "core/DataTypes.h" + +#include "hyteg/LikwidWrapper.hpp" #include "hyteg/sparseassembly/SparseMatrixProxy.hpp" @@ -114,8 +114,8 @@ private: /// ------ ------ ------ ------ ----- ------------- ---------------- /// ------------- /// 85 112 12 0 1 0 0 3 - void toMatrix_macro_2D(int64_t *RESTRICT _data_dst, double *RESTRICT _data_k, - int64_t *RESTRICT _data_src, + void toMatrix_macro_2D(idx_t *RESTRICT _data_dst, double *RESTRICT _data_k, + idx_t *RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, @@ -134,8 +134,8 @@ private: /// ------------- /// 302 420 30 0 1 0 0 3 void toMatrix_macro_3D( - int64_t *RESTRICT _data_dst, double *RESTRICT _data_k, - int64_t *RESTRICT _data_src, double macro_vertex_coord_id_0comp0, + idx_t *RESTRICT _data_dst, double *RESTRICT _data_k, + idx_t *RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, @@ -152,7 +152,7 @@ private: /// unknown_ops /// ------ ------ ------ ------ ----- ------------- ---------------- /// ------------- - /// 88 112 12 0 1 0 0 0 + /// 70 85 12 0 1 0 0 0 void computeInverseDiagonalOperatorValues_macro_2D( double *RESTRICT _data_invDiag_, double *RESTRICT _data_k, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, @@ -167,7 +167,7 @@ private: /// unknown_ops /// ------ ------ ------ ------ ----- ------------- ---------------- /// ------------- - /// 306 420 30 0 1 0 0 0 + /// 234 324 30 0 1 0 0 0 void computeInverseDiagonalOperatorValues_macro_3D( double *RESTRICT _data_invDiag_, double *RESTRICT _data_k, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, diff --git a/operators/div_k_grad/P2ElementwiseDivKGrad.cpp b/operators/div_k_grad/P2ElementwiseDivKGrad.cpp index 167e4441292c7a208c7b2bbff707be866d854813..18209df6108514732ca837d0ab9d447245ad56d3 100644 --- a/operators/div_k_grad/P2ElementwiseDivKGrad.cpp +++ b/operators/div_k_grad/P2ElementwiseDivKGrad.cpp @@ -64,7 +64,7 @@ inline void P2ElementwiseDivKGrad::apply(const P2Function<double> &src, // However, we must not zero out anything that is not flagged with the // specified BCs. Therefore, we first zero out everything that flagged, and // then, later, the halos of the highest dim primitives. - dst.interpolate(real_c(0), level, flag); + dst.interpolate(walberla::numeric_cast<double>(0), level, flag); } if (storage_->hasGlobalCells()) { @@ -99,40 +99,40 @@ inline void P2ElementwiseDivKGrad::apply(const P2Function<double> &src, if (!vertexdof::macrocell::isOnCellFace(idx, level).empty()) { auto arrayIdx = vertexdof::macrocell::index(level, idx.x(), idx.y(), idx.z()); - _data_dstVertex[arrayIdx] = real_c(0); - } - } - for (const auto &idx : edgedof::macrocell::Iterator(level)) { - for (const auto &orientation : - edgedof::allEdgeDoFOrientationsWithoutXYZ) { - if (!edgedof::macrocell::isInnerEdgeDoF(level, idx, orientation)) { - auto arrayIdx = edgedof::macrocell::index(level, idx.x(), idx.y(), - idx.z(), orientation); - _data_dstEdge[arrayIdx] = real_c(0); - } + _data_dstVertex[arrayIdx] = double(0); } } + edgedof::macrocell::setBoundaryToZero( + level, cell, dst.getEdgeDoFFunction().getCellDataID()); const auto micro_edges_per_macro_edge = (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; apply_macro_3D( @@ -193,7 +193,7 @@ inline void P2ElementwiseDivKGrad::apply(const P2Function<double> &src, for (const auto &idx : vertexdof::macroface::Iterator(level)) { if (vertexdof::macroface::isVertexOnBoundary(level, idx)) { auto arrayIdx = vertexdof::macroface::index(level, idx.x(), idx.y()); - _data_dstVertex[arrayIdx] = real_c(0); + _data_dstVertex[arrayIdx] = walberla::numeric_cast<double>(0); } } for (const auto &idx : edgedof::macroface::Iterator(level)) { @@ -201,7 +201,7 @@ inline void P2ElementwiseDivKGrad::apply(const P2Function<double> &src, if (!edgedof::macroface::isInnerEdgeDoF(level, idx, orientation)) { auto arrayIdx = edgedof::macroface::index(level, idx.x(), idx.y(), orientation); - _data_dstEdge[arrayIdx] = real_c(0); + _data_dstEdge[arrayIdx] = walberla::numeric_cast<double>(0); } } } @@ -210,16 +210,18 @@ inline void P2ElementwiseDivKGrad::apply(const P2Function<double> &src, (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; apply_macro_2D( @@ -228,7 +230,7 @@ inline void P2ElementwiseDivKGrad::apply(const P2Function<double> &src, macro_vertex_coord_id_0comp1, macro_vertex_coord_id_1comp0, macro_vertex_coord_id_1comp1, macro_vertex_coord_id_2comp0, macro_vertex_coord_id_2comp1, micro_edges_per_macro_edge, - micro_edges_per_macro_edge_float, micro_edges_per_macro_face); + micro_edges_per_macro_edge_float); } // Push result to lower-dimensional primitives @@ -284,22 +286,30 @@ inline void P2ElementwiseDivKGrad::toMatrix( (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; toMatrix_macro_3D( @@ -343,16 +353,18 @@ inline void P2ElementwiseDivKGrad::toMatrix( (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; toMatrix_macro_2D( @@ -361,7 +373,7 @@ inline void P2ElementwiseDivKGrad::toMatrix( macro_vertex_coord_id_0comp1, macro_vertex_coord_id_1comp0, macro_vertex_coord_id_1comp1, macro_vertex_coord_id_2comp0, macro_vertex_coord_id_2comp1, mat, micro_edges_per_macro_edge, - micro_edges_per_macro_edge_float, micro_edges_per_macro_face); + micro_edges_per_macro_edge_float); } } } @@ -400,22 +412,30 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues() { (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = cell.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = cell.getCoordinates()[0][1]; - const double macro_vertex_coord_id_0comp2 = cell.getCoordinates()[0][2]; - const double macro_vertex_coord_id_1comp0 = cell.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = cell.getCoordinates()[1][1]; - const double macro_vertex_coord_id_1comp2 = cell.getCoordinates()[1][2]; - const double macro_vertex_coord_id_2comp0 = cell.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = cell.getCoordinates()[2][1]; - const double macro_vertex_coord_id_2comp2 = cell.getCoordinates()[2][2]; - const double macro_vertex_coord_id_3comp0 = cell.getCoordinates()[3][0]; - const double macro_vertex_coord_id_3comp1 = cell.getCoordinates()[3][1]; - const double macro_vertex_coord_id_3comp2 = cell.getCoordinates()[3][2]; + const double macro_vertex_coord_id_0comp0 = + (double)cell.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)cell.getCoordinates()[0][1]; + const double macro_vertex_coord_id_0comp2 = + (double)cell.getCoordinates()[0][2]; + const double macro_vertex_coord_id_1comp0 = + (double)cell.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)cell.getCoordinates()[1][1]; + const double macro_vertex_coord_id_1comp2 = + (double)cell.getCoordinates()[1][2]; + const double macro_vertex_coord_id_2comp0 = + (double)cell.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)cell.getCoordinates()[2][1]; + const double macro_vertex_coord_id_2comp2 = + (double)cell.getCoordinates()[2][2]; + const double macro_vertex_coord_id_3comp0 = + (double)cell.getCoordinates()[3][0]; + const double macro_vertex_coord_id_3comp1 = + (double)cell.getCoordinates()[3][1]; + const double macro_vertex_coord_id_3comp2 = + (double)cell.getCoordinates()[3][2]; computeInverseDiagonalOperatorValues_macro_3D( @@ -468,16 +488,18 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues() { (int64_t)levelinfo::num_microedges_per_edge(level); const auto micro_edges_per_macro_edge_float = (double)levelinfo::num_microedges_per_edge(level); - const auto micro_edges_per_macro_face = - (int64_t)levelinfo::num_microedges_per_face(level); - const auto micro_edges_per_macro_face_float = - (double)levelinfo::num_microedges_per_face(level); - const double macro_vertex_coord_id_0comp0 = face.getCoordinates()[0][0]; - const double macro_vertex_coord_id_0comp1 = face.getCoordinates()[0][1]; - const double macro_vertex_coord_id_1comp0 = face.getCoordinates()[1][0]; - const double macro_vertex_coord_id_1comp1 = face.getCoordinates()[1][1]; - const double macro_vertex_coord_id_2comp0 = face.getCoordinates()[2][0]; - const double macro_vertex_coord_id_2comp1 = face.getCoordinates()[2][1]; + const double macro_vertex_coord_id_0comp0 = + (double)face.getCoordinates()[0][0]; + const double macro_vertex_coord_id_0comp1 = + (double)face.getCoordinates()[0][1]; + const double macro_vertex_coord_id_1comp0 = + (double)face.getCoordinates()[1][0]; + const double macro_vertex_coord_id_1comp1 = + (double)face.getCoordinates()[1][1]; + const double macro_vertex_coord_id_2comp0 = + (double)face.getCoordinates()[2][0]; + const double macro_vertex_coord_id_2comp1 = + (double)face.getCoordinates()[2][1]; computeInverseDiagonalOperatorValues_macro_2D( @@ -486,7 +508,7 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues() { macro_vertex_coord_id_0comp1, macro_vertex_coord_id_1comp0, macro_vertex_coord_id_1comp1, macro_vertex_coord_id_2comp0, macro_vertex_coord_id_2comp1, micro_edges_per_macro_edge, - micro_edges_per_macro_edge_float, micro_edges_per_macro_face); + micro_edges_per_macro_edge_float); } // Push result to lower-dimensional primitives diff --git a/operators/div_k_grad/P2ElementwiseDivKGrad.hpp b/operators/div_k_grad/P2ElementwiseDivKGrad.hpp index 1ec3215e464e17990643e900302756994afc2811..523a6a01384206fbeb506b8d26a58052147a647d 100644 --- a/operators/div_k_grad/P2ElementwiseDivKGrad.hpp +++ b/operators/div_k_grad/P2ElementwiseDivKGrad.hpp @@ -26,21 +26,21 @@ #pragma once -#include "hyteg/edgedofspace/EdgeDoFMacroCell.hpp" - -#include "hyteg/primitivestorage/PrimitiveStorage.hpp" +#include "hyteg/communication/Syncing.hpp" -#include "core/DataTypes.h" +#include "hyteg/edgedofspace/EdgeDoFMacroCell.hpp" -#include "hyteg/communication/Syncing.hpp" +#include "hyteg/p2functionspace/P2Function.hpp" -#include "hyteg/LikwidWrapper.hpp" +#include "hyteg/operators/Operator.hpp" #include "hyteg/solvers/Smoothables.hpp" -#include "hyteg/p2functionspace/P2Function.hpp" +#include "hyteg/primitivestorage/PrimitiveStorage.hpp" -#include "hyteg/operators/Operator.hpp" +#include "core/DataTypes.h" + +#include "hyteg/LikwidWrapper.hpp" #include "hyteg/sparseassembly/SparseMatrixProxy.hpp" @@ -89,8 +89,7 @@ private: double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, - double micro_edges_per_macro_edge_float, - int64_t micro_edges_per_macro_face) const; + double micro_edges_per_macro_edge_float) const; /// Kernel type: apply /// - quadrature rule: Xiao-Gimbutas | points: 4, degree: 2 /// - operations per element: @@ -120,16 +119,15 @@ private: /// ------------- /// 271 397 12 0 1 0 0 3 void toMatrix_macro_2D( - int64_t *RESTRICT _data_dstEdge, int64_t *RESTRICT _data_dstVertex, + idx_t *RESTRICT _data_dstEdge, idx_t *RESTRICT _data_dstVertex, double *RESTRICT _data_kEdge, double *RESTRICT _data_kVertex, - int64_t *RESTRICT _data_srcEdge, int64_t *RESTRICT _data_srcVertex, + idx_t *RESTRICT _data_srcEdge, idx_t *RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, std::shared_ptr<SparseMatrixProxy> mat, int64_t micro_edges_per_macro_edge, - double micro_edges_per_macro_edge_float, - int64_t micro_edges_per_macro_face) const; + double micro_edges_per_macro_edge_float) const; /// Kernel type: toMatrix /// - quadrature rule: Xiao-Gimbutas | points: 4, degree: 2 /// - operations per element: @@ -139,9 +137,9 @@ private: /// ------------- /// 1214 1636 30 0 1 0 0 3 void toMatrix_macro_3D( - int64_t *RESTRICT _data_dstEdge, int64_t *RESTRICT _data_dstVertex, + idx_t *RESTRICT _data_dstEdge, idx_t *RESTRICT _data_dstVertex, double *RESTRICT _data_kEdge, double *RESTRICT _data_kVertex, - int64_t *RESTRICT _data_srcEdge, int64_t *RESTRICT _data_srcVertex, + idx_t *RESTRICT _data_srcEdge, idx_t *RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, @@ -158,7 +156,7 @@ private: /// unknown_ops /// ------ ------ ------ ------ ----- ------------- ---------------- /// ------------- - /// 277 397 12 0 1 0 0 0 + /// 187 238 12 0 1 0 0 0 void computeInverseDiagonalOperatorValues_macro_2D( double *RESTRICT _data_invDiag_Edge, double *RESTRICT _data_invDiag_Vertex, double *RESTRICT _data_kEdge, @@ -166,8 +164,7 @@ private: double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, - double micro_edges_per_macro_edge_float, - int64_t micro_edges_per_macro_face) const; + double micro_edges_per_macro_edge_float) const; /// Kernel type: computeInverseDiagonalOperatorValues /// - quadrature rule: Xiao-Gimbutas | points: 4, degree: 2 /// - operations per element: @@ -175,7 +172,7 @@ private: /// unknown_ops /// ------ ------ ------ ------ ----- ------------- ---------------- /// ------------- - /// 1224 1636 30 0 1 0 0 0 + /// 672 844 30 0 1 0 0 0 void computeInverseDiagonalOperatorValues_macro_3D( double *RESTRICT _data_invDiag_Edge, double *RESTRICT _data_invDiag_Vertex, double *RESTRICT _data_kEdge, diff --git a/operators/div_k_grad/avx/P1ElementwiseDivKGrad_apply_macro_2D.cpp b/operators/div_k_grad/avx/P1ElementwiseDivKGrad_apply_macro_2D.cpp index 28368ba378817106178d15c9d26930627fad32db..0f991e618764aab38b0d51a1b14684ce19a8d338 100644 --- a/operators/div_k_grad/avx/P1ElementwiseDivKGrad_apply_macro_2D.cpp +++ b/operators/div_k_grad/avx/P1ElementwiseDivKGrad_apply_macro_2D.cpp @@ -57,11 +57,11 @@ namespace operatorgeneration { void P1ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dst, double * RESTRICT _data_k, double * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -105,9 +105,9 @@ void P1ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dst, double const __m256d src_dof_0 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]); const __m256d src_dof_1 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -150,9 +150,9 @@ void P1ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dst, double const double src_dof_0 = _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; const double src_dof_1 = _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -198,9 +198,9 @@ void P1ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dst, double const __m256d src_dof_0 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d src_dof_1 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -243,9 +243,9 @@ void P1ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dst, double const double src_dof_0 = _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double src_dof_1 = _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; diff --git a/operators/div_k_grad/avx/P1ElementwiseDivKGrad_apply_macro_3D.cpp b/operators/div_k_grad/avx/P1ElementwiseDivKGrad_apply_macro_3D.cpp index d6853ade82f34374f53e76092ae92dca751fe312..d4ae1552659ec6a07be8f344359bebf4aa2253a9 100644 --- a/operators/div_k_grad/avx/P1ElementwiseDivKGrad_apply_macro_3D.cpp +++ b/operators/div_k_grad/avx/P1ElementwiseDivKGrad_apply_macro_3D.cpp @@ -57,13 +57,13 @@ namespace operatorgeneration { void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double * RESTRICT _data_k, double * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -279,10 +279,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const __m256d src_dof_1 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d src_dof_3 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -348,10 +348,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_3 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -421,10 +421,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const __m256d src_dof_1 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d src_dof_3 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -490,10 +490,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_3 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -563,10 +563,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const __m256d src_dof_1 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d src_dof_3 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -632,10 +632,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_3 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -705,10 +705,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const __m256d src_dof_1 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d src_dof_3 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -774,10 +774,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_2 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_3 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -847,10 +847,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const __m256d src_dof_1 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d src_dof_3 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -916,10 +916,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_2 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_3 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -989,10 +989,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const __m256d src_dof_1 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d src_dof_3 = _mm256_loadu_pd(& _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -1058,10 +1058,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_2 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_3 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; diff --git a/operators/div_k_grad/avx/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp b/operators/div_k_grad/avx/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp index 2199cf082d34d88ece52738beedaa5e62cd59e12..4cb010f5f3a6e7ce8e586ccc3e15a7fe72ff90dc 100644 --- a/operators/div_k_grad/avx/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp +++ b/operators/div_k_grad/avx/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp @@ -57,11 +57,11 @@ namespace operatorgeneration { void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( double * RESTRICT _data_invDiag_, double * RESTRICT _data_k, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -78,8 +78,6 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const double jac_affine_inv_1_0 = -jac_affine_1_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double jac_affine_inv_1_1 = jac_affine_0_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); - const double tmp_q_0 = -jac_affine_inv_0_0 - jac_affine_inv_1_0; - const double tmp_q_4 = -jac_affine_inv_0_1 - jac_affine_inv_1_1; const double Dummy_3697 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; const double Dummy_3698 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; const double Dummy_3699 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; @@ -95,46 +93,28 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const double Dummy_3709 = -Dummy_3705*1.0 / (Dummy_3703*Dummy_3706 - Dummy_3704*Dummy_3705); const double Dummy_3710 = Dummy_3703*1.0 / (Dummy_3703*Dummy_3706 - Dummy_3704*Dummy_3705); const double Dummy_3711 = fabs(Dummy_3703*Dummy_3706 - Dummy_3704*Dummy_3705); - const double Dummy_3712 = -Dummy_3707 - Dummy_3709; - const double Dummy_3713 = -Dummy_3708 - Dummy_3710; { for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 3; q += 1) { - const __m256d tmp_q_1 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_2 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const double tmp_q_7 = abs_det_jac_affine*_data_q_w[q]; - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(tmp_q_0,tmp_q_0,tmp_q_0,tmp_q_0)),_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_5,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(tmp_q_4,tmp_q_4,tmp_q_4,tmp_q_4))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(tmp_q_0,tmp_q_0,tmp_q_0,tmp_q_0)),_mm256_mul_pd(tmp_q_5,_mm256_set_pd(tmp_q_4,tmp_q_4,tmp_q_4,tmp_q_4))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(tmp_q_0,tmp_q_0,tmp_q_0,tmp_q_0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(tmp_q_4,tmp_q_4,tmp_q_4,tmp_q_4))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)),_mm256_mul_pd(tmp_q_5,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); + const __m256d tmp_q_0 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); + const double tmp_q_1 = abs_det_jac_affine*_data_q_w[q]; + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)))),_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))),_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -144,39 +124,23 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl } for (int64_t ctr_0 = (int64_t)((-ctr_1 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 < -ctr_1 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; double q_acc_2_2 = 0.0; for (int64_t q = 0; q < 3; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q]; - const double tmp_q_2 = jac_affine_inv_0_0*tmp_q_1; - const double tmp_q_3 = jac_affine_inv_1_0*tmp_q_1; - const double tmp_q_5 = jac_affine_inv_0_1*tmp_q_1; - const double tmp_q_6 = jac_affine_inv_1_1*tmp_q_1; - const double tmp_q_7 = abs_det_jac_affine*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_7*(tmp_q_0*(-tmp_q_2 - tmp_q_3) + tmp_q_4*(-tmp_q_5 - tmp_q_6)); - const double res_tmp_0_1 = tmp_q_7*(tmp_q_0*tmp_q_2 + tmp_q_4*tmp_q_5); - const double res_tmp_0_2 = tmp_q_7*(tmp_q_0*tmp_q_3 + tmp_q_4*tmp_q_6); - const double res_tmp_1_1 = tmp_q_7*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_1 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_7*(jac_affine_inv_1_0*tmp_q_2 + jac_affine_inv_1_1*tmp_q_5); - const double res_tmp_2_2 = tmp_q_7*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_1 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q]; + const double tmp_q_1 = abs_det_jac_affine*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-jac_affine_inv_0_0 - jac_affine_inv_1_0)*(-jac_affine_inv_0_0*tmp_q_0 - jac_affine_inv_1_0*tmp_q_0) + (-jac_affine_inv_0_1 - jac_affine_inv_1_1)*(-jac_affine_inv_0_1*tmp_q_0 - jac_affine_inv_1_1*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_0 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_0 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -189,39 +153,23 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 3; q += 1) { - const __m256d tmp_q_1 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_2 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3707,Dummy_3707,Dummy_3707,Dummy_3707)); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3709,Dummy_3709,Dummy_3709,Dummy_3709)); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3708,Dummy_3708,Dummy_3708,Dummy_3708)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3710,Dummy_3710,Dummy_3710,Dummy_3710)); - const double tmp_q_7 = Dummy_3711*_data_q_w[q]; - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3712,Dummy_3712,Dummy_3712,Dummy_3712)),_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_5,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3713,Dummy_3713,Dummy_3713,Dummy_3713))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3712,Dummy_3712,Dummy_3712,Dummy_3712)),_mm256_mul_pd(tmp_q_5,_mm256_set_pd(Dummy_3713,Dummy_3713,Dummy_3713,Dummy_3713))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3712,Dummy_3712,Dummy_3712,Dummy_3712)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3713,Dummy_3713,Dummy_3713,Dummy_3713))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3707,Dummy_3707,Dummy_3707,Dummy_3707),_mm256_set_pd(Dummy_3707,Dummy_3707,Dummy_3707,Dummy_3707))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3708,Dummy_3708,Dummy_3708,Dummy_3708),_mm256_set_pd(Dummy_3708,Dummy_3708,Dummy_3708,Dummy_3708)))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3709,Dummy_3709,Dummy_3709,Dummy_3709)),_mm256_mul_pd(tmp_q_5,_mm256_set_pd(Dummy_3710,Dummy_3710,Dummy_3710,Dummy_3710))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3709,Dummy_3709,Dummy_3709,Dummy_3709),_mm256_set_pd(Dummy_3709,Dummy_3709,Dummy_3709,Dummy_3709))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3710,Dummy_3710,Dummy_3710,Dummy_3710),_mm256_set_pd(Dummy_3710,Dummy_3710,Dummy_3710,Dummy_3710)))),_mm256_set_pd(tmp_q_7,tmp_q_7,tmp_q_7,tmp_q_7)); + const __m256d tmp_q_0 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); + const double tmp_q_1 = Dummy_3711*_data_q_w[q]; + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3707,Dummy_3707,Dummy_3707,Dummy_3707)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3709,Dummy_3709,Dummy_3709,Dummy_3709))),_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3707,Dummy_3707,Dummy_3707,Dummy_3707)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3709,Dummy_3709,Dummy_3709,Dummy_3709)))),_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3708,Dummy_3708,Dummy_3708,Dummy_3708)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3710,Dummy_3710,Dummy_3710,Dummy_3710))),_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3708,Dummy_3708,Dummy_3708,Dummy_3708)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3710,Dummy_3710,Dummy_3710,Dummy_3710))))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3707,Dummy_3707,Dummy_3707,Dummy_3707),_mm256_set_pd(Dummy_3707,Dummy_3707,Dummy_3707,Dummy_3707))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3708,Dummy_3708,Dummy_3708,Dummy_3708),_mm256_set_pd(Dummy_3708,Dummy_3708,Dummy_3708,Dummy_3708)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3709,Dummy_3709,Dummy_3709,Dummy_3709),_mm256_set_pd(Dummy_3709,Dummy_3709,Dummy_3709,Dummy_3709))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3710,Dummy_3710,Dummy_3710,Dummy_3710),_mm256_set_pd(Dummy_3710,Dummy_3710,Dummy_3710,Dummy_3710)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -231,39 +179,23 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl } for (int64_t ctr_0 = (int64_t)((-ctr_1 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; double q_acc_2_2 = 0.0; for (int64_t q = 0; q < 3; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q]; - const double tmp_q_2 = Dummy_3707*tmp_q_1; - const double tmp_q_3 = Dummy_3709*tmp_q_1; - const double tmp_q_5 = Dummy_3708*tmp_q_1; - const double tmp_q_6 = Dummy_3710*tmp_q_1; - const double tmp_q_7 = Dummy_3711*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_7*(Dummy_3712*(-tmp_q_2 - tmp_q_3) + Dummy_3713*(-tmp_q_5 - tmp_q_6)); - const double res_tmp_0_1 = tmp_q_7*(Dummy_3712*tmp_q_2 + Dummy_3713*tmp_q_5); - const double res_tmp_0_2 = tmp_q_7*(Dummy_3712*tmp_q_3 + Dummy_3713*tmp_q_6); - const double res_tmp_1_1 = tmp_q_7*((Dummy_3707*Dummy_3707)*tmp_q_1 + (Dummy_3708*Dummy_3708)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_7*(Dummy_3709*tmp_q_2 + Dummy_3710*tmp_q_5); - const double res_tmp_2_2 = tmp_q_7*((Dummy_3709*Dummy_3709)*tmp_q_1 + (Dummy_3710*Dummy_3710)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q]; + const double tmp_q_1 = Dummy_3711*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3707 - Dummy_3709)*(-Dummy_3707*tmp_q_0 - Dummy_3709*tmp_q_0) + (-Dummy_3708 - Dummy_3710)*(-Dummy_3708*tmp_q_0 - Dummy_3710*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3707*Dummy_3707)*tmp_q_0 + (Dummy_3708*Dummy_3708)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3709*Dummy_3709)*tmp_q_0 + (Dummy_3710*Dummy_3710)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; diff --git a/operators/div_k_grad/avx/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp b/operators/div_k_grad/avx/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp index 5848bab82376d2cb09386bf2c7832a602dadb548..6ffe77c6dbc4f21c5cbf3b01bff9ab8e3cc0e2f6 100644 --- a/operators/div_k_grad/avx/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp +++ b/operators/div_k_grad/avx/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp @@ -57,13 +57,13 @@ namespace operatorgeneration { void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( double * RESTRICT _data_invDiag_, double * RESTRICT _data_k, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -96,239 +96,188 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double jac_affine_inv_2_1 = (-jac_affine_0_0*jac_affine_2_1 + jac_affine_0_1*jac_affine_2_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double jac_affine_inv_2_2 = (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); - const double tmp_q_0 = -jac_affine_inv_0_0 - jac_affine_inv_1_0 - jac_affine_inv_2_0; - const double tmp_q_5 = -jac_affine_inv_0_1 - jac_affine_inv_1_1 - jac_affine_inv_2_1; - const double tmp_q_9 = -jac_affine_inv_0_2 - jac_affine_inv_1_2 - jac_affine_inv_2_2; - const double Dummy_3822 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3823 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3824 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3825 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3826 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3827 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3828 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3829 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3830 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3831 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3832 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3833 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3834 = -Dummy_3822 + Dummy_3825; - const double Dummy_3835 = -Dummy_3822 + Dummy_3828; - const double Dummy_3836 = -Dummy_3822 + Dummy_3831; - const double Dummy_3837 = -Dummy_3823 + Dummy_3826; - const double Dummy_3838 = -Dummy_3823 + Dummy_3829; - const double Dummy_3839 = -Dummy_3823 + Dummy_3832; - const double Dummy_3840 = -Dummy_3824 + Dummy_3827; - const double Dummy_3841 = -Dummy_3824 + Dummy_3830; - const double Dummy_3842 = -Dummy_3824 + Dummy_3833; - const double Dummy_3843 = (Dummy_3838*Dummy_3842 - Dummy_3839*Dummy_3841)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3844 = (-Dummy_3835*Dummy_3842 + Dummy_3836*Dummy_3841)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3845 = (Dummy_3835*Dummy_3839 - Dummy_3836*Dummy_3838)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3846 = (-Dummy_3837*Dummy_3842 + Dummy_3839*Dummy_3840)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3847 = (Dummy_3834*Dummy_3842 - Dummy_3836*Dummy_3840)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3848 = (-Dummy_3834*Dummy_3839 + Dummy_3836*Dummy_3837)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3849 = (Dummy_3837*Dummy_3841 - Dummy_3838*Dummy_3840)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3850 = (-Dummy_3834*Dummy_3841 + Dummy_3835*Dummy_3840)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3851 = (Dummy_3834*Dummy_3838 - Dummy_3835*Dummy_3837)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3852 = fabs(Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3853 = -Dummy_3843 - Dummy_3846 - Dummy_3849; - const double Dummy_3854 = -Dummy_3844 - Dummy_3847 - Dummy_3850; - const double Dummy_3855 = -Dummy_3845 - Dummy_3848 - Dummy_3851; - const double Dummy_3856 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_3857 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_3858 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_3859 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3860 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3861 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3862 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3863 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3864 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3865 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3866 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3867 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3868 = -Dummy_3856 + Dummy_3859; - const double Dummy_3869 = -Dummy_3856 + Dummy_3862; - const double Dummy_3870 = -Dummy_3856 + Dummy_3865; - const double Dummy_3871 = -Dummy_3857 + Dummy_3860; - const double Dummy_3872 = -Dummy_3857 + Dummy_3863; - const double Dummy_3873 = -Dummy_3857 + Dummy_3866; - const double Dummy_3874 = -Dummy_3858 + Dummy_3861; - const double Dummy_3875 = -Dummy_3858 + Dummy_3864; - const double Dummy_3876 = -Dummy_3858 + Dummy_3867; - const double Dummy_3877 = (Dummy_3872*Dummy_3876 - Dummy_3873*Dummy_3875)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3878 = (-Dummy_3869*Dummy_3876 + Dummy_3870*Dummy_3875)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3879 = (Dummy_3869*Dummy_3873 - Dummy_3870*Dummy_3872)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3880 = (-Dummy_3871*Dummy_3876 + Dummy_3873*Dummy_3874)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3881 = (Dummy_3868*Dummy_3876 - Dummy_3870*Dummy_3874)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3882 = (-Dummy_3868*Dummy_3873 + Dummy_3870*Dummy_3871)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3883 = (Dummy_3871*Dummy_3875 - Dummy_3872*Dummy_3874)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3884 = (-Dummy_3868*Dummy_3875 + Dummy_3869*Dummy_3874)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3885 = (Dummy_3868*Dummy_3872 - Dummy_3869*Dummy_3871)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3886 = fabs(Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3887 = -Dummy_3877 - Dummy_3880 - Dummy_3883; - const double Dummy_3888 = -Dummy_3878 - Dummy_3881 - Dummy_3884; - const double Dummy_3889 = -Dummy_3879 - Dummy_3882 - Dummy_3885; - const double Dummy_3890 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3891 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3892 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3893 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3894 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3895 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3896 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3897 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3898 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3899 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3900 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3901 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3902 = -Dummy_3890 + Dummy_3893; - const double Dummy_3903 = -Dummy_3890 + Dummy_3896; - const double Dummy_3904 = -Dummy_3890 + Dummy_3899; - const double Dummy_3905 = -Dummy_3891 + Dummy_3894; - const double Dummy_3906 = -Dummy_3891 + Dummy_3897; - const double Dummy_3907 = -Dummy_3891 + Dummy_3900; - const double Dummy_3908 = -Dummy_3892 + Dummy_3895; - const double Dummy_3909 = -Dummy_3892 + Dummy_3898; - const double Dummy_3910 = -Dummy_3892 + Dummy_3901; - const double Dummy_3911 = (Dummy_3906*Dummy_3910 - Dummy_3907*Dummy_3909)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3912 = (-Dummy_3903*Dummy_3910 + Dummy_3904*Dummy_3909)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3913 = (Dummy_3903*Dummy_3907 - Dummy_3904*Dummy_3906)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3914 = (-Dummy_3905*Dummy_3910 + Dummy_3907*Dummy_3908)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3915 = (Dummy_3902*Dummy_3910 - Dummy_3904*Dummy_3908)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3916 = (-Dummy_3902*Dummy_3907 + Dummy_3904*Dummy_3905)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3917 = (Dummy_3905*Dummy_3909 - Dummy_3906*Dummy_3908)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3918 = (-Dummy_3902*Dummy_3909 + Dummy_3903*Dummy_3908)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3919 = (Dummy_3902*Dummy_3906 - Dummy_3903*Dummy_3905)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3920 = fabs(Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3921 = -Dummy_3911 - Dummy_3914 - Dummy_3917; - const double Dummy_3922 = -Dummy_3912 - Dummy_3915 - Dummy_3918; - const double Dummy_3923 = -Dummy_3913 - Dummy_3916 - Dummy_3919; - const double Dummy_3924 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_3925 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_3926 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_3927 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3928 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3929 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3930 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3931 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3932 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3933 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3934 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3935 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3936 = -Dummy_3924 + Dummy_3927; - const double Dummy_3937 = -Dummy_3924 + Dummy_3930; - const double Dummy_3938 = -Dummy_3924 + Dummy_3933; - const double Dummy_3939 = -Dummy_3925 + Dummy_3928; - const double Dummy_3940 = -Dummy_3925 + Dummy_3931; - const double Dummy_3941 = -Dummy_3925 + Dummy_3934; - const double Dummy_3942 = -Dummy_3926 + Dummy_3929; - const double Dummy_3943 = -Dummy_3926 + Dummy_3932; - const double Dummy_3944 = -Dummy_3926 + Dummy_3935; - const double Dummy_3945 = (Dummy_3940*Dummy_3944 - Dummy_3941*Dummy_3943)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3946 = (-Dummy_3937*Dummy_3944 + Dummy_3938*Dummy_3943)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3947 = (Dummy_3937*Dummy_3941 - Dummy_3938*Dummy_3940)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3948 = (-Dummy_3939*Dummy_3944 + Dummy_3941*Dummy_3942)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3949 = (Dummy_3936*Dummy_3944 - Dummy_3938*Dummy_3942)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3950 = (-Dummy_3936*Dummy_3941 + Dummy_3938*Dummy_3939)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3951 = (Dummy_3939*Dummy_3943 - Dummy_3940*Dummy_3942)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3952 = (-Dummy_3936*Dummy_3943 + Dummy_3937*Dummy_3942)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3953 = (Dummy_3936*Dummy_3940 - Dummy_3937*Dummy_3939)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3954 = fabs(Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3955 = -Dummy_3945 - Dummy_3948 - Dummy_3951; - const double Dummy_3956 = -Dummy_3946 - Dummy_3949 - Dummy_3952; - const double Dummy_3957 = -Dummy_3947 - Dummy_3950 - Dummy_3953; - const double Dummy_3958 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3959 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3960 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3961 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3962 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3963 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3964 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3965 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3966 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3967 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3968 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3969 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3970 = -Dummy_3958 + Dummy_3961; - const double Dummy_3971 = -Dummy_3958 + Dummy_3964; - const double Dummy_3972 = -Dummy_3958 + Dummy_3967; - const double Dummy_3973 = -Dummy_3959 + Dummy_3962; - const double Dummy_3974 = -Dummy_3959 + Dummy_3965; - const double Dummy_3975 = -Dummy_3959 + Dummy_3968; - const double Dummy_3976 = -Dummy_3960 + Dummy_3963; - const double Dummy_3977 = -Dummy_3960 + Dummy_3966; - const double Dummy_3978 = -Dummy_3960 + Dummy_3969; - const double Dummy_3979 = (Dummy_3974*Dummy_3978 - Dummy_3975*Dummy_3977)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3980 = (-Dummy_3971*Dummy_3978 + Dummy_3972*Dummy_3977)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3981 = (Dummy_3971*Dummy_3975 - Dummy_3972*Dummy_3974)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3982 = (-Dummy_3973*Dummy_3978 + Dummy_3975*Dummy_3976)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3983 = (Dummy_3970*Dummy_3978 - Dummy_3972*Dummy_3976)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3984 = (-Dummy_3970*Dummy_3975 + Dummy_3972*Dummy_3973)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3985 = (Dummy_3973*Dummy_3977 - Dummy_3974*Dummy_3976)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3986 = (-Dummy_3970*Dummy_3977 + Dummy_3971*Dummy_3976)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3987 = (Dummy_3970*Dummy_3974 - Dummy_3971*Dummy_3973)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3988 = fabs(Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3989 = -Dummy_3979 - Dummy_3982 - Dummy_3985; - const double Dummy_3990 = -Dummy_3980 - Dummy_3983 - Dummy_3986; - const double Dummy_3991 = -Dummy_3981 - Dummy_3984 - Dummy_3987; + const double Dummy_3820 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3821 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3822 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3823 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3824 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3825 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3826 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3827 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3828 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3829 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3830 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3831 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3832 = -Dummy_3820 + Dummy_3823; + const double Dummy_3833 = -Dummy_3820 + Dummy_3826; + const double Dummy_3834 = -Dummy_3820 + Dummy_3829; + const double Dummy_3835 = -Dummy_3821 + Dummy_3824; + const double Dummy_3836 = -Dummy_3821 + Dummy_3827; + const double Dummy_3837 = -Dummy_3821 + Dummy_3830; + const double Dummy_3838 = -Dummy_3822 + Dummy_3825; + const double Dummy_3839 = -Dummy_3822 + Dummy_3828; + const double Dummy_3840 = -Dummy_3822 + Dummy_3831; + const double Dummy_3841 = (Dummy_3836*Dummy_3840 - Dummy_3837*Dummy_3839)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3842 = (-Dummy_3833*Dummy_3840 + Dummy_3834*Dummy_3839)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3843 = (Dummy_3833*Dummy_3837 - Dummy_3834*Dummy_3836)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3844 = (-Dummy_3835*Dummy_3840 + Dummy_3837*Dummy_3838)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3845 = (Dummy_3832*Dummy_3840 - Dummy_3834*Dummy_3838)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3846 = (-Dummy_3832*Dummy_3837 + Dummy_3834*Dummy_3835)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3847 = (Dummy_3835*Dummy_3839 - Dummy_3836*Dummy_3838)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3848 = (-Dummy_3832*Dummy_3839 + Dummy_3833*Dummy_3838)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3849 = (Dummy_3832*Dummy_3836 - Dummy_3833*Dummy_3835)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3850 = fabs(Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3851 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_3852 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_3853 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_3854 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3855 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3856 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3857 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3858 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3859 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3860 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3861 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3862 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3863 = -Dummy_3851 + Dummy_3854; + const double Dummy_3864 = -Dummy_3851 + Dummy_3857; + const double Dummy_3865 = -Dummy_3851 + Dummy_3860; + const double Dummy_3866 = -Dummy_3852 + Dummy_3855; + const double Dummy_3867 = -Dummy_3852 + Dummy_3858; + const double Dummy_3868 = -Dummy_3852 + Dummy_3861; + const double Dummy_3869 = -Dummy_3853 + Dummy_3856; + const double Dummy_3870 = -Dummy_3853 + Dummy_3859; + const double Dummy_3871 = -Dummy_3853 + Dummy_3862; + const double Dummy_3872 = (Dummy_3867*Dummy_3871 - Dummy_3868*Dummy_3870)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3873 = (-Dummy_3864*Dummy_3871 + Dummy_3865*Dummy_3870)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3874 = (Dummy_3864*Dummy_3868 - Dummy_3865*Dummy_3867)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3875 = (-Dummy_3866*Dummy_3871 + Dummy_3868*Dummy_3869)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3876 = (Dummy_3863*Dummy_3871 - Dummy_3865*Dummy_3869)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3877 = (-Dummy_3863*Dummy_3868 + Dummy_3865*Dummy_3866)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3878 = (Dummy_3866*Dummy_3870 - Dummy_3867*Dummy_3869)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3879 = (-Dummy_3863*Dummy_3870 + Dummy_3864*Dummy_3869)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3880 = (Dummy_3863*Dummy_3867 - Dummy_3864*Dummy_3866)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3881 = fabs(Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3882 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3883 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3884 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3885 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3886 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3887 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3888 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3889 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3890 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3891 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3892 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3893 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3894 = -Dummy_3882 + Dummy_3885; + const double Dummy_3895 = -Dummy_3882 + Dummy_3888; + const double Dummy_3896 = -Dummy_3882 + Dummy_3891; + const double Dummy_3897 = -Dummy_3883 + Dummy_3886; + const double Dummy_3898 = -Dummy_3883 + Dummy_3889; + const double Dummy_3899 = -Dummy_3883 + Dummy_3892; + const double Dummy_3900 = -Dummy_3884 + Dummy_3887; + const double Dummy_3901 = -Dummy_3884 + Dummy_3890; + const double Dummy_3902 = -Dummy_3884 + Dummy_3893; + const double Dummy_3903 = (Dummy_3898*Dummy_3902 - Dummy_3899*Dummy_3901)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3904 = (-Dummy_3895*Dummy_3902 + Dummy_3896*Dummy_3901)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3905 = (Dummy_3895*Dummy_3899 - Dummy_3896*Dummy_3898)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3906 = (-Dummy_3897*Dummy_3902 + Dummy_3899*Dummy_3900)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3907 = (Dummy_3894*Dummy_3902 - Dummy_3896*Dummy_3900)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3908 = (-Dummy_3894*Dummy_3899 + Dummy_3896*Dummy_3897)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3909 = (Dummy_3897*Dummy_3901 - Dummy_3898*Dummy_3900)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3910 = (-Dummy_3894*Dummy_3901 + Dummy_3895*Dummy_3900)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3911 = (Dummy_3894*Dummy_3898 - Dummy_3895*Dummy_3897)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3912 = fabs(Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3913 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_3914 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_3915 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_3916 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3917 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3918 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3919 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3920 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3921 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3922 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3923 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3924 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3925 = -Dummy_3913 + Dummy_3916; + const double Dummy_3926 = -Dummy_3913 + Dummy_3919; + const double Dummy_3927 = -Dummy_3913 + Dummy_3922; + const double Dummy_3928 = -Dummy_3914 + Dummy_3917; + const double Dummy_3929 = -Dummy_3914 + Dummy_3920; + const double Dummy_3930 = -Dummy_3914 + Dummy_3923; + const double Dummy_3931 = -Dummy_3915 + Dummy_3918; + const double Dummy_3932 = -Dummy_3915 + Dummy_3921; + const double Dummy_3933 = -Dummy_3915 + Dummy_3924; + const double Dummy_3934 = (Dummy_3929*Dummy_3933 - Dummy_3930*Dummy_3932)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3935 = (-Dummy_3926*Dummy_3933 + Dummy_3927*Dummy_3932)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3936 = (Dummy_3926*Dummy_3930 - Dummy_3927*Dummy_3929)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3937 = (-Dummy_3928*Dummy_3933 + Dummy_3930*Dummy_3931)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3938 = (Dummy_3925*Dummy_3933 - Dummy_3927*Dummy_3931)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3939 = (-Dummy_3925*Dummy_3930 + Dummy_3927*Dummy_3928)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3940 = (Dummy_3928*Dummy_3932 - Dummy_3929*Dummy_3931)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3941 = (-Dummy_3925*Dummy_3932 + Dummy_3926*Dummy_3931)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3942 = (Dummy_3925*Dummy_3929 - Dummy_3926*Dummy_3928)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3943 = fabs(Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3944 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3945 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3946 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3947 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3948 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3949 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3950 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3951 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3952 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3953 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3954 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3955 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3956 = -Dummy_3944 + Dummy_3947; + const double Dummy_3957 = -Dummy_3944 + Dummy_3950; + const double Dummy_3958 = -Dummy_3944 + Dummy_3953; + const double Dummy_3959 = -Dummy_3945 + Dummy_3948; + const double Dummy_3960 = -Dummy_3945 + Dummy_3951; + const double Dummy_3961 = -Dummy_3945 + Dummy_3954; + const double Dummy_3962 = -Dummy_3946 + Dummy_3949; + const double Dummy_3963 = -Dummy_3946 + Dummy_3952; + const double Dummy_3964 = -Dummy_3946 + Dummy_3955; + const double Dummy_3965 = (Dummy_3960*Dummy_3964 - Dummy_3961*Dummy_3963)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3966 = (-Dummy_3957*Dummy_3964 + Dummy_3958*Dummy_3963)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3967 = (Dummy_3957*Dummy_3961 - Dummy_3958*Dummy_3960)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3968 = (-Dummy_3959*Dummy_3964 + Dummy_3961*Dummy_3962)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3969 = (Dummy_3956*Dummy_3964 - Dummy_3958*Dummy_3962)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3970 = (-Dummy_3956*Dummy_3961 + Dummy_3958*Dummy_3959)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3971 = (Dummy_3959*Dummy_3963 - Dummy_3960*Dummy_3962)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3972 = (-Dummy_3956*Dummy_3963 + Dummy_3957*Dummy_3962)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3973 = (Dummy_3956*Dummy_3960 - Dummy_3957*Dummy_3959)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3974 = fabs(Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); { for (int64_t ctr_2 = 0; ctr_2 < micro_edges_per_macro_edge; ctr_2 += 1) for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { - const __m256d tmp_q_1 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); - const __m256d tmp_q_2 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); - const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)); - const double tmp_q_13 = abs_det_jac_affine*_data_q_w[q]; - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(tmp_q_9,tmp_q_9,tmp_q_9,tmp_q_9)),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_4,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(tmp_q_0,tmp_q_0,tmp_q_0,tmp_q_0))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(tmp_q_5,tmp_q_5,tmp_q_5,tmp_q_5))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(tmp_q_0,tmp_q_0,tmp_q_0,tmp_q_0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(tmp_q_5,tmp_q_5,tmp_q_5,tmp_q_5))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(tmp_q_9,tmp_q_9,tmp_q_9,tmp_q_9))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(tmp_q_0,tmp_q_0,tmp_q_0,tmp_q_0)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(tmp_q_5,tmp_q_5,tmp_q_5,tmp_q_5))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(tmp_q_9,tmp_q_9,tmp_q_9,tmp_q_9))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_4,_mm256_set_pd(tmp_q_0,tmp_q_0,tmp_q_0,tmp_q_0)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(tmp_q_5,tmp_q_5,tmp_q_5,tmp_q_5))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(tmp_q_9,tmp_q_9,tmp_q_9,tmp_q_9))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2),_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2),_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0),_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1),_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2),_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d tmp_q_0 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); + const double tmp_q_1 = abs_det_jac_affine*_data_q_w[q]; + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2))))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2),_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2),_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0),_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1),_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2),_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -340,60 +289,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl } for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = jac_affine_inv_0_0*tmp_q_1; - const double tmp_q_3 = jac_affine_inv_1_0*tmp_q_1; - const double tmp_q_4 = jac_affine_inv_2_0*tmp_q_1; - const double tmp_q_6 = jac_affine_inv_0_1*tmp_q_1; - const double tmp_q_7 = jac_affine_inv_1_1*tmp_q_1; - const double tmp_q_8 = jac_affine_inv_2_1*tmp_q_1; - const double tmp_q_10 = jac_affine_inv_0_2*tmp_q_1; - const double tmp_q_11 = jac_affine_inv_1_2*tmp_q_1; - const double tmp_q_12 = jac_affine_inv_2_2*tmp_q_1; - const double tmp_q_13 = abs_det_jac_affine*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(tmp_q_0*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + tmp_q_5*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + tmp_q_9*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(tmp_q_0*tmp_q_2 + tmp_q_10*tmp_q_9 + tmp_q_5*tmp_q_6); - const double res_tmp_0_2 = tmp_q_13*(tmp_q_0*tmp_q_3 + tmp_q_11*tmp_q_9 + tmp_q_5*tmp_q_7); - const double res_tmp_0_3 = tmp_q_13*(tmp_q_0*tmp_q_4 + tmp_q_12*tmp_q_9 + tmp_q_5*tmp_q_8); - const double res_tmp_1_1 = tmp_q_13*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_1 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_1 + (jac_affine_inv_0_2*jac_affine_inv_0_2)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(jac_affine_inv_1_0*tmp_q_2 + jac_affine_inv_1_1*tmp_q_6 + jac_affine_inv_1_2*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(jac_affine_inv_2_0*tmp_q_2 + jac_affine_inv_2_1*tmp_q_6 + jac_affine_inv_2_2*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_1 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_1 + (jac_affine_inv_1_2*jac_affine_inv_1_2)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(jac_affine_inv_2_0*tmp_q_3 + jac_affine_inv_2_1*tmp_q_7 + jac_affine_inv_2_2*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((jac_affine_inv_2_0*jac_affine_inv_2_0)*tmp_q_1 + (jac_affine_inv_2_1*jac_affine_inv_2_1)*tmp_q_1 + (jac_affine_inv_2_2*jac_affine_inv_2_2)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = abs_det_jac_affine*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-jac_affine_inv_0_0 - jac_affine_inv_1_0 - jac_affine_inv_2_0)*(-jac_affine_inv_0_0*tmp_q_0 - jac_affine_inv_1_0*tmp_q_0 - jac_affine_inv_2_0*tmp_q_0) + (-jac_affine_inv_0_1 - jac_affine_inv_1_1 - jac_affine_inv_2_1)*(-jac_affine_inv_0_1*tmp_q_0 - jac_affine_inv_1_1*tmp_q_0 - jac_affine_inv_2_1*tmp_q_0) + (-jac_affine_inv_0_2 - jac_affine_inv_1_2 - jac_affine_inv_2_2)*(-jac_affine_inv_0_2*tmp_q_0 - jac_affine_inv_1_2*tmp_q_0 - jac_affine_inv_2_2*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_0 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_0 + (jac_affine_inv_0_2*jac_affine_inv_0_2)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_0 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_0 + (jac_affine_inv_1_2*jac_affine_inv_1_2)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((jac_affine_inv_2_0*jac_affine_inv_2_0)*tmp_q_0 + (jac_affine_inv_2_1*jac_affine_inv_2_1)*tmp_q_0 + (jac_affine_inv_2_2*jac_affine_inv_2_2)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -409,60 +325,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { - const __m256d tmp_q_1 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); - const __m256d tmp_q_2 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3843,Dummy_3843,Dummy_3843,Dummy_3843)); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3846,Dummy_3846,Dummy_3846,Dummy_3846)); - const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3844,Dummy_3844,Dummy_3844,Dummy_3844)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3847,Dummy_3847,Dummy_3847,Dummy_3847)); - const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3850,Dummy_3850,Dummy_3850,Dummy_3850)); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3845,Dummy_3845,Dummy_3845,Dummy_3845)); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3848,Dummy_3848,Dummy_3848,Dummy_3848)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3851,Dummy_3851,Dummy_3851,Dummy_3851)); - const double tmp_q_13 = Dummy_3852*_data_q_w[q]; - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3855,Dummy_3855,Dummy_3855,Dummy_3855)),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_4,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3853,Dummy_3853,Dummy_3853,Dummy_3853))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3854,Dummy_3854,Dummy_3854,Dummy_3854))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3853,Dummy_3853,Dummy_3853,Dummy_3853)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3854,Dummy_3854,Dummy_3854,Dummy_3854))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3855,Dummy_3855,Dummy_3855,Dummy_3855))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3853,Dummy_3853,Dummy_3853,Dummy_3853)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3854,Dummy_3854,Dummy_3854,Dummy_3854))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3855,Dummy_3855,Dummy_3855,Dummy_3855))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_3853,Dummy_3853,Dummy_3853,Dummy_3853)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(Dummy_3854,Dummy_3854,Dummy_3854,Dummy_3854))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(Dummy_3855,Dummy_3855,Dummy_3855,Dummy_3855))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3843,Dummy_3843,Dummy_3843,Dummy_3843),_mm256_set_pd(Dummy_3843,Dummy_3843,Dummy_3843,Dummy_3843))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3844,Dummy_3844,Dummy_3844,Dummy_3844),_mm256_set_pd(Dummy_3844,Dummy_3844,Dummy_3844,Dummy_3844)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3845,Dummy_3845,Dummy_3845,Dummy_3845),_mm256_set_pd(Dummy_3845,Dummy_3845,Dummy_3845,Dummy_3845)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3846,Dummy_3846,Dummy_3846,Dummy_3846)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3847,Dummy_3847,Dummy_3847,Dummy_3847))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3848,Dummy_3848,Dummy_3848,Dummy_3848))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3850,Dummy_3850,Dummy_3850,Dummy_3850))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3851,Dummy_3851,Dummy_3851,Dummy_3851))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3846,Dummy_3846,Dummy_3846,Dummy_3846),_mm256_set_pd(Dummy_3846,Dummy_3846,Dummy_3846,Dummy_3846))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3847,Dummy_3847,Dummy_3847,Dummy_3847),_mm256_set_pd(Dummy_3847,Dummy_3847,Dummy_3847,Dummy_3847)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3848,Dummy_3848,Dummy_3848,Dummy_3848),_mm256_set_pd(Dummy_3848,Dummy_3848,Dummy_3848,Dummy_3848)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3850,Dummy_3850,Dummy_3850,Dummy_3850))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3851,Dummy_3851,Dummy_3851,Dummy_3851))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849),_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3850,Dummy_3850,Dummy_3850,Dummy_3850),_mm256_set_pd(Dummy_3850,Dummy_3850,Dummy_3850,Dummy_3850)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3851,Dummy_3851,Dummy_3851,Dummy_3851),_mm256_set_pd(Dummy_3851,Dummy_3851,Dummy_3851,Dummy_3851)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d tmp_q_0 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); + const double tmp_q_1 = Dummy_3850*_data_q_w[q]; + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3841,Dummy_3841,Dummy_3841,Dummy_3841)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3844,Dummy_3844,Dummy_3844,Dummy_3844))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3847,Dummy_3847,Dummy_3847,Dummy_3847))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3841,Dummy_3841,Dummy_3841,Dummy_3841)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3844,Dummy_3844,Dummy_3844,Dummy_3844))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3847,Dummy_3847,Dummy_3847,Dummy_3847)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3842,Dummy_3842,Dummy_3842,Dummy_3842)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3845,Dummy_3845,Dummy_3845,Dummy_3845))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3848,Dummy_3848,Dummy_3848,Dummy_3848))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3842,Dummy_3842,Dummy_3842,Dummy_3842)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3845,Dummy_3845,Dummy_3845,Dummy_3845))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3848,Dummy_3848,Dummy_3848,Dummy_3848))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3843,Dummy_3843,Dummy_3843,Dummy_3843)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3846,Dummy_3846,Dummy_3846,Dummy_3846))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3843,Dummy_3843,Dummy_3843,Dummy_3843)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3846,Dummy_3846,Dummy_3846,Dummy_3846))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849))))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3841,Dummy_3841,Dummy_3841,Dummy_3841),_mm256_set_pd(Dummy_3841,Dummy_3841,Dummy_3841,Dummy_3841))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3842,Dummy_3842,Dummy_3842,Dummy_3842),_mm256_set_pd(Dummy_3842,Dummy_3842,Dummy_3842,Dummy_3842)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3843,Dummy_3843,Dummy_3843,Dummy_3843),_mm256_set_pd(Dummy_3843,Dummy_3843,Dummy_3843,Dummy_3843)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3844,Dummy_3844,Dummy_3844,Dummy_3844),_mm256_set_pd(Dummy_3844,Dummy_3844,Dummy_3844,Dummy_3844))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3845,Dummy_3845,Dummy_3845,Dummy_3845),_mm256_set_pd(Dummy_3845,Dummy_3845,Dummy_3845,Dummy_3845)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3846,Dummy_3846,Dummy_3846,Dummy_3846),_mm256_set_pd(Dummy_3846,Dummy_3846,Dummy_3846,Dummy_3846)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3847,Dummy_3847,Dummy_3847,Dummy_3847),_mm256_set_pd(Dummy_3847,Dummy_3847,Dummy_3847,Dummy_3847))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3848,Dummy_3848,Dummy_3848,Dummy_3848),_mm256_set_pd(Dummy_3848,Dummy_3848,Dummy_3848,Dummy_3848)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849),_mm256_set_pd(Dummy_3849,Dummy_3849,Dummy_3849,Dummy_3849)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -474,60 +357,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl } for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3843*tmp_q_1; - const double tmp_q_3 = Dummy_3846*tmp_q_1; - const double tmp_q_4 = Dummy_3849*tmp_q_1; - const double tmp_q_6 = Dummy_3844*tmp_q_1; - const double tmp_q_7 = Dummy_3847*tmp_q_1; - const double tmp_q_8 = Dummy_3850*tmp_q_1; - const double tmp_q_10 = Dummy_3845*tmp_q_1; - const double tmp_q_11 = Dummy_3848*tmp_q_1; - const double tmp_q_12 = Dummy_3851*tmp_q_1; - const double tmp_q_13 = Dummy_3852*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3853*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3854*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3855*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3853*tmp_q_2 + Dummy_3854*tmp_q_6 + Dummy_3855*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3853*tmp_q_3 + Dummy_3854*tmp_q_7 + Dummy_3855*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3853*tmp_q_4 + Dummy_3854*tmp_q_8 + Dummy_3855*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3843*Dummy_3843)*tmp_q_1 + (Dummy_3844*Dummy_3844)*tmp_q_1 + (Dummy_3845*Dummy_3845)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3846*tmp_q_2 + Dummy_3847*tmp_q_6 + Dummy_3848*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3849*tmp_q_2 + Dummy_3850*tmp_q_6 + Dummy_3851*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3846*Dummy_3846)*tmp_q_1 + (Dummy_3847*Dummy_3847)*tmp_q_1 + (Dummy_3848*Dummy_3848)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3849*tmp_q_3 + Dummy_3850*tmp_q_7 + Dummy_3851*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3849*Dummy_3849)*tmp_q_1 + (Dummy_3850*Dummy_3850)*tmp_q_1 + (Dummy_3851*Dummy_3851)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3850*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3841 - Dummy_3844 - Dummy_3847)*(-Dummy_3841*tmp_q_0 - Dummy_3844*tmp_q_0 - Dummy_3847*tmp_q_0) + (-Dummy_3842 - Dummy_3845 - Dummy_3848)*(-Dummy_3842*tmp_q_0 - Dummy_3845*tmp_q_0 - Dummy_3848*tmp_q_0) + (-Dummy_3843 - Dummy_3846 - Dummy_3849)*(-Dummy_3843*tmp_q_0 - Dummy_3846*tmp_q_0 - Dummy_3849*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3841*Dummy_3841)*tmp_q_0 + (Dummy_3842*Dummy_3842)*tmp_q_0 + (Dummy_3843*Dummy_3843)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3844*Dummy_3844)*tmp_q_0 + (Dummy_3845*Dummy_3845)*tmp_q_0 + (Dummy_3846*Dummy_3846)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3847*Dummy_3847)*tmp_q_0 + (Dummy_3848*Dummy_3848)*tmp_q_0 + (Dummy_3849*Dummy_3849)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -543,60 +393,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { - const __m256d tmp_q_1 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); - const __m256d tmp_q_2 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3877,Dummy_3877,Dummy_3877,Dummy_3877)); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3880,Dummy_3880,Dummy_3880,Dummy_3880)); - const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3883,Dummy_3883,Dummy_3883,Dummy_3883)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3878,Dummy_3878,Dummy_3878,Dummy_3878)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3881,Dummy_3881,Dummy_3881,Dummy_3881)); - const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3884,Dummy_3884,Dummy_3884,Dummy_3884)); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3879,Dummy_3879,Dummy_3879,Dummy_3879)); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3882,Dummy_3882,Dummy_3882,Dummy_3882)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3885,Dummy_3885,Dummy_3885,Dummy_3885)); - const double tmp_q_13 = Dummy_3886*_data_q_w[q]; - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3889,Dummy_3889,Dummy_3889,Dummy_3889)),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_4,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3887,Dummy_3887,Dummy_3887,Dummy_3887))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3888,Dummy_3888,Dummy_3888,Dummy_3888))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3887,Dummy_3887,Dummy_3887,Dummy_3887)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3888,Dummy_3888,Dummy_3888,Dummy_3888))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3889,Dummy_3889,Dummy_3889,Dummy_3889))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3887,Dummy_3887,Dummy_3887,Dummy_3887)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3888,Dummy_3888,Dummy_3888,Dummy_3888))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3889,Dummy_3889,Dummy_3889,Dummy_3889))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_3887,Dummy_3887,Dummy_3887,Dummy_3887)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(Dummy_3888,Dummy_3888,Dummy_3888,Dummy_3888))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(Dummy_3889,Dummy_3889,Dummy_3889,Dummy_3889))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3877,Dummy_3877,Dummy_3877,Dummy_3877),_mm256_set_pd(Dummy_3877,Dummy_3877,Dummy_3877,Dummy_3877))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3878,Dummy_3878,Dummy_3878,Dummy_3878),_mm256_set_pd(Dummy_3878,Dummy_3878,Dummy_3878,Dummy_3878)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3879,Dummy_3879,Dummy_3879,Dummy_3879),_mm256_set_pd(Dummy_3879,Dummy_3879,Dummy_3879,Dummy_3879)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3880,Dummy_3880,Dummy_3880,Dummy_3880)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3881,Dummy_3881,Dummy_3881,Dummy_3881))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3882,Dummy_3882,Dummy_3882,Dummy_3882))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3883,Dummy_3883,Dummy_3883,Dummy_3883)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3884,Dummy_3884,Dummy_3884,Dummy_3884))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3885,Dummy_3885,Dummy_3885,Dummy_3885))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3880,Dummy_3880,Dummy_3880,Dummy_3880),_mm256_set_pd(Dummy_3880,Dummy_3880,Dummy_3880,Dummy_3880))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3881,Dummy_3881,Dummy_3881,Dummy_3881),_mm256_set_pd(Dummy_3881,Dummy_3881,Dummy_3881,Dummy_3881)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3882,Dummy_3882,Dummy_3882,Dummy_3882),_mm256_set_pd(Dummy_3882,Dummy_3882,Dummy_3882,Dummy_3882)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3883,Dummy_3883,Dummy_3883,Dummy_3883)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3884,Dummy_3884,Dummy_3884,Dummy_3884))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3885,Dummy_3885,Dummy_3885,Dummy_3885))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3883,Dummy_3883,Dummy_3883,Dummy_3883),_mm256_set_pd(Dummy_3883,Dummy_3883,Dummy_3883,Dummy_3883))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3884,Dummy_3884,Dummy_3884,Dummy_3884),_mm256_set_pd(Dummy_3884,Dummy_3884,Dummy_3884,Dummy_3884)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3885,Dummy_3885,Dummy_3885,Dummy_3885),_mm256_set_pd(Dummy_3885,Dummy_3885,Dummy_3885,Dummy_3885)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d tmp_q_0 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); + const double tmp_q_1 = Dummy_3881*_data_q_w[q]; + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3872,Dummy_3872,Dummy_3872,Dummy_3872)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3875,Dummy_3875,Dummy_3875,Dummy_3875))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3878,Dummy_3878,Dummy_3878,Dummy_3878))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3872,Dummy_3872,Dummy_3872,Dummy_3872)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3875,Dummy_3875,Dummy_3875,Dummy_3875))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3878,Dummy_3878,Dummy_3878,Dummy_3878)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3873,Dummy_3873,Dummy_3873,Dummy_3873)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3876,Dummy_3876,Dummy_3876,Dummy_3876))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3879,Dummy_3879,Dummy_3879,Dummy_3879))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3873,Dummy_3873,Dummy_3873,Dummy_3873)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3876,Dummy_3876,Dummy_3876,Dummy_3876))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3879,Dummy_3879,Dummy_3879,Dummy_3879))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3874,Dummy_3874,Dummy_3874,Dummy_3874)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3877,Dummy_3877,Dummy_3877,Dummy_3877))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3880,Dummy_3880,Dummy_3880,Dummy_3880))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3874,Dummy_3874,Dummy_3874,Dummy_3874)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3877,Dummy_3877,Dummy_3877,Dummy_3877))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3880,Dummy_3880,Dummy_3880,Dummy_3880))))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3872,Dummy_3872,Dummy_3872,Dummy_3872),_mm256_set_pd(Dummy_3872,Dummy_3872,Dummy_3872,Dummy_3872))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3873,Dummy_3873,Dummy_3873,Dummy_3873),_mm256_set_pd(Dummy_3873,Dummy_3873,Dummy_3873,Dummy_3873)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3874,Dummy_3874,Dummy_3874,Dummy_3874),_mm256_set_pd(Dummy_3874,Dummy_3874,Dummy_3874,Dummy_3874)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3875,Dummy_3875,Dummy_3875,Dummy_3875),_mm256_set_pd(Dummy_3875,Dummy_3875,Dummy_3875,Dummy_3875))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3876,Dummy_3876,Dummy_3876,Dummy_3876),_mm256_set_pd(Dummy_3876,Dummy_3876,Dummy_3876,Dummy_3876)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3877,Dummy_3877,Dummy_3877,Dummy_3877),_mm256_set_pd(Dummy_3877,Dummy_3877,Dummy_3877,Dummy_3877)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3878,Dummy_3878,Dummy_3878,Dummy_3878),_mm256_set_pd(Dummy_3878,Dummy_3878,Dummy_3878,Dummy_3878))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3879,Dummy_3879,Dummy_3879,Dummy_3879),_mm256_set_pd(Dummy_3879,Dummy_3879,Dummy_3879,Dummy_3879)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3880,Dummy_3880,Dummy_3880,Dummy_3880),_mm256_set_pd(Dummy_3880,Dummy_3880,Dummy_3880,Dummy_3880)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -608,60 +425,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl } for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3877*tmp_q_1; - const double tmp_q_3 = Dummy_3880*tmp_q_1; - const double tmp_q_4 = Dummy_3883*tmp_q_1; - const double tmp_q_6 = Dummy_3878*tmp_q_1; - const double tmp_q_7 = Dummy_3881*tmp_q_1; - const double tmp_q_8 = Dummy_3884*tmp_q_1; - const double tmp_q_10 = Dummy_3879*tmp_q_1; - const double tmp_q_11 = Dummy_3882*tmp_q_1; - const double tmp_q_12 = Dummy_3885*tmp_q_1; - const double tmp_q_13 = Dummy_3886*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3887*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3888*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3889*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3887*tmp_q_2 + Dummy_3888*tmp_q_6 + Dummy_3889*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3887*tmp_q_3 + Dummy_3888*tmp_q_7 + Dummy_3889*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3887*tmp_q_4 + Dummy_3888*tmp_q_8 + Dummy_3889*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3877*Dummy_3877)*tmp_q_1 + (Dummy_3878*Dummy_3878)*tmp_q_1 + (Dummy_3879*Dummy_3879)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3880*tmp_q_2 + Dummy_3881*tmp_q_6 + Dummy_3882*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3883*tmp_q_2 + Dummy_3884*tmp_q_6 + Dummy_3885*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3880*Dummy_3880)*tmp_q_1 + (Dummy_3881*Dummy_3881)*tmp_q_1 + (Dummy_3882*Dummy_3882)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3883*tmp_q_3 + Dummy_3884*tmp_q_7 + Dummy_3885*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3883*Dummy_3883)*tmp_q_1 + (Dummy_3884*Dummy_3884)*tmp_q_1 + (Dummy_3885*Dummy_3885)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3881*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3872 - Dummy_3875 - Dummy_3878)*(-Dummy_3872*tmp_q_0 - Dummy_3875*tmp_q_0 - Dummy_3878*tmp_q_0) + (-Dummy_3873 - Dummy_3876 - Dummy_3879)*(-Dummy_3873*tmp_q_0 - Dummy_3876*tmp_q_0 - Dummy_3879*tmp_q_0) + (-Dummy_3874 - Dummy_3877 - Dummy_3880)*(-Dummy_3874*tmp_q_0 - Dummy_3877*tmp_q_0 - Dummy_3880*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3872*Dummy_3872)*tmp_q_0 + (Dummy_3873*Dummy_3873)*tmp_q_0 + (Dummy_3874*Dummy_3874)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3875*Dummy_3875)*tmp_q_0 + (Dummy_3876*Dummy_3876)*tmp_q_0 + (Dummy_3877*Dummy_3877)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3878*Dummy_3878)*tmp_q_0 + (Dummy_3879*Dummy_3879)*tmp_q_0 + (Dummy_3880*Dummy_3880)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -677,60 +461,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { - const __m256d tmp_q_1 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); - const __m256d tmp_q_2 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3911,Dummy_3911,Dummy_3911,Dummy_3911)); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3914,Dummy_3914,Dummy_3914,Dummy_3914)); - const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3917,Dummy_3917,Dummy_3917,Dummy_3917)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3912,Dummy_3912,Dummy_3912,Dummy_3912)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3915,Dummy_3915,Dummy_3915,Dummy_3915)); - const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3918,Dummy_3918,Dummy_3918,Dummy_3918)); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3913,Dummy_3913,Dummy_3913,Dummy_3913)); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3916,Dummy_3916,Dummy_3916,Dummy_3916)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3919,Dummy_3919,Dummy_3919,Dummy_3919)); - const double tmp_q_13 = Dummy_3920*_data_q_w[q]; - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3923,Dummy_3923,Dummy_3923,Dummy_3923)),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_4,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3921,Dummy_3921,Dummy_3921,Dummy_3921))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3922,Dummy_3922,Dummy_3922,Dummy_3922))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3921,Dummy_3921,Dummy_3921,Dummy_3921)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3922,Dummy_3922,Dummy_3922,Dummy_3922))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3923,Dummy_3923,Dummy_3923,Dummy_3923))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3921,Dummy_3921,Dummy_3921,Dummy_3921)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3922,Dummy_3922,Dummy_3922,Dummy_3922))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3923,Dummy_3923,Dummy_3923,Dummy_3923))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_3921,Dummy_3921,Dummy_3921,Dummy_3921)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(Dummy_3922,Dummy_3922,Dummy_3922,Dummy_3922))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(Dummy_3923,Dummy_3923,Dummy_3923,Dummy_3923))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3911,Dummy_3911,Dummy_3911,Dummy_3911),_mm256_set_pd(Dummy_3911,Dummy_3911,Dummy_3911,Dummy_3911))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3912,Dummy_3912,Dummy_3912,Dummy_3912),_mm256_set_pd(Dummy_3912,Dummy_3912,Dummy_3912,Dummy_3912)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3913,Dummy_3913,Dummy_3913,Dummy_3913),_mm256_set_pd(Dummy_3913,Dummy_3913,Dummy_3913,Dummy_3913)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3914,Dummy_3914,Dummy_3914,Dummy_3914)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3915,Dummy_3915,Dummy_3915,Dummy_3915))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3916,Dummy_3916,Dummy_3916,Dummy_3916))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3917,Dummy_3917,Dummy_3917,Dummy_3917)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3918,Dummy_3918,Dummy_3918,Dummy_3918))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3919,Dummy_3919,Dummy_3919,Dummy_3919))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3914,Dummy_3914,Dummy_3914,Dummy_3914),_mm256_set_pd(Dummy_3914,Dummy_3914,Dummy_3914,Dummy_3914))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3915,Dummy_3915,Dummy_3915,Dummy_3915),_mm256_set_pd(Dummy_3915,Dummy_3915,Dummy_3915,Dummy_3915)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3916,Dummy_3916,Dummy_3916,Dummy_3916),_mm256_set_pd(Dummy_3916,Dummy_3916,Dummy_3916,Dummy_3916)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3917,Dummy_3917,Dummy_3917,Dummy_3917)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3918,Dummy_3918,Dummy_3918,Dummy_3918))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3919,Dummy_3919,Dummy_3919,Dummy_3919))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3917,Dummy_3917,Dummy_3917,Dummy_3917),_mm256_set_pd(Dummy_3917,Dummy_3917,Dummy_3917,Dummy_3917))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3918,Dummy_3918,Dummy_3918,Dummy_3918),_mm256_set_pd(Dummy_3918,Dummy_3918,Dummy_3918,Dummy_3918)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3919,Dummy_3919,Dummy_3919,Dummy_3919),_mm256_set_pd(Dummy_3919,Dummy_3919,Dummy_3919,Dummy_3919)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d tmp_q_0 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); + const double tmp_q_1 = Dummy_3912*_data_q_w[q]; + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3903,Dummy_3903,Dummy_3903,Dummy_3903)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3906,Dummy_3906,Dummy_3906,Dummy_3906))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3909,Dummy_3909,Dummy_3909,Dummy_3909))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3903,Dummy_3903,Dummy_3903,Dummy_3903)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3906,Dummy_3906,Dummy_3906,Dummy_3906))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3909,Dummy_3909,Dummy_3909,Dummy_3909)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3904,Dummy_3904,Dummy_3904,Dummy_3904)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3907,Dummy_3907,Dummy_3907,Dummy_3907))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3910,Dummy_3910,Dummy_3910,Dummy_3910))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3904,Dummy_3904,Dummy_3904,Dummy_3904)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3907,Dummy_3907,Dummy_3907,Dummy_3907))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3910,Dummy_3910,Dummy_3910,Dummy_3910))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3905,Dummy_3905,Dummy_3905,Dummy_3905)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3908,Dummy_3908,Dummy_3908,Dummy_3908))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3911,Dummy_3911,Dummy_3911,Dummy_3911))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3905,Dummy_3905,Dummy_3905,Dummy_3905)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3908,Dummy_3908,Dummy_3908,Dummy_3908))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3911,Dummy_3911,Dummy_3911,Dummy_3911))))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3903,Dummy_3903,Dummy_3903,Dummy_3903),_mm256_set_pd(Dummy_3903,Dummy_3903,Dummy_3903,Dummy_3903))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3904,Dummy_3904,Dummy_3904,Dummy_3904),_mm256_set_pd(Dummy_3904,Dummy_3904,Dummy_3904,Dummy_3904)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3905,Dummy_3905,Dummy_3905,Dummy_3905),_mm256_set_pd(Dummy_3905,Dummy_3905,Dummy_3905,Dummy_3905)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3906,Dummy_3906,Dummy_3906,Dummy_3906),_mm256_set_pd(Dummy_3906,Dummy_3906,Dummy_3906,Dummy_3906))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3907,Dummy_3907,Dummy_3907,Dummy_3907),_mm256_set_pd(Dummy_3907,Dummy_3907,Dummy_3907,Dummy_3907)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3908,Dummy_3908,Dummy_3908,Dummy_3908),_mm256_set_pd(Dummy_3908,Dummy_3908,Dummy_3908,Dummy_3908)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3909,Dummy_3909,Dummy_3909,Dummy_3909),_mm256_set_pd(Dummy_3909,Dummy_3909,Dummy_3909,Dummy_3909))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3910,Dummy_3910,Dummy_3910,Dummy_3910),_mm256_set_pd(Dummy_3910,Dummy_3910,Dummy_3910,Dummy_3910)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3911,Dummy_3911,Dummy_3911,Dummy_3911),_mm256_set_pd(Dummy_3911,Dummy_3911,Dummy_3911,Dummy_3911)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -742,60 +493,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl } for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3911*tmp_q_1; - const double tmp_q_3 = Dummy_3914*tmp_q_1; - const double tmp_q_4 = Dummy_3917*tmp_q_1; - const double tmp_q_6 = Dummy_3912*tmp_q_1; - const double tmp_q_7 = Dummy_3915*tmp_q_1; - const double tmp_q_8 = Dummy_3918*tmp_q_1; - const double tmp_q_10 = Dummy_3913*tmp_q_1; - const double tmp_q_11 = Dummy_3916*tmp_q_1; - const double tmp_q_12 = Dummy_3919*tmp_q_1; - const double tmp_q_13 = Dummy_3920*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3921*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3922*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3923*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3921*tmp_q_2 + Dummy_3922*tmp_q_6 + Dummy_3923*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3921*tmp_q_3 + Dummy_3922*tmp_q_7 + Dummy_3923*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3921*tmp_q_4 + Dummy_3922*tmp_q_8 + Dummy_3923*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3911*Dummy_3911)*tmp_q_1 + (Dummy_3912*Dummy_3912)*tmp_q_1 + (Dummy_3913*Dummy_3913)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3914*tmp_q_2 + Dummy_3915*tmp_q_6 + Dummy_3916*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3917*tmp_q_2 + Dummy_3918*tmp_q_6 + Dummy_3919*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3914*Dummy_3914)*tmp_q_1 + (Dummy_3915*Dummy_3915)*tmp_q_1 + (Dummy_3916*Dummy_3916)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3917*tmp_q_3 + Dummy_3918*tmp_q_7 + Dummy_3919*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3917*Dummy_3917)*tmp_q_1 + (Dummy_3918*Dummy_3918)*tmp_q_1 + (Dummy_3919*Dummy_3919)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3912*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3903 - Dummy_3906 - Dummy_3909)*(-Dummy_3903*tmp_q_0 - Dummy_3906*tmp_q_0 - Dummy_3909*tmp_q_0) + (-Dummy_3904 - Dummy_3907 - Dummy_3910)*(-Dummy_3904*tmp_q_0 - Dummy_3907*tmp_q_0 - Dummy_3910*tmp_q_0) + (-Dummy_3905 - Dummy_3908 - Dummy_3911)*(-Dummy_3905*tmp_q_0 - Dummy_3908*tmp_q_0 - Dummy_3911*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3903*Dummy_3903)*tmp_q_0 + (Dummy_3904*Dummy_3904)*tmp_q_0 + (Dummy_3905*Dummy_3905)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3906*Dummy_3906)*tmp_q_0 + (Dummy_3907*Dummy_3907)*tmp_q_0 + (Dummy_3908*Dummy_3908)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3909*Dummy_3909)*tmp_q_0 + (Dummy_3910*Dummy_3910)*tmp_q_0 + (Dummy_3911*Dummy_3911)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -811,60 +529,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { - const __m256d tmp_q_1 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); - const __m256d tmp_q_2 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3945,Dummy_3945,Dummy_3945,Dummy_3945)); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3948,Dummy_3948,Dummy_3948,Dummy_3948)); - const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3951,Dummy_3951,Dummy_3951,Dummy_3951)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3946,Dummy_3946,Dummy_3946,Dummy_3946)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3949,Dummy_3949,Dummy_3949,Dummy_3949)); - const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3952,Dummy_3952,Dummy_3952,Dummy_3952)); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3947,Dummy_3947,Dummy_3947,Dummy_3947)); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3950,Dummy_3950,Dummy_3950,Dummy_3950)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3953,Dummy_3953,Dummy_3953,Dummy_3953)); - const double tmp_q_13 = Dummy_3954*_data_q_w[q]; - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3957,Dummy_3957,Dummy_3957,Dummy_3957)),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_4,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3955,Dummy_3955,Dummy_3955,Dummy_3955))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3956,Dummy_3956,Dummy_3956,Dummy_3956))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3955,Dummy_3955,Dummy_3955,Dummy_3955)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3956,Dummy_3956,Dummy_3956,Dummy_3956))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3957,Dummy_3957,Dummy_3957,Dummy_3957))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3955,Dummy_3955,Dummy_3955,Dummy_3955)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3956,Dummy_3956,Dummy_3956,Dummy_3956))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3957,Dummy_3957,Dummy_3957,Dummy_3957))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_3955,Dummy_3955,Dummy_3955,Dummy_3955)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(Dummy_3956,Dummy_3956,Dummy_3956,Dummy_3956))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(Dummy_3957,Dummy_3957,Dummy_3957,Dummy_3957))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3945,Dummy_3945,Dummy_3945,Dummy_3945),_mm256_set_pd(Dummy_3945,Dummy_3945,Dummy_3945,Dummy_3945))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3946,Dummy_3946,Dummy_3946,Dummy_3946),_mm256_set_pd(Dummy_3946,Dummy_3946,Dummy_3946,Dummy_3946)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3947,Dummy_3947,Dummy_3947,Dummy_3947),_mm256_set_pd(Dummy_3947,Dummy_3947,Dummy_3947,Dummy_3947)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3948,Dummy_3948,Dummy_3948,Dummy_3948)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3949,Dummy_3949,Dummy_3949,Dummy_3949))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3950,Dummy_3950,Dummy_3950,Dummy_3950))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3951,Dummy_3951,Dummy_3951,Dummy_3951)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3952,Dummy_3952,Dummy_3952,Dummy_3952))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3953,Dummy_3953,Dummy_3953,Dummy_3953))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3948,Dummy_3948,Dummy_3948,Dummy_3948),_mm256_set_pd(Dummy_3948,Dummy_3948,Dummy_3948,Dummy_3948))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3949,Dummy_3949,Dummy_3949,Dummy_3949),_mm256_set_pd(Dummy_3949,Dummy_3949,Dummy_3949,Dummy_3949)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3950,Dummy_3950,Dummy_3950,Dummy_3950),_mm256_set_pd(Dummy_3950,Dummy_3950,Dummy_3950,Dummy_3950)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3951,Dummy_3951,Dummy_3951,Dummy_3951)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3952,Dummy_3952,Dummy_3952,Dummy_3952))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3953,Dummy_3953,Dummy_3953,Dummy_3953))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3951,Dummy_3951,Dummy_3951,Dummy_3951),_mm256_set_pd(Dummy_3951,Dummy_3951,Dummy_3951,Dummy_3951))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3952,Dummy_3952,Dummy_3952,Dummy_3952),_mm256_set_pd(Dummy_3952,Dummy_3952,Dummy_3952,Dummy_3952)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3953,Dummy_3953,Dummy_3953,Dummy_3953),_mm256_set_pd(Dummy_3953,Dummy_3953,Dummy_3953,Dummy_3953)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d tmp_q_0 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); + const double tmp_q_1 = Dummy_3943*_data_q_w[q]; + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3934,Dummy_3934,Dummy_3934,Dummy_3934)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3937,Dummy_3937,Dummy_3937,Dummy_3937))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3940,Dummy_3940,Dummy_3940,Dummy_3940))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3934,Dummy_3934,Dummy_3934,Dummy_3934)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3937,Dummy_3937,Dummy_3937,Dummy_3937))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3940,Dummy_3940,Dummy_3940,Dummy_3940)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3935,Dummy_3935,Dummy_3935,Dummy_3935)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3938,Dummy_3938,Dummy_3938,Dummy_3938))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3941,Dummy_3941,Dummy_3941,Dummy_3941))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3935,Dummy_3935,Dummy_3935,Dummy_3935)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3938,Dummy_3938,Dummy_3938,Dummy_3938))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3941,Dummy_3941,Dummy_3941,Dummy_3941))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3936,Dummy_3936,Dummy_3936,Dummy_3936)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3939,Dummy_3939,Dummy_3939,Dummy_3939))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3942,Dummy_3942,Dummy_3942,Dummy_3942))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3936,Dummy_3936,Dummy_3936,Dummy_3936)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3939,Dummy_3939,Dummy_3939,Dummy_3939))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3942,Dummy_3942,Dummy_3942,Dummy_3942))))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3934,Dummy_3934,Dummy_3934,Dummy_3934),_mm256_set_pd(Dummy_3934,Dummy_3934,Dummy_3934,Dummy_3934))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3935,Dummy_3935,Dummy_3935,Dummy_3935),_mm256_set_pd(Dummy_3935,Dummy_3935,Dummy_3935,Dummy_3935)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3936,Dummy_3936,Dummy_3936,Dummy_3936),_mm256_set_pd(Dummy_3936,Dummy_3936,Dummy_3936,Dummy_3936)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3937,Dummy_3937,Dummy_3937,Dummy_3937),_mm256_set_pd(Dummy_3937,Dummy_3937,Dummy_3937,Dummy_3937))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3938,Dummy_3938,Dummy_3938,Dummy_3938),_mm256_set_pd(Dummy_3938,Dummy_3938,Dummy_3938,Dummy_3938)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3939,Dummy_3939,Dummy_3939,Dummy_3939),_mm256_set_pd(Dummy_3939,Dummy_3939,Dummy_3939,Dummy_3939)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3940,Dummy_3940,Dummy_3940,Dummy_3940),_mm256_set_pd(Dummy_3940,Dummy_3940,Dummy_3940,Dummy_3940))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3941,Dummy_3941,Dummy_3941,Dummy_3941),_mm256_set_pd(Dummy_3941,Dummy_3941,Dummy_3941,Dummy_3941)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3942,Dummy_3942,Dummy_3942,Dummy_3942),_mm256_set_pd(Dummy_3942,Dummy_3942,Dummy_3942,Dummy_3942)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -876,60 +561,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl } for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3945*tmp_q_1; - const double tmp_q_3 = Dummy_3948*tmp_q_1; - const double tmp_q_4 = Dummy_3951*tmp_q_1; - const double tmp_q_6 = Dummy_3946*tmp_q_1; - const double tmp_q_7 = Dummy_3949*tmp_q_1; - const double tmp_q_8 = Dummy_3952*tmp_q_1; - const double tmp_q_10 = Dummy_3947*tmp_q_1; - const double tmp_q_11 = Dummy_3950*tmp_q_1; - const double tmp_q_12 = Dummy_3953*tmp_q_1; - const double tmp_q_13 = Dummy_3954*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3955*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3956*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3957*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3955*tmp_q_2 + Dummy_3956*tmp_q_6 + Dummy_3957*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3955*tmp_q_3 + Dummy_3956*tmp_q_7 + Dummy_3957*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3955*tmp_q_4 + Dummy_3956*tmp_q_8 + Dummy_3957*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3945*Dummy_3945)*tmp_q_1 + (Dummy_3946*Dummy_3946)*tmp_q_1 + (Dummy_3947*Dummy_3947)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3948*tmp_q_2 + Dummy_3949*tmp_q_6 + Dummy_3950*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3951*tmp_q_2 + Dummy_3952*tmp_q_6 + Dummy_3953*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3948*Dummy_3948)*tmp_q_1 + (Dummy_3949*Dummy_3949)*tmp_q_1 + (Dummy_3950*Dummy_3950)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3951*tmp_q_3 + Dummy_3952*tmp_q_7 + Dummy_3953*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3951*Dummy_3951)*tmp_q_1 + (Dummy_3952*Dummy_3952)*tmp_q_1 + (Dummy_3953*Dummy_3953)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3943*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3934 - Dummy_3937 - Dummy_3940)*(-Dummy_3934*tmp_q_0 - Dummy_3937*tmp_q_0 - Dummy_3940*tmp_q_0) + (-Dummy_3935 - Dummy_3938 - Dummy_3941)*(-Dummy_3935*tmp_q_0 - Dummy_3938*tmp_q_0 - Dummy_3941*tmp_q_0) + (-Dummy_3936 - Dummy_3939 - Dummy_3942)*(-Dummy_3936*tmp_q_0 - Dummy_3939*tmp_q_0 - Dummy_3942*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3934*Dummy_3934)*tmp_q_0 + (Dummy_3935*Dummy_3935)*tmp_q_0 + (Dummy_3936*Dummy_3936)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3937*Dummy_3937)*tmp_q_0 + (Dummy_3938*Dummy_3938)*tmp_q_0 + (Dummy_3939*Dummy_3939)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3940*Dummy_3940)*tmp_q_0 + (Dummy_3941*Dummy_3941)*tmp_q_0 + (Dummy_3942*Dummy_3942)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -945,60 +597,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_3 = _mm256_loadu_pd(& _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { - const __m256d tmp_q_1 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); - const __m256d tmp_q_2 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3979,Dummy_3979,Dummy_3979,Dummy_3979)); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3982,Dummy_3982,Dummy_3982,Dummy_3982)); - const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3985,Dummy_3985,Dummy_3985,Dummy_3985)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3980,Dummy_3980,Dummy_3980,Dummy_3980)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3983,Dummy_3983,Dummy_3983,Dummy_3983)); - const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3986,Dummy_3986,Dummy_3986,Dummy_3986)); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3981,Dummy_3981,Dummy_3981,Dummy_3981)); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3984,Dummy_3984,Dummy_3984,Dummy_3984)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_3987,Dummy_3987,Dummy_3987,Dummy_3987)); - const double tmp_q_13 = Dummy_3988*_data_q_w[q]; - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3991,Dummy_3991,Dummy_3991,Dummy_3991)),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_4,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3989,Dummy_3989,Dummy_3989,Dummy_3989))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(Dummy_3990,Dummy_3990,Dummy_3990,Dummy_3990))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3989,Dummy_3989,Dummy_3989,Dummy_3989)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3990,Dummy_3990,Dummy_3990,Dummy_3990))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3991,Dummy_3991,Dummy_3991,Dummy_3991))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3989,Dummy_3989,Dummy_3989,Dummy_3989)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3990,Dummy_3990,Dummy_3990,Dummy_3990))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3991,Dummy_3991,Dummy_3991,Dummy_3991))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_3989,Dummy_3989,Dummy_3989,Dummy_3989)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(Dummy_3990,Dummy_3990,Dummy_3990,Dummy_3990))),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(Dummy_3991,Dummy_3991,Dummy_3991,Dummy_3991))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3979,Dummy_3979,Dummy_3979,Dummy_3979),_mm256_set_pd(Dummy_3979,Dummy_3979,Dummy_3979,Dummy_3979))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3980,Dummy_3980,Dummy_3980,Dummy_3980),_mm256_set_pd(Dummy_3980,Dummy_3980,Dummy_3980,Dummy_3980)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3981,Dummy_3981,Dummy_3981,Dummy_3981),_mm256_set_pd(Dummy_3981,Dummy_3981,Dummy_3981,Dummy_3981)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3982,Dummy_3982,Dummy_3982,Dummy_3982)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3983,Dummy_3983,Dummy_3983,Dummy_3983))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3984,Dummy_3984,Dummy_3984,Dummy_3984))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_3985,Dummy_3985,Dummy_3985,Dummy_3985)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(Dummy_3986,Dummy_3986,Dummy_3986,Dummy_3986))),_mm256_mul_pd(tmp_q_10,_mm256_set_pd(Dummy_3987,Dummy_3987,Dummy_3987,Dummy_3987))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3982,Dummy_3982,Dummy_3982,Dummy_3982),_mm256_set_pd(Dummy_3982,Dummy_3982,Dummy_3982,Dummy_3982))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3983,Dummy_3983,Dummy_3983,Dummy_3983),_mm256_set_pd(Dummy_3983,Dummy_3983,Dummy_3983,Dummy_3983)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3984,Dummy_3984,Dummy_3984,Dummy_3984),_mm256_set_pd(Dummy_3984,Dummy_3984,Dummy_3984,Dummy_3984)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(Dummy_3985,Dummy_3985,Dummy_3985,Dummy_3985)),_mm256_mul_pd(tmp_q_7,_mm256_set_pd(Dummy_3986,Dummy_3986,Dummy_3986,Dummy_3986))),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(Dummy_3987,Dummy_3987,Dummy_3987,Dummy_3987))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3985,Dummy_3985,Dummy_3985,Dummy_3985),_mm256_set_pd(Dummy_3985,Dummy_3985,Dummy_3985,Dummy_3985))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3986,Dummy_3986,Dummy_3986,Dummy_3986),_mm256_set_pd(Dummy_3986,Dummy_3986,Dummy_3986,Dummy_3986)))),_mm256_mul_pd(tmp_q_1,_mm256_mul_pd(_mm256_set_pd(Dummy_3987,Dummy_3987,Dummy_3987,Dummy_3987),_mm256_set_pd(Dummy_3987,Dummy_3987,Dummy_3987,Dummy_3987)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d tmp_q_0 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0))),_mm256_mul_pd(k_dof_1,_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))),_mm256_mul_pd(k_dof_2,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(k_dof_3,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))); + const double tmp_q_1 = Dummy_3974*_data_q_w[q]; + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3965,Dummy_3965,Dummy_3965,Dummy_3965)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3968,Dummy_3968,Dummy_3968,Dummy_3968))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3971,Dummy_3971,Dummy_3971,Dummy_3971))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3965,Dummy_3965,Dummy_3965,Dummy_3965)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3968,Dummy_3968,Dummy_3968,Dummy_3968))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3971,Dummy_3971,Dummy_3971,Dummy_3971)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3966,Dummy_3966,Dummy_3966,Dummy_3966)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3969,Dummy_3969,Dummy_3969,Dummy_3969))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3972,Dummy_3972,Dummy_3972,Dummy_3972))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3966,Dummy_3966,Dummy_3966,Dummy_3966)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3969,Dummy_3969,Dummy_3969,Dummy_3969))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3972,Dummy_3972,Dummy_3972,Dummy_3972))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3967,Dummy_3967,Dummy_3967,Dummy_3967)),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3970,Dummy_3970,Dummy_3970,Dummy_3970))),_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(Dummy_3973,Dummy_3973,Dummy_3973,Dummy_3973))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3967,Dummy_3967,Dummy_3967,Dummy_3967)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3970,Dummy_3970,Dummy_3970,Dummy_3970))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_set_pd(Dummy_3973,Dummy_3973,Dummy_3973,Dummy_3973))))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3965,Dummy_3965,Dummy_3965,Dummy_3965),_mm256_set_pd(Dummy_3965,Dummy_3965,Dummy_3965,Dummy_3965))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3966,Dummy_3966,Dummy_3966,Dummy_3966),_mm256_set_pd(Dummy_3966,Dummy_3966,Dummy_3966,Dummy_3966)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3967,Dummy_3967,Dummy_3967,Dummy_3967),_mm256_set_pd(Dummy_3967,Dummy_3967,Dummy_3967,Dummy_3967)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3968,Dummy_3968,Dummy_3968,Dummy_3968),_mm256_set_pd(Dummy_3968,Dummy_3968,Dummy_3968,Dummy_3968))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3969,Dummy_3969,Dummy_3969,Dummy_3969),_mm256_set_pd(Dummy_3969,Dummy_3969,Dummy_3969,Dummy_3969)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3970,Dummy_3970,Dummy_3970,Dummy_3970),_mm256_set_pd(Dummy_3970,Dummy_3970,Dummy_3970,Dummy_3970)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3971,Dummy_3971,Dummy_3971,Dummy_3971),_mm256_set_pd(Dummy_3971,Dummy_3971,Dummy_3971,Dummy_3971))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3972,Dummy_3972,Dummy_3972,Dummy_3972),_mm256_set_pd(Dummy_3972,Dummy_3972,Dummy_3972,Dummy_3972)))),_mm256_mul_pd(tmp_q_0,_mm256_mul_pd(_mm256_set_pd(Dummy_3973,Dummy_3973,Dummy_3973,Dummy_3973),_mm256_set_pd(Dummy_3973,Dummy_3973,Dummy_3973,Dummy_3973)))),_mm256_set_pd(tmp_q_1,tmp_q_1,tmp_q_1,tmp_q_1)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -1010,60 +629,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl } for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3979*tmp_q_1; - const double tmp_q_3 = Dummy_3982*tmp_q_1; - const double tmp_q_4 = Dummy_3985*tmp_q_1; - const double tmp_q_6 = Dummy_3980*tmp_q_1; - const double tmp_q_7 = Dummy_3983*tmp_q_1; - const double tmp_q_8 = Dummy_3986*tmp_q_1; - const double tmp_q_10 = Dummy_3981*tmp_q_1; - const double tmp_q_11 = Dummy_3984*tmp_q_1; - const double tmp_q_12 = Dummy_3987*tmp_q_1; - const double tmp_q_13 = Dummy_3988*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3989*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3990*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3991*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3989*tmp_q_2 + Dummy_3990*tmp_q_6 + Dummy_3991*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3989*tmp_q_3 + Dummy_3990*tmp_q_7 + Dummy_3991*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3989*tmp_q_4 + Dummy_3990*tmp_q_8 + Dummy_3991*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3979*Dummy_3979)*tmp_q_1 + (Dummy_3980*Dummy_3980)*tmp_q_1 + (Dummy_3981*Dummy_3981)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3982*tmp_q_2 + Dummy_3983*tmp_q_6 + Dummy_3984*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3985*tmp_q_2 + Dummy_3986*tmp_q_6 + Dummy_3987*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3982*Dummy_3982)*tmp_q_1 + (Dummy_3983*Dummy_3983)*tmp_q_1 + (Dummy_3984*Dummy_3984)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3985*tmp_q_3 + Dummy_3986*tmp_q_7 + Dummy_3987*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3985*Dummy_3985)*tmp_q_1 + (Dummy_3986*Dummy_3986)*tmp_q_1 + (Dummy_3987*Dummy_3987)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3974*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3965 - Dummy_3968 - Dummy_3971)*(-Dummy_3965*tmp_q_0 - Dummy_3968*tmp_q_0 - Dummy_3971*tmp_q_0) + (-Dummy_3966 - Dummy_3969 - Dummy_3972)*(-Dummy_3966*tmp_q_0 - Dummy_3969*tmp_q_0 - Dummy_3972*tmp_q_0) + (-Dummy_3967 - Dummy_3970 - Dummy_3973)*(-Dummy_3967*tmp_q_0 - Dummy_3970*tmp_q_0 - Dummy_3973*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3965*Dummy_3965)*tmp_q_0 + (Dummy_3966*Dummy_3966)*tmp_q_0 + (Dummy_3967*Dummy_3967)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3968*Dummy_3968)*tmp_q_0 + (Dummy_3969*Dummy_3969)*tmp_q_0 + (Dummy_3970*Dummy_3970)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3971*Dummy_3971)*tmp_q_0 + (Dummy_3972*Dummy_3972)*tmp_q_0 + (Dummy_3973*Dummy_3973)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; diff --git a/operators/div_k_grad/avx/P2ElementwiseDivKGrad_apply_macro_2D.cpp b/operators/div_k_grad/avx/P2ElementwiseDivKGrad_apply_macro_2D.cpp index 16667ef12a1fadde8ec77a7081320a1d32ab6047..7019fd2db19aa1246bd12ecf01add14ef767083d 100644 --- a/operators/div_k_grad/avx/P2ElementwiseDivKGrad_apply_macro_2D.cpp +++ b/operators/div_k_grad/avx/P2ElementwiseDivKGrad_apply_macro_2D.cpp @@ -54,14 +54,14 @@ namespace hyteg { namespace operatorgeneration { -void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, double * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double * RESTRICT _data_srcEdge, double * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float, int64_t micro_edges_per_macro_face ) const +void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, double * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double * RESTRICT _data_srcEdge, double * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -78,21 +78,21 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double jac_affine_inv_1_0 = -jac_affine_1_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double jac_affine_inv_1_1 = jac_affine_0_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); - const double Dummy_4018 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4019 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4020 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4021 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4022 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4023 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4024 = -Dummy_4018 + Dummy_4020; - const double Dummy_4025 = -Dummy_4018 + Dummy_4022; - const double Dummy_4026 = -Dummy_4019 + Dummy_4021; - const double Dummy_4027 = -Dummy_4019 + Dummy_4023; - const double Dummy_4028 = Dummy_4027*1.0 / (Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); - const double Dummy_4029 = -Dummy_4025*1.0 / (Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); - const double Dummy_4030 = -Dummy_4026*1.0 / (Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); - const double Dummy_4031 = Dummy_4024*1.0 / (Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); - const double Dummy_4032 = fabs(Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); + const double Dummy_4001 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4002 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4003 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4004 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4005 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4006 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4007 = -Dummy_4001 + Dummy_4003; + const double Dummy_4008 = -Dummy_4001 + Dummy_4005; + const double Dummy_4009 = -Dummy_4002 + Dummy_4004; + const double Dummy_4010 = -Dummy_4002 + Dummy_4006; + const double Dummy_4011 = Dummy_4010*1.0 / (Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); + const double Dummy_4012 = -Dummy_4008*1.0 / (Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); + const double Dummy_4013 = -Dummy_4009*1.0 / (Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); + const double Dummy_4014 = Dummy_4007*1.0 / (Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); + const double Dummy_4015 = fabs(Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); { for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) { @@ -101,15 +101,15 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const __m256d src_dof_0 = _mm256_loadu_pd(& _data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]); const __m256d src_dof_1 = _mm256_loadu_pd(& _data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); - const __m256d src_dof_3 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); - const __m256d src_dof_4 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d src_dof_3 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); + const __m256d src_dof_4 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); const __m256d src_dof_5 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]); - const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); - const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); + const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -248,8 +248,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do _mm256_storeu_pd(&_data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatVec_0,_mm256_loadu_pd(& _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]))); _mm256_storeu_pd(&_data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1],_mm256_add_pd(elMatVec_1,_mm256_loadu_pd(& _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]))); _mm256_storeu_pd(&_data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))],_mm256_add_pd(elMatVec_2,_mm256_loadu_pd(& _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]))); - _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatVec_3,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]))); - _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatVec_4,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]))); + _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))],_mm256_add_pd(elMatVec_3,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]))); + _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))],_mm256_add_pd(elMatVec_4,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]))); _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatVec_5,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]))); } for (int64_t ctr_0 = (int64_t)((-ctr_1 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 < -ctr_1 + micro_edges_per_macro_edge; ctr_0 += 1) @@ -257,15 +257,15 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double src_dof_0 = _data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; const double src_dof_1 = _data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double src_dof_2 = _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double src_dof_3 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double src_dof_4 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double src_dof_3 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double src_dof_4 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; const double src_dof_5 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -404,8 +404,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_0 + _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1] = elMatVec_1 + _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatVec_2 + _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_3 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_4 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatVec_3 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatVec_4 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_5 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; } } @@ -417,14 +417,14 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const __m256d src_dof_1 = _mm256_loadu_pd(& _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); const __m256d src_dof_2 = _mm256_loadu_pd(& _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); const __m256d src_dof_3 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); - const __m256d src_dof_4 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); - const __m256d src_dof_5 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); - const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); - const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); + const __m256d src_dof_4 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]); + const __m256d src_dof_5 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]); + const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -451,8 +451,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_0 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); const __m256d tmp_q_1 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_2 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_1); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4028,Dummy_4028,Dummy_4028,Dummy_4028)); - const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4030,Dummy_4030,Dummy_4030,Dummy_4030)); + const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4011,Dummy_4011,Dummy_4011,Dummy_4011)); + const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4013,Dummy_4013,Dummy_4013,Dummy_4013)); const __m256d tmp_q_5 = _mm256_add_pd(tmp_q_3,tmp_q_4); const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_7 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); @@ -460,54 +460,54 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_9 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_9,_mm256_set_pd(2.0,2.0,2.0,2.0)); const __m256d tmp_q_11 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_8)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_10))),_mm256_mul_pd(k_dof_5,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_0))),_mm256_mul_pd(k_dof_4,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_1))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_10),tmp_q_6),tmp_q_8))),_mm256_mul_pd(k_dof_3,tmp_q_6)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4029,Dummy_4029,Dummy_4029,Dummy_4029)); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4031,Dummy_4031,Dummy_4031,Dummy_4031)); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4012,Dummy_4012,Dummy_4012,Dummy_4012)); + const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4014,Dummy_4014,Dummy_4014,Dummy_4014)); const __m256d tmp_q_14 = _mm256_add_pd(tmp_q_12,tmp_q_13); - const double tmp_q_15 = Dummy_4032*_data_q_w[q]; + const double tmp_q_15 = Dummy_4015*_data_q_w[q]; const __m256d tmp_q_16 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(Dummy_4028,Dummy_4028,Dummy_4028,Dummy_4028)); + const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(Dummy_4011,Dummy_4011,Dummy_4011,Dummy_4011)); const __m256d tmp_q_18 = _mm256_mul_pd(tmp_q_11,tmp_q_5); - const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(Dummy_4029,Dummy_4029,Dummy_4029,Dummy_4029)); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(Dummy_4012,Dummy_4012,Dummy_4012,Dummy_4012)); const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_11,tmp_q_14); const __m256d tmp_q_21 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_21,_mm256_set_pd(Dummy_4030,Dummy_4030,Dummy_4030,Dummy_4030)); - const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_21,_mm256_set_pd(Dummy_4031,Dummy_4031,Dummy_4031,Dummy_4031)); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4028,Dummy_4028,Dummy_4028,Dummy_4028)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_21,_mm256_set_pd(Dummy_4013,Dummy_4013,Dummy_4013,Dummy_4013)); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_21,_mm256_set_pd(Dummy_4014,Dummy_4014,Dummy_4014,Dummy_4014)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4011,Dummy_4011,Dummy_4011,Dummy_4011)); const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_11,tmp_q_24); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4030,Dummy_4030,Dummy_4030,Dummy_4030)); + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4013,Dummy_4013,Dummy_4013,Dummy_4013)); const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_11,tmp_q_26); const __m256d tmp_q_28 = _mm256_add_pd(tmp_q_25,tmp_q_27); - const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4029,Dummy_4029,Dummy_4029,Dummy_4029)); + const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4012,Dummy_4012,Dummy_4012,Dummy_4012)); const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_11,tmp_q_29); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4031,Dummy_4031,Dummy_4031,Dummy_4031)); + const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4014,Dummy_4014,Dummy_4014,Dummy_4014)); const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_11,tmp_q_31); const __m256d tmp_q_33 = _mm256_add_pd(tmp_q_30,tmp_q_32); const __m256d tmp_q_34 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_35 = _mm256_add_pd(_mm256_mul_pd(tmp_q_25,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_34),_mm256_set_pd(Dummy_4030,Dummy_4030,Dummy_4030,Dummy_4030))); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_34),_mm256_set_pd(Dummy_4031,Dummy_4031,Dummy_4031,Dummy_4031))); + const __m256d tmp_q_35 = _mm256_add_pd(_mm256_mul_pd(tmp_q_25,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_34),_mm256_set_pd(Dummy_4013,Dummy_4013,Dummy_4013,Dummy_4013))); + const __m256d tmp_q_36 = _mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_34),_mm256_set_pd(Dummy_4014,Dummy_4014,Dummy_4014,Dummy_4014))); const __m256d tmp_q_37 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_37,_mm256_set_pd(Dummy_4028,Dummy_4028,Dummy_4028,Dummy_4028)); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_37,_mm256_set_pd(Dummy_4011,Dummy_4011,Dummy_4011,Dummy_4011)); const __m256d tmp_q_39 = _mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,tmp_q_38)); - const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_37,_mm256_set_pd(Dummy_4029,Dummy_4029,Dummy_4029,Dummy_4029)); + const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_37,_mm256_set_pd(Dummy_4012,Dummy_4012,Dummy_4012,Dummy_4012)); const __m256d tmp_q_41 = _mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,tmp_q_40)); const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_11,_mm256_mul_pd(tmp_q_16,tmp_q_16)); const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_11,_mm256_mul_pd(tmp_q_21,tmp_q_21)); const __m256d tmp_q_44 = _mm256_add_pd(tmp_q_24,tmp_q_26); const __m256d tmp_q_45 = _mm256_add_pd(tmp_q_29,tmp_q_31); - const __m256d tmp_q_46 = _mm256_add_pd(_mm256_mul_pd(tmp_q_24,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_34,_mm256_set_pd(Dummy_4030,Dummy_4030,Dummy_4030,Dummy_4030))); - const __m256d tmp_q_47 = _mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_34,_mm256_set_pd(Dummy_4031,Dummy_4031,Dummy_4031,Dummy_4031))); + const __m256d tmp_q_46 = _mm256_add_pd(_mm256_mul_pd(tmp_q_24,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_34,_mm256_set_pd(Dummy_4013,Dummy_4013,Dummy_4013,Dummy_4013))); + const __m256d tmp_q_47 = _mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_34,_mm256_set_pd(Dummy_4014,Dummy_4014,Dummy_4014,Dummy_4014))); const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,_mm256_add_pd(_mm256_mul_pd(tmp_q_11,tmp_q_12),_mm256_mul_pd(tmp_q_11,tmp_q_13))),_mm256_mul_pd(tmp_q_5,_mm256_add_pd(_mm256_mul_pd(tmp_q_11,tmp_q_3),_mm256_mul_pd(tmp_q_11,tmp_q_4)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_18),_mm256_mul_pd(tmp_q_19,tmp_q_20)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_20,tmp_q_23)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_33),_mm256_mul_pd(tmp_q_28,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_36),_mm256_mul_pd(tmp_q_35,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_41),_mm256_mul_pd(tmp_q_39,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_42,_mm256_mul_pd(_mm256_set_pd(Dummy_4028,Dummy_4028,Dummy_4028,Dummy_4028),_mm256_set_pd(Dummy_4028,Dummy_4028,Dummy_4028,Dummy_4028))),_mm256_mul_pd(tmp_q_42,_mm256_mul_pd(_mm256_set_pd(Dummy_4029,Dummy_4029,Dummy_4029,Dummy_4029),_mm256_set_pd(Dummy_4029,Dummy_4029,Dummy_4029,Dummy_4029)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_42,_mm256_mul_pd(_mm256_set_pd(Dummy_4011,Dummy_4011,Dummy_4011,Dummy_4011),_mm256_set_pd(Dummy_4011,Dummy_4011,Dummy_4011,Dummy_4011))),_mm256_mul_pd(tmp_q_42,_mm256_mul_pd(_mm256_set_pd(Dummy_4012,Dummy_4012,Dummy_4012,Dummy_4012),_mm256_set_pd(Dummy_4012,Dummy_4012,Dummy_4012,Dummy_4012)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_17),tmp_q_22),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_19),tmp_q_23)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_28),_mm256_mul_pd(tmp_q_19,tmp_q_33)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_35),_mm256_mul_pd(tmp_q_19,tmp_q_36)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_39),_mm256_mul_pd(tmp_q_19,tmp_q_41)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_mul_pd(_mm256_set_pd(Dummy_4030,Dummy_4030,Dummy_4030,Dummy_4030),_mm256_set_pd(Dummy_4030,Dummy_4030,Dummy_4030,Dummy_4030))),_mm256_mul_pd(tmp_q_43,_mm256_mul_pd(_mm256_set_pd(Dummy_4031,Dummy_4031,Dummy_4031,Dummy_4031),_mm256_set_pd(Dummy_4031,Dummy_4031,Dummy_4031,Dummy_4031)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_mul_pd(_mm256_set_pd(Dummy_4013,Dummy_4013,Dummy_4013,Dummy_4013),_mm256_set_pd(Dummy_4013,Dummy_4013,Dummy_4013,Dummy_4013))),_mm256_mul_pd(tmp_q_43,_mm256_mul_pd(_mm256_set_pd(Dummy_4014,Dummy_4014,Dummy_4014,Dummy_4014),_mm256_set_pd(Dummy_4014,Dummy_4014,Dummy_4014,Dummy_4014)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_28),_mm256_mul_pd(tmp_q_23,tmp_q_33)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_35),_mm256_mul_pd(tmp_q_23,tmp_q_36)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_39),_mm256_mul_pd(tmp_q_23,tmp_q_41)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); @@ -564,8 +564,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do _mm256_storeu_pd(&_data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))],_mm256_add_pd(elMatVec_1,_mm256_loadu_pd(& _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]))); _mm256_storeu_pd(&_data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1],_mm256_add_pd(elMatVec_2,_mm256_loadu_pd(& _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]))); _mm256_storeu_pd(&_data_dstEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))],_mm256_add_pd(elMatVec_3,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]))); - _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1],_mm256_add_pd(elMatVec_4,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]))); - _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatVec_5,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]))); + _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1],_mm256_add_pd(elMatVec_4,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]))); + _mm256_storeu_pd(&_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))],_mm256_add_pd(elMatVec_5,_mm256_loadu_pd(& _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]))); } for (int64_t ctr_0 = (int64_t)((-ctr_1 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { @@ -573,14 +573,14 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double src_dof_1 = _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double src_dof_2 = _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; const double src_dof_3 = _data_srcEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double src_dof_4 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double src_dof_5 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; - const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double src_dof_4 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + const double src_dof_5 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; + const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -607,8 +607,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double tmp_q_0 = 4.0*_data_q_p_0[q]; const double tmp_q_1 = 4.0*_data_q_p_1[q]; const double tmp_q_2 = tmp_q_0 + tmp_q_1 - 3.0; - const double tmp_q_3 = Dummy_4028*tmp_q_2; - const double tmp_q_4 = Dummy_4030*tmp_q_2; + const double tmp_q_3 = Dummy_4011*tmp_q_2; + const double tmp_q_4 = Dummy_4013*tmp_q_2; const double tmp_q_5 = tmp_q_3 + tmp_q_4; const double tmp_q_6 = tmp_q_0*_data_q_p_1[q]; const double tmp_q_7 = (_data_q_p_0[q]*_data_q_p_0[q]); @@ -616,54 +616,54 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double tmp_q_9 = (_data_q_p_1[q]*_data_q_p_1[q]); const double tmp_q_10 = tmp_q_9*2.0; const double tmp_q_11 = k_dof_0*(tmp_q_10 + tmp_q_6 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_8 - _data_q_p_0[q]) + k_dof_2*(tmp_q_10 - _data_q_p_1[q]) + k_dof_3*tmp_q_6 + k_dof_4*(tmp_q_1 - tmp_q_6 + tmp_q_9*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_6 + tmp_q_7*-4.0); - const double tmp_q_12 = Dummy_4029*tmp_q_2; - const double tmp_q_13 = Dummy_4031*tmp_q_2; + const double tmp_q_12 = Dummy_4012*tmp_q_2; + const double tmp_q_13 = Dummy_4014*tmp_q_2; const double tmp_q_14 = tmp_q_12 + tmp_q_13; - const double tmp_q_15 = Dummy_4032*_data_q_w[q]; + const double tmp_q_15 = Dummy_4015*_data_q_w[q]; const double tmp_q_16 = tmp_q_0 - 1.0; - const double tmp_q_17 = Dummy_4028*tmp_q_16; + const double tmp_q_17 = Dummy_4011*tmp_q_16; const double tmp_q_18 = tmp_q_11*tmp_q_5; - const double tmp_q_19 = Dummy_4029*tmp_q_16; + const double tmp_q_19 = Dummy_4012*tmp_q_16; const double tmp_q_20 = tmp_q_11*tmp_q_14; const double tmp_q_21 = tmp_q_1 - 1.0; - const double tmp_q_22 = Dummy_4030*tmp_q_21; - const double tmp_q_23 = Dummy_4031*tmp_q_21; - const double tmp_q_24 = Dummy_4028*tmp_q_1; + const double tmp_q_22 = Dummy_4013*tmp_q_21; + const double tmp_q_23 = Dummy_4014*tmp_q_21; + const double tmp_q_24 = Dummy_4011*tmp_q_1; const double tmp_q_25 = tmp_q_11*tmp_q_24; - const double tmp_q_26 = Dummy_4030*tmp_q_0; + const double tmp_q_26 = Dummy_4013*tmp_q_0; const double tmp_q_27 = tmp_q_11*tmp_q_26; const double tmp_q_28 = tmp_q_25 + tmp_q_27; - const double tmp_q_29 = Dummy_4029*tmp_q_1; + const double tmp_q_29 = Dummy_4012*tmp_q_1; const double tmp_q_30 = tmp_q_11*tmp_q_29; - const double tmp_q_31 = Dummy_4031*tmp_q_0; + const double tmp_q_31 = Dummy_4014*tmp_q_0; const double tmp_q_32 = tmp_q_11*tmp_q_31; const double tmp_q_33 = tmp_q_30 + tmp_q_32; const double tmp_q_34 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; - const double tmp_q_35 = Dummy_4030*tmp_q_11*tmp_q_34 - tmp_q_25; - const double tmp_q_36 = Dummy_4031*tmp_q_11*tmp_q_34 - tmp_q_30; + const double tmp_q_35 = Dummy_4013*tmp_q_11*tmp_q_34 - tmp_q_25; + const double tmp_q_36 = Dummy_4014*tmp_q_11*tmp_q_34 - tmp_q_30; const double tmp_q_37 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; - const double tmp_q_38 = Dummy_4028*tmp_q_37; + const double tmp_q_38 = Dummy_4011*tmp_q_37; const double tmp_q_39 = tmp_q_11*tmp_q_38 - tmp_q_27; - const double tmp_q_40 = Dummy_4029*tmp_q_37; + const double tmp_q_40 = Dummy_4012*tmp_q_37; const double tmp_q_41 = tmp_q_11*tmp_q_40 - tmp_q_32; const double tmp_q_42 = tmp_q_11*(tmp_q_16*tmp_q_16); const double tmp_q_43 = tmp_q_11*(tmp_q_21*tmp_q_21); const double tmp_q_44 = tmp_q_24 + tmp_q_26; const double tmp_q_45 = tmp_q_29 + tmp_q_31; - const double tmp_q_46 = Dummy_4030*tmp_q_34 - tmp_q_24; - const double tmp_q_47 = Dummy_4031*tmp_q_34 - tmp_q_29; + const double tmp_q_46 = Dummy_4013*tmp_q_34 - tmp_q_24; + const double tmp_q_47 = Dummy_4014*tmp_q_34 - tmp_q_29; const double res_tmp_0_0 = tmp_q_15*(tmp_q_14*(tmp_q_11*tmp_q_12 + tmp_q_11*tmp_q_13) + tmp_q_5*(tmp_q_11*tmp_q_3 + tmp_q_11*tmp_q_4)); const double res_tmp_0_1 = tmp_q_15*(tmp_q_17*tmp_q_18 + tmp_q_19*tmp_q_20); const double res_tmp_0_2 = tmp_q_15*(tmp_q_18*tmp_q_22 + tmp_q_20*tmp_q_23); const double res_tmp_0_3 = tmp_q_15*(tmp_q_14*tmp_q_33 + tmp_q_28*tmp_q_5); const double res_tmp_0_4 = tmp_q_15*(tmp_q_14*tmp_q_36 + tmp_q_35*tmp_q_5); const double res_tmp_0_5 = tmp_q_15*(tmp_q_14*tmp_q_41 + tmp_q_39*tmp_q_5); - const double res_tmp_1_1 = tmp_q_15*((Dummy_4028*Dummy_4028)*tmp_q_42 + (Dummy_4029*Dummy_4029)*tmp_q_42); + const double res_tmp_1_1 = tmp_q_15*((Dummy_4011*Dummy_4011)*tmp_q_42 + (Dummy_4012*Dummy_4012)*tmp_q_42); const double res_tmp_1_2 = tmp_q_15*(tmp_q_11*tmp_q_17*tmp_q_22 + tmp_q_11*tmp_q_19*tmp_q_23); const double res_tmp_1_3 = tmp_q_15*(tmp_q_17*tmp_q_28 + tmp_q_19*tmp_q_33); const double res_tmp_1_4 = tmp_q_15*(tmp_q_17*tmp_q_35 + tmp_q_19*tmp_q_36); const double res_tmp_1_5 = tmp_q_15*(tmp_q_17*tmp_q_39 + tmp_q_19*tmp_q_41); - const double res_tmp_2_2 = tmp_q_15*((Dummy_4030*Dummy_4030)*tmp_q_43 + (Dummy_4031*Dummy_4031)*tmp_q_43); + const double res_tmp_2_2 = tmp_q_15*((Dummy_4013*Dummy_4013)*tmp_q_43 + (Dummy_4014*Dummy_4014)*tmp_q_43); const double res_tmp_2_3 = tmp_q_15*(tmp_q_22*tmp_q_28 + tmp_q_23*tmp_q_33); const double res_tmp_2_4 = tmp_q_15*(tmp_q_22*tmp_q_35 + tmp_q_23*tmp_q_36); const double res_tmp_2_5 = tmp_q_15*(tmp_q_22*tmp_q_39 + tmp_q_23*tmp_q_41); @@ -720,8 +720,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatVec_1 + _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1] = elMatVec_2 + _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; _data_dstEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatVec_3 + _data_dstEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1] = elMatVec_4 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_5 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1] = elMatVec_4 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatVec_5 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; } } } diff --git a/operators/div_k_grad/avx/P2ElementwiseDivKGrad_apply_macro_3D.cpp b/operators/div_k_grad/avx/P2ElementwiseDivKGrad_apply_macro_3D.cpp index e3bba9df17e2cc01bdb6c82eda6ce6b65a2e849c..0919fd25a5e835cf4e051d349badcf56f17adf2e 100644 --- a/operators/div_k_grad/avx/P2ElementwiseDivKGrad_apply_macro_3D.cpp +++ b/operators/div_k_grad/avx/P2ElementwiseDivKGrad_apply_macro_3D.cpp @@ -57,13 +57,13 @@ namespace operatorgeneration { void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, double * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double * RESTRICT _data_srcEdge, double * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -96,161 +96,161 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double jac_affine_inv_2_1 = (-jac_affine_0_0*jac_affine_2_1 + jac_affine_0_1*jac_affine_2_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double jac_affine_inv_2_2 = (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); - const double Dummy_4141 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4142 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4143 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4144 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4145 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4146 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4147 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4148 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4149 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4150 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4151 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4152 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4153 = -Dummy_4141 + Dummy_4144; - const double Dummy_4154 = -Dummy_4141 + Dummy_4147; - const double Dummy_4155 = -Dummy_4141 + Dummy_4150; - const double Dummy_4156 = -Dummy_4142 + Dummy_4145; - const double Dummy_4157 = -Dummy_4142 + Dummy_4148; - const double Dummy_4158 = -Dummy_4142 + Dummy_4151; - const double Dummy_4159 = -Dummy_4143 + Dummy_4146; - const double Dummy_4160 = -Dummy_4143 + Dummy_4149; - const double Dummy_4161 = -Dummy_4143 + Dummy_4152; - const double Dummy_4162 = (Dummy_4157*Dummy_4161 - Dummy_4158*Dummy_4160)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4163 = (-Dummy_4154*Dummy_4161 + Dummy_4155*Dummy_4160)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4164 = (Dummy_4154*Dummy_4158 - Dummy_4155*Dummy_4157)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4165 = (-Dummy_4156*Dummy_4161 + Dummy_4158*Dummy_4159)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4166 = (Dummy_4153*Dummy_4161 - Dummy_4155*Dummy_4159)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4167 = (-Dummy_4153*Dummy_4158 + Dummy_4155*Dummy_4156)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4168 = (Dummy_4156*Dummy_4160 - Dummy_4157*Dummy_4159)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4169 = (-Dummy_4153*Dummy_4160 + Dummy_4154*Dummy_4159)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4170 = (Dummy_4153*Dummy_4157 - Dummy_4154*Dummy_4156)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4171 = fabs(Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4172 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4173 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4174 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4175 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4176 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4177 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4178 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4179 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4180 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4181 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4182 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4183 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4184 = -Dummy_4172 + Dummy_4175; - const double Dummy_4185 = -Dummy_4172 + Dummy_4178; - const double Dummy_4186 = -Dummy_4172 + Dummy_4181; - const double Dummy_4187 = -Dummy_4173 + Dummy_4176; - const double Dummy_4188 = -Dummy_4173 + Dummy_4179; - const double Dummy_4189 = -Dummy_4173 + Dummy_4182; - const double Dummy_4190 = -Dummy_4174 + Dummy_4177; - const double Dummy_4191 = -Dummy_4174 + Dummy_4180; - const double Dummy_4192 = -Dummy_4174 + Dummy_4183; - const double Dummy_4193 = (Dummy_4188*Dummy_4192 - Dummy_4189*Dummy_4191)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4194 = (-Dummy_4185*Dummy_4192 + Dummy_4186*Dummy_4191)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4195 = (Dummy_4185*Dummy_4189 - Dummy_4186*Dummy_4188)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4196 = (-Dummy_4187*Dummy_4192 + Dummy_4189*Dummy_4190)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4197 = (Dummy_4184*Dummy_4192 - Dummy_4186*Dummy_4190)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4198 = (-Dummy_4184*Dummy_4189 + Dummy_4186*Dummy_4187)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4199 = (Dummy_4187*Dummy_4191 - Dummy_4188*Dummy_4190)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4200 = (-Dummy_4184*Dummy_4191 + Dummy_4185*Dummy_4190)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4201 = (Dummy_4184*Dummy_4188 - Dummy_4185*Dummy_4187)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4202 = fabs(Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4203 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4204 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4205 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4206 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4207 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4208 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4209 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4210 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4211 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4212 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4213 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4214 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4215 = -Dummy_4203 + Dummy_4206; - const double Dummy_4216 = -Dummy_4203 + Dummy_4209; - const double Dummy_4217 = -Dummy_4203 + Dummy_4212; - const double Dummy_4218 = -Dummy_4204 + Dummy_4207; - const double Dummy_4219 = -Dummy_4204 + Dummy_4210; - const double Dummy_4220 = -Dummy_4204 + Dummy_4213; - const double Dummy_4221 = -Dummy_4205 + Dummy_4208; - const double Dummy_4222 = -Dummy_4205 + Dummy_4211; - const double Dummy_4223 = -Dummy_4205 + Dummy_4214; - const double Dummy_4224 = (Dummy_4219*Dummy_4223 - Dummy_4220*Dummy_4222)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4225 = (-Dummy_4216*Dummy_4223 + Dummy_4217*Dummy_4222)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4226 = (Dummy_4216*Dummy_4220 - Dummy_4217*Dummy_4219)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4227 = (-Dummy_4218*Dummy_4223 + Dummy_4220*Dummy_4221)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4228 = (Dummy_4215*Dummy_4223 - Dummy_4217*Dummy_4221)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4229 = (-Dummy_4215*Dummy_4220 + Dummy_4217*Dummy_4218)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4230 = (Dummy_4218*Dummy_4222 - Dummy_4219*Dummy_4221)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4231 = (-Dummy_4215*Dummy_4222 + Dummy_4216*Dummy_4221)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4232 = (Dummy_4215*Dummy_4219 - Dummy_4216*Dummy_4218)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4233 = fabs(Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4234 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4235 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4236 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4237 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4238 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4239 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4240 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4241 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4242 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4243 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4244 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4245 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4246 = -Dummy_4234 + Dummy_4237; - const double Dummy_4247 = -Dummy_4234 + Dummy_4240; - const double Dummy_4248 = -Dummy_4234 + Dummy_4243; - const double Dummy_4249 = -Dummy_4235 + Dummy_4238; - const double Dummy_4250 = -Dummy_4235 + Dummy_4241; - const double Dummy_4251 = -Dummy_4235 + Dummy_4244; - const double Dummy_4252 = -Dummy_4236 + Dummy_4239; - const double Dummy_4253 = -Dummy_4236 + Dummy_4242; - const double Dummy_4254 = -Dummy_4236 + Dummy_4245; - const double Dummy_4255 = (Dummy_4250*Dummy_4254 - Dummy_4251*Dummy_4253)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4256 = (-Dummy_4247*Dummy_4254 + Dummy_4248*Dummy_4253)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4257 = (Dummy_4247*Dummy_4251 - Dummy_4248*Dummy_4250)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4258 = (-Dummy_4249*Dummy_4254 + Dummy_4251*Dummy_4252)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4259 = (Dummy_4246*Dummy_4254 - Dummy_4248*Dummy_4252)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4260 = (-Dummy_4246*Dummy_4251 + Dummy_4248*Dummy_4249)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4261 = (Dummy_4249*Dummy_4253 - Dummy_4250*Dummy_4252)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4262 = (-Dummy_4246*Dummy_4253 + Dummy_4247*Dummy_4252)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4263 = (Dummy_4246*Dummy_4250 - Dummy_4247*Dummy_4249)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4264 = fabs(Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4265 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4266 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4267 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4268 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4269 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4270 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4271 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4272 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4273 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4274 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4275 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4276 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4277 = -Dummy_4265 + Dummy_4268; - const double Dummy_4278 = -Dummy_4265 + Dummy_4271; - const double Dummy_4279 = -Dummy_4265 + Dummy_4274; - const double Dummy_4280 = -Dummy_4266 + Dummy_4269; - const double Dummy_4281 = -Dummy_4266 + Dummy_4272; - const double Dummy_4282 = -Dummy_4266 + Dummy_4275; - const double Dummy_4283 = -Dummy_4267 + Dummy_4270; - const double Dummy_4284 = -Dummy_4267 + Dummy_4273; - const double Dummy_4285 = -Dummy_4267 + Dummy_4276; - const double Dummy_4286 = (Dummy_4281*Dummy_4285 - Dummy_4282*Dummy_4284)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4287 = (-Dummy_4278*Dummy_4285 + Dummy_4279*Dummy_4284)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4288 = (Dummy_4278*Dummy_4282 - Dummy_4279*Dummy_4281)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4289 = (-Dummy_4280*Dummy_4285 + Dummy_4282*Dummy_4283)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4290 = (Dummy_4277*Dummy_4285 - Dummy_4279*Dummy_4283)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4291 = (-Dummy_4277*Dummy_4282 + Dummy_4279*Dummy_4280)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4292 = (Dummy_4280*Dummy_4284 - Dummy_4281*Dummy_4283)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4293 = (-Dummy_4277*Dummy_4284 + Dummy_4278*Dummy_4283)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4294 = (Dummy_4277*Dummy_4281 - Dummy_4278*Dummy_4280)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4295 = fabs(Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); + const double Dummy_4124 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4125 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4126 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4127 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4128 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4129 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4130 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4131 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4132 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4133 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4134 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4135 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4136 = -Dummy_4124 + Dummy_4127; + const double Dummy_4137 = -Dummy_4124 + Dummy_4130; + const double Dummy_4138 = -Dummy_4124 + Dummy_4133; + const double Dummy_4139 = -Dummy_4125 + Dummy_4128; + const double Dummy_4140 = -Dummy_4125 + Dummy_4131; + const double Dummy_4141 = -Dummy_4125 + Dummy_4134; + const double Dummy_4142 = -Dummy_4126 + Dummy_4129; + const double Dummy_4143 = -Dummy_4126 + Dummy_4132; + const double Dummy_4144 = -Dummy_4126 + Dummy_4135; + const double Dummy_4145 = (Dummy_4140*Dummy_4144 - Dummy_4141*Dummy_4143)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4146 = (-Dummy_4137*Dummy_4144 + Dummy_4138*Dummy_4143)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4147 = (Dummy_4137*Dummy_4141 - Dummy_4138*Dummy_4140)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4148 = (-Dummy_4139*Dummy_4144 + Dummy_4141*Dummy_4142)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4149 = (Dummy_4136*Dummy_4144 - Dummy_4138*Dummy_4142)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4150 = (-Dummy_4136*Dummy_4141 + Dummy_4138*Dummy_4139)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4151 = (Dummy_4139*Dummy_4143 - Dummy_4140*Dummy_4142)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4152 = (-Dummy_4136*Dummy_4143 + Dummy_4137*Dummy_4142)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4153 = (Dummy_4136*Dummy_4140 - Dummy_4137*Dummy_4139)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4154 = fabs(Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4155 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4156 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4157 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4158 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4159 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4160 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4161 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4162 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4163 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4164 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4165 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4166 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4167 = -Dummy_4155 + Dummy_4158; + const double Dummy_4168 = -Dummy_4155 + Dummy_4161; + const double Dummy_4169 = -Dummy_4155 + Dummy_4164; + const double Dummy_4170 = -Dummy_4156 + Dummy_4159; + const double Dummy_4171 = -Dummy_4156 + Dummy_4162; + const double Dummy_4172 = -Dummy_4156 + Dummy_4165; + const double Dummy_4173 = -Dummy_4157 + Dummy_4160; + const double Dummy_4174 = -Dummy_4157 + Dummy_4163; + const double Dummy_4175 = -Dummy_4157 + Dummy_4166; + const double Dummy_4176 = (Dummy_4171*Dummy_4175 - Dummy_4172*Dummy_4174)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4177 = (-Dummy_4168*Dummy_4175 + Dummy_4169*Dummy_4174)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4178 = (Dummy_4168*Dummy_4172 - Dummy_4169*Dummy_4171)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4179 = (-Dummy_4170*Dummy_4175 + Dummy_4172*Dummy_4173)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4180 = (Dummy_4167*Dummy_4175 - Dummy_4169*Dummy_4173)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4181 = (-Dummy_4167*Dummy_4172 + Dummy_4169*Dummy_4170)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4182 = (Dummy_4170*Dummy_4174 - Dummy_4171*Dummy_4173)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4183 = (-Dummy_4167*Dummy_4174 + Dummy_4168*Dummy_4173)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4184 = (Dummy_4167*Dummy_4171 - Dummy_4168*Dummy_4170)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4185 = fabs(Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4186 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4187 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4188 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4189 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4190 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4191 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4192 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4193 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4194 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4195 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4196 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4197 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4198 = -Dummy_4186 + Dummy_4189; + const double Dummy_4199 = -Dummy_4186 + Dummy_4192; + const double Dummy_4200 = -Dummy_4186 + Dummy_4195; + const double Dummy_4201 = -Dummy_4187 + Dummy_4190; + const double Dummy_4202 = -Dummy_4187 + Dummy_4193; + const double Dummy_4203 = -Dummy_4187 + Dummy_4196; + const double Dummy_4204 = -Dummy_4188 + Dummy_4191; + const double Dummy_4205 = -Dummy_4188 + Dummy_4194; + const double Dummy_4206 = -Dummy_4188 + Dummy_4197; + const double Dummy_4207 = (Dummy_4202*Dummy_4206 - Dummy_4203*Dummy_4205)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4208 = (-Dummy_4199*Dummy_4206 + Dummy_4200*Dummy_4205)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4209 = (Dummy_4199*Dummy_4203 - Dummy_4200*Dummy_4202)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4210 = (-Dummy_4201*Dummy_4206 + Dummy_4203*Dummy_4204)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4211 = (Dummy_4198*Dummy_4206 - Dummy_4200*Dummy_4204)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4212 = (-Dummy_4198*Dummy_4203 + Dummy_4200*Dummy_4201)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4213 = (Dummy_4201*Dummy_4205 - Dummy_4202*Dummy_4204)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4214 = (-Dummy_4198*Dummy_4205 + Dummy_4199*Dummy_4204)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4215 = (Dummy_4198*Dummy_4202 - Dummy_4199*Dummy_4201)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4216 = fabs(Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4217 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4218 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4219 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4220 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4221 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4222 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4223 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4224 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4225 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4226 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4227 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4228 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4229 = -Dummy_4217 + Dummy_4220; + const double Dummy_4230 = -Dummy_4217 + Dummy_4223; + const double Dummy_4231 = -Dummy_4217 + Dummy_4226; + const double Dummy_4232 = -Dummy_4218 + Dummy_4221; + const double Dummy_4233 = -Dummy_4218 + Dummy_4224; + const double Dummy_4234 = -Dummy_4218 + Dummy_4227; + const double Dummy_4235 = -Dummy_4219 + Dummy_4222; + const double Dummy_4236 = -Dummy_4219 + Dummy_4225; + const double Dummy_4237 = -Dummy_4219 + Dummy_4228; + const double Dummy_4238 = (Dummy_4233*Dummy_4237 - Dummy_4234*Dummy_4236)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4239 = (-Dummy_4230*Dummy_4237 + Dummy_4231*Dummy_4236)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4240 = (Dummy_4230*Dummy_4234 - Dummy_4231*Dummy_4233)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4241 = (-Dummy_4232*Dummy_4237 + Dummy_4234*Dummy_4235)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4242 = (Dummy_4229*Dummy_4237 - Dummy_4231*Dummy_4235)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4243 = (-Dummy_4229*Dummy_4234 + Dummy_4231*Dummy_4232)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4244 = (Dummy_4232*Dummy_4236 - Dummy_4233*Dummy_4235)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4245 = (-Dummy_4229*Dummy_4236 + Dummy_4230*Dummy_4235)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4246 = (Dummy_4229*Dummy_4233 - Dummy_4230*Dummy_4232)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4247 = fabs(Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4248 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4249 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4250 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4251 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4252 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4253 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4254 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4255 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4256 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4257 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4258 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4259 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4260 = -Dummy_4248 + Dummy_4251; + const double Dummy_4261 = -Dummy_4248 + Dummy_4254; + const double Dummy_4262 = -Dummy_4248 + Dummy_4257; + const double Dummy_4263 = -Dummy_4249 + Dummy_4252; + const double Dummy_4264 = -Dummy_4249 + Dummy_4255; + const double Dummy_4265 = -Dummy_4249 + Dummy_4258; + const double Dummy_4266 = -Dummy_4250 + Dummy_4253; + const double Dummy_4267 = -Dummy_4250 + Dummy_4256; + const double Dummy_4268 = -Dummy_4250 + Dummy_4259; + const double Dummy_4269 = (Dummy_4264*Dummy_4268 - Dummy_4265*Dummy_4267)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4270 = (-Dummy_4261*Dummy_4268 + Dummy_4262*Dummy_4267)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4271 = (Dummy_4261*Dummy_4265 - Dummy_4262*Dummy_4264)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4272 = (-Dummy_4263*Dummy_4268 + Dummy_4265*Dummy_4266)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4273 = (Dummy_4260*Dummy_4268 - Dummy_4262*Dummy_4266)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4274 = (-Dummy_4260*Dummy_4265 + Dummy_4262*Dummy_4263)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4275 = (Dummy_4263*Dummy_4267 - Dummy_4264*Dummy_4266)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4276 = (-Dummy_4260*Dummy_4267 + Dummy_4261*Dummy_4266)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4277 = (Dummy_4260*Dummy_4264 - Dummy_4261*Dummy_4263)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4278 = fabs(Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); { for (int64_t ctr_2 = 0; ctr_2 < micro_edges_per_macro_edge; ctr_2 += 1) for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) @@ -268,15 +268,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d src_dof_8 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d src_dof_9 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -648,15 +648,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -1032,15 +1032,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d src_dof_8 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d src_dof_9 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -1103,9 +1103,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4162,Dummy_4162,Dummy_4162,Dummy_4162)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4165,Dummy_4165,Dummy_4165,Dummy_4165)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4168,Dummy_4168,Dummy_4168,Dummy_4168)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4145,Dummy_4145,Dummy_4145,Dummy_4145)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4148,Dummy_4148,Dummy_4148,Dummy_4148)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4151,Dummy_4151,Dummy_4151,Dummy_4151)); const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); @@ -1118,88 +1118,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4163,Dummy_4163,Dummy_4163,Dummy_4163)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4166,Dummy_4166,Dummy_4166,Dummy_4166)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4169,Dummy_4169,Dummy_4169,Dummy_4169)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4146,Dummy_4146,Dummy_4146,Dummy_4146)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4149,Dummy_4149,Dummy_4149,Dummy_4149)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4152,Dummy_4152,Dummy_4152,Dummy_4152)); const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4164,Dummy_4164,Dummy_4164,Dummy_4164)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4167,Dummy_4167,Dummy_4167,Dummy_4167)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4170,Dummy_4170,Dummy_4170,Dummy_4170)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4147,Dummy_4147,Dummy_4147,Dummy_4147)); + const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4150,Dummy_4150,Dummy_4150,Dummy_4150)); + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4153,Dummy_4153,Dummy_4153,Dummy_4153)); const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4171*_data_q_w[q]; + const double tmp_q_28 = Dummy_4154*_data_q_w[q]; const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4162,Dummy_4162,Dummy_4162,Dummy_4162)); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4145,Dummy_4145,Dummy_4145,Dummy_4145)); const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4163,Dummy_4163,Dummy_4163,Dummy_4163)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4146,Dummy_4146,Dummy_4146,Dummy_4146)); const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4164,Dummy_4164,Dummy_4164,Dummy_4164)); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4147,Dummy_4147,Dummy_4147,Dummy_4147)); const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4165,Dummy_4165,Dummy_4165,Dummy_4165)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4166,Dummy_4166,Dummy_4166,Dummy_4166)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4167,Dummy_4167,Dummy_4167,Dummy_4167)); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4148,Dummy_4148,Dummy_4148,Dummy_4148)); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4149,Dummy_4149,Dummy_4149,Dummy_4149)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4150,Dummy_4150,Dummy_4150,Dummy_4150)); const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4168,Dummy_4168,Dummy_4168,Dummy_4168)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4169,Dummy_4169,Dummy_4169,Dummy_4169)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4170,Dummy_4170,Dummy_4170,Dummy_4170)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4165,Dummy_4165,Dummy_4165,Dummy_4165)); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4151,Dummy_4151,Dummy_4151,Dummy_4151)); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4152,Dummy_4152,Dummy_4152,Dummy_4152)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4153,Dummy_4153,Dummy_4153,Dummy_4153)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4148,Dummy_4148,Dummy_4148,Dummy_4148)); const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4168,Dummy_4168,Dummy_4168,Dummy_4168)); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4151,Dummy_4151,Dummy_4151,Dummy_4151)); const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4166,Dummy_4166,Dummy_4166,Dummy_4166)); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4149,Dummy_4149,Dummy_4149,Dummy_4149)); const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4169,Dummy_4169,Dummy_4169,Dummy_4169)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4152,Dummy_4152,Dummy_4152,Dummy_4152)); const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4167,Dummy_4167,Dummy_4167,Dummy_4167)); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4150,Dummy_4150,Dummy_4150,Dummy_4150)); const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4170,Dummy_4170,Dummy_4170,Dummy_4170)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4153,Dummy_4153,Dummy_4153,Dummy_4153)); const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4162,Dummy_4162,Dummy_4162,Dummy_4162)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4145,Dummy_4145,Dummy_4145,Dummy_4145)); const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4168,Dummy_4168,Dummy_4168,Dummy_4168)); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4151,Dummy_4151,Dummy_4151,Dummy_4151)); const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4163,Dummy_4163,Dummy_4163,Dummy_4163)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4146,Dummy_4146,Dummy_4146,Dummy_4146)); const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4169,Dummy_4169,Dummy_4169,Dummy_4169)); + const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4152,Dummy_4152,Dummy_4152,Dummy_4152)); const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4164,Dummy_4164,Dummy_4164,Dummy_4164)); + const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4147,Dummy_4147,Dummy_4147,Dummy_4147)); const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4170,Dummy_4170,Dummy_4170,Dummy_4170)); + const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4153,Dummy_4153,Dummy_4153,Dummy_4153)); const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4162,Dummy_4162,Dummy_4162,Dummy_4162)); + const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4145,Dummy_4145,Dummy_4145,Dummy_4145)); const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4165,Dummy_4165,Dummy_4165,Dummy_4165)); + const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4148,Dummy_4148,Dummy_4148,Dummy_4148)); const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4163,Dummy_4163,Dummy_4163,Dummy_4163)); + const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4146,Dummy_4146,Dummy_4146,Dummy_4146)); const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4166,Dummy_4166,Dummy_4166,Dummy_4166)); + const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4149,Dummy_4149,Dummy_4149,Dummy_4149)); const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4164,Dummy_4164,Dummy_4164,Dummy_4164)); + const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4147,Dummy_4147,Dummy_4147,Dummy_4147)); const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4167,Dummy_4167,Dummy_4167,Dummy_4167)); + const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4150,Dummy_4150,Dummy_4150,Dummy_4150)); const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4168,Dummy_4168,Dummy_4168,Dummy_4168))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4169,Dummy_4169,Dummy_4169,Dummy_4169))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4170,Dummy_4170,Dummy_4170,Dummy_4170))); + const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4151,Dummy_4151,Dummy_4151,Dummy_4151))); + const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4152,Dummy_4152,Dummy_4152,Dummy_4152))); + const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4153,Dummy_4153,Dummy_4153,Dummy_4153))); const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4165,Dummy_4165,Dummy_4165,Dummy_4165))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4166,Dummy_4166,Dummy_4166,Dummy_4166))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4167,Dummy_4167,Dummy_4167,Dummy_4167))); + const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4148,Dummy_4148,Dummy_4148,Dummy_4148))); + const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4149,Dummy_4149,Dummy_4149,Dummy_4149))); + const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4150,Dummy_4150,Dummy_4150,Dummy_4150))); const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4162,Dummy_4162,Dummy_4162,Dummy_4162))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4163,Dummy_4163,Dummy_4163,Dummy_4163))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4164,Dummy_4164,Dummy_4164,Dummy_4164))); + const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4145,Dummy_4145,Dummy_4145,Dummy_4145))); + const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4146,Dummy_4146,Dummy_4146,Dummy_4146))); + const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4147,Dummy_4147,Dummy_4147,Dummy_4147))); const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); @@ -1216,12 +1216,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4168,Dummy_4168,Dummy_4168,Dummy_4168))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4169,Dummy_4169,Dummy_4169,Dummy_4169))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4170,Dummy_4170,Dummy_4170,Dummy_4170))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4165,Dummy_4165,Dummy_4165,Dummy_4165))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4166,Dummy_4166,Dummy_4166,Dummy_4166))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4167,Dummy_4167,Dummy_4167,Dummy_4167))); + const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4151,Dummy_4151,Dummy_4151,Dummy_4151))); + const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4152,Dummy_4152,Dummy_4152,Dummy_4152))); + const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4153,Dummy_4153,Dummy_4153,Dummy_4153))); + const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4148,Dummy_4148,Dummy_4148,Dummy_4148))); + const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4149,Dummy_4149,Dummy_4149,Dummy_4149))); + const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4150,Dummy_4150,Dummy_4150,Dummy_4150))); const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -1232,7 +1232,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4162,Dummy_4162,Dummy_4162,Dummy_4162),_mm256_set_pd(Dummy_4162,Dummy_4162,Dummy_4162,Dummy_4162))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4163,Dummy_4163,Dummy_4163,Dummy_4163),_mm256_set_pd(Dummy_4163,Dummy_4163,Dummy_4163,Dummy_4163)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4164,Dummy_4164,Dummy_4164,Dummy_4164),_mm256_set_pd(Dummy_4164,Dummy_4164,Dummy_4164,Dummy_4164)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4145,Dummy_4145,Dummy_4145,Dummy_4145),_mm256_set_pd(Dummy_4145,Dummy_4145,Dummy_4145,Dummy_4145))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4146,Dummy_4146,Dummy_4146,Dummy_4146),_mm256_set_pd(Dummy_4146,Dummy_4146,Dummy_4146,Dummy_4146)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4147,Dummy_4147,Dummy_4147,Dummy_4147),_mm256_set_pd(Dummy_4147,Dummy_4147,Dummy_4147,Dummy_4147)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -1241,7 +1241,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4165,Dummy_4165,Dummy_4165,Dummy_4165),_mm256_set_pd(Dummy_4165,Dummy_4165,Dummy_4165,Dummy_4165))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4166,Dummy_4166,Dummy_4166,Dummy_4166),_mm256_set_pd(Dummy_4166,Dummy_4166,Dummy_4166,Dummy_4166)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4167,Dummy_4167,Dummy_4167,Dummy_4167),_mm256_set_pd(Dummy_4167,Dummy_4167,Dummy_4167,Dummy_4167)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4148,Dummy_4148,Dummy_4148,Dummy_4148),_mm256_set_pd(Dummy_4148,Dummy_4148,Dummy_4148,Dummy_4148))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4149,Dummy_4149,Dummy_4149,Dummy_4149),_mm256_set_pd(Dummy_4149,Dummy_4149,Dummy_4149,Dummy_4149)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4150,Dummy_4150,Dummy_4150,Dummy_4150),_mm256_set_pd(Dummy_4150,Dummy_4150,Dummy_4150,Dummy_4150)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -1249,7 +1249,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4168,Dummy_4168,Dummy_4168,Dummy_4168),_mm256_set_pd(Dummy_4168,Dummy_4168,Dummy_4168,Dummy_4168))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4169,Dummy_4169,Dummy_4169,Dummy_4169),_mm256_set_pd(Dummy_4169,Dummy_4169,Dummy_4169,Dummy_4169)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4170,Dummy_4170,Dummy_4170,Dummy_4170),_mm256_set_pd(Dummy_4170,Dummy_4170,Dummy_4170,Dummy_4170)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4151,Dummy_4151,Dummy_4151,Dummy_4151),_mm256_set_pd(Dummy_4151,Dummy_4151,Dummy_4151,Dummy_4151))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4152,Dummy_4152,Dummy_4152,Dummy_4152),_mm256_set_pd(Dummy_4152,Dummy_4152,Dummy_4152,Dummy_4152)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4153,Dummy_4153,Dummy_4153,Dummy_4153),_mm256_set_pd(Dummy_4153,Dummy_4153,Dummy_4153,Dummy_4153)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -1276,7 +1276,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4162,Dummy_4162,Dummy_4162,Dummy_4162)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4163,Dummy_4163,Dummy_4163,Dummy_4163))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4164,Dummy_4164,Dummy_4164,Dummy_4164))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4145,Dummy_4145,Dummy_4145,Dummy_4145)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4146,Dummy_4146,Dummy_4146,Dummy_4146))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4147,Dummy_4147,Dummy_4147,Dummy_4147))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); @@ -1412,15 +1412,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double k_dof_4 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -1483,9 +1483,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4162*tmp_q_4; - const double tmp_q_6 = Dummy_4165*tmp_q_4; - const double tmp_q_7 = Dummy_4168*tmp_q_4; + const double tmp_q_5 = Dummy_4145*tmp_q_4; + const double tmp_q_6 = Dummy_4148*tmp_q_4; + const double tmp_q_7 = Dummy_4151*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -1498,88 +1498,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4163*tmp_q_4; - const double tmp_q_21 = Dummy_4166*tmp_q_4; - const double tmp_q_22 = Dummy_4169*tmp_q_4; + const double tmp_q_20 = Dummy_4146*tmp_q_4; + const double tmp_q_21 = Dummy_4149*tmp_q_4; + const double tmp_q_22 = Dummy_4152*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4164*tmp_q_4; - const double tmp_q_25 = Dummy_4167*tmp_q_4; - const double tmp_q_26 = Dummy_4170*tmp_q_4; + const double tmp_q_24 = Dummy_4147*tmp_q_4; + const double tmp_q_25 = Dummy_4150*tmp_q_4; + const double tmp_q_26 = Dummy_4153*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4171*_data_q_w[q]; + const double tmp_q_28 = Dummy_4154*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4162*tmp_q_29; + const double tmp_q_30 = Dummy_4145*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4163*tmp_q_29; + const double tmp_q_32 = Dummy_4146*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4164*tmp_q_29; + const double tmp_q_34 = Dummy_4147*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4165*tmp_q_36; - const double tmp_q_38 = Dummy_4166*tmp_q_36; - const double tmp_q_39 = Dummy_4167*tmp_q_36; + const double tmp_q_37 = Dummy_4148*tmp_q_36; + const double tmp_q_38 = Dummy_4149*tmp_q_36; + const double tmp_q_39 = Dummy_4150*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4168*tmp_q_40; - const double tmp_q_42 = Dummy_4169*tmp_q_40; - const double tmp_q_43 = Dummy_4170*tmp_q_40; - const double tmp_q_44 = Dummy_4165*tmp_q_0; + const double tmp_q_41 = Dummy_4151*tmp_q_40; + const double tmp_q_42 = Dummy_4152*tmp_q_40; + const double tmp_q_43 = Dummy_4153*tmp_q_40; + const double tmp_q_44 = Dummy_4148*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4168*tmp_q_2; + const double tmp_q_46 = Dummy_4151*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4166*tmp_q_0; + const double tmp_q_49 = Dummy_4149*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4169*tmp_q_2; + const double tmp_q_51 = Dummy_4152*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4167*tmp_q_0; + const double tmp_q_54 = Dummy_4150*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4170*tmp_q_2; + const double tmp_q_56 = Dummy_4153*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4162*tmp_q_0; + const double tmp_q_59 = Dummy_4145*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4168*tmp_q_1; + const double tmp_q_61 = Dummy_4151*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4163*tmp_q_0; + const double tmp_q_64 = Dummy_4146*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4169*tmp_q_1; + const double tmp_q_66 = Dummy_4152*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4164*tmp_q_0; + const double tmp_q_69 = Dummy_4147*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4170*tmp_q_1; + const double tmp_q_71 = Dummy_4153*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4162*tmp_q_2; + const double tmp_q_74 = Dummy_4145*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4165*tmp_q_1; + const double tmp_q_76 = Dummy_4148*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4163*tmp_q_2; + const double tmp_q_79 = Dummy_4146*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4166*tmp_q_1; + const double tmp_q_81 = Dummy_4149*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4164*tmp_q_2; + const double tmp_q_84 = Dummy_4147*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4167*tmp_q_1; + const double tmp_q_86 = Dummy_4150*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4168*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4169*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4170*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4151*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4152*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4153*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4165*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4166*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4167*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4148*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4149*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4150*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4162*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4163*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4164*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4145*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4146*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4147*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -1596,12 +1596,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4168*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4169*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4170*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4165*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4166*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4167*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4151*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4152*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4153*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4148*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4149*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4150*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -1612,7 +1612,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4162*Dummy_4162)*tmp_q_103 + (Dummy_4163*Dummy_4163)*tmp_q_103 + (Dummy_4164*Dummy_4164)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4145*Dummy_4145)*tmp_q_103 + (Dummy_4146*Dummy_4146)*tmp_q_103 + (Dummy_4147*Dummy_4147)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -1621,7 +1621,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4165*Dummy_4165)*tmp_q_107 + (Dummy_4166*Dummy_4166)*tmp_q_107 + (Dummy_4167*Dummy_4167)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4148*Dummy_4148)*tmp_q_107 + (Dummy_4149*Dummy_4149)*tmp_q_107 + (Dummy_4150*Dummy_4150)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -1629,7 +1629,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4168*Dummy_4168)*tmp_q_108 + (Dummy_4169*Dummy_4169)*tmp_q_108 + (Dummy_4170*Dummy_4170)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4151*Dummy_4151)*tmp_q_108 + (Dummy_4152*Dummy_4152)*tmp_q_108 + (Dummy_4153*Dummy_4153)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -1656,7 +1656,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4163*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4164*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4162*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4146*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4147*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4145*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -1796,15 +1796,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d src_dof_8 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); const __m256d src_dof_9 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -1867,9 +1867,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4193,Dummy_4193,Dummy_4193,Dummy_4193)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4196,Dummy_4196,Dummy_4196,Dummy_4196)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4199,Dummy_4199,Dummy_4199,Dummy_4199)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4176,Dummy_4176,Dummy_4176,Dummy_4176)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4179,Dummy_4179,Dummy_4179,Dummy_4179)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4182,Dummy_4182,Dummy_4182,Dummy_4182)); const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); @@ -1882,88 +1882,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4194,Dummy_4194,Dummy_4194,Dummy_4194)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4197,Dummy_4197,Dummy_4197,Dummy_4197)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4200,Dummy_4200,Dummy_4200,Dummy_4200)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4177,Dummy_4177,Dummy_4177,Dummy_4177)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4180,Dummy_4180,Dummy_4180,Dummy_4180)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4183,Dummy_4183,Dummy_4183,Dummy_4183)); const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4195,Dummy_4195,Dummy_4195,Dummy_4195)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4198,Dummy_4198,Dummy_4198,Dummy_4198)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4201,Dummy_4201,Dummy_4201,Dummy_4201)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4178,Dummy_4178,Dummy_4178,Dummy_4178)); + const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4181,Dummy_4181,Dummy_4181,Dummy_4181)); + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4184,Dummy_4184,Dummy_4184,Dummy_4184)); const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4202*_data_q_w[q]; + const double tmp_q_28 = Dummy_4185*_data_q_w[q]; const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4193,Dummy_4193,Dummy_4193,Dummy_4193)); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4176,Dummy_4176,Dummy_4176,Dummy_4176)); const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4194,Dummy_4194,Dummy_4194,Dummy_4194)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4177,Dummy_4177,Dummy_4177,Dummy_4177)); const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4195,Dummy_4195,Dummy_4195,Dummy_4195)); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4178,Dummy_4178,Dummy_4178,Dummy_4178)); const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4196,Dummy_4196,Dummy_4196,Dummy_4196)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4197,Dummy_4197,Dummy_4197,Dummy_4197)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4198,Dummy_4198,Dummy_4198,Dummy_4198)); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4179,Dummy_4179,Dummy_4179,Dummy_4179)); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4180,Dummy_4180,Dummy_4180,Dummy_4180)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4181,Dummy_4181,Dummy_4181,Dummy_4181)); const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4199,Dummy_4199,Dummy_4199,Dummy_4199)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4200,Dummy_4200,Dummy_4200,Dummy_4200)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4201,Dummy_4201,Dummy_4201,Dummy_4201)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4196,Dummy_4196,Dummy_4196,Dummy_4196)); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4182,Dummy_4182,Dummy_4182,Dummy_4182)); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4183,Dummy_4183,Dummy_4183,Dummy_4183)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4184,Dummy_4184,Dummy_4184,Dummy_4184)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4179,Dummy_4179,Dummy_4179,Dummy_4179)); const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4199,Dummy_4199,Dummy_4199,Dummy_4199)); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4182,Dummy_4182,Dummy_4182,Dummy_4182)); const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4197,Dummy_4197,Dummy_4197,Dummy_4197)); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4180,Dummy_4180,Dummy_4180,Dummy_4180)); const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4200,Dummy_4200,Dummy_4200,Dummy_4200)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4183,Dummy_4183,Dummy_4183,Dummy_4183)); const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4198,Dummy_4198,Dummy_4198,Dummy_4198)); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4181,Dummy_4181,Dummy_4181,Dummy_4181)); const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4201,Dummy_4201,Dummy_4201,Dummy_4201)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4184,Dummy_4184,Dummy_4184,Dummy_4184)); const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4193,Dummy_4193,Dummy_4193,Dummy_4193)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4176,Dummy_4176,Dummy_4176,Dummy_4176)); const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4199,Dummy_4199,Dummy_4199,Dummy_4199)); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4182,Dummy_4182,Dummy_4182,Dummy_4182)); const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4194,Dummy_4194,Dummy_4194,Dummy_4194)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4177,Dummy_4177,Dummy_4177,Dummy_4177)); const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4200,Dummy_4200,Dummy_4200,Dummy_4200)); + const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4183,Dummy_4183,Dummy_4183,Dummy_4183)); const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4195,Dummy_4195,Dummy_4195,Dummy_4195)); + const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4178,Dummy_4178,Dummy_4178,Dummy_4178)); const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4201,Dummy_4201,Dummy_4201,Dummy_4201)); + const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4184,Dummy_4184,Dummy_4184,Dummy_4184)); const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4193,Dummy_4193,Dummy_4193,Dummy_4193)); + const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4176,Dummy_4176,Dummy_4176,Dummy_4176)); const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4196,Dummy_4196,Dummy_4196,Dummy_4196)); + const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4179,Dummy_4179,Dummy_4179,Dummy_4179)); const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4194,Dummy_4194,Dummy_4194,Dummy_4194)); + const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4177,Dummy_4177,Dummy_4177,Dummy_4177)); const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4197,Dummy_4197,Dummy_4197,Dummy_4197)); + const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4180,Dummy_4180,Dummy_4180,Dummy_4180)); const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4195,Dummy_4195,Dummy_4195,Dummy_4195)); + const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4178,Dummy_4178,Dummy_4178,Dummy_4178)); const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4198,Dummy_4198,Dummy_4198,Dummy_4198)); + const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4181,Dummy_4181,Dummy_4181,Dummy_4181)); const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4199,Dummy_4199,Dummy_4199,Dummy_4199))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4200,Dummy_4200,Dummy_4200,Dummy_4200))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4201,Dummy_4201,Dummy_4201,Dummy_4201))); + const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4182,Dummy_4182,Dummy_4182,Dummy_4182))); + const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4183,Dummy_4183,Dummy_4183,Dummy_4183))); + const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4184,Dummy_4184,Dummy_4184,Dummy_4184))); const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4196,Dummy_4196,Dummy_4196,Dummy_4196))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4197,Dummy_4197,Dummy_4197,Dummy_4197))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4198,Dummy_4198,Dummy_4198,Dummy_4198))); + const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4179,Dummy_4179,Dummy_4179,Dummy_4179))); + const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4180,Dummy_4180,Dummy_4180,Dummy_4180))); + const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4181,Dummy_4181,Dummy_4181,Dummy_4181))); const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4193,Dummy_4193,Dummy_4193,Dummy_4193))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4194,Dummy_4194,Dummy_4194,Dummy_4194))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4195,Dummy_4195,Dummy_4195,Dummy_4195))); + const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4176,Dummy_4176,Dummy_4176,Dummy_4176))); + const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4177,Dummy_4177,Dummy_4177,Dummy_4177))); + const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4178,Dummy_4178,Dummy_4178,Dummy_4178))); const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); @@ -1980,12 +1980,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4199,Dummy_4199,Dummy_4199,Dummy_4199))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4200,Dummy_4200,Dummy_4200,Dummy_4200))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4201,Dummy_4201,Dummy_4201,Dummy_4201))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4196,Dummy_4196,Dummy_4196,Dummy_4196))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4197,Dummy_4197,Dummy_4197,Dummy_4197))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4198,Dummy_4198,Dummy_4198,Dummy_4198))); + const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4182,Dummy_4182,Dummy_4182,Dummy_4182))); + const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4183,Dummy_4183,Dummy_4183,Dummy_4183))); + const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4184,Dummy_4184,Dummy_4184,Dummy_4184))); + const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4179,Dummy_4179,Dummy_4179,Dummy_4179))); + const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4180,Dummy_4180,Dummy_4180,Dummy_4180))); + const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4181,Dummy_4181,Dummy_4181,Dummy_4181))); const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -1996,7 +1996,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4193,Dummy_4193,Dummy_4193,Dummy_4193),_mm256_set_pd(Dummy_4193,Dummy_4193,Dummy_4193,Dummy_4193))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4194,Dummy_4194,Dummy_4194,Dummy_4194),_mm256_set_pd(Dummy_4194,Dummy_4194,Dummy_4194,Dummy_4194)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4195,Dummy_4195,Dummy_4195,Dummy_4195),_mm256_set_pd(Dummy_4195,Dummy_4195,Dummy_4195,Dummy_4195)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4176,Dummy_4176,Dummy_4176,Dummy_4176),_mm256_set_pd(Dummy_4176,Dummy_4176,Dummy_4176,Dummy_4176))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4177,Dummy_4177,Dummy_4177,Dummy_4177),_mm256_set_pd(Dummy_4177,Dummy_4177,Dummy_4177,Dummy_4177)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4178,Dummy_4178,Dummy_4178,Dummy_4178),_mm256_set_pd(Dummy_4178,Dummy_4178,Dummy_4178,Dummy_4178)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -2005,7 +2005,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4196,Dummy_4196,Dummy_4196,Dummy_4196),_mm256_set_pd(Dummy_4196,Dummy_4196,Dummy_4196,Dummy_4196))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4197,Dummy_4197,Dummy_4197,Dummy_4197),_mm256_set_pd(Dummy_4197,Dummy_4197,Dummy_4197,Dummy_4197)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4198,Dummy_4198,Dummy_4198,Dummy_4198),_mm256_set_pd(Dummy_4198,Dummy_4198,Dummy_4198,Dummy_4198)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4179,Dummy_4179,Dummy_4179,Dummy_4179),_mm256_set_pd(Dummy_4179,Dummy_4179,Dummy_4179,Dummy_4179))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4180,Dummy_4180,Dummy_4180,Dummy_4180),_mm256_set_pd(Dummy_4180,Dummy_4180,Dummy_4180,Dummy_4180)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4181,Dummy_4181,Dummy_4181,Dummy_4181),_mm256_set_pd(Dummy_4181,Dummy_4181,Dummy_4181,Dummy_4181)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -2013,7 +2013,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4199,Dummy_4199,Dummy_4199,Dummy_4199),_mm256_set_pd(Dummy_4199,Dummy_4199,Dummy_4199,Dummy_4199))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4200,Dummy_4200,Dummy_4200,Dummy_4200),_mm256_set_pd(Dummy_4200,Dummy_4200,Dummy_4200,Dummy_4200)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4201,Dummy_4201,Dummy_4201,Dummy_4201),_mm256_set_pd(Dummy_4201,Dummy_4201,Dummy_4201,Dummy_4201)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4182,Dummy_4182,Dummy_4182,Dummy_4182),_mm256_set_pd(Dummy_4182,Dummy_4182,Dummy_4182,Dummy_4182))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4183,Dummy_4183,Dummy_4183,Dummy_4183),_mm256_set_pd(Dummy_4183,Dummy_4183,Dummy_4183,Dummy_4183)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4184,Dummy_4184,Dummy_4184,Dummy_4184),_mm256_set_pd(Dummy_4184,Dummy_4184,Dummy_4184,Dummy_4184)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -2040,7 +2040,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4193,Dummy_4193,Dummy_4193,Dummy_4193)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4194,Dummy_4194,Dummy_4194,Dummy_4194))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4195,Dummy_4195,Dummy_4195,Dummy_4195))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4176,Dummy_4176,Dummy_4176,Dummy_4176)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4177,Dummy_4177,Dummy_4177,Dummy_4177))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4178,Dummy_4178,Dummy_4178,Dummy_4178))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); @@ -2176,15 +2176,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -2247,9 +2247,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4193*tmp_q_4; - const double tmp_q_6 = Dummy_4196*tmp_q_4; - const double tmp_q_7 = Dummy_4199*tmp_q_4; + const double tmp_q_5 = Dummy_4176*tmp_q_4; + const double tmp_q_6 = Dummy_4179*tmp_q_4; + const double tmp_q_7 = Dummy_4182*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -2262,88 +2262,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4194*tmp_q_4; - const double tmp_q_21 = Dummy_4197*tmp_q_4; - const double tmp_q_22 = Dummy_4200*tmp_q_4; + const double tmp_q_20 = Dummy_4177*tmp_q_4; + const double tmp_q_21 = Dummy_4180*tmp_q_4; + const double tmp_q_22 = Dummy_4183*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4195*tmp_q_4; - const double tmp_q_25 = Dummy_4198*tmp_q_4; - const double tmp_q_26 = Dummy_4201*tmp_q_4; + const double tmp_q_24 = Dummy_4178*tmp_q_4; + const double tmp_q_25 = Dummy_4181*tmp_q_4; + const double tmp_q_26 = Dummy_4184*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4202*_data_q_w[q]; + const double tmp_q_28 = Dummy_4185*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4193*tmp_q_29; + const double tmp_q_30 = Dummy_4176*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4194*tmp_q_29; + const double tmp_q_32 = Dummy_4177*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4195*tmp_q_29; + const double tmp_q_34 = Dummy_4178*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4196*tmp_q_36; - const double tmp_q_38 = Dummy_4197*tmp_q_36; - const double tmp_q_39 = Dummy_4198*tmp_q_36; + const double tmp_q_37 = Dummy_4179*tmp_q_36; + const double tmp_q_38 = Dummy_4180*tmp_q_36; + const double tmp_q_39 = Dummy_4181*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4199*tmp_q_40; - const double tmp_q_42 = Dummy_4200*tmp_q_40; - const double tmp_q_43 = Dummy_4201*tmp_q_40; - const double tmp_q_44 = Dummy_4196*tmp_q_0; + const double tmp_q_41 = Dummy_4182*tmp_q_40; + const double tmp_q_42 = Dummy_4183*tmp_q_40; + const double tmp_q_43 = Dummy_4184*tmp_q_40; + const double tmp_q_44 = Dummy_4179*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4199*tmp_q_2; + const double tmp_q_46 = Dummy_4182*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4197*tmp_q_0; + const double tmp_q_49 = Dummy_4180*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4200*tmp_q_2; + const double tmp_q_51 = Dummy_4183*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4198*tmp_q_0; + const double tmp_q_54 = Dummy_4181*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4201*tmp_q_2; + const double tmp_q_56 = Dummy_4184*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4193*tmp_q_0; + const double tmp_q_59 = Dummy_4176*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4199*tmp_q_1; + const double tmp_q_61 = Dummy_4182*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4194*tmp_q_0; + const double tmp_q_64 = Dummy_4177*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4200*tmp_q_1; + const double tmp_q_66 = Dummy_4183*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4195*tmp_q_0; + const double tmp_q_69 = Dummy_4178*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4201*tmp_q_1; + const double tmp_q_71 = Dummy_4184*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4193*tmp_q_2; + const double tmp_q_74 = Dummy_4176*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4196*tmp_q_1; + const double tmp_q_76 = Dummy_4179*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4194*tmp_q_2; + const double tmp_q_79 = Dummy_4177*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4197*tmp_q_1; + const double tmp_q_81 = Dummy_4180*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4195*tmp_q_2; + const double tmp_q_84 = Dummy_4178*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4198*tmp_q_1; + const double tmp_q_86 = Dummy_4181*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4199*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4200*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4201*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4182*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4183*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4184*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4196*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4197*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4198*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4179*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4180*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4181*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4193*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4194*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4195*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4176*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4177*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4178*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -2360,12 +2360,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4199*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4200*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4201*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4196*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4197*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4198*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4182*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4183*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4184*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4179*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4180*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4181*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -2376,7 +2376,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4193*Dummy_4193)*tmp_q_103 + (Dummy_4194*Dummy_4194)*tmp_q_103 + (Dummy_4195*Dummy_4195)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4176*Dummy_4176)*tmp_q_103 + (Dummy_4177*Dummy_4177)*tmp_q_103 + (Dummy_4178*Dummy_4178)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -2385,7 +2385,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4196*Dummy_4196)*tmp_q_107 + (Dummy_4197*Dummy_4197)*tmp_q_107 + (Dummy_4198*Dummy_4198)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4179*Dummy_4179)*tmp_q_107 + (Dummy_4180*Dummy_4180)*tmp_q_107 + (Dummy_4181*Dummy_4181)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -2393,7 +2393,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4199*Dummy_4199)*tmp_q_108 + (Dummy_4200*Dummy_4200)*tmp_q_108 + (Dummy_4201*Dummy_4201)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4182*Dummy_4182)*tmp_q_108 + (Dummy_4183*Dummy_4183)*tmp_q_108 + (Dummy_4184*Dummy_4184)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -2420,7 +2420,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4194*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4195*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4193*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4177*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4178*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4176*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -2560,15 +2560,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d src_dof_8 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); const __m256d src_dof_9 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -2631,9 +2631,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4224,Dummy_4224,Dummy_4224,Dummy_4224)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4227,Dummy_4227,Dummy_4227,Dummy_4227)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4230,Dummy_4230,Dummy_4230,Dummy_4230)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4207,Dummy_4207,Dummy_4207,Dummy_4207)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4210,Dummy_4210,Dummy_4210,Dummy_4210)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4213,Dummy_4213,Dummy_4213,Dummy_4213)); const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); @@ -2646,88 +2646,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4225,Dummy_4225,Dummy_4225,Dummy_4225)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4228,Dummy_4228,Dummy_4228,Dummy_4228)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4231,Dummy_4231,Dummy_4231,Dummy_4231)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4208,Dummy_4208,Dummy_4208,Dummy_4208)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4211,Dummy_4211,Dummy_4211,Dummy_4211)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4214,Dummy_4214,Dummy_4214,Dummy_4214)); const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4226,Dummy_4226,Dummy_4226,Dummy_4226)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4229,Dummy_4229,Dummy_4229,Dummy_4229)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4232,Dummy_4232,Dummy_4232,Dummy_4232)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4209,Dummy_4209,Dummy_4209,Dummy_4209)); + const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4212,Dummy_4212,Dummy_4212,Dummy_4212)); + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4215,Dummy_4215,Dummy_4215,Dummy_4215)); const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4233*_data_q_w[q]; + const double tmp_q_28 = Dummy_4216*_data_q_w[q]; const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4224,Dummy_4224,Dummy_4224,Dummy_4224)); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4207,Dummy_4207,Dummy_4207,Dummy_4207)); const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4225,Dummy_4225,Dummy_4225,Dummy_4225)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4208,Dummy_4208,Dummy_4208,Dummy_4208)); const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4226,Dummy_4226,Dummy_4226,Dummy_4226)); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4209,Dummy_4209,Dummy_4209,Dummy_4209)); const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4227,Dummy_4227,Dummy_4227,Dummy_4227)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4228,Dummy_4228,Dummy_4228,Dummy_4228)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4229,Dummy_4229,Dummy_4229,Dummy_4229)); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4210,Dummy_4210,Dummy_4210,Dummy_4210)); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4211,Dummy_4211,Dummy_4211,Dummy_4211)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4212,Dummy_4212,Dummy_4212,Dummy_4212)); const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4230,Dummy_4230,Dummy_4230,Dummy_4230)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4231,Dummy_4231,Dummy_4231,Dummy_4231)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4232,Dummy_4232,Dummy_4232,Dummy_4232)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4227,Dummy_4227,Dummy_4227,Dummy_4227)); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4213,Dummy_4213,Dummy_4213,Dummy_4213)); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4214,Dummy_4214,Dummy_4214,Dummy_4214)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4215,Dummy_4215,Dummy_4215,Dummy_4215)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4210,Dummy_4210,Dummy_4210,Dummy_4210)); const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4230,Dummy_4230,Dummy_4230,Dummy_4230)); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4213,Dummy_4213,Dummy_4213,Dummy_4213)); const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4228,Dummy_4228,Dummy_4228,Dummy_4228)); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4211,Dummy_4211,Dummy_4211,Dummy_4211)); const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4231,Dummy_4231,Dummy_4231,Dummy_4231)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4214,Dummy_4214,Dummy_4214,Dummy_4214)); const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4229,Dummy_4229,Dummy_4229,Dummy_4229)); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4212,Dummy_4212,Dummy_4212,Dummy_4212)); const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4232,Dummy_4232,Dummy_4232,Dummy_4232)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4215,Dummy_4215,Dummy_4215,Dummy_4215)); const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4224,Dummy_4224,Dummy_4224,Dummy_4224)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4207,Dummy_4207,Dummy_4207,Dummy_4207)); const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4230,Dummy_4230,Dummy_4230,Dummy_4230)); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4213,Dummy_4213,Dummy_4213,Dummy_4213)); const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4225,Dummy_4225,Dummy_4225,Dummy_4225)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4208,Dummy_4208,Dummy_4208,Dummy_4208)); const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4231,Dummy_4231,Dummy_4231,Dummy_4231)); + const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4214,Dummy_4214,Dummy_4214,Dummy_4214)); const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4226,Dummy_4226,Dummy_4226,Dummy_4226)); + const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4209,Dummy_4209,Dummy_4209,Dummy_4209)); const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4232,Dummy_4232,Dummy_4232,Dummy_4232)); + const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4215,Dummy_4215,Dummy_4215,Dummy_4215)); const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4224,Dummy_4224,Dummy_4224,Dummy_4224)); + const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4207,Dummy_4207,Dummy_4207,Dummy_4207)); const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4227,Dummy_4227,Dummy_4227,Dummy_4227)); + const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4210,Dummy_4210,Dummy_4210,Dummy_4210)); const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4225,Dummy_4225,Dummy_4225,Dummy_4225)); + const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4208,Dummy_4208,Dummy_4208,Dummy_4208)); const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4228,Dummy_4228,Dummy_4228,Dummy_4228)); + const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4211,Dummy_4211,Dummy_4211,Dummy_4211)); const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4226,Dummy_4226,Dummy_4226,Dummy_4226)); + const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4209,Dummy_4209,Dummy_4209,Dummy_4209)); const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4229,Dummy_4229,Dummy_4229,Dummy_4229)); + const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4212,Dummy_4212,Dummy_4212,Dummy_4212)); const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4230,Dummy_4230,Dummy_4230,Dummy_4230))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4231,Dummy_4231,Dummy_4231,Dummy_4231))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4232,Dummy_4232,Dummy_4232,Dummy_4232))); + const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4213,Dummy_4213,Dummy_4213,Dummy_4213))); + const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4214,Dummy_4214,Dummy_4214,Dummy_4214))); + const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4215,Dummy_4215,Dummy_4215,Dummy_4215))); const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4227,Dummy_4227,Dummy_4227,Dummy_4227))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4228,Dummy_4228,Dummy_4228,Dummy_4228))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4229,Dummy_4229,Dummy_4229,Dummy_4229))); + const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4210,Dummy_4210,Dummy_4210,Dummy_4210))); + const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4211,Dummy_4211,Dummy_4211,Dummy_4211))); + const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4212,Dummy_4212,Dummy_4212,Dummy_4212))); const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4224,Dummy_4224,Dummy_4224,Dummy_4224))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4225,Dummy_4225,Dummy_4225,Dummy_4225))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4226,Dummy_4226,Dummy_4226,Dummy_4226))); + const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4207,Dummy_4207,Dummy_4207,Dummy_4207))); + const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4208,Dummy_4208,Dummy_4208,Dummy_4208))); + const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4209,Dummy_4209,Dummy_4209,Dummy_4209))); const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); @@ -2744,12 +2744,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4230,Dummy_4230,Dummy_4230,Dummy_4230))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4231,Dummy_4231,Dummy_4231,Dummy_4231))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4232,Dummy_4232,Dummy_4232,Dummy_4232))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4227,Dummy_4227,Dummy_4227,Dummy_4227))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4228,Dummy_4228,Dummy_4228,Dummy_4228))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4229,Dummy_4229,Dummy_4229,Dummy_4229))); + const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4213,Dummy_4213,Dummy_4213,Dummy_4213))); + const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4214,Dummy_4214,Dummy_4214,Dummy_4214))); + const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4215,Dummy_4215,Dummy_4215,Dummy_4215))); + const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4210,Dummy_4210,Dummy_4210,Dummy_4210))); + const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4211,Dummy_4211,Dummy_4211,Dummy_4211))); + const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4212,Dummy_4212,Dummy_4212,Dummy_4212))); const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -2760,7 +2760,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4224,Dummy_4224,Dummy_4224,Dummy_4224),_mm256_set_pd(Dummy_4224,Dummy_4224,Dummy_4224,Dummy_4224))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4225,Dummy_4225,Dummy_4225,Dummy_4225),_mm256_set_pd(Dummy_4225,Dummy_4225,Dummy_4225,Dummy_4225)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4226,Dummy_4226,Dummy_4226,Dummy_4226),_mm256_set_pd(Dummy_4226,Dummy_4226,Dummy_4226,Dummy_4226)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4207,Dummy_4207,Dummy_4207,Dummy_4207),_mm256_set_pd(Dummy_4207,Dummy_4207,Dummy_4207,Dummy_4207))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4208,Dummy_4208,Dummy_4208,Dummy_4208),_mm256_set_pd(Dummy_4208,Dummy_4208,Dummy_4208,Dummy_4208)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4209,Dummy_4209,Dummy_4209,Dummy_4209),_mm256_set_pd(Dummy_4209,Dummy_4209,Dummy_4209,Dummy_4209)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -2769,7 +2769,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4227,Dummy_4227,Dummy_4227,Dummy_4227),_mm256_set_pd(Dummy_4227,Dummy_4227,Dummy_4227,Dummy_4227))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4228,Dummy_4228,Dummy_4228,Dummy_4228),_mm256_set_pd(Dummy_4228,Dummy_4228,Dummy_4228,Dummy_4228)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4229,Dummy_4229,Dummy_4229,Dummy_4229),_mm256_set_pd(Dummy_4229,Dummy_4229,Dummy_4229,Dummy_4229)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4210,Dummy_4210,Dummy_4210,Dummy_4210),_mm256_set_pd(Dummy_4210,Dummy_4210,Dummy_4210,Dummy_4210))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4211,Dummy_4211,Dummy_4211,Dummy_4211),_mm256_set_pd(Dummy_4211,Dummy_4211,Dummy_4211,Dummy_4211)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4212,Dummy_4212,Dummy_4212,Dummy_4212),_mm256_set_pd(Dummy_4212,Dummy_4212,Dummy_4212,Dummy_4212)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -2777,7 +2777,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4230,Dummy_4230,Dummy_4230,Dummy_4230),_mm256_set_pd(Dummy_4230,Dummy_4230,Dummy_4230,Dummy_4230))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4231,Dummy_4231,Dummy_4231,Dummy_4231),_mm256_set_pd(Dummy_4231,Dummy_4231,Dummy_4231,Dummy_4231)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4232,Dummy_4232,Dummy_4232,Dummy_4232),_mm256_set_pd(Dummy_4232,Dummy_4232,Dummy_4232,Dummy_4232)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4213,Dummy_4213,Dummy_4213,Dummy_4213),_mm256_set_pd(Dummy_4213,Dummy_4213,Dummy_4213,Dummy_4213))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4214,Dummy_4214,Dummy_4214,Dummy_4214),_mm256_set_pd(Dummy_4214,Dummy_4214,Dummy_4214,Dummy_4214)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4215,Dummy_4215,Dummy_4215,Dummy_4215),_mm256_set_pd(Dummy_4215,Dummy_4215,Dummy_4215,Dummy_4215)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -2804,7 +2804,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4224,Dummy_4224,Dummy_4224,Dummy_4224)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4225,Dummy_4225,Dummy_4225,Dummy_4225))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4226,Dummy_4226,Dummy_4226,Dummy_4226))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4207,Dummy_4207,Dummy_4207,Dummy_4207)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4208,Dummy_4208,Dummy_4208,Dummy_4208))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4209,Dummy_4209,Dummy_4209,Dummy_4209))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); @@ -2940,15 +2940,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -3011,9 +3011,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4224*tmp_q_4; - const double tmp_q_6 = Dummy_4227*tmp_q_4; - const double tmp_q_7 = Dummy_4230*tmp_q_4; + const double tmp_q_5 = Dummy_4207*tmp_q_4; + const double tmp_q_6 = Dummy_4210*tmp_q_4; + const double tmp_q_7 = Dummy_4213*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -3026,88 +3026,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4225*tmp_q_4; - const double tmp_q_21 = Dummy_4228*tmp_q_4; - const double tmp_q_22 = Dummy_4231*tmp_q_4; + const double tmp_q_20 = Dummy_4208*tmp_q_4; + const double tmp_q_21 = Dummy_4211*tmp_q_4; + const double tmp_q_22 = Dummy_4214*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4226*tmp_q_4; - const double tmp_q_25 = Dummy_4229*tmp_q_4; - const double tmp_q_26 = Dummy_4232*tmp_q_4; + const double tmp_q_24 = Dummy_4209*tmp_q_4; + const double tmp_q_25 = Dummy_4212*tmp_q_4; + const double tmp_q_26 = Dummy_4215*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4233*_data_q_w[q]; + const double tmp_q_28 = Dummy_4216*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4224*tmp_q_29; + const double tmp_q_30 = Dummy_4207*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4225*tmp_q_29; + const double tmp_q_32 = Dummy_4208*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4226*tmp_q_29; + const double tmp_q_34 = Dummy_4209*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4227*tmp_q_36; - const double tmp_q_38 = Dummy_4228*tmp_q_36; - const double tmp_q_39 = Dummy_4229*tmp_q_36; + const double tmp_q_37 = Dummy_4210*tmp_q_36; + const double tmp_q_38 = Dummy_4211*tmp_q_36; + const double tmp_q_39 = Dummy_4212*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4230*tmp_q_40; - const double tmp_q_42 = Dummy_4231*tmp_q_40; - const double tmp_q_43 = Dummy_4232*tmp_q_40; - const double tmp_q_44 = Dummy_4227*tmp_q_0; + const double tmp_q_41 = Dummy_4213*tmp_q_40; + const double tmp_q_42 = Dummy_4214*tmp_q_40; + const double tmp_q_43 = Dummy_4215*tmp_q_40; + const double tmp_q_44 = Dummy_4210*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4230*tmp_q_2; + const double tmp_q_46 = Dummy_4213*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4228*tmp_q_0; + const double tmp_q_49 = Dummy_4211*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4231*tmp_q_2; + const double tmp_q_51 = Dummy_4214*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4229*tmp_q_0; + const double tmp_q_54 = Dummy_4212*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4232*tmp_q_2; + const double tmp_q_56 = Dummy_4215*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4224*tmp_q_0; + const double tmp_q_59 = Dummy_4207*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4230*tmp_q_1; + const double tmp_q_61 = Dummy_4213*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4225*tmp_q_0; + const double tmp_q_64 = Dummy_4208*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4231*tmp_q_1; + const double tmp_q_66 = Dummy_4214*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4226*tmp_q_0; + const double tmp_q_69 = Dummy_4209*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4232*tmp_q_1; + const double tmp_q_71 = Dummy_4215*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4224*tmp_q_2; + const double tmp_q_74 = Dummy_4207*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4227*tmp_q_1; + const double tmp_q_76 = Dummy_4210*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4225*tmp_q_2; + const double tmp_q_79 = Dummy_4208*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4228*tmp_q_1; + const double tmp_q_81 = Dummy_4211*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4226*tmp_q_2; + const double tmp_q_84 = Dummy_4209*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4229*tmp_q_1; + const double tmp_q_86 = Dummy_4212*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4230*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4231*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4232*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4213*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4214*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4215*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4227*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4228*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4229*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4210*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4211*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4212*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4224*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4225*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4226*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4207*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4208*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4209*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -3124,12 +3124,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4230*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4231*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4232*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4227*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4228*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4229*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4213*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4214*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4215*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4210*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4211*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4212*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -3140,7 +3140,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4224*Dummy_4224)*tmp_q_103 + (Dummy_4225*Dummy_4225)*tmp_q_103 + (Dummy_4226*Dummy_4226)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4207*Dummy_4207)*tmp_q_103 + (Dummy_4208*Dummy_4208)*tmp_q_103 + (Dummy_4209*Dummy_4209)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -3149,7 +3149,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4227*Dummy_4227)*tmp_q_107 + (Dummy_4228*Dummy_4228)*tmp_q_107 + (Dummy_4229*Dummy_4229)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4210*Dummy_4210)*tmp_q_107 + (Dummy_4211*Dummy_4211)*tmp_q_107 + (Dummy_4212*Dummy_4212)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -3157,7 +3157,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4230*Dummy_4230)*tmp_q_108 + (Dummy_4231*Dummy_4231)*tmp_q_108 + (Dummy_4232*Dummy_4232)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4213*Dummy_4213)*tmp_q_108 + (Dummy_4214*Dummy_4214)*tmp_q_108 + (Dummy_4215*Dummy_4215)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -3184,7 +3184,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4225*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4226*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4224*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4208*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4209*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4207*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -3324,15 +3324,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d src_dof_8 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d src_dof_9 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -3395,9 +3395,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4255,Dummy_4255,Dummy_4255,Dummy_4255)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4258,Dummy_4258,Dummy_4258,Dummy_4258)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4261,Dummy_4261,Dummy_4261,Dummy_4261)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4238,Dummy_4238,Dummy_4238,Dummy_4238)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4241,Dummy_4241,Dummy_4241,Dummy_4241)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4244,Dummy_4244,Dummy_4244,Dummy_4244)); const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); @@ -3410,88 +3410,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4256,Dummy_4256,Dummy_4256,Dummy_4256)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4259,Dummy_4259,Dummy_4259,Dummy_4259)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4262,Dummy_4262,Dummy_4262,Dummy_4262)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4239,Dummy_4239,Dummy_4239,Dummy_4239)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4242,Dummy_4242,Dummy_4242,Dummy_4242)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4245,Dummy_4245,Dummy_4245,Dummy_4245)); const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4257,Dummy_4257,Dummy_4257,Dummy_4257)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4260,Dummy_4260,Dummy_4260,Dummy_4260)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4263,Dummy_4263,Dummy_4263,Dummy_4263)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4240,Dummy_4240,Dummy_4240,Dummy_4240)); + const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4243,Dummy_4243,Dummy_4243,Dummy_4243)); + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4246,Dummy_4246,Dummy_4246,Dummy_4246)); const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4264*_data_q_w[q]; + const double tmp_q_28 = Dummy_4247*_data_q_w[q]; const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4255,Dummy_4255,Dummy_4255,Dummy_4255)); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4238,Dummy_4238,Dummy_4238,Dummy_4238)); const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4256,Dummy_4256,Dummy_4256,Dummy_4256)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4239,Dummy_4239,Dummy_4239,Dummy_4239)); const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4257,Dummy_4257,Dummy_4257,Dummy_4257)); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4240,Dummy_4240,Dummy_4240,Dummy_4240)); const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4258,Dummy_4258,Dummy_4258,Dummy_4258)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4259,Dummy_4259,Dummy_4259,Dummy_4259)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4260,Dummy_4260,Dummy_4260,Dummy_4260)); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4241,Dummy_4241,Dummy_4241,Dummy_4241)); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4242,Dummy_4242,Dummy_4242,Dummy_4242)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4243,Dummy_4243,Dummy_4243,Dummy_4243)); const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4261,Dummy_4261,Dummy_4261,Dummy_4261)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4262,Dummy_4262,Dummy_4262,Dummy_4262)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4263,Dummy_4263,Dummy_4263,Dummy_4263)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4258,Dummy_4258,Dummy_4258,Dummy_4258)); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4244,Dummy_4244,Dummy_4244,Dummy_4244)); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4245,Dummy_4245,Dummy_4245,Dummy_4245)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4246,Dummy_4246,Dummy_4246,Dummy_4246)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4241,Dummy_4241,Dummy_4241,Dummy_4241)); const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4261,Dummy_4261,Dummy_4261,Dummy_4261)); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4244,Dummy_4244,Dummy_4244,Dummy_4244)); const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4259,Dummy_4259,Dummy_4259,Dummy_4259)); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4242,Dummy_4242,Dummy_4242,Dummy_4242)); const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4262,Dummy_4262,Dummy_4262,Dummy_4262)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4245,Dummy_4245,Dummy_4245,Dummy_4245)); const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4260,Dummy_4260,Dummy_4260,Dummy_4260)); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4243,Dummy_4243,Dummy_4243,Dummy_4243)); const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4263,Dummy_4263,Dummy_4263,Dummy_4263)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4246,Dummy_4246,Dummy_4246,Dummy_4246)); const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4255,Dummy_4255,Dummy_4255,Dummy_4255)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4238,Dummy_4238,Dummy_4238,Dummy_4238)); const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4261,Dummy_4261,Dummy_4261,Dummy_4261)); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4244,Dummy_4244,Dummy_4244,Dummy_4244)); const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4256,Dummy_4256,Dummy_4256,Dummy_4256)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4239,Dummy_4239,Dummy_4239,Dummy_4239)); const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4262,Dummy_4262,Dummy_4262,Dummy_4262)); + const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4245,Dummy_4245,Dummy_4245,Dummy_4245)); const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4257,Dummy_4257,Dummy_4257,Dummy_4257)); + const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4240,Dummy_4240,Dummy_4240,Dummy_4240)); const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4263,Dummy_4263,Dummy_4263,Dummy_4263)); + const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4246,Dummy_4246,Dummy_4246,Dummy_4246)); const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4255,Dummy_4255,Dummy_4255,Dummy_4255)); + const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4238,Dummy_4238,Dummy_4238,Dummy_4238)); const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4258,Dummy_4258,Dummy_4258,Dummy_4258)); + const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4241,Dummy_4241,Dummy_4241,Dummy_4241)); const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4256,Dummy_4256,Dummy_4256,Dummy_4256)); + const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4239,Dummy_4239,Dummy_4239,Dummy_4239)); const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4259,Dummy_4259,Dummy_4259,Dummy_4259)); + const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4242,Dummy_4242,Dummy_4242,Dummy_4242)); const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4257,Dummy_4257,Dummy_4257,Dummy_4257)); + const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4240,Dummy_4240,Dummy_4240,Dummy_4240)); const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4260,Dummy_4260,Dummy_4260,Dummy_4260)); + const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4243,Dummy_4243,Dummy_4243,Dummy_4243)); const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4261,Dummy_4261,Dummy_4261,Dummy_4261))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4262,Dummy_4262,Dummy_4262,Dummy_4262))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4263,Dummy_4263,Dummy_4263,Dummy_4263))); + const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4244,Dummy_4244,Dummy_4244,Dummy_4244))); + const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4245,Dummy_4245,Dummy_4245,Dummy_4245))); + const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4246,Dummy_4246,Dummy_4246,Dummy_4246))); const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4258,Dummy_4258,Dummy_4258,Dummy_4258))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4259,Dummy_4259,Dummy_4259,Dummy_4259))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4260,Dummy_4260,Dummy_4260,Dummy_4260))); + const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4241,Dummy_4241,Dummy_4241,Dummy_4241))); + const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4242,Dummy_4242,Dummy_4242,Dummy_4242))); + const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4243,Dummy_4243,Dummy_4243,Dummy_4243))); const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4255,Dummy_4255,Dummy_4255,Dummy_4255))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4256,Dummy_4256,Dummy_4256,Dummy_4256))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4257,Dummy_4257,Dummy_4257,Dummy_4257))); + const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4238,Dummy_4238,Dummy_4238,Dummy_4238))); + const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4239,Dummy_4239,Dummy_4239,Dummy_4239))); + const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4240,Dummy_4240,Dummy_4240,Dummy_4240))); const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); @@ -3508,12 +3508,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4261,Dummy_4261,Dummy_4261,Dummy_4261))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4262,Dummy_4262,Dummy_4262,Dummy_4262))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4263,Dummy_4263,Dummy_4263,Dummy_4263))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4258,Dummy_4258,Dummy_4258,Dummy_4258))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4259,Dummy_4259,Dummy_4259,Dummy_4259))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4260,Dummy_4260,Dummy_4260,Dummy_4260))); + const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4244,Dummy_4244,Dummy_4244,Dummy_4244))); + const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4245,Dummy_4245,Dummy_4245,Dummy_4245))); + const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4246,Dummy_4246,Dummy_4246,Dummy_4246))); + const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4241,Dummy_4241,Dummy_4241,Dummy_4241))); + const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4242,Dummy_4242,Dummy_4242,Dummy_4242))); + const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4243,Dummy_4243,Dummy_4243,Dummy_4243))); const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -3524,7 +3524,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4255,Dummy_4255,Dummy_4255,Dummy_4255),_mm256_set_pd(Dummy_4255,Dummy_4255,Dummy_4255,Dummy_4255))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4256,Dummy_4256,Dummy_4256,Dummy_4256),_mm256_set_pd(Dummy_4256,Dummy_4256,Dummy_4256,Dummy_4256)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4257,Dummy_4257,Dummy_4257,Dummy_4257),_mm256_set_pd(Dummy_4257,Dummy_4257,Dummy_4257,Dummy_4257)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4238,Dummy_4238,Dummy_4238,Dummy_4238),_mm256_set_pd(Dummy_4238,Dummy_4238,Dummy_4238,Dummy_4238))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4239,Dummy_4239,Dummy_4239,Dummy_4239),_mm256_set_pd(Dummy_4239,Dummy_4239,Dummy_4239,Dummy_4239)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4240,Dummy_4240,Dummy_4240,Dummy_4240),_mm256_set_pd(Dummy_4240,Dummy_4240,Dummy_4240,Dummy_4240)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -3533,7 +3533,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4258,Dummy_4258,Dummy_4258,Dummy_4258),_mm256_set_pd(Dummy_4258,Dummy_4258,Dummy_4258,Dummy_4258))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4259,Dummy_4259,Dummy_4259,Dummy_4259),_mm256_set_pd(Dummy_4259,Dummy_4259,Dummy_4259,Dummy_4259)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4260,Dummy_4260,Dummy_4260,Dummy_4260),_mm256_set_pd(Dummy_4260,Dummy_4260,Dummy_4260,Dummy_4260)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4241,Dummy_4241,Dummy_4241,Dummy_4241),_mm256_set_pd(Dummy_4241,Dummy_4241,Dummy_4241,Dummy_4241))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4242,Dummy_4242,Dummy_4242,Dummy_4242),_mm256_set_pd(Dummy_4242,Dummy_4242,Dummy_4242,Dummy_4242)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4243,Dummy_4243,Dummy_4243,Dummy_4243),_mm256_set_pd(Dummy_4243,Dummy_4243,Dummy_4243,Dummy_4243)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -3541,7 +3541,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4261,Dummy_4261,Dummy_4261,Dummy_4261),_mm256_set_pd(Dummy_4261,Dummy_4261,Dummy_4261,Dummy_4261))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4262,Dummy_4262,Dummy_4262,Dummy_4262),_mm256_set_pd(Dummy_4262,Dummy_4262,Dummy_4262,Dummy_4262)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4263,Dummy_4263,Dummy_4263,Dummy_4263),_mm256_set_pd(Dummy_4263,Dummy_4263,Dummy_4263,Dummy_4263)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4244,Dummy_4244,Dummy_4244,Dummy_4244),_mm256_set_pd(Dummy_4244,Dummy_4244,Dummy_4244,Dummy_4244))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4245,Dummy_4245,Dummy_4245,Dummy_4245),_mm256_set_pd(Dummy_4245,Dummy_4245,Dummy_4245,Dummy_4245)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4246,Dummy_4246,Dummy_4246,Dummy_4246),_mm256_set_pd(Dummy_4246,Dummy_4246,Dummy_4246,Dummy_4246)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -3568,7 +3568,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4255,Dummy_4255,Dummy_4255,Dummy_4255)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4256,Dummy_4256,Dummy_4256,Dummy_4256))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4257,Dummy_4257,Dummy_4257,Dummy_4257))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4238,Dummy_4238,Dummy_4238,Dummy_4238)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4239,Dummy_4239,Dummy_4239,Dummy_4239))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4240,Dummy_4240,Dummy_4240,Dummy_4240))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); @@ -3704,15 +3704,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -3775,9 +3775,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4255*tmp_q_4; - const double tmp_q_6 = Dummy_4258*tmp_q_4; - const double tmp_q_7 = Dummy_4261*tmp_q_4; + const double tmp_q_5 = Dummy_4238*tmp_q_4; + const double tmp_q_6 = Dummy_4241*tmp_q_4; + const double tmp_q_7 = Dummy_4244*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -3790,88 +3790,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4256*tmp_q_4; - const double tmp_q_21 = Dummy_4259*tmp_q_4; - const double tmp_q_22 = Dummy_4262*tmp_q_4; + const double tmp_q_20 = Dummy_4239*tmp_q_4; + const double tmp_q_21 = Dummy_4242*tmp_q_4; + const double tmp_q_22 = Dummy_4245*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4257*tmp_q_4; - const double tmp_q_25 = Dummy_4260*tmp_q_4; - const double tmp_q_26 = Dummy_4263*tmp_q_4; + const double tmp_q_24 = Dummy_4240*tmp_q_4; + const double tmp_q_25 = Dummy_4243*tmp_q_4; + const double tmp_q_26 = Dummy_4246*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4264*_data_q_w[q]; + const double tmp_q_28 = Dummy_4247*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4255*tmp_q_29; + const double tmp_q_30 = Dummy_4238*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4256*tmp_q_29; + const double tmp_q_32 = Dummy_4239*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4257*tmp_q_29; + const double tmp_q_34 = Dummy_4240*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4258*tmp_q_36; - const double tmp_q_38 = Dummy_4259*tmp_q_36; - const double tmp_q_39 = Dummy_4260*tmp_q_36; + const double tmp_q_37 = Dummy_4241*tmp_q_36; + const double tmp_q_38 = Dummy_4242*tmp_q_36; + const double tmp_q_39 = Dummy_4243*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4261*tmp_q_40; - const double tmp_q_42 = Dummy_4262*tmp_q_40; - const double tmp_q_43 = Dummy_4263*tmp_q_40; - const double tmp_q_44 = Dummy_4258*tmp_q_0; + const double tmp_q_41 = Dummy_4244*tmp_q_40; + const double tmp_q_42 = Dummy_4245*tmp_q_40; + const double tmp_q_43 = Dummy_4246*tmp_q_40; + const double tmp_q_44 = Dummy_4241*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4261*tmp_q_2; + const double tmp_q_46 = Dummy_4244*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4259*tmp_q_0; + const double tmp_q_49 = Dummy_4242*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4262*tmp_q_2; + const double tmp_q_51 = Dummy_4245*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4260*tmp_q_0; + const double tmp_q_54 = Dummy_4243*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4263*tmp_q_2; + const double tmp_q_56 = Dummy_4246*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4255*tmp_q_0; + const double tmp_q_59 = Dummy_4238*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4261*tmp_q_1; + const double tmp_q_61 = Dummy_4244*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4256*tmp_q_0; + const double tmp_q_64 = Dummy_4239*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4262*tmp_q_1; + const double tmp_q_66 = Dummy_4245*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4257*tmp_q_0; + const double tmp_q_69 = Dummy_4240*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4263*tmp_q_1; + const double tmp_q_71 = Dummy_4246*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4255*tmp_q_2; + const double tmp_q_74 = Dummy_4238*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4258*tmp_q_1; + const double tmp_q_76 = Dummy_4241*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4256*tmp_q_2; + const double tmp_q_79 = Dummy_4239*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4259*tmp_q_1; + const double tmp_q_81 = Dummy_4242*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4257*tmp_q_2; + const double tmp_q_84 = Dummy_4240*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4260*tmp_q_1; + const double tmp_q_86 = Dummy_4243*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4261*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4262*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4263*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4244*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4245*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4246*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4258*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4259*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4260*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4241*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4242*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4243*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4255*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4256*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4257*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4238*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4239*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4240*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -3888,12 +3888,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4261*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4262*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4263*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4258*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4259*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4260*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4244*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4245*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4246*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4241*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4242*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4243*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -3904,7 +3904,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4255*Dummy_4255)*tmp_q_103 + (Dummy_4256*Dummy_4256)*tmp_q_103 + (Dummy_4257*Dummy_4257)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4238*Dummy_4238)*tmp_q_103 + (Dummy_4239*Dummy_4239)*tmp_q_103 + (Dummy_4240*Dummy_4240)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -3913,7 +3913,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4258*Dummy_4258)*tmp_q_107 + (Dummy_4259*Dummy_4259)*tmp_q_107 + (Dummy_4260*Dummy_4260)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4241*Dummy_4241)*tmp_q_107 + (Dummy_4242*Dummy_4242)*tmp_q_107 + (Dummy_4243*Dummy_4243)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -3921,7 +3921,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4261*Dummy_4261)*tmp_q_108 + (Dummy_4262*Dummy_4262)*tmp_q_108 + (Dummy_4263*Dummy_4263)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4244*Dummy_4244)*tmp_q_108 + (Dummy_4245*Dummy_4245)*tmp_q_108 + (Dummy_4246*Dummy_4246)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -3948,7 +3948,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4256*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4257*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4255*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4239*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4240*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4238*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -4088,15 +4088,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d src_dof_8 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); const __m256d src_dof_9 = _mm256_loadu_pd(& _data_srcEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); @@ -4159,9 +4159,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4286,Dummy_4286,Dummy_4286,Dummy_4286)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4289,Dummy_4289,Dummy_4289,Dummy_4289)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4292,Dummy_4292,Dummy_4292,Dummy_4292)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4269,Dummy_4269,Dummy_4269,Dummy_4269)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4272,Dummy_4272,Dummy_4272,Dummy_4272)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4275,Dummy_4275,Dummy_4275,Dummy_4275)); const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); @@ -4174,88 +4174,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4287,Dummy_4287,Dummy_4287,Dummy_4287)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4290,Dummy_4290,Dummy_4290,Dummy_4290)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4293,Dummy_4293,Dummy_4293,Dummy_4293)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4270,Dummy_4270,Dummy_4270,Dummy_4270)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4273,Dummy_4273,Dummy_4273,Dummy_4273)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4276,Dummy_4276,Dummy_4276,Dummy_4276)); const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4288,Dummy_4288,Dummy_4288,Dummy_4288)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4291,Dummy_4291,Dummy_4291,Dummy_4291)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4294,Dummy_4294,Dummy_4294,Dummy_4294)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4271,Dummy_4271,Dummy_4271,Dummy_4271)); + const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4274,Dummy_4274,Dummy_4274,Dummy_4274)); + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4277,Dummy_4277,Dummy_4277,Dummy_4277)); const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4295*_data_q_w[q]; + const double tmp_q_28 = Dummy_4278*_data_q_w[q]; const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4286,Dummy_4286,Dummy_4286,Dummy_4286)); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4269,Dummy_4269,Dummy_4269,Dummy_4269)); const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4287,Dummy_4287,Dummy_4287,Dummy_4287)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4270,Dummy_4270,Dummy_4270,Dummy_4270)); const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4288,Dummy_4288,Dummy_4288,Dummy_4288)); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4271,Dummy_4271,Dummy_4271,Dummy_4271)); const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4289,Dummy_4289,Dummy_4289,Dummy_4289)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4290,Dummy_4290,Dummy_4290,Dummy_4290)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4291,Dummy_4291,Dummy_4291,Dummy_4291)); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4272,Dummy_4272,Dummy_4272,Dummy_4272)); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4273,Dummy_4273,Dummy_4273,Dummy_4273)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4274,Dummy_4274,Dummy_4274,Dummy_4274)); const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4292,Dummy_4292,Dummy_4292,Dummy_4292)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4293,Dummy_4293,Dummy_4293,Dummy_4293)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4294,Dummy_4294,Dummy_4294,Dummy_4294)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4289,Dummy_4289,Dummy_4289,Dummy_4289)); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4275,Dummy_4275,Dummy_4275,Dummy_4275)); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4276,Dummy_4276,Dummy_4276,Dummy_4276)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4277,Dummy_4277,Dummy_4277,Dummy_4277)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4272,Dummy_4272,Dummy_4272,Dummy_4272)); const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4292,Dummy_4292,Dummy_4292,Dummy_4292)); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4275,Dummy_4275,Dummy_4275,Dummy_4275)); const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4290,Dummy_4290,Dummy_4290,Dummy_4290)); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4273,Dummy_4273,Dummy_4273,Dummy_4273)); const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4293,Dummy_4293,Dummy_4293,Dummy_4293)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4276,Dummy_4276,Dummy_4276,Dummy_4276)); const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4291,Dummy_4291,Dummy_4291,Dummy_4291)); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4274,Dummy_4274,Dummy_4274,Dummy_4274)); const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4294,Dummy_4294,Dummy_4294,Dummy_4294)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4277,Dummy_4277,Dummy_4277,Dummy_4277)); const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4286,Dummy_4286,Dummy_4286,Dummy_4286)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4269,Dummy_4269,Dummy_4269,Dummy_4269)); const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4292,Dummy_4292,Dummy_4292,Dummy_4292)); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4275,Dummy_4275,Dummy_4275,Dummy_4275)); const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4287,Dummy_4287,Dummy_4287,Dummy_4287)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4270,Dummy_4270,Dummy_4270,Dummy_4270)); const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4293,Dummy_4293,Dummy_4293,Dummy_4293)); + const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4276,Dummy_4276,Dummy_4276,Dummy_4276)); const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4288,Dummy_4288,Dummy_4288,Dummy_4288)); + const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4271,Dummy_4271,Dummy_4271,Dummy_4271)); const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4294,Dummy_4294,Dummy_4294,Dummy_4294)); + const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4277,Dummy_4277,Dummy_4277,Dummy_4277)); const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4286,Dummy_4286,Dummy_4286,Dummy_4286)); + const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4269,Dummy_4269,Dummy_4269,Dummy_4269)); const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4289,Dummy_4289,Dummy_4289,Dummy_4289)); + const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4272,Dummy_4272,Dummy_4272,Dummy_4272)); const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4287,Dummy_4287,Dummy_4287,Dummy_4287)); + const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4270,Dummy_4270,Dummy_4270,Dummy_4270)); const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4290,Dummy_4290,Dummy_4290,Dummy_4290)); + const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4273,Dummy_4273,Dummy_4273,Dummy_4273)); const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4288,Dummy_4288,Dummy_4288,Dummy_4288)); + const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4271,Dummy_4271,Dummy_4271,Dummy_4271)); const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4291,Dummy_4291,Dummy_4291,Dummy_4291)); + const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4274,Dummy_4274,Dummy_4274,Dummy_4274)); const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4292,Dummy_4292,Dummy_4292,Dummy_4292))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4293,Dummy_4293,Dummy_4293,Dummy_4293))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4294,Dummy_4294,Dummy_4294,Dummy_4294))); + const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4275,Dummy_4275,Dummy_4275,Dummy_4275))); + const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4276,Dummy_4276,Dummy_4276,Dummy_4276))); + const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4277,Dummy_4277,Dummy_4277,Dummy_4277))); const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4289,Dummy_4289,Dummy_4289,Dummy_4289))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4290,Dummy_4290,Dummy_4290,Dummy_4290))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4291,Dummy_4291,Dummy_4291,Dummy_4291))); + const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4272,Dummy_4272,Dummy_4272,Dummy_4272))); + const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4273,Dummy_4273,Dummy_4273,Dummy_4273))); + const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4274,Dummy_4274,Dummy_4274,Dummy_4274))); const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4286,Dummy_4286,Dummy_4286,Dummy_4286))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4287,Dummy_4287,Dummy_4287,Dummy_4287))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4288,Dummy_4288,Dummy_4288,Dummy_4288))); + const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4269,Dummy_4269,Dummy_4269,Dummy_4269))); + const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4270,Dummy_4270,Dummy_4270,Dummy_4270))); + const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4271,Dummy_4271,Dummy_4271,Dummy_4271))); const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); @@ -4272,12 +4272,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4292,Dummy_4292,Dummy_4292,Dummy_4292))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4293,Dummy_4293,Dummy_4293,Dummy_4293))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4294,Dummy_4294,Dummy_4294,Dummy_4294))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4289,Dummy_4289,Dummy_4289,Dummy_4289))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4290,Dummy_4290,Dummy_4290,Dummy_4290))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4291,Dummy_4291,Dummy_4291,Dummy_4291))); + const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4275,Dummy_4275,Dummy_4275,Dummy_4275))); + const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4276,Dummy_4276,Dummy_4276,Dummy_4276))); + const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4277,Dummy_4277,Dummy_4277,Dummy_4277))); + const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4272,Dummy_4272,Dummy_4272,Dummy_4272))); + const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4273,Dummy_4273,Dummy_4273,Dummy_4273))); + const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4274,Dummy_4274,Dummy_4274,Dummy_4274))); const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -4288,7 +4288,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4286,Dummy_4286,Dummy_4286,Dummy_4286),_mm256_set_pd(Dummy_4286,Dummy_4286,Dummy_4286,Dummy_4286))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4287,Dummy_4287,Dummy_4287,Dummy_4287),_mm256_set_pd(Dummy_4287,Dummy_4287,Dummy_4287,Dummy_4287)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4288,Dummy_4288,Dummy_4288,Dummy_4288),_mm256_set_pd(Dummy_4288,Dummy_4288,Dummy_4288,Dummy_4288)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4269,Dummy_4269,Dummy_4269,Dummy_4269),_mm256_set_pd(Dummy_4269,Dummy_4269,Dummy_4269,Dummy_4269))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4270,Dummy_4270,Dummy_4270,Dummy_4270),_mm256_set_pd(Dummy_4270,Dummy_4270,Dummy_4270,Dummy_4270)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4271,Dummy_4271,Dummy_4271,Dummy_4271),_mm256_set_pd(Dummy_4271,Dummy_4271,Dummy_4271,Dummy_4271)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -4297,7 +4297,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4289,Dummy_4289,Dummy_4289,Dummy_4289),_mm256_set_pd(Dummy_4289,Dummy_4289,Dummy_4289,Dummy_4289))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4290,Dummy_4290,Dummy_4290,Dummy_4290),_mm256_set_pd(Dummy_4290,Dummy_4290,Dummy_4290,Dummy_4290)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4291,Dummy_4291,Dummy_4291,Dummy_4291),_mm256_set_pd(Dummy_4291,Dummy_4291,Dummy_4291,Dummy_4291)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4272,Dummy_4272,Dummy_4272,Dummy_4272),_mm256_set_pd(Dummy_4272,Dummy_4272,Dummy_4272,Dummy_4272))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4273,Dummy_4273,Dummy_4273,Dummy_4273),_mm256_set_pd(Dummy_4273,Dummy_4273,Dummy_4273,Dummy_4273)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4274,Dummy_4274,Dummy_4274,Dummy_4274),_mm256_set_pd(Dummy_4274,Dummy_4274,Dummy_4274,Dummy_4274)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -4305,7 +4305,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4292,Dummy_4292,Dummy_4292,Dummy_4292),_mm256_set_pd(Dummy_4292,Dummy_4292,Dummy_4292,Dummy_4292))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4293,Dummy_4293,Dummy_4293,Dummy_4293),_mm256_set_pd(Dummy_4293,Dummy_4293,Dummy_4293,Dummy_4293)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4294,Dummy_4294,Dummy_4294,Dummy_4294),_mm256_set_pd(Dummy_4294,Dummy_4294,Dummy_4294,Dummy_4294)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4275,Dummy_4275,Dummy_4275,Dummy_4275),_mm256_set_pd(Dummy_4275,Dummy_4275,Dummy_4275,Dummy_4275))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4276,Dummy_4276,Dummy_4276,Dummy_4276),_mm256_set_pd(Dummy_4276,Dummy_4276,Dummy_4276,Dummy_4276)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4277,Dummy_4277,Dummy_4277,Dummy_4277),_mm256_set_pd(Dummy_4277,Dummy_4277,Dummy_4277,Dummy_4277)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); @@ -4332,7 +4332,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4286,Dummy_4286,Dummy_4286,Dummy_4286)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4287,Dummy_4287,Dummy_4287,Dummy_4287))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4288,Dummy_4288,Dummy_4288,Dummy_4288))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4269,Dummy_4269,Dummy_4269,Dummy_4269)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4270,Dummy_4270,Dummy_4270,Dummy_4270))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4271,Dummy_4271,Dummy_4271,Dummy_4271))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); @@ -4468,15 +4468,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -4539,9 +4539,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4286*tmp_q_4; - const double tmp_q_6 = Dummy_4289*tmp_q_4; - const double tmp_q_7 = Dummy_4292*tmp_q_4; + const double tmp_q_5 = Dummy_4269*tmp_q_4; + const double tmp_q_6 = Dummy_4272*tmp_q_4; + const double tmp_q_7 = Dummy_4275*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -4554,88 +4554,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4287*tmp_q_4; - const double tmp_q_21 = Dummy_4290*tmp_q_4; - const double tmp_q_22 = Dummy_4293*tmp_q_4; + const double tmp_q_20 = Dummy_4270*tmp_q_4; + const double tmp_q_21 = Dummy_4273*tmp_q_4; + const double tmp_q_22 = Dummy_4276*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4288*tmp_q_4; - const double tmp_q_25 = Dummy_4291*tmp_q_4; - const double tmp_q_26 = Dummy_4294*tmp_q_4; + const double tmp_q_24 = Dummy_4271*tmp_q_4; + const double tmp_q_25 = Dummy_4274*tmp_q_4; + const double tmp_q_26 = Dummy_4277*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4295*_data_q_w[q]; + const double tmp_q_28 = Dummy_4278*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4286*tmp_q_29; + const double tmp_q_30 = Dummy_4269*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4287*tmp_q_29; + const double tmp_q_32 = Dummy_4270*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4288*tmp_q_29; + const double tmp_q_34 = Dummy_4271*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4289*tmp_q_36; - const double tmp_q_38 = Dummy_4290*tmp_q_36; - const double tmp_q_39 = Dummy_4291*tmp_q_36; + const double tmp_q_37 = Dummy_4272*tmp_q_36; + const double tmp_q_38 = Dummy_4273*tmp_q_36; + const double tmp_q_39 = Dummy_4274*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4292*tmp_q_40; - const double tmp_q_42 = Dummy_4293*tmp_q_40; - const double tmp_q_43 = Dummy_4294*tmp_q_40; - const double tmp_q_44 = Dummy_4289*tmp_q_0; + const double tmp_q_41 = Dummy_4275*tmp_q_40; + const double tmp_q_42 = Dummy_4276*tmp_q_40; + const double tmp_q_43 = Dummy_4277*tmp_q_40; + const double tmp_q_44 = Dummy_4272*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4292*tmp_q_2; + const double tmp_q_46 = Dummy_4275*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4290*tmp_q_0; + const double tmp_q_49 = Dummy_4273*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4293*tmp_q_2; + const double tmp_q_51 = Dummy_4276*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4291*tmp_q_0; + const double tmp_q_54 = Dummy_4274*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4294*tmp_q_2; + const double tmp_q_56 = Dummy_4277*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4286*tmp_q_0; + const double tmp_q_59 = Dummy_4269*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4292*tmp_q_1; + const double tmp_q_61 = Dummy_4275*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4287*tmp_q_0; + const double tmp_q_64 = Dummy_4270*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4293*tmp_q_1; + const double tmp_q_66 = Dummy_4276*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4288*tmp_q_0; + const double tmp_q_69 = Dummy_4271*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4294*tmp_q_1; + const double tmp_q_71 = Dummy_4277*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4286*tmp_q_2; + const double tmp_q_74 = Dummy_4269*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4289*tmp_q_1; + const double tmp_q_76 = Dummy_4272*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4287*tmp_q_2; + const double tmp_q_79 = Dummy_4270*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4290*tmp_q_1; + const double tmp_q_81 = Dummy_4273*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4288*tmp_q_2; + const double tmp_q_84 = Dummy_4271*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4291*tmp_q_1; + const double tmp_q_86 = Dummy_4274*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4292*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4293*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4294*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4275*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4276*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4277*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4289*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4290*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4291*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4272*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4273*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4274*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4286*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4287*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4288*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4269*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4270*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4271*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -4652,12 +4652,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4292*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4293*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4294*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4289*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4290*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4291*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4275*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4276*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4277*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4272*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4273*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4274*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -4668,7 +4668,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4286*Dummy_4286)*tmp_q_103 + (Dummy_4287*Dummy_4287)*tmp_q_103 + (Dummy_4288*Dummy_4288)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4269*Dummy_4269)*tmp_q_103 + (Dummy_4270*Dummy_4270)*tmp_q_103 + (Dummy_4271*Dummy_4271)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -4677,7 +4677,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4289*Dummy_4289)*tmp_q_107 + (Dummy_4290*Dummy_4290)*tmp_q_107 + (Dummy_4291*Dummy_4291)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4272*Dummy_4272)*tmp_q_107 + (Dummy_4273*Dummy_4273)*tmp_q_107 + (Dummy_4274*Dummy_4274)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -4685,7 +4685,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4292*Dummy_4292)*tmp_q_108 + (Dummy_4293*Dummy_4293)*tmp_q_108 + (Dummy_4294*Dummy_4294)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4275*Dummy_4275)*tmp_q_108 + (Dummy_4276*Dummy_4276)*tmp_q_108 + (Dummy_4277*Dummy_4277)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -4712,7 +4712,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4287*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4288*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4286*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4270*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4271*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4269*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; diff --git a/operators/div_k_grad/avx/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp b/operators/div_k_grad/avx/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp index 5e362657e0f3dd6ac686789934b1e734ead87f0e..1b37889c7106cb4e926dff7f82fec3dff8d81230 100644 --- a/operators/div_k_grad/avx/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp +++ b/operators/div_k_grad/avx/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp @@ -54,14 +54,14 @@ namespace hyteg { namespace operatorgeneration { -void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( double * RESTRICT _data_invDiag_Edge, double * RESTRICT _data_invDiag_Vertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float, int64_t micro_edges_per_macro_face ) const +void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( double * RESTRICT _data_invDiag_Edge, double * RESTRICT _data_invDiag_Vertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -78,52 +78,37 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const double jac_affine_inv_1_0 = -jac_affine_1_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double jac_affine_inv_1_1 = jac_affine_0_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); - const double Dummy_4626 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4627 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4628 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4629 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4630 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4631 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4632 = -Dummy_4626 + Dummy_4628; - const double Dummy_4633 = -Dummy_4626 + Dummy_4630; - const double Dummy_4634 = -Dummy_4627 + Dummy_4629; - const double Dummy_4635 = -Dummy_4627 + Dummy_4631; - const double Dummy_4636 = Dummy_4635*1.0 / (Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); - const double Dummy_4637 = -Dummy_4633*1.0 / (Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); - const double Dummy_4638 = -Dummy_4634*1.0 / (Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); - const double Dummy_4639 = Dummy_4632*1.0 / (Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); - const double Dummy_4640 = fabs(Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); + const double Dummy_4609 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4610 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4611 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4612 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4613 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4614 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4615 = -Dummy_4609 + Dummy_4611; + const double Dummy_4616 = -Dummy_4609 + Dummy_4613; + const double Dummy_4617 = -Dummy_4610 + Dummy_4612; + const double Dummy_4618 = -Dummy_4610 + Dummy_4614; + const double Dummy_4619 = Dummy_4618*1.0 / (Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); + const double Dummy_4620 = -Dummy_4616*1.0 / (Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); + const double Dummy_4621 = -Dummy_4617*1.0 / (Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); + const double Dummy_4622 = Dummy_4615*1.0 / (Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); + const double Dummy_4623 = fabs(Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); { for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); - const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); + const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_4_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_5_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 3; q += 1) { @@ -132,107 +117,42 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const __m256d tmp_q_2 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_1); const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); - const __m256d tmp_q_5 = _mm256_add_pd(tmp_q_3,tmp_q_4); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_7 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); - const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_7,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_9 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_9,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_11 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_8)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_10))),_mm256_mul_pd(k_dof_5,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_0))),_mm256_mul_pd(k_dof_4,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_1))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_10),tmp_q_6),tmp_q_8))),_mm256_mul_pd(k_dof_3,tmp_q_6)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const __m256d tmp_q_14 = _mm256_add_pd(tmp_q_12,tmp_q_13); - const double tmp_q_15 = abs_det_jac_affine*_data_q_w[q]; - const __m256d tmp_q_16 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); - const __m256d tmp_q_18 = _mm256_mul_pd(tmp_q_11,tmp_q_5); - const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_11,tmp_q_14); - const __m256d tmp_q_21 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_21,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); - const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_21,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_11,tmp_q_24); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); - const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_11,tmp_q_26); - const __m256d tmp_q_28 = _mm256_add_pd(tmp_q_25,tmp_q_27); - const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_11,tmp_q_29); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_11,tmp_q_31); - const __m256d tmp_q_33 = _mm256_add_pd(tmp_q_30,tmp_q_32); - const __m256d tmp_q_34 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_35 = _mm256_add_pd(_mm256_mul_pd(tmp_q_25,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_34),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_34),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))); - const __m256d tmp_q_37 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_37,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); - const __m256d tmp_q_39 = _mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,tmp_q_38)); - const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_37,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_41 = _mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,tmp_q_40)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_11,_mm256_mul_pd(tmp_q_16,tmp_q_16)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_11,_mm256_mul_pd(tmp_q_21,tmp_q_21)); - const __m256d tmp_q_44 = _mm256_add_pd(tmp_q_24,tmp_q_26); - const __m256d tmp_q_45 = _mm256_add_pd(tmp_q_29,tmp_q_31); - const __m256d tmp_q_46 = _mm256_add_pd(_mm256_mul_pd(tmp_q_24,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_34,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))); - const __m256d tmp_q_47 = _mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_34,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))); - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,_mm256_add_pd(_mm256_mul_pd(tmp_q_11,tmp_q_12),_mm256_mul_pd(tmp_q_11,tmp_q_13))),_mm256_mul_pd(tmp_q_5,_mm256_add_pd(_mm256_mul_pd(tmp_q_11,tmp_q_3),_mm256_mul_pd(tmp_q_11,tmp_q_4)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_18),_mm256_mul_pd(tmp_q_19,tmp_q_20)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_20,tmp_q_23)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_33),_mm256_mul_pd(tmp_q_28,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_36),_mm256_mul_pd(tmp_q_35,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_41),_mm256_mul_pd(tmp_q_39,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_42,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_mul_pd(tmp_q_42,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_17),tmp_q_22),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_19),tmp_q_23)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_28),_mm256_mul_pd(tmp_q_19,tmp_q_33)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_35),_mm256_mul_pd(tmp_q_19,tmp_q_36)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_39),_mm256_mul_pd(tmp_q_19,tmp_q_41)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(tmp_q_43,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_28),_mm256_mul_pd(tmp_q_23,tmp_q_33)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_35),_mm256_mul_pd(tmp_q_23,tmp_q_36)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_39),_mm256_mul_pd(tmp_q_23,tmp_q_41)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_28,tmp_q_44),_mm256_mul_pd(tmp_q_33,tmp_q_45)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,tmp_q_44),_mm256_mul_pd(tmp_q_36,tmp_q_45)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,tmp_q_44),_mm256_mul_pd(tmp_q_41,tmp_q_45)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,tmp_q_46),_mm256_mul_pd(tmp_q_36,tmp_q_47)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_4_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,tmp_q_46),_mm256_mul_pd(tmp_q_41,tmp_q_47)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,_mm256_add_pd(_mm256_mul_pd(tmp_q_26,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),tmp_q_38)),_mm256_mul_pd(tmp_q_41,_mm256_add_pd(_mm256_mul_pd(tmp_q_31,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),tmp_q_40))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_6 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_6,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_8 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_8,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_10 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_7)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_9))),_mm256_mul_pd(k_dof_5,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_5,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_0))),_mm256_mul_pd(k_dof_4,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_5,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_1))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_5),tmp_q_7),tmp_q_9))),_mm256_mul_pd(k_dof_3,tmp_q_5)); + const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); + const double tmp_q_13 = abs_det_jac_affine*_data_q_w[q]; + const __m256d tmp_q_14 = _mm256_mul_pd(tmp_q_10,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0),_mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0))); + const __m256d tmp_q_15 = _mm256_mul_pd(tmp_q_10,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1),_mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1))); + const __m256d tmp_q_16 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); + const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); + const __m256d tmp_q_18 = _mm256_mul_pd(tmp_q_10,tmp_q_16); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_10,tmp_q_17); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_10,tmp_q_20); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_10,tmp_q_21); + const __m256d tmp_q_24 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_25 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_25,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); + const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_25,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_11,tmp_q_12),_mm256_add_pd(_mm256_mul_pd(tmp_q_10,tmp_q_11),_mm256_mul_pd(tmp_q_10,tmp_q_12))),_mm256_mul_pd(_mm256_add_pd(tmp_q_3,tmp_q_4),_mm256_add_pd(_mm256_mul_pd(tmp_q_10,tmp_q_3),_mm256_mul_pd(tmp_q_10,tmp_q_4)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_mul_pd(tmp_q_14,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_15,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(tmp_q_15,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_16,tmp_q_17),_mm256_add_pd(tmp_q_18,tmp_q_19)),_mm256_mul_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),_mm256_add_pd(tmp_q_22,tmp_q_23))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_24,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_10,tmp_q_24),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)))),_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_20,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_24,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))),_mm256_add_pd(_mm256_mul_pd(tmp_q_22,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_10,tmp_q_24),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_10,tmp_q_26)),_mm256_add_pd(_mm256_mul_pd(tmp_q_17,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),tmp_q_26)),_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_10,tmp_q_27)),_mm256_add_pd(_mm256_mul_pd(tmp_q_21,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),tmp_q_27))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); - q_acc_0_4 = _mm256_add_pd(q_acc_0_4,res_tmp_0_4); - q_acc_0_5 = _mm256_add_pd(q_acc_0_5,res_tmp_0_5); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); - q_acc_1_4 = _mm256_add_pd(q_acc_1_4,res_tmp_1_4); - q_acc_1_5 = _mm256_add_pd(q_acc_1_5,res_tmp_1_5); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); - q_acc_2_4 = _mm256_add_pd(q_acc_2_4,res_tmp_2_4); - q_acc_2_5 = _mm256_add_pd(q_acc_2_5,res_tmp_2_5); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); - q_acc_3_4 = _mm256_add_pd(q_acc_3_4,res_tmp_3_4); - q_acc_3_5 = _mm256_add_pd(q_acc_3_5,res_tmp_3_5); q_acc_4_4 = _mm256_add_pd(q_acc_4_4,res_tmp_4_4); - q_acc_4_5 = _mm256_add_pd(q_acc_4_5,res_tmp_4_5); q_acc_5_5 = _mm256_add_pd(q_acc_5_5,res_tmp_5_5); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; - __m256d q_acc_4_0 = q_acc_0_4; - __m256d q_acc_4_1 = q_acc_1_4; - __m256d q_acc_4_2 = q_acc_2_4; - __m256d q_acc_4_3 = q_acc_3_4; - __m256d q_acc_5_0 = q_acc_0_5; - __m256d q_acc_5_1 = q_acc_1_5; - __m256d q_acc_5_2 = q_acc_2_5; - __m256d q_acc_5_3 = q_acc_3_5; - __m256d q_acc_5_4 = q_acc_4_5; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -242,38 +162,23 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl _mm256_storeu_pd(&_data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatDiag_0,_mm256_loadu_pd(& _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]))); _mm256_storeu_pd(&_data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1],_mm256_add_pd(elMatDiag_1,_mm256_loadu_pd(& _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]))); _mm256_storeu_pd(&_data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))],_mm256_add_pd(elMatDiag_2,_mm256_loadu_pd(& _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]))); - _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatDiag_3,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]))); - _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatDiag_4,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]))); + _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))],_mm256_add_pd(elMatDiag_3,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]))); + _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))],_mm256_add_pd(elMatDiag_4,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]))); _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatDiag_5,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]))); } for (int64_t ctr_0 = (int64_t)((-ctr_1 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 < -ctr_1 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; double q_acc_5_5 = 0.0; for (int64_t q = 0; q < 3; q += 1) { @@ -282,107 +187,42 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const double tmp_q_2 = tmp_q_0 + tmp_q_1 - 3.0; const double tmp_q_3 = jac_affine_inv_0_0*tmp_q_2; const double tmp_q_4 = jac_affine_inv_1_0*tmp_q_2; - const double tmp_q_5 = tmp_q_3 + tmp_q_4; - const double tmp_q_6 = tmp_q_0*_data_q_p_1[q]; - const double tmp_q_7 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_8 = tmp_q_7*2.0; - const double tmp_q_9 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_10 = tmp_q_9*2.0; - const double tmp_q_11 = k_dof_0*(tmp_q_10 + tmp_q_6 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_8 - _data_q_p_0[q]) + k_dof_2*(tmp_q_10 - _data_q_p_1[q]) + k_dof_3*tmp_q_6 + k_dof_4*(tmp_q_1 - tmp_q_6 + tmp_q_9*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_6 + tmp_q_7*-4.0); - const double tmp_q_12 = jac_affine_inv_0_1*tmp_q_2; - const double tmp_q_13 = jac_affine_inv_1_1*tmp_q_2; - const double tmp_q_14 = tmp_q_12 + tmp_q_13; - const double tmp_q_15 = abs_det_jac_affine*_data_q_w[q]; - const double tmp_q_16 = tmp_q_0 - 1.0; - const double tmp_q_17 = jac_affine_inv_0_0*tmp_q_16; - const double tmp_q_18 = tmp_q_11*tmp_q_5; - const double tmp_q_19 = jac_affine_inv_0_1*tmp_q_16; - const double tmp_q_20 = tmp_q_11*tmp_q_14; - const double tmp_q_21 = tmp_q_1 - 1.0; - const double tmp_q_22 = jac_affine_inv_1_0*tmp_q_21; - const double tmp_q_23 = jac_affine_inv_1_1*tmp_q_21; - const double tmp_q_24 = jac_affine_inv_0_0*tmp_q_1; - const double tmp_q_25 = tmp_q_11*tmp_q_24; - const double tmp_q_26 = jac_affine_inv_1_0*tmp_q_0; - const double tmp_q_27 = tmp_q_11*tmp_q_26; - const double tmp_q_28 = tmp_q_25 + tmp_q_27; - const double tmp_q_29 = jac_affine_inv_0_1*tmp_q_1; - const double tmp_q_30 = tmp_q_11*tmp_q_29; - const double tmp_q_31 = jac_affine_inv_1_1*tmp_q_0; - const double tmp_q_32 = tmp_q_11*tmp_q_31; - const double tmp_q_33 = tmp_q_30 + tmp_q_32; - const double tmp_q_34 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; - const double tmp_q_35 = jac_affine_inv_1_0*tmp_q_11*tmp_q_34 - tmp_q_25; - const double tmp_q_36 = jac_affine_inv_1_1*tmp_q_11*tmp_q_34 - tmp_q_30; - const double tmp_q_37 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; - const double tmp_q_38 = jac_affine_inv_0_0*tmp_q_37; - const double tmp_q_39 = tmp_q_11*tmp_q_38 - tmp_q_27; - const double tmp_q_40 = jac_affine_inv_0_1*tmp_q_37; - const double tmp_q_41 = tmp_q_11*tmp_q_40 - tmp_q_32; - const double tmp_q_42 = tmp_q_11*(tmp_q_16*tmp_q_16); - const double tmp_q_43 = tmp_q_11*(tmp_q_21*tmp_q_21); - const double tmp_q_44 = tmp_q_24 + tmp_q_26; - const double tmp_q_45 = tmp_q_29 + tmp_q_31; - const double tmp_q_46 = jac_affine_inv_1_0*tmp_q_34 - tmp_q_24; - const double tmp_q_47 = jac_affine_inv_1_1*tmp_q_34 - tmp_q_29; - const double res_tmp_0_0 = tmp_q_15*(tmp_q_14*(tmp_q_11*tmp_q_12 + tmp_q_11*tmp_q_13) + tmp_q_5*(tmp_q_11*tmp_q_3 + tmp_q_11*tmp_q_4)); - const double res_tmp_0_1 = tmp_q_15*(tmp_q_17*tmp_q_18 + tmp_q_19*tmp_q_20); - const double res_tmp_0_2 = tmp_q_15*(tmp_q_18*tmp_q_22 + tmp_q_20*tmp_q_23); - const double res_tmp_0_3 = tmp_q_15*(tmp_q_14*tmp_q_33 + tmp_q_28*tmp_q_5); - const double res_tmp_0_4 = tmp_q_15*(tmp_q_14*tmp_q_36 + tmp_q_35*tmp_q_5); - const double res_tmp_0_5 = tmp_q_15*(tmp_q_14*tmp_q_41 + tmp_q_39*tmp_q_5); - const double res_tmp_1_1 = tmp_q_15*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_42 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_42); - const double res_tmp_1_2 = tmp_q_15*(tmp_q_11*tmp_q_17*tmp_q_22 + tmp_q_11*tmp_q_19*tmp_q_23); - const double res_tmp_1_3 = tmp_q_15*(tmp_q_17*tmp_q_28 + tmp_q_19*tmp_q_33); - const double res_tmp_1_4 = tmp_q_15*(tmp_q_17*tmp_q_35 + tmp_q_19*tmp_q_36); - const double res_tmp_1_5 = tmp_q_15*(tmp_q_17*tmp_q_39 + tmp_q_19*tmp_q_41); - const double res_tmp_2_2 = tmp_q_15*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_43 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_43); - const double res_tmp_2_3 = tmp_q_15*(tmp_q_22*tmp_q_28 + tmp_q_23*tmp_q_33); - const double res_tmp_2_4 = tmp_q_15*(tmp_q_22*tmp_q_35 + tmp_q_23*tmp_q_36); - const double res_tmp_2_5 = tmp_q_15*(tmp_q_22*tmp_q_39 + tmp_q_23*tmp_q_41); - const double res_tmp_3_3 = tmp_q_15*(tmp_q_28*tmp_q_44 + tmp_q_33*tmp_q_45); - const double res_tmp_3_4 = tmp_q_15*(tmp_q_35*tmp_q_44 + tmp_q_36*tmp_q_45); - const double res_tmp_3_5 = tmp_q_15*(tmp_q_39*tmp_q_44 + tmp_q_41*tmp_q_45); - const double res_tmp_4_4 = tmp_q_15*(tmp_q_35*tmp_q_46 + tmp_q_36*tmp_q_47); - const double res_tmp_4_5 = tmp_q_15*(tmp_q_39*tmp_q_46 + tmp_q_41*tmp_q_47); - const double res_tmp_5_5 = tmp_q_15*(tmp_q_39*(-tmp_q_26 + tmp_q_38) + tmp_q_41*(-tmp_q_31 + tmp_q_40)); + const double tmp_q_5 = tmp_q_0*_data_q_p_1[q]; + const double tmp_q_6 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_7 = tmp_q_6*2.0; + const double tmp_q_8 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_9 = tmp_q_8*2.0; + const double tmp_q_10 = k_dof_0*(tmp_q_5 + tmp_q_7 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_7 - _data_q_p_0[q]) + k_dof_2*(tmp_q_9 - _data_q_p_1[q]) + k_dof_3*tmp_q_5 + k_dof_4*(tmp_q_1 - tmp_q_5 + tmp_q_8*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_5 + tmp_q_6*-4.0); + const double tmp_q_11 = jac_affine_inv_0_1*tmp_q_2; + const double tmp_q_12 = jac_affine_inv_1_1*tmp_q_2; + const double tmp_q_13 = abs_det_jac_affine*_data_q_w[q]; + const double tmp_q_14 = tmp_q_10*((tmp_q_0 - 1.0)*(tmp_q_0 - 1.0)); + const double tmp_q_15 = tmp_q_10*((tmp_q_1 - 1.0)*(tmp_q_1 - 1.0)); + const double tmp_q_16 = jac_affine_inv_0_0*tmp_q_1; + const double tmp_q_17 = jac_affine_inv_1_0*tmp_q_0; + const double tmp_q_18 = tmp_q_10*tmp_q_16; + const double tmp_q_19 = tmp_q_10*tmp_q_17; + const double tmp_q_20 = jac_affine_inv_0_1*tmp_q_1; + const double tmp_q_21 = jac_affine_inv_1_1*tmp_q_0; + const double tmp_q_22 = tmp_q_10*tmp_q_20; + const double tmp_q_23 = tmp_q_10*tmp_q_21; + const double tmp_q_24 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; + const double tmp_q_25 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; + const double tmp_q_26 = jac_affine_inv_0_0*tmp_q_25; + const double tmp_q_27 = jac_affine_inv_0_1*tmp_q_25; + const double res_tmp_0_0 = tmp_q_13*((tmp_q_11 + tmp_q_12)*(tmp_q_10*tmp_q_11 + tmp_q_10*tmp_q_12) + (tmp_q_3 + tmp_q_4)*(tmp_q_10*tmp_q_3 + tmp_q_10*tmp_q_4)); + const double res_tmp_1_1 = tmp_q_13*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_14 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_14); + const double res_tmp_2_2 = tmp_q_13*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_15 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_15); + const double res_tmp_3_3 = tmp_q_13*((tmp_q_16 + tmp_q_17)*(tmp_q_18 + tmp_q_19) + (tmp_q_20 + tmp_q_21)*(tmp_q_22 + tmp_q_23)); + const double res_tmp_4_4 = tmp_q_13*((jac_affine_inv_1_0*tmp_q_24 - tmp_q_16)*(jac_affine_inv_1_0*tmp_q_10*tmp_q_24 - tmp_q_18) + (jac_affine_inv_1_1*tmp_q_24 - tmp_q_20)*(jac_affine_inv_1_1*tmp_q_10*tmp_q_24 - tmp_q_22)); + const double res_tmp_5_5 = tmp_q_13*((-tmp_q_17 + tmp_q_26)*(tmp_q_10*tmp_q_26 - tmp_q_19) + (-tmp_q_21 + tmp_q_27)*(tmp_q_10*tmp_q_27 - tmp_q_23)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -392,8 +232,8 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_0 + _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1] = elMatDiag_1 + _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatDiag_2 + _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_3 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_4 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatDiag_3 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatDiag_4 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_5 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; } } @@ -401,141 +241,61 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl { for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { - const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); - const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]); + const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]); + const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_4_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_5_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 3; q += 1) { const __m256d tmp_q_0 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); const __m256d tmp_q_1 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_2 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_1); - const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4636,Dummy_4636,Dummy_4636,Dummy_4636)); - const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4638,Dummy_4638,Dummy_4638,Dummy_4638)); - const __m256d tmp_q_5 = _mm256_add_pd(tmp_q_3,tmp_q_4); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_7 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); - const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_7,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_9 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_9,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_11 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_8)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_10))),_mm256_mul_pd(k_dof_5,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_7,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_0))),_mm256_mul_pd(k_dof_4,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_1))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_10),tmp_q_6),tmp_q_8))),_mm256_mul_pd(k_dof_3,tmp_q_6)); - const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4637,Dummy_4637,Dummy_4637,Dummy_4637)); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4639,Dummy_4639,Dummy_4639,Dummy_4639)); - const __m256d tmp_q_14 = _mm256_add_pd(tmp_q_12,tmp_q_13); - const double tmp_q_15 = Dummy_4640*_data_q_w[q]; - const __m256d tmp_q_16 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(Dummy_4636,Dummy_4636,Dummy_4636,Dummy_4636)); - const __m256d tmp_q_18 = _mm256_mul_pd(tmp_q_11,tmp_q_5); - const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(Dummy_4637,Dummy_4637,Dummy_4637,Dummy_4637)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_11,tmp_q_14); - const __m256d tmp_q_21 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_21,_mm256_set_pd(Dummy_4638,Dummy_4638,Dummy_4638,Dummy_4638)); - const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_21,_mm256_set_pd(Dummy_4639,Dummy_4639,Dummy_4639,Dummy_4639)); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4636,Dummy_4636,Dummy_4636,Dummy_4636)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_11,tmp_q_24); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4638,Dummy_4638,Dummy_4638,Dummy_4638)); - const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_11,tmp_q_26); - const __m256d tmp_q_28 = _mm256_add_pd(tmp_q_25,tmp_q_27); - const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4637,Dummy_4637,Dummy_4637,Dummy_4637)); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_11,tmp_q_29); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4639,Dummy_4639,Dummy_4639,Dummy_4639)); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_11,tmp_q_31); - const __m256d tmp_q_33 = _mm256_add_pd(tmp_q_30,tmp_q_32); - const __m256d tmp_q_34 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_35 = _mm256_add_pd(_mm256_mul_pd(tmp_q_25,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_34),_mm256_set_pd(Dummy_4638,Dummy_4638,Dummy_4638,Dummy_4638))); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_34),_mm256_set_pd(Dummy_4639,Dummy_4639,Dummy_4639,Dummy_4639))); - const __m256d tmp_q_37 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_37,_mm256_set_pd(Dummy_4636,Dummy_4636,Dummy_4636,Dummy_4636)); - const __m256d tmp_q_39 = _mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,tmp_q_38)); - const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_37,_mm256_set_pd(Dummy_4637,Dummy_4637,Dummy_4637,Dummy_4637)); - const __m256d tmp_q_41 = _mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,tmp_q_40)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_11,_mm256_mul_pd(tmp_q_16,tmp_q_16)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_11,_mm256_mul_pd(tmp_q_21,tmp_q_21)); - const __m256d tmp_q_44 = _mm256_add_pd(tmp_q_24,tmp_q_26); - const __m256d tmp_q_45 = _mm256_add_pd(tmp_q_29,tmp_q_31); - const __m256d tmp_q_46 = _mm256_add_pd(_mm256_mul_pd(tmp_q_24,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_34,_mm256_set_pd(Dummy_4638,Dummy_4638,Dummy_4638,Dummy_4638))); - const __m256d tmp_q_47 = _mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_34,_mm256_set_pd(Dummy_4639,Dummy_4639,Dummy_4639,Dummy_4639))); - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,_mm256_add_pd(_mm256_mul_pd(tmp_q_11,tmp_q_12),_mm256_mul_pd(tmp_q_11,tmp_q_13))),_mm256_mul_pd(tmp_q_5,_mm256_add_pd(_mm256_mul_pd(tmp_q_11,tmp_q_3),_mm256_mul_pd(tmp_q_11,tmp_q_4)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_18),_mm256_mul_pd(tmp_q_19,tmp_q_20)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_20,tmp_q_23)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_33),_mm256_mul_pd(tmp_q_28,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_36),_mm256_mul_pd(tmp_q_35,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,tmp_q_41),_mm256_mul_pd(tmp_q_39,tmp_q_5)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_42,_mm256_mul_pd(_mm256_set_pd(Dummy_4636,Dummy_4636,Dummy_4636,Dummy_4636),_mm256_set_pd(Dummy_4636,Dummy_4636,Dummy_4636,Dummy_4636))),_mm256_mul_pd(tmp_q_42,_mm256_mul_pd(_mm256_set_pd(Dummy_4637,Dummy_4637,Dummy_4637,Dummy_4637),_mm256_set_pd(Dummy_4637,Dummy_4637,Dummy_4637,Dummy_4637)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_17),tmp_q_22),_mm256_mul_pd(_mm256_mul_pd(tmp_q_11,tmp_q_19),tmp_q_23)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_28),_mm256_mul_pd(tmp_q_19,tmp_q_33)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_35),_mm256_mul_pd(tmp_q_19,tmp_q_36)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,tmp_q_39),_mm256_mul_pd(tmp_q_19,tmp_q_41)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_mul_pd(_mm256_set_pd(Dummy_4638,Dummy_4638,Dummy_4638,Dummy_4638),_mm256_set_pd(Dummy_4638,Dummy_4638,Dummy_4638,Dummy_4638))),_mm256_mul_pd(tmp_q_43,_mm256_mul_pd(_mm256_set_pd(Dummy_4639,Dummy_4639,Dummy_4639,Dummy_4639),_mm256_set_pd(Dummy_4639,Dummy_4639,Dummy_4639,Dummy_4639)))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_28),_mm256_mul_pd(tmp_q_23,tmp_q_33)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_35),_mm256_mul_pd(tmp_q_23,tmp_q_36)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_22,tmp_q_39),_mm256_mul_pd(tmp_q_23,tmp_q_41)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_28,tmp_q_44),_mm256_mul_pd(tmp_q_33,tmp_q_45)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,tmp_q_44),_mm256_mul_pd(tmp_q_36,tmp_q_45)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,tmp_q_44),_mm256_mul_pd(tmp_q_41,tmp_q_45)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,tmp_q_46),_mm256_mul_pd(tmp_q_36,tmp_q_47)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_4_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,tmp_q_46),_mm256_mul_pd(tmp_q_41,tmp_q_47)),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); - const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,_mm256_add_pd(_mm256_mul_pd(tmp_q_26,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),tmp_q_38)),_mm256_mul_pd(tmp_q_41,_mm256_add_pd(_mm256_mul_pd(tmp_q_31,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),tmp_q_40))),_mm256_set_pd(tmp_q_15,tmp_q_15,tmp_q_15,tmp_q_15)); + const __m256d tmp_q_3 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4619,Dummy_4619,Dummy_4619,Dummy_4619)); + const __m256d tmp_q_4 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4621,Dummy_4621,Dummy_4621,Dummy_4621)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_6 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_6,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_8 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_8,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_10 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_7)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_9))),_mm256_mul_pd(k_dof_5,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_6,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_5,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_0))),_mm256_mul_pd(k_dof_4,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0)),_mm256_mul_pd(tmp_q_5,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),tmp_q_1))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_5),tmp_q_7),tmp_q_9))),_mm256_mul_pd(k_dof_3,tmp_q_5)); + const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4620,Dummy_4620,Dummy_4620,Dummy_4620)); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4622,Dummy_4622,Dummy_4622,Dummy_4622)); + const double tmp_q_13 = Dummy_4623*_data_q_w[q]; + const __m256d tmp_q_14 = _mm256_mul_pd(tmp_q_10,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0),_mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0))); + const __m256d tmp_q_15 = _mm256_mul_pd(tmp_q_10,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1),_mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1))); + const __m256d tmp_q_16 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4619,Dummy_4619,Dummy_4619,Dummy_4619)); + const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4621,Dummy_4621,Dummy_4621,Dummy_4621)); + const __m256d tmp_q_18 = _mm256_mul_pd(tmp_q_10,tmp_q_16); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_10,tmp_q_17); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4620,Dummy_4620,Dummy_4620,Dummy_4620)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4622,Dummy_4622,Dummy_4622,Dummy_4622)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_10,tmp_q_20); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_10,tmp_q_21); + const __m256d tmp_q_24 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_mul_pd(tmp_q_0,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_25 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_25,_mm256_set_pd(Dummy_4619,Dummy_4619,Dummy_4619,Dummy_4619)); + const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_25,_mm256_set_pd(Dummy_4620,Dummy_4620,Dummy_4620,Dummy_4620)); + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_11,tmp_q_12),_mm256_add_pd(_mm256_mul_pd(tmp_q_10,tmp_q_11),_mm256_mul_pd(tmp_q_10,tmp_q_12))),_mm256_mul_pd(_mm256_add_pd(tmp_q_3,tmp_q_4),_mm256_add_pd(_mm256_mul_pd(tmp_q_10,tmp_q_3),_mm256_mul_pd(tmp_q_10,tmp_q_4)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_14,_mm256_mul_pd(_mm256_set_pd(Dummy_4619,Dummy_4619,Dummy_4619,Dummy_4619),_mm256_set_pd(Dummy_4619,Dummy_4619,Dummy_4619,Dummy_4619))),_mm256_mul_pd(tmp_q_14,_mm256_mul_pd(_mm256_set_pd(Dummy_4620,Dummy_4620,Dummy_4620,Dummy_4620),_mm256_set_pd(Dummy_4620,Dummy_4620,Dummy_4620,Dummy_4620)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_15,_mm256_mul_pd(_mm256_set_pd(Dummy_4621,Dummy_4621,Dummy_4621,Dummy_4621),_mm256_set_pd(Dummy_4621,Dummy_4621,Dummy_4621,Dummy_4621))),_mm256_mul_pd(tmp_q_15,_mm256_mul_pd(_mm256_set_pd(Dummy_4622,Dummy_4622,Dummy_4622,Dummy_4622),_mm256_set_pd(Dummy_4622,Dummy_4622,Dummy_4622,Dummy_4622)))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_16,tmp_q_17),_mm256_add_pd(tmp_q_18,tmp_q_19)),_mm256_mul_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),_mm256_add_pd(tmp_q_22,tmp_q_23))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_24,_mm256_set_pd(Dummy_4621,Dummy_4621,Dummy_4621,Dummy_4621))),_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_10,tmp_q_24),_mm256_set_pd(Dummy_4621,Dummy_4621,Dummy_4621,Dummy_4621)))),_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_20,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_24,_mm256_set_pd(Dummy_4622,Dummy_4622,Dummy_4622,Dummy_4622))),_mm256_add_pd(_mm256_mul_pd(tmp_q_22,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_10,tmp_q_24),_mm256_set_pd(Dummy_4622,Dummy_4622,Dummy_4622,Dummy_4622))))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); + const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_10,tmp_q_26)),_mm256_add_pd(_mm256_mul_pd(tmp_q_17,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),tmp_q_26)),_mm256_mul_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_10,tmp_q_27)),_mm256_add_pd(_mm256_mul_pd(tmp_q_21,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),tmp_q_27))),_mm256_set_pd(tmp_q_13,tmp_q_13,tmp_q_13,tmp_q_13)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); - q_acc_0_4 = _mm256_add_pd(q_acc_0_4,res_tmp_0_4); - q_acc_0_5 = _mm256_add_pd(q_acc_0_5,res_tmp_0_5); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); - q_acc_1_4 = _mm256_add_pd(q_acc_1_4,res_tmp_1_4); - q_acc_1_5 = _mm256_add_pd(q_acc_1_5,res_tmp_1_5); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); - q_acc_2_4 = _mm256_add_pd(q_acc_2_4,res_tmp_2_4); - q_acc_2_5 = _mm256_add_pd(q_acc_2_5,res_tmp_2_5); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); - q_acc_3_4 = _mm256_add_pd(q_acc_3_4,res_tmp_3_4); - q_acc_3_5 = _mm256_add_pd(q_acc_3_5,res_tmp_3_5); q_acc_4_4 = _mm256_add_pd(q_acc_4_4,res_tmp_4_4); - q_acc_4_5 = _mm256_add_pd(q_acc_4_5,res_tmp_4_5); q_acc_5_5 = _mm256_add_pd(q_acc_5_5,res_tmp_5_5); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; - __m256d q_acc_4_0 = q_acc_0_4; - __m256d q_acc_4_1 = q_acc_1_4; - __m256d q_acc_4_2 = q_acc_2_4; - __m256d q_acc_4_3 = q_acc_3_4; - __m256d q_acc_5_0 = q_acc_0_5; - __m256d q_acc_5_1 = q_acc_1_5; - __m256d q_acc_5_2 = q_acc_2_5; - __m256d q_acc_5_3 = q_acc_3_5; - __m256d q_acc_5_4 = q_acc_4_5; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -546,146 +306,66 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl _mm256_storeu_pd(&_data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))],_mm256_add_pd(elMatDiag_1,_mm256_loadu_pd(& _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]))); _mm256_storeu_pd(&_data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1],_mm256_add_pd(elMatDiag_2,_mm256_loadu_pd(& _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]))); _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))],_mm256_add_pd(elMatDiag_3,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]))); - _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1],_mm256_add_pd(elMatDiag_4,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]))); - _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))],_mm256_add_pd(elMatDiag_5,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]))); + _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1],_mm256_add_pd(elMatDiag_4,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]))); + _mm256_storeu_pd(&_data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))],_mm256_add_pd(elMatDiag_5,_mm256_loadu_pd(& _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]))); } for (int64_t ctr_0 = (int64_t)((-ctr_1 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; - const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; + const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; double q_acc_5_5 = 0.0; for (int64_t q = 0; q < 3; q += 1) { const double tmp_q_0 = 4.0*_data_q_p_0[q]; const double tmp_q_1 = 4.0*_data_q_p_1[q]; const double tmp_q_2 = tmp_q_0 + tmp_q_1 - 3.0; - const double tmp_q_3 = Dummy_4636*tmp_q_2; - const double tmp_q_4 = Dummy_4638*tmp_q_2; - const double tmp_q_5 = tmp_q_3 + tmp_q_4; - const double tmp_q_6 = tmp_q_0*_data_q_p_1[q]; - const double tmp_q_7 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_8 = tmp_q_7*2.0; - const double tmp_q_9 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_10 = tmp_q_9*2.0; - const double tmp_q_11 = k_dof_0*(tmp_q_10 + tmp_q_6 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_8 - _data_q_p_0[q]) + k_dof_2*(tmp_q_10 - _data_q_p_1[q]) + k_dof_3*tmp_q_6 + k_dof_4*(tmp_q_1 - tmp_q_6 + tmp_q_9*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_6 + tmp_q_7*-4.0); - const double tmp_q_12 = Dummy_4637*tmp_q_2; - const double tmp_q_13 = Dummy_4639*tmp_q_2; - const double tmp_q_14 = tmp_q_12 + tmp_q_13; - const double tmp_q_15 = Dummy_4640*_data_q_w[q]; - const double tmp_q_16 = tmp_q_0 - 1.0; - const double tmp_q_17 = Dummy_4636*tmp_q_16; - const double tmp_q_18 = tmp_q_11*tmp_q_5; - const double tmp_q_19 = Dummy_4637*tmp_q_16; - const double tmp_q_20 = tmp_q_11*tmp_q_14; - const double tmp_q_21 = tmp_q_1 - 1.0; - const double tmp_q_22 = Dummy_4638*tmp_q_21; - const double tmp_q_23 = Dummy_4639*tmp_q_21; - const double tmp_q_24 = Dummy_4636*tmp_q_1; - const double tmp_q_25 = tmp_q_11*tmp_q_24; - const double tmp_q_26 = Dummy_4638*tmp_q_0; - const double tmp_q_27 = tmp_q_11*tmp_q_26; - const double tmp_q_28 = tmp_q_25 + tmp_q_27; - const double tmp_q_29 = Dummy_4637*tmp_q_1; - const double tmp_q_30 = tmp_q_11*tmp_q_29; - const double tmp_q_31 = Dummy_4639*tmp_q_0; - const double tmp_q_32 = tmp_q_11*tmp_q_31; - const double tmp_q_33 = tmp_q_30 + tmp_q_32; - const double tmp_q_34 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; - const double tmp_q_35 = Dummy_4638*tmp_q_11*tmp_q_34 - tmp_q_25; - const double tmp_q_36 = Dummy_4639*tmp_q_11*tmp_q_34 - tmp_q_30; - const double tmp_q_37 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; - const double tmp_q_38 = Dummy_4636*tmp_q_37; - const double tmp_q_39 = tmp_q_11*tmp_q_38 - tmp_q_27; - const double tmp_q_40 = Dummy_4637*tmp_q_37; - const double tmp_q_41 = tmp_q_11*tmp_q_40 - tmp_q_32; - const double tmp_q_42 = tmp_q_11*(tmp_q_16*tmp_q_16); - const double tmp_q_43 = tmp_q_11*(tmp_q_21*tmp_q_21); - const double tmp_q_44 = tmp_q_24 + tmp_q_26; - const double tmp_q_45 = tmp_q_29 + tmp_q_31; - const double tmp_q_46 = Dummy_4638*tmp_q_34 - tmp_q_24; - const double tmp_q_47 = Dummy_4639*tmp_q_34 - tmp_q_29; - const double res_tmp_0_0 = tmp_q_15*(tmp_q_14*(tmp_q_11*tmp_q_12 + tmp_q_11*tmp_q_13) + tmp_q_5*(tmp_q_11*tmp_q_3 + tmp_q_11*tmp_q_4)); - const double res_tmp_0_1 = tmp_q_15*(tmp_q_17*tmp_q_18 + tmp_q_19*tmp_q_20); - const double res_tmp_0_2 = tmp_q_15*(tmp_q_18*tmp_q_22 + tmp_q_20*tmp_q_23); - const double res_tmp_0_3 = tmp_q_15*(tmp_q_14*tmp_q_33 + tmp_q_28*tmp_q_5); - const double res_tmp_0_4 = tmp_q_15*(tmp_q_14*tmp_q_36 + tmp_q_35*tmp_q_5); - const double res_tmp_0_5 = tmp_q_15*(tmp_q_14*tmp_q_41 + tmp_q_39*tmp_q_5); - const double res_tmp_1_1 = tmp_q_15*((Dummy_4636*Dummy_4636)*tmp_q_42 + (Dummy_4637*Dummy_4637)*tmp_q_42); - const double res_tmp_1_2 = tmp_q_15*(tmp_q_11*tmp_q_17*tmp_q_22 + tmp_q_11*tmp_q_19*tmp_q_23); - const double res_tmp_1_3 = tmp_q_15*(tmp_q_17*tmp_q_28 + tmp_q_19*tmp_q_33); - const double res_tmp_1_4 = tmp_q_15*(tmp_q_17*tmp_q_35 + tmp_q_19*tmp_q_36); - const double res_tmp_1_5 = tmp_q_15*(tmp_q_17*tmp_q_39 + tmp_q_19*tmp_q_41); - const double res_tmp_2_2 = tmp_q_15*((Dummy_4638*Dummy_4638)*tmp_q_43 + (Dummy_4639*Dummy_4639)*tmp_q_43); - const double res_tmp_2_3 = tmp_q_15*(tmp_q_22*tmp_q_28 + tmp_q_23*tmp_q_33); - const double res_tmp_2_4 = tmp_q_15*(tmp_q_22*tmp_q_35 + tmp_q_23*tmp_q_36); - const double res_tmp_2_5 = tmp_q_15*(tmp_q_22*tmp_q_39 + tmp_q_23*tmp_q_41); - const double res_tmp_3_3 = tmp_q_15*(tmp_q_28*tmp_q_44 + tmp_q_33*tmp_q_45); - const double res_tmp_3_4 = tmp_q_15*(tmp_q_35*tmp_q_44 + tmp_q_36*tmp_q_45); - const double res_tmp_3_5 = tmp_q_15*(tmp_q_39*tmp_q_44 + tmp_q_41*tmp_q_45); - const double res_tmp_4_4 = tmp_q_15*(tmp_q_35*tmp_q_46 + tmp_q_36*tmp_q_47); - const double res_tmp_4_5 = tmp_q_15*(tmp_q_39*tmp_q_46 + tmp_q_41*tmp_q_47); - const double res_tmp_5_5 = tmp_q_15*(tmp_q_39*(-tmp_q_26 + tmp_q_38) + tmp_q_41*(-tmp_q_31 + tmp_q_40)); + const double tmp_q_3 = Dummy_4619*tmp_q_2; + const double tmp_q_4 = Dummy_4621*tmp_q_2; + const double tmp_q_5 = tmp_q_0*_data_q_p_1[q]; + const double tmp_q_6 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_7 = tmp_q_6*2.0; + const double tmp_q_8 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_9 = tmp_q_8*2.0; + const double tmp_q_10 = k_dof_0*(tmp_q_5 + tmp_q_7 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_7 - _data_q_p_0[q]) + k_dof_2*(tmp_q_9 - _data_q_p_1[q]) + k_dof_3*tmp_q_5 + k_dof_4*(tmp_q_1 - tmp_q_5 + tmp_q_8*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_5 + tmp_q_6*-4.0); + const double tmp_q_11 = Dummy_4620*tmp_q_2; + const double tmp_q_12 = Dummy_4622*tmp_q_2; + const double tmp_q_13 = Dummy_4623*_data_q_w[q]; + const double tmp_q_14 = tmp_q_10*((tmp_q_0 - 1.0)*(tmp_q_0 - 1.0)); + const double tmp_q_15 = tmp_q_10*((tmp_q_1 - 1.0)*(tmp_q_1 - 1.0)); + const double tmp_q_16 = Dummy_4619*tmp_q_1; + const double tmp_q_17 = Dummy_4621*tmp_q_0; + const double tmp_q_18 = tmp_q_10*tmp_q_16; + const double tmp_q_19 = tmp_q_10*tmp_q_17; + const double tmp_q_20 = Dummy_4620*tmp_q_1; + const double tmp_q_21 = Dummy_4622*tmp_q_0; + const double tmp_q_22 = tmp_q_10*tmp_q_20; + const double tmp_q_23 = tmp_q_10*tmp_q_21; + const double tmp_q_24 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; + const double tmp_q_25 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; + const double tmp_q_26 = Dummy_4619*tmp_q_25; + const double tmp_q_27 = Dummy_4620*tmp_q_25; + const double res_tmp_0_0 = tmp_q_13*((tmp_q_11 + tmp_q_12)*(tmp_q_10*tmp_q_11 + tmp_q_10*tmp_q_12) + (tmp_q_3 + tmp_q_4)*(tmp_q_10*tmp_q_3 + tmp_q_10*tmp_q_4)); + const double res_tmp_1_1 = tmp_q_13*((Dummy_4619*Dummy_4619)*tmp_q_14 + (Dummy_4620*Dummy_4620)*tmp_q_14); + const double res_tmp_2_2 = tmp_q_13*((Dummy_4621*Dummy_4621)*tmp_q_15 + (Dummy_4622*Dummy_4622)*tmp_q_15); + const double res_tmp_3_3 = tmp_q_13*((tmp_q_16 + tmp_q_17)*(tmp_q_18 + tmp_q_19) + (tmp_q_20 + tmp_q_21)*(tmp_q_22 + tmp_q_23)); + const double res_tmp_4_4 = tmp_q_13*((Dummy_4621*tmp_q_24 - tmp_q_16)*(Dummy_4621*tmp_q_10*tmp_q_24 - tmp_q_18) + (Dummy_4622*tmp_q_24 - tmp_q_20)*(Dummy_4622*tmp_q_10*tmp_q_24 - tmp_q_22)); + const double res_tmp_5_5 = tmp_q_13*((-tmp_q_17 + tmp_q_26)*(tmp_q_10*tmp_q_26 - tmp_q_19) + (-tmp_q_21 + tmp_q_27)*(tmp_q_10*tmp_q_27 - tmp_q_23)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -696,8 +376,8 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatDiag_1 + _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1] = elMatDiag_2 + _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; _data_invDiag_Edge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatDiag_3 + _data_invDiag_Edge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1] = elMatDiag_4 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_5 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1] = elMatDiag_4 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatDiag_5 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; } } } diff --git a/operators/div_k_grad/avx/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp b/operators/div_k_grad/avx/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp index 6bf4b7a9dcd8a3fc192f1d81c1df8c7e29757d1b..53acb832e856edb6442f4d33b4adf0ed747bf607 100644 --- a/operators/div_k_grad/avx/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp +++ b/operators/div_k_grad/avx/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp @@ -57,13 +57,13 @@ namespace operatorgeneration { void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( double * RESTRICT _data_invDiag_Edge, double * RESTRICT _data_invDiag_Vertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -96,161 +96,161 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double jac_affine_inv_2_1 = (-jac_affine_0_0*jac_affine_2_1 + jac_affine_0_1*jac_affine_2_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double jac_affine_inv_2_2 = (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); - const double Dummy_4749 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4750 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4751 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4752 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4753 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4754 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4755 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4756 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4757 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4758 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4759 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4760 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4761 = -Dummy_4749 + Dummy_4752; - const double Dummy_4762 = -Dummy_4749 + Dummy_4755; - const double Dummy_4763 = -Dummy_4749 + Dummy_4758; - const double Dummy_4764 = -Dummy_4750 + Dummy_4753; - const double Dummy_4765 = -Dummy_4750 + Dummy_4756; - const double Dummy_4766 = -Dummy_4750 + Dummy_4759; - const double Dummy_4767 = -Dummy_4751 + Dummy_4754; - const double Dummy_4768 = -Dummy_4751 + Dummy_4757; - const double Dummy_4769 = -Dummy_4751 + Dummy_4760; - const double Dummy_4770 = (Dummy_4765*Dummy_4769 - Dummy_4766*Dummy_4768)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4771 = (-Dummy_4762*Dummy_4769 + Dummy_4763*Dummy_4768)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4772 = (Dummy_4762*Dummy_4766 - Dummy_4763*Dummy_4765)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4773 = (-Dummy_4764*Dummy_4769 + Dummy_4766*Dummy_4767)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4774 = (Dummy_4761*Dummy_4769 - Dummy_4763*Dummy_4767)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4775 = (-Dummy_4761*Dummy_4766 + Dummy_4763*Dummy_4764)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4776 = (Dummy_4764*Dummy_4768 - Dummy_4765*Dummy_4767)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4777 = (-Dummy_4761*Dummy_4768 + Dummy_4762*Dummy_4767)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4778 = (Dummy_4761*Dummy_4765 - Dummy_4762*Dummy_4764)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4779 = fabs(Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4780 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4781 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4782 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4783 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4784 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4785 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4786 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4787 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4788 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4789 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4790 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4791 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4792 = -Dummy_4780 + Dummy_4783; - const double Dummy_4793 = -Dummy_4780 + Dummy_4786; - const double Dummy_4794 = -Dummy_4780 + Dummy_4789; - const double Dummy_4795 = -Dummy_4781 + Dummy_4784; - const double Dummy_4796 = -Dummy_4781 + Dummy_4787; - const double Dummy_4797 = -Dummy_4781 + Dummy_4790; - const double Dummy_4798 = -Dummy_4782 + Dummy_4785; - const double Dummy_4799 = -Dummy_4782 + Dummy_4788; - const double Dummy_4800 = -Dummy_4782 + Dummy_4791; - const double Dummy_4801 = (Dummy_4796*Dummy_4800 - Dummy_4797*Dummy_4799)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4802 = (-Dummy_4793*Dummy_4800 + Dummy_4794*Dummy_4799)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4803 = (Dummy_4793*Dummy_4797 - Dummy_4794*Dummy_4796)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4804 = (-Dummy_4795*Dummy_4800 + Dummy_4797*Dummy_4798)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4805 = (Dummy_4792*Dummy_4800 - Dummy_4794*Dummy_4798)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4806 = (-Dummy_4792*Dummy_4797 + Dummy_4794*Dummy_4795)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4807 = (Dummy_4795*Dummy_4799 - Dummy_4796*Dummy_4798)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4808 = (-Dummy_4792*Dummy_4799 + Dummy_4793*Dummy_4798)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4809 = (Dummy_4792*Dummy_4796 - Dummy_4793*Dummy_4795)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4810 = fabs(Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4811 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4812 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4813 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4814 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4815 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4816 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4817 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4818 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4819 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4820 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4821 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4822 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4823 = -Dummy_4811 + Dummy_4814; - const double Dummy_4824 = -Dummy_4811 + Dummy_4817; - const double Dummy_4825 = -Dummy_4811 + Dummy_4820; - const double Dummy_4826 = -Dummy_4812 + Dummy_4815; - const double Dummy_4827 = -Dummy_4812 + Dummy_4818; - const double Dummy_4828 = -Dummy_4812 + Dummy_4821; - const double Dummy_4829 = -Dummy_4813 + Dummy_4816; - const double Dummy_4830 = -Dummy_4813 + Dummy_4819; - const double Dummy_4831 = -Dummy_4813 + Dummy_4822; - const double Dummy_4832 = (Dummy_4827*Dummy_4831 - Dummy_4828*Dummy_4830)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4833 = (-Dummy_4824*Dummy_4831 + Dummy_4825*Dummy_4830)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4834 = (Dummy_4824*Dummy_4828 - Dummy_4825*Dummy_4827)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4835 = (-Dummy_4826*Dummy_4831 + Dummy_4828*Dummy_4829)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4836 = (Dummy_4823*Dummy_4831 - Dummy_4825*Dummy_4829)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4837 = (-Dummy_4823*Dummy_4828 + Dummy_4825*Dummy_4826)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4838 = (Dummy_4826*Dummy_4830 - Dummy_4827*Dummy_4829)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4839 = (-Dummy_4823*Dummy_4830 + Dummy_4824*Dummy_4829)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4840 = (Dummy_4823*Dummy_4827 - Dummy_4824*Dummy_4826)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4841 = fabs(Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4842 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4843 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4844 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4845 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4846 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4847 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4848 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4849 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4850 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4851 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4852 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4853 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4854 = -Dummy_4842 + Dummy_4845; - const double Dummy_4855 = -Dummy_4842 + Dummy_4848; - const double Dummy_4856 = -Dummy_4842 + Dummy_4851; - const double Dummy_4857 = -Dummy_4843 + Dummy_4846; - const double Dummy_4858 = -Dummy_4843 + Dummy_4849; - const double Dummy_4859 = -Dummy_4843 + Dummy_4852; - const double Dummy_4860 = -Dummy_4844 + Dummy_4847; - const double Dummy_4861 = -Dummy_4844 + Dummy_4850; - const double Dummy_4862 = -Dummy_4844 + Dummy_4853; - const double Dummy_4863 = (Dummy_4858*Dummy_4862 - Dummy_4859*Dummy_4861)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4864 = (-Dummy_4855*Dummy_4862 + Dummy_4856*Dummy_4861)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4865 = (Dummy_4855*Dummy_4859 - Dummy_4856*Dummy_4858)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4866 = (-Dummy_4857*Dummy_4862 + Dummy_4859*Dummy_4860)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4867 = (Dummy_4854*Dummy_4862 - Dummy_4856*Dummy_4860)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4868 = (-Dummy_4854*Dummy_4859 + Dummy_4856*Dummy_4857)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4869 = (Dummy_4857*Dummy_4861 - Dummy_4858*Dummy_4860)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4870 = (-Dummy_4854*Dummy_4861 + Dummy_4855*Dummy_4860)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4871 = (Dummy_4854*Dummy_4858 - Dummy_4855*Dummy_4857)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4872 = fabs(Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4873 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4874 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4875 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4876 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4877 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4878 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4879 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4880 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4881 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4882 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4883 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4884 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4885 = -Dummy_4873 + Dummy_4876; - const double Dummy_4886 = -Dummy_4873 + Dummy_4879; - const double Dummy_4887 = -Dummy_4873 + Dummy_4882; - const double Dummy_4888 = -Dummy_4874 + Dummy_4877; - const double Dummy_4889 = -Dummy_4874 + Dummy_4880; - const double Dummy_4890 = -Dummy_4874 + Dummy_4883; - const double Dummy_4891 = -Dummy_4875 + Dummy_4878; - const double Dummy_4892 = -Dummy_4875 + Dummy_4881; - const double Dummy_4893 = -Dummy_4875 + Dummy_4884; - const double Dummy_4894 = (Dummy_4889*Dummy_4893 - Dummy_4890*Dummy_4892)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4895 = (-Dummy_4886*Dummy_4893 + Dummy_4887*Dummy_4892)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4896 = (Dummy_4886*Dummy_4890 - Dummy_4887*Dummy_4889)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4897 = (-Dummy_4888*Dummy_4893 + Dummy_4890*Dummy_4891)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4898 = (Dummy_4885*Dummy_4893 - Dummy_4887*Dummy_4891)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4899 = (-Dummy_4885*Dummy_4890 + Dummy_4887*Dummy_4888)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4900 = (Dummy_4888*Dummy_4892 - Dummy_4889*Dummy_4891)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4901 = (-Dummy_4885*Dummy_4892 + Dummy_4886*Dummy_4891)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4902 = (Dummy_4885*Dummy_4889 - Dummy_4886*Dummy_4888)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4903 = fabs(Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); + const double Dummy_4732 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4733 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4734 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4735 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4736 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4737 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4738 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4739 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4740 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4741 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4742 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4743 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4744 = -Dummy_4732 + Dummy_4735; + const double Dummy_4745 = -Dummy_4732 + Dummy_4738; + const double Dummy_4746 = -Dummy_4732 + Dummy_4741; + const double Dummy_4747 = -Dummy_4733 + Dummy_4736; + const double Dummy_4748 = -Dummy_4733 + Dummy_4739; + const double Dummy_4749 = -Dummy_4733 + Dummy_4742; + const double Dummy_4750 = -Dummy_4734 + Dummy_4737; + const double Dummy_4751 = -Dummy_4734 + Dummy_4740; + const double Dummy_4752 = -Dummy_4734 + Dummy_4743; + const double Dummy_4753 = (Dummy_4748*Dummy_4752 - Dummy_4749*Dummy_4751)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4754 = (-Dummy_4745*Dummy_4752 + Dummy_4746*Dummy_4751)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4755 = (Dummy_4745*Dummy_4749 - Dummy_4746*Dummy_4748)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4756 = (-Dummy_4747*Dummy_4752 + Dummy_4749*Dummy_4750)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4757 = (Dummy_4744*Dummy_4752 - Dummy_4746*Dummy_4750)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4758 = (-Dummy_4744*Dummy_4749 + Dummy_4746*Dummy_4747)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4759 = (Dummy_4747*Dummy_4751 - Dummy_4748*Dummy_4750)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4760 = (-Dummy_4744*Dummy_4751 + Dummy_4745*Dummy_4750)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4761 = (Dummy_4744*Dummy_4748 - Dummy_4745*Dummy_4747)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4762 = fabs(Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4763 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4764 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4765 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4766 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4767 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4768 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4769 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4770 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4771 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4772 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4773 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4774 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4775 = -Dummy_4763 + Dummy_4766; + const double Dummy_4776 = -Dummy_4763 + Dummy_4769; + const double Dummy_4777 = -Dummy_4763 + Dummy_4772; + const double Dummy_4778 = -Dummy_4764 + Dummy_4767; + const double Dummy_4779 = -Dummy_4764 + Dummy_4770; + const double Dummy_4780 = -Dummy_4764 + Dummy_4773; + const double Dummy_4781 = -Dummy_4765 + Dummy_4768; + const double Dummy_4782 = -Dummy_4765 + Dummy_4771; + const double Dummy_4783 = -Dummy_4765 + Dummy_4774; + const double Dummy_4784 = (Dummy_4779*Dummy_4783 - Dummy_4780*Dummy_4782)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4785 = (-Dummy_4776*Dummy_4783 + Dummy_4777*Dummy_4782)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4786 = (Dummy_4776*Dummy_4780 - Dummy_4777*Dummy_4779)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4787 = (-Dummy_4778*Dummy_4783 + Dummy_4780*Dummy_4781)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4788 = (Dummy_4775*Dummy_4783 - Dummy_4777*Dummy_4781)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4789 = (-Dummy_4775*Dummy_4780 + Dummy_4777*Dummy_4778)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4790 = (Dummy_4778*Dummy_4782 - Dummy_4779*Dummy_4781)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4791 = (-Dummy_4775*Dummy_4782 + Dummy_4776*Dummy_4781)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4792 = (Dummy_4775*Dummy_4779 - Dummy_4776*Dummy_4778)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4793 = fabs(Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4794 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4795 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4796 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4797 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4798 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4799 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4800 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4801 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4802 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4803 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4804 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4805 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4806 = -Dummy_4794 + Dummy_4797; + const double Dummy_4807 = -Dummy_4794 + Dummy_4800; + const double Dummy_4808 = -Dummy_4794 + Dummy_4803; + const double Dummy_4809 = -Dummy_4795 + Dummy_4798; + const double Dummy_4810 = -Dummy_4795 + Dummy_4801; + const double Dummy_4811 = -Dummy_4795 + Dummy_4804; + const double Dummy_4812 = -Dummy_4796 + Dummy_4799; + const double Dummy_4813 = -Dummy_4796 + Dummy_4802; + const double Dummy_4814 = -Dummy_4796 + Dummy_4805; + const double Dummy_4815 = (Dummy_4810*Dummy_4814 - Dummy_4811*Dummy_4813)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4816 = (-Dummy_4807*Dummy_4814 + Dummy_4808*Dummy_4813)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4817 = (Dummy_4807*Dummy_4811 - Dummy_4808*Dummy_4810)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4818 = (-Dummy_4809*Dummy_4814 + Dummy_4811*Dummy_4812)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4819 = (Dummy_4806*Dummy_4814 - Dummy_4808*Dummy_4812)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4820 = (-Dummy_4806*Dummy_4811 + Dummy_4808*Dummy_4809)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4821 = (Dummy_4809*Dummy_4813 - Dummy_4810*Dummy_4812)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4822 = (-Dummy_4806*Dummy_4813 + Dummy_4807*Dummy_4812)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4823 = (Dummy_4806*Dummy_4810 - Dummy_4807*Dummy_4809)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4824 = fabs(Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4825 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4826 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4827 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4828 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4829 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4830 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4831 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4832 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4833 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4834 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4835 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4836 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4837 = -Dummy_4825 + Dummy_4828; + const double Dummy_4838 = -Dummy_4825 + Dummy_4831; + const double Dummy_4839 = -Dummy_4825 + Dummy_4834; + const double Dummy_4840 = -Dummy_4826 + Dummy_4829; + const double Dummy_4841 = -Dummy_4826 + Dummy_4832; + const double Dummy_4842 = -Dummy_4826 + Dummy_4835; + const double Dummy_4843 = -Dummy_4827 + Dummy_4830; + const double Dummy_4844 = -Dummy_4827 + Dummy_4833; + const double Dummy_4845 = -Dummy_4827 + Dummy_4836; + const double Dummy_4846 = (Dummy_4841*Dummy_4845 - Dummy_4842*Dummy_4844)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4847 = (-Dummy_4838*Dummy_4845 + Dummy_4839*Dummy_4844)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4848 = (Dummy_4838*Dummy_4842 - Dummy_4839*Dummy_4841)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4849 = (-Dummy_4840*Dummy_4845 + Dummy_4842*Dummy_4843)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4850 = (Dummy_4837*Dummy_4845 - Dummy_4839*Dummy_4843)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4851 = (-Dummy_4837*Dummy_4842 + Dummy_4839*Dummy_4840)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4852 = (Dummy_4840*Dummy_4844 - Dummy_4841*Dummy_4843)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4853 = (-Dummy_4837*Dummy_4844 + Dummy_4838*Dummy_4843)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4854 = (Dummy_4837*Dummy_4841 - Dummy_4838*Dummy_4840)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4855 = fabs(Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4856 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4857 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4858 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4859 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4860 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4861 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4862 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4863 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4864 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4865 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4866 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4867 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4868 = -Dummy_4856 + Dummy_4859; + const double Dummy_4869 = -Dummy_4856 + Dummy_4862; + const double Dummy_4870 = -Dummy_4856 + Dummy_4865; + const double Dummy_4871 = -Dummy_4857 + Dummy_4860; + const double Dummy_4872 = -Dummy_4857 + Dummy_4863; + const double Dummy_4873 = -Dummy_4857 + Dummy_4866; + const double Dummy_4874 = -Dummy_4858 + Dummy_4861; + const double Dummy_4875 = -Dummy_4858 + Dummy_4864; + const double Dummy_4876 = -Dummy_4858 + Dummy_4867; + const double Dummy_4877 = (Dummy_4872*Dummy_4876 - Dummy_4873*Dummy_4875)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4878 = (-Dummy_4869*Dummy_4876 + Dummy_4870*Dummy_4875)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4879 = (Dummy_4869*Dummy_4873 - Dummy_4870*Dummy_4872)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4880 = (-Dummy_4871*Dummy_4876 + Dummy_4873*Dummy_4874)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4881 = (Dummy_4868*Dummy_4876 - Dummy_4870*Dummy_4874)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4882 = (-Dummy_4868*Dummy_4873 + Dummy_4870*Dummy_4871)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4883 = (Dummy_4871*Dummy_4875 - Dummy_4872*Dummy_4874)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4884 = (-Dummy_4868*Dummy_4875 + Dummy_4869*Dummy_4874)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4885 = (Dummy_4868*Dummy_4872 - Dummy_4869*Dummy_4871)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4886 = fabs(Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); { for (int64_t ctr_2 = 0; ctr_2 < micro_edges_per_macro_edge; ctr_2 += 1) for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) @@ -258,69 +258,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 += 4) { const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_4_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_5_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_6_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_7_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_8_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_8_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_9_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { @@ -332,278 +287,89 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)); - const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); - const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_12 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_12,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_14 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_15 = _mm256_mul_pd(tmp_q_14,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_16 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); - const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)); - const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)); - const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = abs_det_jac_affine*_data_q_w[q]; - const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)); - const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)); - const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); - const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)); - const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); - const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)); - const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); - const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)); - const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)); - const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); - const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); - const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)); - const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); - const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)); - const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); - const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)); - const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)); - const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); - const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); - const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); - const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); - const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); - const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); - const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); - const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)); - const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)); - const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); - const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); - const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2))); - const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); - const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2))); - const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2))); - const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); - const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); - const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); - const __m256d tmp_q_105 = _mm256_mul_pd(tmp_q_19,tmp_q_32); - const __m256d tmp_q_106 = _mm256_mul_pd(tmp_q_19,tmp_q_34); - const __m256d tmp_q_107 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); - const __m256d tmp_q_108 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); - const __m256d tmp_q_109 = _mm256_add_pd(tmp_q_44,tmp_q_46); - const __m256d tmp_q_110 = _mm256_add_pd(tmp_q_49,tmp_q_51); - const __m256d tmp_q_111 = _mm256_add_pd(tmp_q_54,tmp_q_56); - const __m256d tmp_q_112 = _mm256_add_pd(tmp_q_59,tmp_q_61); - const __m256d tmp_q_113 = _mm256_add_pd(tmp_q_64,tmp_q_66); - const __m256d tmp_q_114 = _mm256_add_pd(tmp_q_69,tmp_q_71); - const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); - const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); - const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2))); - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_41),_mm256_mul_pd(tmp_q_33,tmp_q_42)),_mm256_mul_pd(tmp_q_35,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_53),_mm256_mul_pd(tmp_q_27,tmp_q_58)),_mm256_mul_pd(tmp_q_48,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_68),_mm256_mul_pd(tmp_q_27,tmp_q_73)),_mm256_mul_pd(tmp_q_63,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_83),_mm256_mul_pd(tmp_q_27,tmp_q_88)),_mm256_mul_pd(tmp_q_78,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2),_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_63),_mm256_mul_pd(tmp_q_32,tmp_q_68)),_mm256_mul_pd(tmp_q_34,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_78),_mm256_mul_pd(tmp_q_32,tmp_q_83)),_mm256_mul_pd(tmp_q_34,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2),_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_78),_mm256_mul_pd(tmp_q_38,tmp_q_83)),_mm256_mul_pd(tmp_q_39,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0),_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1),_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2),_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_90),_mm256_mul_pd(tmp_q_42,tmp_q_91)),_mm256_mul_pd(tmp_q_43,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_95),_mm256_mul_pd(tmp_q_42,tmp_q_96)),_mm256_mul_pd(tmp_q_43,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_42),_mm256_mul_pd(tmp_q_101,tmp_q_43)),_mm256_mul_pd(tmp_q_41,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_48),_mm256_mul_pd(tmp_q_110,tmp_q_53)),_mm256_mul_pd(tmp_q_111,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_63),_mm256_mul_pd(tmp_q_110,tmp_q_68)),_mm256_mul_pd(tmp_q_111,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_78),_mm256_mul_pd(tmp_q_110,tmp_q_83)),_mm256_mul_pd(tmp_q_111,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_90),_mm256_mul_pd(tmp_q_110,tmp_q_91)),_mm256_mul_pd(tmp_q_111,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_95),_mm256_mul_pd(tmp_q_110,tmp_q_96)),_mm256_mul_pd(tmp_q_111,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_110),_mm256_mul_pd(tmp_q_101,tmp_q_111)),_mm256_mul_pd(tmp_q_109,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_63),_mm256_mul_pd(tmp_q_113,tmp_q_68)),_mm256_mul_pd(tmp_q_114,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_78),_mm256_mul_pd(tmp_q_113,tmp_q_83)),_mm256_mul_pd(tmp_q_114,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_90),_mm256_mul_pd(tmp_q_113,tmp_q_91)),_mm256_mul_pd(tmp_q_114,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_95),_mm256_mul_pd(tmp_q_113,tmp_q_96)),_mm256_mul_pd(tmp_q_114,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_113),_mm256_mul_pd(tmp_q_101,tmp_q_114)),_mm256_mul_pd(tmp_q_112,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_78),_mm256_mul_pd(tmp_q_116,tmp_q_83)),_mm256_mul_pd(tmp_q_117,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_90),_mm256_mul_pd(tmp_q_116,tmp_q_91)),_mm256_mul_pd(tmp_q_117,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_95),_mm256_mul_pd(tmp_q_116,tmp_q_96)),_mm256_mul_pd(tmp_q_117,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_116),_mm256_mul_pd(tmp_q_101,tmp_q_117)),_mm256_mul_pd(tmp_q_115,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_90),_mm256_mul_pd(tmp_q_119,tmp_q_91)),_mm256_mul_pd(tmp_q_120,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_95),_mm256_mul_pd(tmp_q_119,tmp_q_96)),_mm256_mul_pd(tmp_q_120,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_11 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_11,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_13 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_14 = _mm256_mul_pd(tmp_q_13,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_15 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_16 = _mm256_mul_pd(tmp_q_15,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_17 = _mm256_add_pd(tmp_q_10,tmp_q_9); + const __m256d tmp_q_18 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_12)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_14))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_16))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_13,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_15,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_12),tmp_q_14),tmp_q_16),tmp_q_17),tmp_q_8))),_mm256_mul_pd(k_dof_4,tmp_q_8)),_mm256_mul_pd(k_dof_5,tmp_q_9)),_mm256_mul_pd(k_dof_6,tmp_q_10)); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)); + const double tmp_q_25 = abs_det_jac_affine*_data_q_w[q]; + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_18,_mm256_set_pd(16.0,16.0,16.0,16.0)); + const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); + const __m256d tmp_q_28 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); + const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); + const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_18,tmp_q_30); + const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_18,tmp_q_31); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); + const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)); + const __m256d tmp_q_36 = _mm256_mul_pd(tmp_q_18,tmp_q_34); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_18,tmp_q_35); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)); + const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_18,tmp_q_38); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_18,tmp_q_39); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_18,tmp_q_42); + const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_18,tmp_q_43); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); + const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)); + const __m256d tmp_q_48 = _mm256_mul_pd(tmp_q_18,tmp_q_46); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_18,tmp_q_47); + const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)); + const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_18,tmp_q_50); + const __m256d tmp_q_53 = _mm256_mul_pd(tmp_q_18,tmp_q_51); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)); + const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_18,tmp_q_54); + const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_18,tmp_q_55); + const __m256d tmp_q_58 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)); + const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_18,tmp_q_58); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_18,tmp_q_59); + const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)); + const __m256d tmp_q_63 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_18,tmp_q_62); + const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_18,tmp_q_63); + const __m256d tmp_q_66 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_67 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); + const __m256d tmp_q_68 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); + const __m256d tmp_q_69 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_19,tmp_q_20),tmp_q_21),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_19),_mm256_mul_pd(tmp_q_18,tmp_q_20)),_mm256_mul_pd(tmp_q_18,tmp_q_21))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_22,tmp_q_23),tmp_q_24),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_18,tmp_q_23)),_mm256_mul_pd(tmp_q_18,tmp_q_24)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_5),_mm256_mul_pd(tmp_q_18,tmp_q_6)),_mm256_mul_pd(tmp_q_18,tmp_q_7)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1)))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2),_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1)))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2),_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0),_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1),_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1)))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2),_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_30,tmp_q_31),_mm256_add_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(_mm256_add_pd(tmp_q_34,tmp_q_35),_mm256_add_pd(tmp_q_36,tmp_q_37))),_mm256_mul_pd(_mm256_add_pd(tmp_q_38,tmp_q_39),_mm256_add_pd(tmp_q_40,tmp_q_41))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_42,tmp_q_43),_mm256_add_pd(tmp_q_44,tmp_q_45)),_mm256_mul_pd(_mm256_add_pd(tmp_q_46,tmp_q_47),_mm256_add_pd(tmp_q_48,tmp_q_49))),_mm256_mul_pd(_mm256_add_pd(tmp_q_50,tmp_q_51),_mm256_add_pd(tmp_q_52,tmp_q_53))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_54,tmp_q_55),_mm256_add_pd(tmp_q_56,tmp_q_57)),_mm256_mul_pd(_mm256_add_pd(tmp_q_58,tmp_q_59),_mm256_add_pd(tmp_q_60,tmp_q_61))),_mm256_mul_pd(_mm256_add_pd(tmp_q_62,tmp_q_63),_mm256_add_pd(tmp_q_64,tmp_q_65))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_42,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0,jac_affine_inv_2_0)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_34,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_36,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_48,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1,jac_affine_inv_2_1))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_38,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_40,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2,jac_affine_inv_2_2))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_33,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0,jac_affine_inv_1_0)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_58,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1,jac_affine_inv_1_1))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2,jac_affine_inv_1_2))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0,jac_affine_inv_0_0)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1,jac_affine_inv_0_1))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_63,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_53,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2,jac_affine_inv_0_2))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); - q_acc_0_4 = _mm256_add_pd(q_acc_0_4,res_tmp_0_4); - q_acc_0_5 = _mm256_add_pd(q_acc_0_5,res_tmp_0_5); - q_acc_0_6 = _mm256_add_pd(q_acc_0_6,res_tmp_0_6); - q_acc_0_7 = _mm256_add_pd(q_acc_0_7,res_tmp_0_7); - q_acc_0_8 = _mm256_add_pd(q_acc_0_8,res_tmp_0_8); - q_acc_0_9 = _mm256_add_pd(q_acc_0_9,res_tmp_0_9); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); - q_acc_1_4 = _mm256_add_pd(q_acc_1_4,res_tmp_1_4); - q_acc_1_5 = _mm256_add_pd(q_acc_1_5,res_tmp_1_5); - q_acc_1_6 = _mm256_add_pd(q_acc_1_6,res_tmp_1_6); - q_acc_1_7 = _mm256_add_pd(q_acc_1_7,res_tmp_1_7); - q_acc_1_8 = _mm256_add_pd(q_acc_1_8,res_tmp_1_8); - q_acc_1_9 = _mm256_add_pd(q_acc_1_9,res_tmp_1_9); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); - q_acc_2_4 = _mm256_add_pd(q_acc_2_4,res_tmp_2_4); - q_acc_2_5 = _mm256_add_pd(q_acc_2_5,res_tmp_2_5); - q_acc_2_6 = _mm256_add_pd(q_acc_2_6,res_tmp_2_6); - q_acc_2_7 = _mm256_add_pd(q_acc_2_7,res_tmp_2_7); - q_acc_2_8 = _mm256_add_pd(q_acc_2_8,res_tmp_2_8); - q_acc_2_9 = _mm256_add_pd(q_acc_2_9,res_tmp_2_9); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); - q_acc_3_4 = _mm256_add_pd(q_acc_3_4,res_tmp_3_4); - q_acc_3_5 = _mm256_add_pd(q_acc_3_5,res_tmp_3_5); - q_acc_3_6 = _mm256_add_pd(q_acc_3_6,res_tmp_3_6); - q_acc_3_7 = _mm256_add_pd(q_acc_3_7,res_tmp_3_7); - q_acc_3_8 = _mm256_add_pd(q_acc_3_8,res_tmp_3_8); - q_acc_3_9 = _mm256_add_pd(q_acc_3_9,res_tmp_3_9); q_acc_4_4 = _mm256_add_pd(q_acc_4_4,res_tmp_4_4); - q_acc_4_5 = _mm256_add_pd(q_acc_4_5,res_tmp_4_5); - q_acc_4_6 = _mm256_add_pd(q_acc_4_6,res_tmp_4_6); - q_acc_4_7 = _mm256_add_pd(q_acc_4_7,res_tmp_4_7); - q_acc_4_8 = _mm256_add_pd(q_acc_4_8,res_tmp_4_8); - q_acc_4_9 = _mm256_add_pd(q_acc_4_9,res_tmp_4_9); q_acc_5_5 = _mm256_add_pd(q_acc_5_5,res_tmp_5_5); - q_acc_5_6 = _mm256_add_pd(q_acc_5_6,res_tmp_5_6); - q_acc_5_7 = _mm256_add_pd(q_acc_5_7,res_tmp_5_7); - q_acc_5_8 = _mm256_add_pd(q_acc_5_8,res_tmp_5_8); - q_acc_5_9 = _mm256_add_pd(q_acc_5_9,res_tmp_5_9); q_acc_6_6 = _mm256_add_pd(q_acc_6_6,res_tmp_6_6); - q_acc_6_7 = _mm256_add_pd(q_acc_6_7,res_tmp_6_7); - q_acc_6_8 = _mm256_add_pd(q_acc_6_8,res_tmp_6_8); - q_acc_6_9 = _mm256_add_pd(q_acc_6_9,res_tmp_6_9); q_acc_7_7 = _mm256_add_pd(q_acc_7_7,res_tmp_7_7); - q_acc_7_8 = _mm256_add_pd(q_acc_7_8,res_tmp_7_8); - q_acc_7_9 = _mm256_add_pd(q_acc_7_9,res_tmp_7_9); q_acc_8_8 = _mm256_add_pd(q_acc_8_8,res_tmp_8_8); - q_acc_8_9 = _mm256_add_pd(q_acc_8_9,res_tmp_8_9); q_acc_9_9 = _mm256_add_pd(q_acc_9_9,res_tmp_9_9); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; - __m256d q_acc_4_0 = q_acc_0_4; - __m256d q_acc_4_1 = q_acc_1_4; - __m256d q_acc_4_2 = q_acc_2_4; - __m256d q_acc_4_3 = q_acc_3_4; - __m256d q_acc_5_0 = q_acc_0_5; - __m256d q_acc_5_1 = q_acc_1_5; - __m256d q_acc_5_2 = q_acc_2_5; - __m256d q_acc_5_3 = q_acc_3_5; - __m256d q_acc_5_4 = q_acc_4_5; - __m256d q_acc_6_0 = q_acc_0_6; - __m256d q_acc_6_1 = q_acc_1_6; - __m256d q_acc_6_2 = q_acc_2_6; - __m256d q_acc_6_3 = q_acc_3_6; - __m256d q_acc_6_4 = q_acc_4_6; - __m256d q_acc_6_5 = q_acc_5_6; - __m256d q_acc_7_0 = q_acc_0_7; - __m256d q_acc_7_1 = q_acc_1_7; - __m256d q_acc_7_2 = q_acc_2_7; - __m256d q_acc_7_3 = q_acc_3_7; - __m256d q_acc_7_4 = q_acc_4_7; - __m256d q_acc_7_5 = q_acc_5_7; - __m256d q_acc_7_6 = q_acc_6_7; - __m256d q_acc_8_0 = q_acc_0_8; - __m256d q_acc_8_1 = q_acc_1_8; - __m256d q_acc_8_2 = q_acc_2_8; - __m256d q_acc_8_3 = q_acc_3_8; - __m256d q_acc_8_4 = q_acc_4_8; - __m256d q_acc_8_5 = q_acc_5_8; - __m256d q_acc_8_6 = q_acc_6_8; - __m256d q_acc_8_7 = q_acc_7_8; - __m256d q_acc_9_0 = q_acc_0_9; - __m256d q_acc_9_1 = q_acc_1_9; - __m256d q_acc_9_2 = q_acc_2_9; - __m256d q_acc_9_3 = q_acc_3_9; - __m256d q_acc_9_4 = q_acc_4_9; - __m256d q_acc_9_5 = q_acc_5_9; - __m256d q_acc_9_6 = q_acc_6_9; - __m256d q_acc_9_7 = q_acc_7_9; - __m256d q_acc_9_8 = q_acc_8_9; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -628,69 +394,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -702,278 +423,89 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_5 = jac_affine_inv_0_0*tmp_q_4; const double tmp_q_6 = jac_affine_inv_1_0*tmp_q_4; const double tmp_q_7 = jac_affine_inv_2_0*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = jac_affine_inv_0_1*tmp_q_4; - const double tmp_q_21 = jac_affine_inv_1_1*tmp_q_4; - const double tmp_q_22 = jac_affine_inv_2_1*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = jac_affine_inv_0_2*tmp_q_4; - const double tmp_q_25 = jac_affine_inv_1_2*tmp_q_4; - const double tmp_q_26 = jac_affine_inv_2_2*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = abs_det_jac_affine*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = jac_affine_inv_0_0*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = jac_affine_inv_0_1*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = jac_affine_inv_0_2*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = jac_affine_inv_1_0*tmp_q_36; - const double tmp_q_38 = jac_affine_inv_1_1*tmp_q_36; - const double tmp_q_39 = jac_affine_inv_1_2*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = jac_affine_inv_2_0*tmp_q_40; - const double tmp_q_42 = jac_affine_inv_2_1*tmp_q_40; - const double tmp_q_43 = jac_affine_inv_2_2*tmp_q_40; - const double tmp_q_44 = jac_affine_inv_1_0*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = jac_affine_inv_2_0*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = jac_affine_inv_1_1*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = jac_affine_inv_2_1*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = jac_affine_inv_1_2*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = jac_affine_inv_2_2*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = jac_affine_inv_0_0*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = jac_affine_inv_2_0*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = jac_affine_inv_0_1*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = jac_affine_inv_2_1*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = jac_affine_inv_0_2*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = jac_affine_inv_2_2*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = jac_affine_inv_0_0*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = jac_affine_inv_1_0*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = jac_affine_inv_0_1*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = jac_affine_inv_1_1*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = jac_affine_inv_0_2*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = jac_affine_inv_1_2*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = jac_affine_inv_2_0*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = jac_affine_inv_2_1*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = jac_affine_inv_2_2*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = jac_affine_inv_1_0*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = jac_affine_inv_1_1*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = jac_affine_inv_1_2*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = jac_affine_inv_0_0*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = jac_affine_inv_0_1*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = jac_affine_inv_0_2*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = jac_affine_inv_2_0*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = jac_affine_inv_2_1*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = jac_affine_inv_2_2*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = jac_affine_inv_1_0*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = jac_affine_inv_1_1*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = jac_affine_inv_1_2*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_103 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_103 + (jac_affine_inv_0_2*jac_affine_inv_0_2)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_107 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_107 + (jac_affine_inv_1_2*jac_affine_inv_1_2)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((jac_affine_inv_2_0*jac_affine_inv_2_0)*tmp_q_108 + (jac_affine_inv_2_1*jac_affine_inv_2_1)*tmp_q_108 + (jac_affine_inv_2_2*jac_affine_inv_2_2)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(jac_affine_inv_0_1*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(jac_affine_inv_0_2*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(jac_affine_inv_0_0*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = jac_affine_inv_0_1*tmp_q_4; + const double tmp_q_20 = jac_affine_inv_1_1*tmp_q_4; + const double tmp_q_21 = jac_affine_inv_2_1*tmp_q_4; + const double tmp_q_22 = jac_affine_inv_0_2*tmp_q_4; + const double tmp_q_23 = jac_affine_inv_1_2*tmp_q_4; + const double tmp_q_24 = jac_affine_inv_2_2*tmp_q_4; + const double tmp_q_25 = abs_det_jac_affine*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = jac_affine_inv_1_0*tmp_q_0; + const double tmp_q_31 = jac_affine_inv_2_0*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = jac_affine_inv_1_1*tmp_q_0; + const double tmp_q_35 = jac_affine_inv_2_1*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = jac_affine_inv_1_2*tmp_q_0; + const double tmp_q_39 = jac_affine_inv_2_2*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = jac_affine_inv_0_0*tmp_q_0; + const double tmp_q_43 = jac_affine_inv_2_0*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = jac_affine_inv_0_1*tmp_q_0; + const double tmp_q_47 = jac_affine_inv_2_1*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = jac_affine_inv_0_2*tmp_q_0; + const double tmp_q_51 = jac_affine_inv_2_2*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = jac_affine_inv_0_0*tmp_q_2; + const double tmp_q_55 = jac_affine_inv_1_0*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = jac_affine_inv_0_1*tmp_q_2; + const double tmp_q_59 = jac_affine_inv_1_1*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = jac_affine_inv_0_2*tmp_q_2; + const double tmp_q_63 = jac_affine_inv_1_2*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_27 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_27 + (jac_affine_inv_0_2*jac_affine_inv_0_2)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_28 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_28 + (jac_affine_inv_1_2*jac_affine_inv_1_2)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((jac_affine_inv_2_0*jac_affine_inv_2_0)*tmp_q_29 + (jac_affine_inv_2_1*jac_affine_inv_2_1)*tmp_q_29 + (jac_affine_inv_2_2*jac_affine_inv_2_2)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((jac_affine_inv_2_0*tmp_q_66 - tmp_q_30 - tmp_q_42)*(jac_affine_inv_2_0*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (jac_affine_inv_2_1*tmp_q_66 - tmp_q_34 - tmp_q_46)*(jac_affine_inv_2_1*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (jac_affine_inv_2_2*tmp_q_66 - tmp_q_38 - tmp_q_50)*(jac_affine_inv_2_2*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((jac_affine_inv_1_0*tmp_q_68 - tmp_q_31 - tmp_q_54)*(jac_affine_inv_1_0*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (jac_affine_inv_1_1*tmp_q_68 - tmp_q_35 - tmp_q_58)*(jac_affine_inv_1_1*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (jac_affine_inv_1_2*tmp_q_68 - tmp_q_39 - tmp_q_62)*(jac_affine_inv_1_2*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((jac_affine_inv_0_0*tmp_q_69 - tmp_q_43 - tmp_q_55)*(jac_affine_inv_0_0*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (jac_affine_inv_0_1*tmp_q_69 - tmp_q_47 - tmp_q_59)*(jac_affine_inv_0_1*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (jac_affine_inv_0_2*tmp_q_69 - tmp_q_51 - tmp_q_63)*(jac_affine_inv_0_2*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -1002,69 +534,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2) / (4)) * (4); ctr_0 += 4) { const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_4_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_5_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_6_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_7_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_8_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_8_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_9_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { @@ -1073,281 +560,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4770,Dummy_4770,Dummy_4770,Dummy_4770)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4773,Dummy_4773,Dummy_4773,Dummy_4773)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4776,Dummy_4776,Dummy_4776,Dummy_4776)); - const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); - const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_12 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_12,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_14 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_15 = _mm256_mul_pd(tmp_q_14,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_16 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); - const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4771,Dummy_4771,Dummy_4771,Dummy_4771)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4774,Dummy_4774,Dummy_4774,Dummy_4774)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4777,Dummy_4777,Dummy_4777,Dummy_4777)); - const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4772,Dummy_4772,Dummy_4772,Dummy_4772)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4775,Dummy_4775,Dummy_4775,Dummy_4775)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4778,Dummy_4778,Dummy_4778,Dummy_4778)); - const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4779*_data_q_w[q]; - const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4770,Dummy_4770,Dummy_4770,Dummy_4770)); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4771,Dummy_4771,Dummy_4771,Dummy_4771)); - const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4772,Dummy_4772,Dummy_4772,Dummy_4772)); - const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4773,Dummy_4773,Dummy_4773,Dummy_4773)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4774,Dummy_4774,Dummy_4774,Dummy_4774)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4775,Dummy_4775,Dummy_4775,Dummy_4775)); - const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4776,Dummy_4776,Dummy_4776,Dummy_4776)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4777,Dummy_4777,Dummy_4777,Dummy_4777)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4778,Dummy_4778,Dummy_4778,Dummy_4778)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4773,Dummy_4773,Dummy_4773,Dummy_4773)); - const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4776,Dummy_4776,Dummy_4776,Dummy_4776)); - const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); - const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4774,Dummy_4774,Dummy_4774,Dummy_4774)); - const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4777,Dummy_4777,Dummy_4777,Dummy_4777)); - const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); - const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4775,Dummy_4775,Dummy_4775,Dummy_4775)); - const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4778,Dummy_4778,Dummy_4778,Dummy_4778)); - const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); - const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4770,Dummy_4770,Dummy_4770,Dummy_4770)); - const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4776,Dummy_4776,Dummy_4776,Dummy_4776)); - const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); - const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4771,Dummy_4771,Dummy_4771,Dummy_4771)); - const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4777,Dummy_4777,Dummy_4777,Dummy_4777)); - const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); - const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4772,Dummy_4772,Dummy_4772,Dummy_4772)); - const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4778,Dummy_4778,Dummy_4778,Dummy_4778)); - const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); - const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4770,Dummy_4770,Dummy_4770,Dummy_4770)); - const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4773,Dummy_4773,Dummy_4773,Dummy_4773)); - const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); - const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4771,Dummy_4771,Dummy_4771,Dummy_4771)); - const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4774,Dummy_4774,Dummy_4774,Dummy_4774)); - const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); - const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4772,Dummy_4772,Dummy_4772,Dummy_4772)); - const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4775,Dummy_4775,Dummy_4775,Dummy_4775)); - const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); - const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); - const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4776,Dummy_4776,Dummy_4776,Dummy_4776))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4777,Dummy_4777,Dummy_4777,Dummy_4777))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4778,Dummy_4778,Dummy_4778,Dummy_4778))); - const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); - const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4773,Dummy_4773,Dummy_4773,Dummy_4773))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4774,Dummy_4774,Dummy_4774,Dummy_4774))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4775,Dummy_4775,Dummy_4775,Dummy_4775))); - const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4770,Dummy_4770,Dummy_4770,Dummy_4770))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4771,Dummy_4771,Dummy_4771,Dummy_4771))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4772,Dummy_4772,Dummy_4772,Dummy_4772))); - const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); - const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); - const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); - const __m256d tmp_q_105 = _mm256_mul_pd(tmp_q_19,tmp_q_32); - const __m256d tmp_q_106 = _mm256_mul_pd(tmp_q_19,tmp_q_34); - const __m256d tmp_q_107 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); - const __m256d tmp_q_108 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); - const __m256d tmp_q_109 = _mm256_add_pd(tmp_q_44,tmp_q_46); - const __m256d tmp_q_110 = _mm256_add_pd(tmp_q_49,tmp_q_51); - const __m256d tmp_q_111 = _mm256_add_pd(tmp_q_54,tmp_q_56); - const __m256d tmp_q_112 = _mm256_add_pd(tmp_q_59,tmp_q_61); - const __m256d tmp_q_113 = _mm256_add_pd(tmp_q_64,tmp_q_66); - const __m256d tmp_q_114 = _mm256_add_pd(tmp_q_69,tmp_q_71); - const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); - const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); - const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4776,Dummy_4776,Dummy_4776,Dummy_4776))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4777,Dummy_4777,Dummy_4777,Dummy_4777))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4778,Dummy_4778,Dummy_4778,Dummy_4778))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4773,Dummy_4773,Dummy_4773,Dummy_4773))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4774,Dummy_4774,Dummy_4774,Dummy_4774))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4775,Dummy_4775,Dummy_4775,Dummy_4775))); - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_41),_mm256_mul_pd(tmp_q_33,tmp_q_42)),_mm256_mul_pd(tmp_q_35,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_53),_mm256_mul_pd(tmp_q_27,tmp_q_58)),_mm256_mul_pd(tmp_q_48,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_68),_mm256_mul_pd(tmp_q_27,tmp_q_73)),_mm256_mul_pd(tmp_q_63,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_83),_mm256_mul_pd(tmp_q_27,tmp_q_88)),_mm256_mul_pd(tmp_q_78,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4770,Dummy_4770,Dummy_4770,Dummy_4770),_mm256_set_pd(Dummy_4770,Dummy_4770,Dummy_4770,Dummy_4770))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4771,Dummy_4771,Dummy_4771,Dummy_4771),_mm256_set_pd(Dummy_4771,Dummy_4771,Dummy_4771,Dummy_4771)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4772,Dummy_4772,Dummy_4772,Dummy_4772),_mm256_set_pd(Dummy_4772,Dummy_4772,Dummy_4772,Dummy_4772)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_63),_mm256_mul_pd(tmp_q_32,tmp_q_68)),_mm256_mul_pd(tmp_q_34,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_78),_mm256_mul_pd(tmp_q_32,tmp_q_83)),_mm256_mul_pd(tmp_q_34,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4773,Dummy_4773,Dummy_4773,Dummy_4773),_mm256_set_pd(Dummy_4773,Dummy_4773,Dummy_4773,Dummy_4773))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4774,Dummy_4774,Dummy_4774,Dummy_4774),_mm256_set_pd(Dummy_4774,Dummy_4774,Dummy_4774,Dummy_4774)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4775,Dummy_4775,Dummy_4775,Dummy_4775),_mm256_set_pd(Dummy_4775,Dummy_4775,Dummy_4775,Dummy_4775)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_78),_mm256_mul_pd(tmp_q_38,tmp_q_83)),_mm256_mul_pd(tmp_q_39,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4776,Dummy_4776,Dummy_4776,Dummy_4776),_mm256_set_pd(Dummy_4776,Dummy_4776,Dummy_4776,Dummy_4776))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4777,Dummy_4777,Dummy_4777,Dummy_4777),_mm256_set_pd(Dummy_4777,Dummy_4777,Dummy_4777,Dummy_4777)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4778,Dummy_4778,Dummy_4778,Dummy_4778),_mm256_set_pd(Dummy_4778,Dummy_4778,Dummy_4778,Dummy_4778)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_90),_mm256_mul_pd(tmp_q_42,tmp_q_91)),_mm256_mul_pd(tmp_q_43,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_95),_mm256_mul_pd(tmp_q_42,tmp_q_96)),_mm256_mul_pd(tmp_q_43,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_42),_mm256_mul_pd(tmp_q_101,tmp_q_43)),_mm256_mul_pd(tmp_q_41,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_48),_mm256_mul_pd(tmp_q_110,tmp_q_53)),_mm256_mul_pd(tmp_q_111,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_63),_mm256_mul_pd(tmp_q_110,tmp_q_68)),_mm256_mul_pd(tmp_q_111,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_78),_mm256_mul_pd(tmp_q_110,tmp_q_83)),_mm256_mul_pd(tmp_q_111,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_90),_mm256_mul_pd(tmp_q_110,tmp_q_91)),_mm256_mul_pd(tmp_q_111,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_95),_mm256_mul_pd(tmp_q_110,tmp_q_96)),_mm256_mul_pd(tmp_q_111,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_110),_mm256_mul_pd(tmp_q_101,tmp_q_111)),_mm256_mul_pd(tmp_q_109,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_63),_mm256_mul_pd(tmp_q_113,tmp_q_68)),_mm256_mul_pd(tmp_q_114,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_78),_mm256_mul_pd(tmp_q_113,tmp_q_83)),_mm256_mul_pd(tmp_q_114,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_90),_mm256_mul_pd(tmp_q_113,tmp_q_91)),_mm256_mul_pd(tmp_q_114,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_95),_mm256_mul_pd(tmp_q_113,tmp_q_96)),_mm256_mul_pd(tmp_q_114,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_113),_mm256_mul_pd(tmp_q_101,tmp_q_114)),_mm256_mul_pd(tmp_q_112,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_78),_mm256_mul_pd(tmp_q_116,tmp_q_83)),_mm256_mul_pd(tmp_q_117,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_90),_mm256_mul_pd(tmp_q_116,tmp_q_91)),_mm256_mul_pd(tmp_q_117,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_95),_mm256_mul_pd(tmp_q_116,tmp_q_96)),_mm256_mul_pd(tmp_q_117,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_116),_mm256_mul_pd(tmp_q_101,tmp_q_117)),_mm256_mul_pd(tmp_q_115,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_90),_mm256_mul_pd(tmp_q_119,tmp_q_91)),_mm256_mul_pd(tmp_q_120,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_95),_mm256_mul_pd(tmp_q_119,tmp_q_96)),_mm256_mul_pd(tmp_q_120,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4770,Dummy_4770,Dummy_4770,Dummy_4770)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4771,Dummy_4771,Dummy_4771,Dummy_4771))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4772,Dummy_4772,Dummy_4772,Dummy_4772))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4753,Dummy_4753,Dummy_4753,Dummy_4753)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4756,Dummy_4756,Dummy_4756,Dummy_4756)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4759,Dummy_4759,Dummy_4759,Dummy_4759)); + const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_11 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_11,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_13 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_14 = _mm256_mul_pd(tmp_q_13,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_15 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_16 = _mm256_mul_pd(tmp_q_15,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_17 = _mm256_add_pd(tmp_q_10,tmp_q_9); + const __m256d tmp_q_18 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_12)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_14))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_16))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_13,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_15,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_12),tmp_q_14),tmp_q_16),tmp_q_17),tmp_q_8))),_mm256_mul_pd(k_dof_4,tmp_q_8)),_mm256_mul_pd(k_dof_5,tmp_q_9)),_mm256_mul_pd(k_dof_6,tmp_q_10)); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4754,Dummy_4754,Dummy_4754,Dummy_4754)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4757,Dummy_4757,Dummy_4757,Dummy_4757)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4760,Dummy_4760,Dummy_4760,Dummy_4760)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4755,Dummy_4755,Dummy_4755,Dummy_4755)); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4758,Dummy_4758,Dummy_4758,Dummy_4758)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4761,Dummy_4761,Dummy_4761,Dummy_4761)); + const double tmp_q_25 = Dummy_4762*_data_q_w[q]; + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_18,_mm256_set_pd(16.0,16.0,16.0,16.0)); + const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); + const __m256d tmp_q_28 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); + const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4756,Dummy_4756,Dummy_4756,Dummy_4756)); + const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4759,Dummy_4759,Dummy_4759,Dummy_4759)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_18,tmp_q_30); + const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_18,tmp_q_31); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4757,Dummy_4757,Dummy_4757,Dummy_4757)); + const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4760,Dummy_4760,Dummy_4760,Dummy_4760)); + const __m256d tmp_q_36 = _mm256_mul_pd(tmp_q_18,tmp_q_34); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_18,tmp_q_35); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4758,Dummy_4758,Dummy_4758,Dummy_4758)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4761,Dummy_4761,Dummy_4761,Dummy_4761)); + const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_18,tmp_q_38); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_18,tmp_q_39); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4753,Dummy_4753,Dummy_4753,Dummy_4753)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4759,Dummy_4759,Dummy_4759,Dummy_4759)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_18,tmp_q_42); + const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_18,tmp_q_43); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4754,Dummy_4754,Dummy_4754,Dummy_4754)); + const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4760,Dummy_4760,Dummy_4760,Dummy_4760)); + const __m256d tmp_q_48 = _mm256_mul_pd(tmp_q_18,tmp_q_46); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_18,tmp_q_47); + const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4755,Dummy_4755,Dummy_4755,Dummy_4755)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4761,Dummy_4761,Dummy_4761,Dummy_4761)); + const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_18,tmp_q_50); + const __m256d tmp_q_53 = _mm256_mul_pd(tmp_q_18,tmp_q_51); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4753,Dummy_4753,Dummy_4753,Dummy_4753)); + const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4756,Dummy_4756,Dummy_4756,Dummy_4756)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_18,tmp_q_54); + const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_18,tmp_q_55); + const __m256d tmp_q_58 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4754,Dummy_4754,Dummy_4754,Dummy_4754)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4757,Dummy_4757,Dummy_4757,Dummy_4757)); + const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_18,tmp_q_58); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_18,tmp_q_59); + const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4755,Dummy_4755,Dummy_4755,Dummy_4755)); + const __m256d tmp_q_63 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4758,Dummy_4758,Dummy_4758,Dummy_4758)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_18,tmp_q_62); + const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_18,tmp_q_63); + const __m256d tmp_q_66 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_67 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); + const __m256d tmp_q_68 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); + const __m256d tmp_q_69 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_19,tmp_q_20),tmp_q_21),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_19),_mm256_mul_pd(tmp_q_18,tmp_q_20)),_mm256_mul_pd(tmp_q_18,tmp_q_21))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_22,tmp_q_23),tmp_q_24),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_18,tmp_q_23)),_mm256_mul_pd(tmp_q_18,tmp_q_24)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_5),_mm256_mul_pd(tmp_q_18,tmp_q_6)),_mm256_mul_pd(tmp_q_18,tmp_q_7)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4753,Dummy_4753,Dummy_4753,Dummy_4753),_mm256_set_pd(Dummy_4753,Dummy_4753,Dummy_4753,Dummy_4753))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4754,Dummy_4754,Dummy_4754,Dummy_4754),_mm256_set_pd(Dummy_4754,Dummy_4754,Dummy_4754,Dummy_4754)))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4755,Dummy_4755,Dummy_4755,Dummy_4755),_mm256_set_pd(Dummy_4755,Dummy_4755,Dummy_4755,Dummy_4755)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4756,Dummy_4756,Dummy_4756,Dummy_4756),_mm256_set_pd(Dummy_4756,Dummy_4756,Dummy_4756,Dummy_4756))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4757,Dummy_4757,Dummy_4757,Dummy_4757),_mm256_set_pd(Dummy_4757,Dummy_4757,Dummy_4757,Dummy_4757)))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4758,Dummy_4758,Dummy_4758,Dummy_4758),_mm256_set_pd(Dummy_4758,Dummy_4758,Dummy_4758,Dummy_4758)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4759,Dummy_4759,Dummy_4759,Dummy_4759),_mm256_set_pd(Dummy_4759,Dummy_4759,Dummy_4759,Dummy_4759))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4760,Dummy_4760,Dummy_4760,Dummy_4760),_mm256_set_pd(Dummy_4760,Dummy_4760,Dummy_4760,Dummy_4760)))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4761,Dummy_4761,Dummy_4761,Dummy_4761),_mm256_set_pd(Dummy_4761,Dummy_4761,Dummy_4761,Dummy_4761)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_30,tmp_q_31),_mm256_add_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(_mm256_add_pd(tmp_q_34,tmp_q_35),_mm256_add_pd(tmp_q_36,tmp_q_37))),_mm256_mul_pd(_mm256_add_pd(tmp_q_38,tmp_q_39),_mm256_add_pd(tmp_q_40,tmp_q_41))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_42,tmp_q_43),_mm256_add_pd(tmp_q_44,tmp_q_45)),_mm256_mul_pd(_mm256_add_pd(tmp_q_46,tmp_q_47),_mm256_add_pd(tmp_q_48,tmp_q_49))),_mm256_mul_pd(_mm256_add_pd(tmp_q_50,tmp_q_51),_mm256_add_pd(tmp_q_52,tmp_q_53))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_54,tmp_q_55),_mm256_add_pd(tmp_q_56,tmp_q_57)),_mm256_mul_pd(_mm256_add_pd(tmp_q_58,tmp_q_59),_mm256_add_pd(tmp_q_60,tmp_q_61))),_mm256_mul_pd(_mm256_add_pd(tmp_q_62,tmp_q_63),_mm256_add_pd(tmp_q_64,tmp_q_65))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_42,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4759,Dummy_4759,Dummy_4759,Dummy_4759))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4759,Dummy_4759,Dummy_4759,Dummy_4759)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_34,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4760,Dummy_4760,Dummy_4760,Dummy_4760))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_36,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_48,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4760,Dummy_4760,Dummy_4760,Dummy_4760))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_38,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4761,Dummy_4761,Dummy_4761,Dummy_4761))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_40,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4761,Dummy_4761,Dummy_4761,Dummy_4761))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4756,Dummy_4756,Dummy_4756,Dummy_4756))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_33,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4756,Dummy_4756,Dummy_4756,Dummy_4756)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_58,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4757,Dummy_4757,Dummy_4757,Dummy_4757))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4757,Dummy_4757,Dummy_4757,Dummy_4757))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4758,Dummy_4758,Dummy_4758,Dummy_4758))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4758,Dummy_4758,Dummy_4758,Dummy_4758))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4753,Dummy_4753,Dummy_4753,Dummy_4753))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4753,Dummy_4753,Dummy_4753,Dummy_4753)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4754,Dummy_4754,Dummy_4754,Dummy_4754))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4754,Dummy_4754,Dummy_4754,Dummy_4754))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_63,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4755,Dummy_4755,Dummy_4755,Dummy_4755))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_53,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4755,Dummy_4755,Dummy_4755,Dummy_4755))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); - q_acc_0_4 = _mm256_add_pd(q_acc_0_4,res_tmp_0_4); - q_acc_0_5 = _mm256_add_pd(q_acc_0_5,res_tmp_0_5); - q_acc_0_6 = _mm256_add_pd(q_acc_0_6,res_tmp_0_6); - q_acc_0_7 = _mm256_add_pd(q_acc_0_7,res_tmp_0_7); - q_acc_0_8 = _mm256_add_pd(q_acc_0_8,res_tmp_0_8); - q_acc_0_9 = _mm256_add_pd(q_acc_0_9,res_tmp_0_9); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); - q_acc_1_4 = _mm256_add_pd(q_acc_1_4,res_tmp_1_4); - q_acc_1_5 = _mm256_add_pd(q_acc_1_5,res_tmp_1_5); - q_acc_1_6 = _mm256_add_pd(q_acc_1_6,res_tmp_1_6); - q_acc_1_7 = _mm256_add_pd(q_acc_1_7,res_tmp_1_7); - q_acc_1_8 = _mm256_add_pd(q_acc_1_8,res_tmp_1_8); - q_acc_1_9 = _mm256_add_pd(q_acc_1_9,res_tmp_1_9); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); - q_acc_2_4 = _mm256_add_pd(q_acc_2_4,res_tmp_2_4); - q_acc_2_5 = _mm256_add_pd(q_acc_2_5,res_tmp_2_5); - q_acc_2_6 = _mm256_add_pd(q_acc_2_6,res_tmp_2_6); - q_acc_2_7 = _mm256_add_pd(q_acc_2_7,res_tmp_2_7); - q_acc_2_8 = _mm256_add_pd(q_acc_2_8,res_tmp_2_8); - q_acc_2_9 = _mm256_add_pd(q_acc_2_9,res_tmp_2_9); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); - q_acc_3_4 = _mm256_add_pd(q_acc_3_4,res_tmp_3_4); - q_acc_3_5 = _mm256_add_pd(q_acc_3_5,res_tmp_3_5); - q_acc_3_6 = _mm256_add_pd(q_acc_3_6,res_tmp_3_6); - q_acc_3_7 = _mm256_add_pd(q_acc_3_7,res_tmp_3_7); - q_acc_3_8 = _mm256_add_pd(q_acc_3_8,res_tmp_3_8); - q_acc_3_9 = _mm256_add_pd(q_acc_3_9,res_tmp_3_9); q_acc_4_4 = _mm256_add_pd(q_acc_4_4,res_tmp_4_4); - q_acc_4_5 = _mm256_add_pd(q_acc_4_5,res_tmp_4_5); - q_acc_4_6 = _mm256_add_pd(q_acc_4_6,res_tmp_4_6); - q_acc_4_7 = _mm256_add_pd(q_acc_4_7,res_tmp_4_7); - q_acc_4_8 = _mm256_add_pd(q_acc_4_8,res_tmp_4_8); - q_acc_4_9 = _mm256_add_pd(q_acc_4_9,res_tmp_4_9); q_acc_5_5 = _mm256_add_pd(q_acc_5_5,res_tmp_5_5); - q_acc_5_6 = _mm256_add_pd(q_acc_5_6,res_tmp_5_6); - q_acc_5_7 = _mm256_add_pd(q_acc_5_7,res_tmp_5_7); - q_acc_5_8 = _mm256_add_pd(q_acc_5_8,res_tmp_5_8); - q_acc_5_9 = _mm256_add_pd(q_acc_5_9,res_tmp_5_9); q_acc_6_6 = _mm256_add_pd(q_acc_6_6,res_tmp_6_6); - q_acc_6_7 = _mm256_add_pd(q_acc_6_7,res_tmp_6_7); - q_acc_6_8 = _mm256_add_pd(q_acc_6_8,res_tmp_6_8); - q_acc_6_9 = _mm256_add_pd(q_acc_6_9,res_tmp_6_9); q_acc_7_7 = _mm256_add_pd(q_acc_7_7,res_tmp_7_7); - q_acc_7_8 = _mm256_add_pd(q_acc_7_8,res_tmp_7_8); - q_acc_7_9 = _mm256_add_pd(q_acc_7_9,res_tmp_7_9); q_acc_8_8 = _mm256_add_pd(q_acc_8_8,res_tmp_8_8); - q_acc_8_9 = _mm256_add_pd(q_acc_8_9,res_tmp_8_9); q_acc_9_9 = _mm256_add_pd(q_acc_9_9,res_tmp_9_9); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; - __m256d q_acc_4_0 = q_acc_0_4; - __m256d q_acc_4_1 = q_acc_1_4; - __m256d q_acc_4_2 = q_acc_2_4; - __m256d q_acc_4_3 = q_acc_3_4; - __m256d q_acc_5_0 = q_acc_0_5; - __m256d q_acc_5_1 = q_acc_1_5; - __m256d q_acc_5_2 = q_acc_2_5; - __m256d q_acc_5_3 = q_acc_3_5; - __m256d q_acc_5_4 = q_acc_4_5; - __m256d q_acc_6_0 = q_acc_0_6; - __m256d q_acc_6_1 = q_acc_1_6; - __m256d q_acc_6_2 = q_acc_2_6; - __m256d q_acc_6_3 = q_acc_3_6; - __m256d q_acc_6_4 = q_acc_4_6; - __m256d q_acc_6_5 = q_acc_5_6; - __m256d q_acc_7_0 = q_acc_0_7; - __m256d q_acc_7_1 = q_acc_1_7; - __m256d q_acc_7_2 = q_acc_2_7; - __m256d q_acc_7_3 = q_acc_3_7; - __m256d q_acc_7_4 = q_acc_4_7; - __m256d q_acc_7_5 = q_acc_5_7; - __m256d q_acc_7_6 = q_acc_6_7; - __m256d q_acc_8_0 = q_acc_0_8; - __m256d q_acc_8_1 = q_acc_1_8; - __m256d q_acc_8_2 = q_acc_2_8; - __m256d q_acc_8_3 = q_acc_3_8; - __m256d q_acc_8_4 = q_acc_4_8; - __m256d q_acc_8_5 = q_acc_5_8; - __m256d q_acc_8_6 = q_acc_6_8; - __m256d q_acc_8_7 = q_acc_7_8; - __m256d q_acc_9_0 = q_acc_0_9; - __m256d q_acc_9_1 = q_acc_1_9; - __m256d q_acc_9_2 = q_acc_2_9; - __m256d q_acc_9_3 = q_acc_3_9; - __m256d q_acc_9_4 = q_acc_4_9; - __m256d q_acc_9_5 = q_acc_5_9; - __m256d q_acc_9_6 = q_acc_6_9; - __m256d q_acc_9_7 = q_acc_7_9; - __m256d q_acc_9_8 = q_acc_8_9; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -1372,69 +670,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -1443,281 +696,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4770*tmp_q_4; - const double tmp_q_6 = Dummy_4773*tmp_q_4; - const double tmp_q_7 = Dummy_4776*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4771*tmp_q_4; - const double tmp_q_21 = Dummy_4774*tmp_q_4; - const double tmp_q_22 = Dummy_4777*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4772*tmp_q_4; - const double tmp_q_25 = Dummy_4775*tmp_q_4; - const double tmp_q_26 = Dummy_4778*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4779*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4770*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4771*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4772*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4773*tmp_q_36; - const double tmp_q_38 = Dummy_4774*tmp_q_36; - const double tmp_q_39 = Dummy_4775*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4776*tmp_q_40; - const double tmp_q_42 = Dummy_4777*tmp_q_40; - const double tmp_q_43 = Dummy_4778*tmp_q_40; - const double tmp_q_44 = Dummy_4773*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4776*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4774*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4777*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4775*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4778*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4770*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4776*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4771*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4777*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4772*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4778*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4770*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4773*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4771*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4774*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4772*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4775*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4776*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4777*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4778*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4773*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4774*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4775*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4770*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4771*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4772*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4776*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4777*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4778*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4773*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4774*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4775*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4770*Dummy_4770)*tmp_q_103 + (Dummy_4771*Dummy_4771)*tmp_q_103 + (Dummy_4772*Dummy_4772)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4773*Dummy_4773)*tmp_q_107 + (Dummy_4774*Dummy_4774)*tmp_q_107 + (Dummy_4775*Dummy_4775)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4776*Dummy_4776)*tmp_q_108 + (Dummy_4777*Dummy_4777)*tmp_q_108 + (Dummy_4778*Dummy_4778)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4771*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4772*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4770*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4753*tmp_q_4; + const double tmp_q_6 = Dummy_4756*tmp_q_4; + const double tmp_q_7 = Dummy_4759*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4754*tmp_q_4; + const double tmp_q_20 = Dummy_4757*tmp_q_4; + const double tmp_q_21 = Dummy_4760*tmp_q_4; + const double tmp_q_22 = Dummy_4755*tmp_q_4; + const double tmp_q_23 = Dummy_4758*tmp_q_4; + const double tmp_q_24 = Dummy_4761*tmp_q_4; + const double tmp_q_25 = Dummy_4762*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4756*tmp_q_0; + const double tmp_q_31 = Dummy_4759*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4757*tmp_q_0; + const double tmp_q_35 = Dummy_4760*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4758*tmp_q_0; + const double tmp_q_39 = Dummy_4761*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4753*tmp_q_0; + const double tmp_q_43 = Dummy_4759*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4754*tmp_q_0; + const double tmp_q_47 = Dummy_4760*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4755*tmp_q_0; + const double tmp_q_51 = Dummy_4761*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4753*tmp_q_2; + const double tmp_q_55 = Dummy_4756*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4754*tmp_q_2; + const double tmp_q_59 = Dummy_4757*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4755*tmp_q_2; + const double tmp_q_63 = Dummy_4758*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4753*Dummy_4753)*tmp_q_27 + (Dummy_4754*Dummy_4754)*tmp_q_27 + (Dummy_4755*Dummy_4755)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4756*Dummy_4756)*tmp_q_28 + (Dummy_4757*Dummy_4757)*tmp_q_28 + (Dummy_4758*Dummy_4758)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4759*Dummy_4759)*tmp_q_29 + (Dummy_4760*Dummy_4760)*tmp_q_29 + (Dummy_4761*Dummy_4761)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4759*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4759*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4760*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4760*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4761*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4761*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4756*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4756*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4757*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4757*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4758*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4758*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4753*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4753*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4754*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4754*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4755*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4755*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -1746,69 +810,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_4_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_5_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_6_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_7_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_8_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_8_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_9_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { @@ -1817,281 +836,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4801,Dummy_4801,Dummy_4801,Dummy_4801)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4804,Dummy_4804,Dummy_4804,Dummy_4804)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4807,Dummy_4807,Dummy_4807,Dummy_4807)); - const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); - const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_12 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_12,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_14 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_15 = _mm256_mul_pd(tmp_q_14,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_16 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); - const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4802,Dummy_4802,Dummy_4802,Dummy_4802)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4805,Dummy_4805,Dummy_4805,Dummy_4805)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4808,Dummy_4808,Dummy_4808,Dummy_4808)); - const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4803,Dummy_4803,Dummy_4803,Dummy_4803)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4806,Dummy_4806,Dummy_4806,Dummy_4806)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4809,Dummy_4809,Dummy_4809,Dummy_4809)); - const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4810*_data_q_w[q]; - const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4801,Dummy_4801,Dummy_4801,Dummy_4801)); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4802,Dummy_4802,Dummy_4802,Dummy_4802)); - const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4803,Dummy_4803,Dummy_4803,Dummy_4803)); - const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4804,Dummy_4804,Dummy_4804,Dummy_4804)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4805,Dummy_4805,Dummy_4805,Dummy_4805)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4806,Dummy_4806,Dummy_4806,Dummy_4806)); - const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4807,Dummy_4807,Dummy_4807,Dummy_4807)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4808,Dummy_4808,Dummy_4808,Dummy_4808)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4809,Dummy_4809,Dummy_4809,Dummy_4809)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4804,Dummy_4804,Dummy_4804,Dummy_4804)); - const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4807,Dummy_4807,Dummy_4807,Dummy_4807)); - const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); - const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4805,Dummy_4805,Dummy_4805,Dummy_4805)); - const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4808,Dummy_4808,Dummy_4808,Dummy_4808)); - const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); - const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4806,Dummy_4806,Dummy_4806,Dummy_4806)); - const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4809,Dummy_4809,Dummy_4809,Dummy_4809)); - const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); - const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4801,Dummy_4801,Dummy_4801,Dummy_4801)); - const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4807,Dummy_4807,Dummy_4807,Dummy_4807)); - const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); - const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4802,Dummy_4802,Dummy_4802,Dummy_4802)); - const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4808,Dummy_4808,Dummy_4808,Dummy_4808)); - const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); - const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4803,Dummy_4803,Dummy_4803,Dummy_4803)); - const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4809,Dummy_4809,Dummy_4809,Dummy_4809)); - const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); - const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4801,Dummy_4801,Dummy_4801,Dummy_4801)); - const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4804,Dummy_4804,Dummy_4804,Dummy_4804)); - const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); - const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4802,Dummy_4802,Dummy_4802,Dummy_4802)); - const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4805,Dummy_4805,Dummy_4805,Dummy_4805)); - const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); - const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4803,Dummy_4803,Dummy_4803,Dummy_4803)); - const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4806,Dummy_4806,Dummy_4806,Dummy_4806)); - const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); - const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); - const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4807,Dummy_4807,Dummy_4807,Dummy_4807))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4808,Dummy_4808,Dummy_4808,Dummy_4808))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4809,Dummy_4809,Dummy_4809,Dummy_4809))); - const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); - const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4804,Dummy_4804,Dummy_4804,Dummy_4804))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4805,Dummy_4805,Dummy_4805,Dummy_4805))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4806,Dummy_4806,Dummy_4806,Dummy_4806))); - const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4801,Dummy_4801,Dummy_4801,Dummy_4801))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4802,Dummy_4802,Dummy_4802,Dummy_4802))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4803,Dummy_4803,Dummy_4803,Dummy_4803))); - const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); - const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); - const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); - const __m256d tmp_q_105 = _mm256_mul_pd(tmp_q_19,tmp_q_32); - const __m256d tmp_q_106 = _mm256_mul_pd(tmp_q_19,tmp_q_34); - const __m256d tmp_q_107 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); - const __m256d tmp_q_108 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); - const __m256d tmp_q_109 = _mm256_add_pd(tmp_q_44,tmp_q_46); - const __m256d tmp_q_110 = _mm256_add_pd(tmp_q_49,tmp_q_51); - const __m256d tmp_q_111 = _mm256_add_pd(tmp_q_54,tmp_q_56); - const __m256d tmp_q_112 = _mm256_add_pd(tmp_q_59,tmp_q_61); - const __m256d tmp_q_113 = _mm256_add_pd(tmp_q_64,tmp_q_66); - const __m256d tmp_q_114 = _mm256_add_pd(tmp_q_69,tmp_q_71); - const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); - const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); - const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4807,Dummy_4807,Dummy_4807,Dummy_4807))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4808,Dummy_4808,Dummy_4808,Dummy_4808))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4809,Dummy_4809,Dummy_4809,Dummy_4809))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4804,Dummy_4804,Dummy_4804,Dummy_4804))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4805,Dummy_4805,Dummy_4805,Dummy_4805))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4806,Dummy_4806,Dummy_4806,Dummy_4806))); - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_41),_mm256_mul_pd(tmp_q_33,tmp_q_42)),_mm256_mul_pd(tmp_q_35,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_53),_mm256_mul_pd(tmp_q_27,tmp_q_58)),_mm256_mul_pd(tmp_q_48,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_68),_mm256_mul_pd(tmp_q_27,tmp_q_73)),_mm256_mul_pd(tmp_q_63,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_83),_mm256_mul_pd(tmp_q_27,tmp_q_88)),_mm256_mul_pd(tmp_q_78,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4801,Dummy_4801,Dummy_4801,Dummy_4801),_mm256_set_pd(Dummy_4801,Dummy_4801,Dummy_4801,Dummy_4801))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4802,Dummy_4802,Dummy_4802,Dummy_4802),_mm256_set_pd(Dummy_4802,Dummy_4802,Dummy_4802,Dummy_4802)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4803,Dummy_4803,Dummy_4803,Dummy_4803),_mm256_set_pd(Dummy_4803,Dummy_4803,Dummy_4803,Dummy_4803)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_63),_mm256_mul_pd(tmp_q_32,tmp_q_68)),_mm256_mul_pd(tmp_q_34,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_78),_mm256_mul_pd(tmp_q_32,tmp_q_83)),_mm256_mul_pd(tmp_q_34,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4804,Dummy_4804,Dummy_4804,Dummy_4804),_mm256_set_pd(Dummy_4804,Dummy_4804,Dummy_4804,Dummy_4804))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4805,Dummy_4805,Dummy_4805,Dummy_4805),_mm256_set_pd(Dummy_4805,Dummy_4805,Dummy_4805,Dummy_4805)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4806,Dummy_4806,Dummy_4806,Dummy_4806),_mm256_set_pd(Dummy_4806,Dummy_4806,Dummy_4806,Dummy_4806)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_78),_mm256_mul_pd(tmp_q_38,tmp_q_83)),_mm256_mul_pd(tmp_q_39,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4807,Dummy_4807,Dummy_4807,Dummy_4807),_mm256_set_pd(Dummy_4807,Dummy_4807,Dummy_4807,Dummy_4807))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4808,Dummy_4808,Dummy_4808,Dummy_4808),_mm256_set_pd(Dummy_4808,Dummy_4808,Dummy_4808,Dummy_4808)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4809,Dummy_4809,Dummy_4809,Dummy_4809),_mm256_set_pd(Dummy_4809,Dummy_4809,Dummy_4809,Dummy_4809)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_90),_mm256_mul_pd(tmp_q_42,tmp_q_91)),_mm256_mul_pd(tmp_q_43,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_95),_mm256_mul_pd(tmp_q_42,tmp_q_96)),_mm256_mul_pd(tmp_q_43,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_42),_mm256_mul_pd(tmp_q_101,tmp_q_43)),_mm256_mul_pd(tmp_q_41,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_48),_mm256_mul_pd(tmp_q_110,tmp_q_53)),_mm256_mul_pd(tmp_q_111,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_63),_mm256_mul_pd(tmp_q_110,tmp_q_68)),_mm256_mul_pd(tmp_q_111,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_78),_mm256_mul_pd(tmp_q_110,tmp_q_83)),_mm256_mul_pd(tmp_q_111,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_90),_mm256_mul_pd(tmp_q_110,tmp_q_91)),_mm256_mul_pd(tmp_q_111,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_95),_mm256_mul_pd(tmp_q_110,tmp_q_96)),_mm256_mul_pd(tmp_q_111,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_110),_mm256_mul_pd(tmp_q_101,tmp_q_111)),_mm256_mul_pd(tmp_q_109,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_63),_mm256_mul_pd(tmp_q_113,tmp_q_68)),_mm256_mul_pd(tmp_q_114,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_78),_mm256_mul_pd(tmp_q_113,tmp_q_83)),_mm256_mul_pd(tmp_q_114,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_90),_mm256_mul_pd(tmp_q_113,tmp_q_91)),_mm256_mul_pd(tmp_q_114,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_95),_mm256_mul_pd(tmp_q_113,tmp_q_96)),_mm256_mul_pd(tmp_q_114,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_113),_mm256_mul_pd(tmp_q_101,tmp_q_114)),_mm256_mul_pd(tmp_q_112,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_78),_mm256_mul_pd(tmp_q_116,tmp_q_83)),_mm256_mul_pd(tmp_q_117,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_90),_mm256_mul_pd(tmp_q_116,tmp_q_91)),_mm256_mul_pd(tmp_q_117,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_95),_mm256_mul_pd(tmp_q_116,tmp_q_96)),_mm256_mul_pd(tmp_q_117,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_116),_mm256_mul_pd(tmp_q_101,tmp_q_117)),_mm256_mul_pd(tmp_q_115,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_90),_mm256_mul_pd(tmp_q_119,tmp_q_91)),_mm256_mul_pd(tmp_q_120,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_95),_mm256_mul_pd(tmp_q_119,tmp_q_96)),_mm256_mul_pd(tmp_q_120,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4801,Dummy_4801,Dummy_4801,Dummy_4801)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4802,Dummy_4802,Dummy_4802,Dummy_4802))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4803,Dummy_4803,Dummy_4803,Dummy_4803))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4784,Dummy_4784,Dummy_4784,Dummy_4784)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4787,Dummy_4787,Dummy_4787,Dummy_4787)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4790,Dummy_4790,Dummy_4790,Dummy_4790)); + const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_11 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_11,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_13 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_14 = _mm256_mul_pd(tmp_q_13,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_15 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_16 = _mm256_mul_pd(tmp_q_15,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_17 = _mm256_add_pd(tmp_q_10,tmp_q_9); + const __m256d tmp_q_18 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_12)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_14))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_16))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_13,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_15,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_12),tmp_q_14),tmp_q_16),tmp_q_17),tmp_q_8))),_mm256_mul_pd(k_dof_4,tmp_q_8)),_mm256_mul_pd(k_dof_5,tmp_q_9)),_mm256_mul_pd(k_dof_6,tmp_q_10)); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4785,Dummy_4785,Dummy_4785,Dummy_4785)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4788,Dummy_4788,Dummy_4788,Dummy_4788)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4791,Dummy_4791,Dummy_4791,Dummy_4791)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4786,Dummy_4786,Dummy_4786,Dummy_4786)); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4789,Dummy_4789,Dummy_4789,Dummy_4789)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4792,Dummy_4792,Dummy_4792,Dummy_4792)); + const double tmp_q_25 = Dummy_4793*_data_q_w[q]; + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_18,_mm256_set_pd(16.0,16.0,16.0,16.0)); + const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); + const __m256d tmp_q_28 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); + const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4787,Dummy_4787,Dummy_4787,Dummy_4787)); + const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4790,Dummy_4790,Dummy_4790,Dummy_4790)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_18,tmp_q_30); + const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_18,tmp_q_31); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4788,Dummy_4788,Dummy_4788,Dummy_4788)); + const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4791,Dummy_4791,Dummy_4791,Dummy_4791)); + const __m256d tmp_q_36 = _mm256_mul_pd(tmp_q_18,tmp_q_34); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_18,tmp_q_35); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4789,Dummy_4789,Dummy_4789,Dummy_4789)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4792,Dummy_4792,Dummy_4792,Dummy_4792)); + const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_18,tmp_q_38); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_18,tmp_q_39); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4784,Dummy_4784,Dummy_4784,Dummy_4784)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4790,Dummy_4790,Dummy_4790,Dummy_4790)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_18,tmp_q_42); + const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_18,tmp_q_43); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4785,Dummy_4785,Dummy_4785,Dummy_4785)); + const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4791,Dummy_4791,Dummy_4791,Dummy_4791)); + const __m256d tmp_q_48 = _mm256_mul_pd(tmp_q_18,tmp_q_46); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_18,tmp_q_47); + const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4786,Dummy_4786,Dummy_4786,Dummy_4786)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4792,Dummy_4792,Dummy_4792,Dummy_4792)); + const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_18,tmp_q_50); + const __m256d tmp_q_53 = _mm256_mul_pd(tmp_q_18,tmp_q_51); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4784,Dummy_4784,Dummy_4784,Dummy_4784)); + const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4787,Dummy_4787,Dummy_4787,Dummy_4787)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_18,tmp_q_54); + const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_18,tmp_q_55); + const __m256d tmp_q_58 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4785,Dummy_4785,Dummy_4785,Dummy_4785)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4788,Dummy_4788,Dummy_4788,Dummy_4788)); + const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_18,tmp_q_58); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_18,tmp_q_59); + const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4786,Dummy_4786,Dummy_4786,Dummy_4786)); + const __m256d tmp_q_63 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4789,Dummy_4789,Dummy_4789,Dummy_4789)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_18,tmp_q_62); + const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_18,tmp_q_63); + const __m256d tmp_q_66 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_67 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); + const __m256d tmp_q_68 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); + const __m256d tmp_q_69 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_19,tmp_q_20),tmp_q_21),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_19),_mm256_mul_pd(tmp_q_18,tmp_q_20)),_mm256_mul_pd(tmp_q_18,tmp_q_21))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_22,tmp_q_23),tmp_q_24),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_18,tmp_q_23)),_mm256_mul_pd(tmp_q_18,tmp_q_24)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_5),_mm256_mul_pd(tmp_q_18,tmp_q_6)),_mm256_mul_pd(tmp_q_18,tmp_q_7)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4784,Dummy_4784,Dummy_4784,Dummy_4784),_mm256_set_pd(Dummy_4784,Dummy_4784,Dummy_4784,Dummy_4784))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4785,Dummy_4785,Dummy_4785,Dummy_4785),_mm256_set_pd(Dummy_4785,Dummy_4785,Dummy_4785,Dummy_4785)))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4786,Dummy_4786,Dummy_4786,Dummy_4786),_mm256_set_pd(Dummy_4786,Dummy_4786,Dummy_4786,Dummy_4786)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4787,Dummy_4787,Dummy_4787,Dummy_4787),_mm256_set_pd(Dummy_4787,Dummy_4787,Dummy_4787,Dummy_4787))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4788,Dummy_4788,Dummy_4788,Dummy_4788),_mm256_set_pd(Dummy_4788,Dummy_4788,Dummy_4788,Dummy_4788)))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4789,Dummy_4789,Dummy_4789,Dummy_4789),_mm256_set_pd(Dummy_4789,Dummy_4789,Dummy_4789,Dummy_4789)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4790,Dummy_4790,Dummy_4790,Dummy_4790),_mm256_set_pd(Dummy_4790,Dummy_4790,Dummy_4790,Dummy_4790))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4791,Dummy_4791,Dummy_4791,Dummy_4791),_mm256_set_pd(Dummy_4791,Dummy_4791,Dummy_4791,Dummy_4791)))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4792,Dummy_4792,Dummy_4792,Dummy_4792),_mm256_set_pd(Dummy_4792,Dummy_4792,Dummy_4792,Dummy_4792)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_30,tmp_q_31),_mm256_add_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(_mm256_add_pd(tmp_q_34,tmp_q_35),_mm256_add_pd(tmp_q_36,tmp_q_37))),_mm256_mul_pd(_mm256_add_pd(tmp_q_38,tmp_q_39),_mm256_add_pd(tmp_q_40,tmp_q_41))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_42,tmp_q_43),_mm256_add_pd(tmp_q_44,tmp_q_45)),_mm256_mul_pd(_mm256_add_pd(tmp_q_46,tmp_q_47),_mm256_add_pd(tmp_q_48,tmp_q_49))),_mm256_mul_pd(_mm256_add_pd(tmp_q_50,tmp_q_51),_mm256_add_pd(tmp_q_52,tmp_q_53))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_54,tmp_q_55),_mm256_add_pd(tmp_q_56,tmp_q_57)),_mm256_mul_pd(_mm256_add_pd(tmp_q_58,tmp_q_59),_mm256_add_pd(tmp_q_60,tmp_q_61))),_mm256_mul_pd(_mm256_add_pd(tmp_q_62,tmp_q_63),_mm256_add_pd(tmp_q_64,tmp_q_65))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_42,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4790,Dummy_4790,Dummy_4790,Dummy_4790))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4790,Dummy_4790,Dummy_4790,Dummy_4790)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_34,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4791,Dummy_4791,Dummy_4791,Dummy_4791))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_36,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_48,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4791,Dummy_4791,Dummy_4791,Dummy_4791))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_38,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4792,Dummy_4792,Dummy_4792,Dummy_4792))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_40,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4792,Dummy_4792,Dummy_4792,Dummy_4792))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4787,Dummy_4787,Dummy_4787,Dummy_4787))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_33,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4787,Dummy_4787,Dummy_4787,Dummy_4787)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_58,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4788,Dummy_4788,Dummy_4788,Dummy_4788))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4788,Dummy_4788,Dummy_4788,Dummy_4788))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4789,Dummy_4789,Dummy_4789,Dummy_4789))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4789,Dummy_4789,Dummy_4789,Dummy_4789))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4784,Dummy_4784,Dummy_4784,Dummy_4784))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4784,Dummy_4784,Dummy_4784,Dummy_4784)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4785,Dummy_4785,Dummy_4785,Dummy_4785))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4785,Dummy_4785,Dummy_4785,Dummy_4785))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_63,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4786,Dummy_4786,Dummy_4786,Dummy_4786))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_53,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4786,Dummy_4786,Dummy_4786,Dummy_4786))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); - q_acc_0_4 = _mm256_add_pd(q_acc_0_4,res_tmp_0_4); - q_acc_0_5 = _mm256_add_pd(q_acc_0_5,res_tmp_0_5); - q_acc_0_6 = _mm256_add_pd(q_acc_0_6,res_tmp_0_6); - q_acc_0_7 = _mm256_add_pd(q_acc_0_7,res_tmp_0_7); - q_acc_0_8 = _mm256_add_pd(q_acc_0_8,res_tmp_0_8); - q_acc_0_9 = _mm256_add_pd(q_acc_0_9,res_tmp_0_9); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); - q_acc_1_4 = _mm256_add_pd(q_acc_1_4,res_tmp_1_4); - q_acc_1_5 = _mm256_add_pd(q_acc_1_5,res_tmp_1_5); - q_acc_1_6 = _mm256_add_pd(q_acc_1_6,res_tmp_1_6); - q_acc_1_7 = _mm256_add_pd(q_acc_1_7,res_tmp_1_7); - q_acc_1_8 = _mm256_add_pd(q_acc_1_8,res_tmp_1_8); - q_acc_1_9 = _mm256_add_pd(q_acc_1_9,res_tmp_1_9); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); - q_acc_2_4 = _mm256_add_pd(q_acc_2_4,res_tmp_2_4); - q_acc_2_5 = _mm256_add_pd(q_acc_2_5,res_tmp_2_5); - q_acc_2_6 = _mm256_add_pd(q_acc_2_6,res_tmp_2_6); - q_acc_2_7 = _mm256_add_pd(q_acc_2_7,res_tmp_2_7); - q_acc_2_8 = _mm256_add_pd(q_acc_2_8,res_tmp_2_8); - q_acc_2_9 = _mm256_add_pd(q_acc_2_9,res_tmp_2_9); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); - q_acc_3_4 = _mm256_add_pd(q_acc_3_4,res_tmp_3_4); - q_acc_3_5 = _mm256_add_pd(q_acc_3_5,res_tmp_3_5); - q_acc_3_6 = _mm256_add_pd(q_acc_3_6,res_tmp_3_6); - q_acc_3_7 = _mm256_add_pd(q_acc_3_7,res_tmp_3_7); - q_acc_3_8 = _mm256_add_pd(q_acc_3_8,res_tmp_3_8); - q_acc_3_9 = _mm256_add_pd(q_acc_3_9,res_tmp_3_9); q_acc_4_4 = _mm256_add_pd(q_acc_4_4,res_tmp_4_4); - q_acc_4_5 = _mm256_add_pd(q_acc_4_5,res_tmp_4_5); - q_acc_4_6 = _mm256_add_pd(q_acc_4_6,res_tmp_4_6); - q_acc_4_7 = _mm256_add_pd(q_acc_4_7,res_tmp_4_7); - q_acc_4_8 = _mm256_add_pd(q_acc_4_8,res_tmp_4_8); - q_acc_4_9 = _mm256_add_pd(q_acc_4_9,res_tmp_4_9); q_acc_5_5 = _mm256_add_pd(q_acc_5_5,res_tmp_5_5); - q_acc_5_6 = _mm256_add_pd(q_acc_5_6,res_tmp_5_6); - q_acc_5_7 = _mm256_add_pd(q_acc_5_7,res_tmp_5_7); - q_acc_5_8 = _mm256_add_pd(q_acc_5_8,res_tmp_5_8); - q_acc_5_9 = _mm256_add_pd(q_acc_5_9,res_tmp_5_9); q_acc_6_6 = _mm256_add_pd(q_acc_6_6,res_tmp_6_6); - q_acc_6_7 = _mm256_add_pd(q_acc_6_7,res_tmp_6_7); - q_acc_6_8 = _mm256_add_pd(q_acc_6_8,res_tmp_6_8); - q_acc_6_9 = _mm256_add_pd(q_acc_6_9,res_tmp_6_9); q_acc_7_7 = _mm256_add_pd(q_acc_7_7,res_tmp_7_7); - q_acc_7_8 = _mm256_add_pd(q_acc_7_8,res_tmp_7_8); - q_acc_7_9 = _mm256_add_pd(q_acc_7_9,res_tmp_7_9); q_acc_8_8 = _mm256_add_pd(q_acc_8_8,res_tmp_8_8); - q_acc_8_9 = _mm256_add_pd(q_acc_8_9,res_tmp_8_9); q_acc_9_9 = _mm256_add_pd(q_acc_9_9,res_tmp_9_9); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; - __m256d q_acc_4_0 = q_acc_0_4; - __m256d q_acc_4_1 = q_acc_1_4; - __m256d q_acc_4_2 = q_acc_2_4; - __m256d q_acc_4_3 = q_acc_3_4; - __m256d q_acc_5_0 = q_acc_0_5; - __m256d q_acc_5_1 = q_acc_1_5; - __m256d q_acc_5_2 = q_acc_2_5; - __m256d q_acc_5_3 = q_acc_3_5; - __m256d q_acc_5_4 = q_acc_4_5; - __m256d q_acc_6_0 = q_acc_0_6; - __m256d q_acc_6_1 = q_acc_1_6; - __m256d q_acc_6_2 = q_acc_2_6; - __m256d q_acc_6_3 = q_acc_3_6; - __m256d q_acc_6_4 = q_acc_4_6; - __m256d q_acc_6_5 = q_acc_5_6; - __m256d q_acc_7_0 = q_acc_0_7; - __m256d q_acc_7_1 = q_acc_1_7; - __m256d q_acc_7_2 = q_acc_2_7; - __m256d q_acc_7_3 = q_acc_3_7; - __m256d q_acc_7_4 = q_acc_4_7; - __m256d q_acc_7_5 = q_acc_5_7; - __m256d q_acc_7_6 = q_acc_6_7; - __m256d q_acc_8_0 = q_acc_0_8; - __m256d q_acc_8_1 = q_acc_1_8; - __m256d q_acc_8_2 = q_acc_2_8; - __m256d q_acc_8_3 = q_acc_3_8; - __m256d q_acc_8_4 = q_acc_4_8; - __m256d q_acc_8_5 = q_acc_5_8; - __m256d q_acc_8_6 = q_acc_6_8; - __m256d q_acc_8_7 = q_acc_7_8; - __m256d q_acc_9_0 = q_acc_0_9; - __m256d q_acc_9_1 = q_acc_1_9; - __m256d q_acc_9_2 = q_acc_2_9; - __m256d q_acc_9_3 = q_acc_3_9; - __m256d q_acc_9_4 = q_acc_4_9; - __m256d q_acc_9_5 = q_acc_5_9; - __m256d q_acc_9_6 = q_acc_6_9; - __m256d q_acc_9_7 = q_acc_7_9; - __m256d q_acc_9_8 = q_acc_8_9; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -2116,69 +946,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -2187,281 +972,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4801*tmp_q_4; - const double tmp_q_6 = Dummy_4804*tmp_q_4; - const double tmp_q_7 = Dummy_4807*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4802*tmp_q_4; - const double tmp_q_21 = Dummy_4805*tmp_q_4; - const double tmp_q_22 = Dummy_4808*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4803*tmp_q_4; - const double tmp_q_25 = Dummy_4806*tmp_q_4; - const double tmp_q_26 = Dummy_4809*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4810*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4801*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4802*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4803*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4804*tmp_q_36; - const double tmp_q_38 = Dummy_4805*tmp_q_36; - const double tmp_q_39 = Dummy_4806*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4807*tmp_q_40; - const double tmp_q_42 = Dummy_4808*tmp_q_40; - const double tmp_q_43 = Dummy_4809*tmp_q_40; - const double tmp_q_44 = Dummy_4804*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4807*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4805*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4808*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4806*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4809*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4801*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4807*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4802*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4808*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4803*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4809*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4801*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4804*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4802*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4805*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4803*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4806*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4807*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4808*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4809*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4804*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4805*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4806*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4801*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4802*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4803*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4807*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4808*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4809*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4804*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4805*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4806*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4801*Dummy_4801)*tmp_q_103 + (Dummy_4802*Dummy_4802)*tmp_q_103 + (Dummy_4803*Dummy_4803)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4804*Dummy_4804)*tmp_q_107 + (Dummy_4805*Dummy_4805)*tmp_q_107 + (Dummy_4806*Dummy_4806)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4807*Dummy_4807)*tmp_q_108 + (Dummy_4808*Dummy_4808)*tmp_q_108 + (Dummy_4809*Dummy_4809)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4802*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4803*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4801*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4784*tmp_q_4; + const double tmp_q_6 = Dummy_4787*tmp_q_4; + const double tmp_q_7 = Dummy_4790*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4785*tmp_q_4; + const double tmp_q_20 = Dummy_4788*tmp_q_4; + const double tmp_q_21 = Dummy_4791*tmp_q_4; + const double tmp_q_22 = Dummy_4786*tmp_q_4; + const double tmp_q_23 = Dummy_4789*tmp_q_4; + const double tmp_q_24 = Dummy_4792*tmp_q_4; + const double tmp_q_25 = Dummy_4793*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4787*tmp_q_0; + const double tmp_q_31 = Dummy_4790*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4788*tmp_q_0; + const double tmp_q_35 = Dummy_4791*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4789*tmp_q_0; + const double tmp_q_39 = Dummy_4792*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4784*tmp_q_0; + const double tmp_q_43 = Dummy_4790*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4785*tmp_q_0; + const double tmp_q_47 = Dummy_4791*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4786*tmp_q_0; + const double tmp_q_51 = Dummy_4792*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4784*tmp_q_2; + const double tmp_q_55 = Dummy_4787*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4785*tmp_q_2; + const double tmp_q_59 = Dummy_4788*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4786*tmp_q_2; + const double tmp_q_63 = Dummy_4789*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4784*Dummy_4784)*tmp_q_27 + (Dummy_4785*Dummy_4785)*tmp_q_27 + (Dummy_4786*Dummy_4786)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4787*Dummy_4787)*tmp_q_28 + (Dummy_4788*Dummy_4788)*tmp_q_28 + (Dummy_4789*Dummy_4789)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4790*Dummy_4790)*tmp_q_29 + (Dummy_4791*Dummy_4791)*tmp_q_29 + (Dummy_4792*Dummy_4792)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4790*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4790*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4791*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4791*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4792*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4792*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4787*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4787*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4788*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4788*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4789*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4789*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4784*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4784*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4785*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4785*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4786*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4786*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -2490,69 +1086,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_4_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_5_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_6_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_7_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_8_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_8_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_9_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { @@ -2561,281 +1112,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4832,Dummy_4832,Dummy_4832,Dummy_4832)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4835,Dummy_4835,Dummy_4835,Dummy_4835)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4838,Dummy_4838,Dummy_4838,Dummy_4838)); - const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); - const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_12 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_12,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_14 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_15 = _mm256_mul_pd(tmp_q_14,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_16 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); - const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4833,Dummy_4833,Dummy_4833,Dummy_4833)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4836,Dummy_4836,Dummy_4836,Dummy_4836)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4839,Dummy_4839,Dummy_4839,Dummy_4839)); - const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4834,Dummy_4834,Dummy_4834,Dummy_4834)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4837,Dummy_4837,Dummy_4837,Dummy_4837)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4840,Dummy_4840,Dummy_4840,Dummy_4840)); - const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4841*_data_q_w[q]; - const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4832,Dummy_4832,Dummy_4832,Dummy_4832)); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4833,Dummy_4833,Dummy_4833,Dummy_4833)); - const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4834,Dummy_4834,Dummy_4834,Dummy_4834)); - const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4835,Dummy_4835,Dummy_4835,Dummy_4835)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4836,Dummy_4836,Dummy_4836,Dummy_4836)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4837,Dummy_4837,Dummy_4837,Dummy_4837)); - const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4838,Dummy_4838,Dummy_4838,Dummy_4838)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4839,Dummy_4839,Dummy_4839,Dummy_4839)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4840,Dummy_4840,Dummy_4840,Dummy_4840)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4835,Dummy_4835,Dummy_4835,Dummy_4835)); - const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4838,Dummy_4838,Dummy_4838,Dummy_4838)); - const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); - const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4836,Dummy_4836,Dummy_4836,Dummy_4836)); - const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4839,Dummy_4839,Dummy_4839,Dummy_4839)); - const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); - const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4837,Dummy_4837,Dummy_4837,Dummy_4837)); - const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4840,Dummy_4840,Dummy_4840,Dummy_4840)); - const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); - const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4832,Dummy_4832,Dummy_4832,Dummy_4832)); - const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4838,Dummy_4838,Dummy_4838,Dummy_4838)); - const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); - const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4833,Dummy_4833,Dummy_4833,Dummy_4833)); - const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4839,Dummy_4839,Dummy_4839,Dummy_4839)); - const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); - const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4834,Dummy_4834,Dummy_4834,Dummy_4834)); - const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4840,Dummy_4840,Dummy_4840,Dummy_4840)); - const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); - const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4832,Dummy_4832,Dummy_4832,Dummy_4832)); - const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4835,Dummy_4835,Dummy_4835,Dummy_4835)); - const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); - const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4833,Dummy_4833,Dummy_4833,Dummy_4833)); - const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4836,Dummy_4836,Dummy_4836,Dummy_4836)); - const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); - const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4834,Dummy_4834,Dummy_4834,Dummy_4834)); - const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4837,Dummy_4837,Dummy_4837,Dummy_4837)); - const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); - const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); - const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4838,Dummy_4838,Dummy_4838,Dummy_4838))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4839,Dummy_4839,Dummy_4839,Dummy_4839))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4840,Dummy_4840,Dummy_4840,Dummy_4840))); - const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); - const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4835,Dummy_4835,Dummy_4835,Dummy_4835))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4836,Dummy_4836,Dummy_4836,Dummy_4836))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4837,Dummy_4837,Dummy_4837,Dummy_4837))); - const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4832,Dummy_4832,Dummy_4832,Dummy_4832))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4833,Dummy_4833,Dummy_4833,Dummy_4833))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4834,Dummy_4834,Dummy_4834,Dummy_4834))); - const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); - const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); - const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); - const __m256d tmp_q_105 = _mm256_mul_pd(tmp_q_19,tmp_q_32); - const __m256d tmp_q_106 = _mm256_mul_pd(tmp_q_19,tmp_q_34); - const __m256d tmp_q_107 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); - const __m256d tmp_q_108 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); - const __m256d tmp_q_109 = _mm256_add_pd(tmp_q_44,tmp_q_46); - const __m256d tmp_q_110 = _mm256_add_pd(tmp_q_49,tmp_q_51); - const __m256d tmp_q_111 = _mm256_add_pd(tmp_q_54,tmp_q_56); - const __m256d tmp_q_112 = _mm256_add_pd(tmp_q_59,tmp_q_61); - const __m256d tmp_q_113 = _mm256_add_pd(tmp_q_64,tmp_q_66); - const __m256d tmp_q_114 = _mm256_add_pd(tmp_q_69,tmp_q_71); - const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); - const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); - const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4838,Dummy_4838,Dummy_4838,Dummy_4838))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4839,Dummy_4839,Dummy_4839,Dummy_4839))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4840,Dummy_4840,Dummy_4840,Dummy_4840))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4835,Dummy_4835,Dummy_4835,Dummy_4835))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4836,Dummy_4836,Dummy_4836,Dummy_4836))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4837,Dummy_4837,Dummy_4837,Dummy_4837))); - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_41),_mm256_mul_pd(tmp_q_33,tmp_q_42)),_mm256_mul_pd(tmp_q_35,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_53),_mm256_mul_pd(tmp_q_27,tmp_q_58)),_mm256_mul_pd(tmp_q_48,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_68),_mm256_mul_pd(tmp_q_27,tmp_q_73)),_mm256_mul_pd(tmp_q_63,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_83),_mm256_mul_pd(tmp_q_27,tmp_q_88)),_mm256_mul_pd(tmp_q_78,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4832,Dummy_4832,Dummy_4832,Dummy_4832),_mm256_set_pd(Dummy_4832,Dummy_4832,Dummy_4832,Dummy_4832))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4833,Dummy_4833,Dummy_4833,Dummy_4833),_mm256_set_pd(Dummy_4833,Dummy_4833,Dummy_4833,Dummy_4833)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4834,Dummy_4834,Dummy_4834,Dummy_4834),_mm256_set_pd(Dummy_4834,Dummy_4834,Dummy_4834,Dummy_4834)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_63),_mm256_mul_pd(tmp_q_32,tmp_q_68)),_mm256_mul_pd(tmp_q_34,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_78),_mm256_mul_pd(tmp_q_32,tmp_q_83)),_mm256_mul_pd(tmp_q_34,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4835,Dummy_4835,Dummy_4835,Dummy_4835),_mm256_set_pd(Dummy_4835,Dummy_4835,Dummy_4835,Dummy_4835))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4836,Dummy_4836,Dummy_4836,Dummy_4836),_mm256_set_pd(Dummy_4836,Dummy_4836,Dummy_4836,Dummy_4836)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4837,Dummy_4837,Dummy_4837,Dummy_4837),_mm256_set_pd(Dummy_4837,Dummy_4837,Dummy_4837,Dummy_4837)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_78),_mm256_mul_pd(tmp_q_38,tmp_q_83)),_mm256_mul_pd(tmp_q_39,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4838,Dummy_4838,Dummy_4838,Dummy_4838),_mm256_set_pd(Dummy_4838,Dummy_4838,Dummy_4838,Dummy_4838))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4839,Dummy_4839,Dummy_4839,Dummy_4839),_mm256_set_pd(Dummy_4839,Dummy_4839,Dummy_4839,Dummy_4839)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4840,Dummy_4840,Dummy_4840,Dummy_4840),_mm256_set_pd(Dummy_4840,Dummy_4840,Dummy_4840,Dummy_4840)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_90),_mm256_mul_pd(tmp_q_42,tmp_q_91)),_mm256_mul_pd(tmp_q_43,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_95),_mm256_mul_pd(tmp_q_42,tmp_q_96)),_mm256_mul_pd(tmp_q_43,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_42),_mm256_mul_pd(tmp_q_101,tmp_q_43)),_mm256_mul_pd(tmp_q_41,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_48),_mm256_mul_pd(tmp_q_110,tmp_q_53)),_mm256_mul_pd(tmp_q_111,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_63),_mm256_mul_pd(tmp_q_110,tmp_q_68)),_mm256_mul_pd(tmp_q_111,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_78),_mm256_mul_pd(tmp_q_110,tmp_q_83)),_mm256_mul_pd(tmp_q_111,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_90),_mm256_mul_pd(tmp_q_110,tmp_q_91)),_mm256_mul_pd(tmp_q_111,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_95),_mm256_mul_pd(tmp_q_110,tmp_q_96)),_mm256_mul_pd(tmp_q_111,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_110),_mm256_mul_pd(tmp_q_101,tmp_q_111)),_mm256_mul_pd(tmp_q_109,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_63),_mm256_mul_pd(tmp_q_113,tmp_q_68)),_mm256_mul_pd(tmp_q_114,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_78),_mm256_mul_pd(tmp_q_113,tmp_q_83)),_mm256_mul_pd(tmp_q_114,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_90),_mm256_mul_pd(tmp_q_113,tmp_q_91)),_mm256_mul_pd(tmp_q_114,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_95),_mm256_mul_pd(tmp_q_113,tmp_q_96)),_mm256_mul_pd(tmp_q_114,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_113),_mm256_mul_pd(tmp_q_101,tmp_q_114)),_mm256_mul_pd(tmp_q_112,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_78),_mm256_mul_pd(tmp_q_116,tmp_q_83)),_mm256_mul_pd(tmp_q_117,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_90),_mm256_mul_pd(tmp_q_116,tmp_q_91)),_mm256_mul_pd(tmp_q_117,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_95),_mm256_mul_pd(tmp_q_116,tmp_q_96)),_mm256_mul_pd(tmp_q_117,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_116),_mm256_mul_pd(tmp_q_101,tmp_q_117)),_mm256_mul_pd(tmp_q_115,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_90),_mm256_mul_pd(tmp_q_119,tmp_q_91)),_mm256_mul_pd(tmp_q_120,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_95),_mm256_mul_pd(tmp_q_119,tmp_q_96)),_mm256_mul_pd(tmp_q_120,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4832,Dummy_4832,Dummy_4832,Dummy_4832)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4833,Dummy_4833,Dummy_4833,Dummy_4833))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4834,Dummy_4834,Dummy_4834,Dummy_4834))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4815,Dummy_4815,Dummy_4815,Dummy_4815)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4818,Dummy_4818,Dummy_4818,Dummy_4818)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4821,Dummy_4821,Dummy_4821,Dummy_4821)); + const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_11 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_11,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_13 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_14 = _mm256_mul_pd(tmp_q_13,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_15 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_16 = _mm256_mul_pd(tmp_q_15,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_17 = _mm256_add_pd(tmp_q_10,tmp_q_9); + const __m256d tmp_q_18 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_12)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_14))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_16))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_13,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_15,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_12),tmp_q_14),tmp_q_16),tmp_q_17),tmp_q_8))),_mm256_mul_pd(k_dof_4,tmp_q_8)),_mm256_mul_pd(k_dof_5,tmp_q_9)),_mm256_mul_pd(k_dof_6,tmp_q_10)); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4816,Dummy_4816,Dummy_4816,Dummy_4816)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4819,Dummy_4819,Dummy_4819,Dummy_4819)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4822,Dummy_4822,Dummy_4822,Dummy_4822)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4817,Dummy_4817,Dummy_4817,Dummy_4817)); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4820,Dummy_4820,Dummy_4820,Dummy_4820)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4823,Dummy_4823,Dummy_4823,Dummy_4823)); + const double tmp_q_25 = Dummy_4824*_data_q_w[q]; + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_18,_mm256_set_pd(16.0,16.0,16.0,16.0)); + const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); + const __m256d tmp_q_28 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); + const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4818,Dummy_4818,Dummy_4818,Dummy_4818)); + const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4821,Dummy_4821,Dummy_4821,Dummy_4821)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_18,tmp_q_30); + const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_18,tmp_q_31); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4819,Dummy_4819,Dummy_4819,Dummy_4819)); + const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4822,Dummy_4822,Dummy_4822,Dummy_4822)); + const __m256d tmp_q_36 = _mm256_mul_pd(tmp_q_18,tmp_q_34); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_18,tmp_q_35); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4820,Dummy_4820,Dummy_4820,Dummy_4820)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4823,Dummy_4823,Dummy_4823,Dummy_4823)); + const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_18,tmp_q_38); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_18,tmp_q_39); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4815,Dummy_4815,Dummy_4815,Dummy_4815)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4821,Dummy_4821,Dummy_4821,Dummy_4821)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_18,tmp_q_42); + const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_18,tmp_q_43); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4816,Dummy_4816,Dummy_4816,Dummy_4816)); + const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4822,Dummy_4822,Dummy_4822,Dummy_4822)); + const __m256d tmp_q_48 = _mm256_mul_pd(tmp_q_18,tmp_q_46); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_18,tmp_q_47); + const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4817,Dummy_4817,Dummy_4817,Dummy_4817)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4823,Dummy_4823,Dummy_4823,Dummy_4823)); + const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_18,tmp_q_50); + const __m256d tmp_q_53 = _mm256_mul_pd(tmp_q_18,tmp_q_51); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4815,Dummy_4815,Dummy_4815,Dummy_4815)); + const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4818,Dummy_4818,Dummy_4818,Dummy_4818)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_18,tmp_q_54); + const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_18,tmp_q_55); + const __m256d tmp_q_58 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4816,Dummy_4816,Dummy_4816,Dummy_4816)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4819,Dummy_4819,Dummy_4819,Dummy_4819)); + const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_18,tmp_q_58); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_18,tmp_q_59); + const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4817,Dummy_4817,Dummy_4817,Dummy_4817)); + const __m256d tmp_q_63 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4820,Dummy_4820,Dummy_4820,Dummy_4820)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_18,tmp_q_62); + const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_18,tmp_q_63); + const __m256d tmp_q_66 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_67 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); + const __m256d tmp_q_68 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); + const __m256d tmp_q_69 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_19,tmp_q_20),tmp_q_21),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_19),_mm256_mul_pd(tmp_q_18,tmp_q_20)),_mm256_mul_pd(tmp_q_18,tmp_q_21))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_22,tmp_q_23),tmp_q_24),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_18,tmp_q_23)),_mm256_mul_pd(tmp_q_18,tmp_q_24)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_5),_mm256_mul_pd(tmp_q_18,tmp_q_6)),_mm256_mul_pd(tmp_q_18,tmp_q_7)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4815,Dummy_4815,Dummy_4815,Dummy_4815),_mm256_set_pd(Dummy_4815,Dummy_4815,Dummy_4815,Dummy_4815))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4816,Dummy_4816,Dummy_4816,Dummy_4816),_mm256_set_pd(Dummy_4816,Dummy_4816,Dummy_4816,Dummy_4816)))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4817,Dummy_4817,Dummy_4817,Dummy_4817),_mm256_set_pd(Dummy_4817,Dummy_4817,Dummy_4817,Dummy_4817)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4818,Dummy_4818,Dummy_4818,Dummy_4818),_mm256_set_pd(Dummy_4818,Dummy_4818,Dummy_4818,Dummy_4818))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4819,Dummy_4819,Dummy_4819,Dummy_4819),_mm256_set_pd(Dummy_4819,Dummy_4819,Dummy_4819,Dummy_4819)))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4820,Dummy_4820,Dummy_4820,Dummy_4820),_mm256_set_pd(Dummy_4820,Dummy_4820,Dummy_4820,Dummy_4820)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4821,Dummy_4821,Dummy_4821,Dummy_4821),_mm256_set_pd(Dummy_4821,Dummy_4821,Dummy_4821,Dummy_4821))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4822,Dummy_4822,Dummy_4822,Dummy_4822),_mm256_set_pd(Dummy_4822,Dummy_4822,Dummy_4822,Dummy_4822)))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4823,Dummy_4823,Dummy_4823,Dummy_4823),_mm256_set_pd(Dummy_4823,Dummy_4823,Dummy_4823,Dummy_4823)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_30,tmp_q_31),_mm256_add_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(_mm256_add_pd(tmp_q_34,tmp_q_35),_mm256_add_pd(tmp_q_36,tmp_q_37))),_mm256_mul_pd(_mm256_add_pd(tmp_q_38,tmp_q_39),_mm256_add_pd(tmp_q_40,tmp_q_41))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_42,tmp_q_43),_mm256_add_pd(tmp_q_44,tmp_q_45)),_mm256_mul_pd(_mm256_add_pd(tmp_q_46,tmp_q_47),_mm256_add_pd(tmp_q_48,tmp_q_49))),_mm256_mul_pd(_mm256_add_pd(tmp_q_50,tmp_q_51),_mm256_add_pd(tmp_q_52,tmp_q_53))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_54,tmp_q_55),_mm256_add_pd(tmp_q_56,tmp_q_57)),_mm256_mul_pd(_mm256_add_pd(tmp_q_58,tmp_q_59),_mm256_add_pd(tmp_q_60,tmp_q_61))),_mm256_mul_pd(_mm256_add_pd(tmp_q_62,tmp_q_63),_mm256_add_pd(tmp_q_64,tmp_q_65))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_42,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4821,Dummy_4821,Dummy_4821,Dummy_4821))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4821,Dummy_4821,Dummy_4821,Dummy_4821)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_34,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4822,Dummy_4822,Dummy_4822,Dummy_4822))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_36,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_48,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4822,Dummy_4822,Dummy_4822,Dummy_4822))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_38,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4823,Dummy_4823,Dummy_4823,Dummy_4823))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_40,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4823,Dummy_4823,Dummy_4823,Dummy_4823))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4818,Dummy_4818,Dummy_4818,Dummy_4818))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_33,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4818,Dummy_4818,Dummy_4818,Dummy_4818)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_58,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4819,Dummy_4819,Dummy_4819,Dummy_4819))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4819,Dummy_4819,Dummy_4819,Dummy_4819))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4820,Dummy_4820,Dummy_4820,Dummy_4820))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4820,Dummy_4820,Dummy_4820,Dummy_4820))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4815,Dummy_4815,Dummy_4815,Dummy_4815))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4815,Dummy_4815,Dummy_4815,Dummy_4815)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4816,Dummy_4816,Dummy_4816,Dummy_4816))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4816,Dummy_4816,Dummy_4816,Dummy_4816))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_63,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4817,Dummy_4817,Dummy_4817,Dummy_4817))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_53,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4817,Dummy_4817,Dummy_4817,Dummy_4817))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); - q_acc_0_4 = _mm256_add_pd(q_acc_0_4,res_tmp_0_4); - q_acc_0_5 = _mm256_add_pd(q_acc_0_5,res_tmp_0_5); - q_acc_0_6 = _mm256_add_pd(q_acc_0_6,res_tmp_0_6); - q_acc_0_7 = _mm256_add_pd(q_acc_0_7,res_tmp_0_7); - q_acc_0_8 = _mm256_add_pd(q_acc_0_8,res_tmp_0_8); - q_acc_0_9 = _mm256_add_pd(q_acc_0_9,res_tmp_0_9); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); - q_acc_1_4 = _mm256_add_pd(q_acc_1_4,res_tmp_1_4); - q_acc_1_5 = _mm256_add_pd(q_acc_1_5,res_tmp_1_5); - q_acc_1_6 = _mm256_add_pd(q_acc_1_6,res_tmp_1_6); - q_acc_1_7 = _mm256_add_pd(q_acc_1_7,res_tmp_1_7); - q_acc_1_8 = _mm256_add_pd(q_acc_1_8,res_tmp_1_8); - q_acc_1_9 = _mm256_add_pd(q_acc_1_9,res_tmp_1_9); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); - q_acc_2_4 = _mm256_add_pd(q_acc_2_4,res_tmp_2_4); - q_acc_2_5 = _mm256_add_pd(q_acc_2_5,res_tmp_2_5); - q_acc_2_6 = _mm256_add_pd(q_acc_2_6,res_tmp_2_6); - q_acc_2_7 = _mm256_add_pd(q_acc_2_7,res_tmp_2_7); - q_acc_2_8 = _mm256_add_pd(q_acc_2_8,res_tmp_2_8); - q_acc_2_9 = _mm256_add_pd(q_acc_2_9,res_tmp_2_9); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); - q_acc_3_4 = _mm256_add_pd(q_acc_3_4,res_tmp_3_4); - q_acc_3_5 = _mm256_add_pd(q_acc_3_5,res_tmp_3_5); - q_acc_3_6 = _mm256_add_pd(q_acc_3_6,res_tmp_3_6); - q_acc_3_7 = _mm256_add_pd(q_acc_3_7,res_tmp_3_7); - q_acc_3_8 = _mm256_add_pd(q_acc_3_8,res_tmp_3_8); - q_acc_3_9 = _mm256_add_pd(q_acc_3_9,res_tmp_3_9); q_acc_4_4 = _mm256_add_pd(q_acc_4_4,res_tmp_4_4); - q_acc_4_5 = _mm256_add_pd(q_acc_4_5,res_tmp_4_5); - q_acc_4_6 = _mm256_add_pd(q_acc_4_6,res_tmp_4_6); - q_acc_4_7 = _mm256_add_pd(q_acc_4_7,res_tmp_4_7); - q_acc_4_8 = _mm256_add_pd(q_acc_4_8,res_tmp_4_8); - q_acc_4_9 = _mm256_add_pd(q_acc_4_9,res_tmp_4_9); q_acc_5_5 = _mm256_add_pd(q_acc_5_5,res_tmp_5_5); - q_acc_5_6 = _mm256_add_pd(q_acc_5_6,res_tmp_5_6); - q_acc_5_7 = _mm256_add_pd(q_acc_5_7,res_tmp_5_7); - q_acc_5_8 = _mm256_add_pd(q_acc_5_8,res_tmp_5_8); - q_acc_5_9 = _mm256_add_pd(q_acc_5_9,res_tmp_5_9); q_acc_6_6 = _mm256_add_pd(q_acc_6_6,res_tmp_6_6); - q_acc_6_7 = _mm256_add_pd(q_acc_6_7,res_tmp_6_7); - q_acc_6_8 = _mm256_add_pd(q_acc_6_8,res_tmp_6_8); - q_acc_6_9 = _mm256_add_pd(q_acc_6_9,res_tmp_6_9); q_acc_7_7 = _mm256_add_pd(q_acc_7_7,res_tmp_7_7); - q_acc_7_8 = _mm256_add_pd(q_acc_7_8,res_tmp_7_8); - q_acc_7_9 = _mm256_add_pd(q_acc_7_9,res_tmp_7_9); q_acc_8_8 = _mm256_add_pd(q_acc_8_8,res_tmp_8_8); - q_acc_8_9 = _mm256_add_pd(q_acc_8_9,res_tmp_8_9); q_acc_9_9 = _mm256_add_pd(q_acc_9_9,res_tmp_9_9); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; - __m256d q_acc_4_0 = q_acc_0_4; - __m256d q_acc_4_1 = q_acc_1_4; - __m256d q_acc_4_2 = q_acc_2_4; - __m256d q_acc_4_3 = q_acc_3_4; - __m256d q_acc_5_0 = q_acc_0_5; - __m256d q_acc_5_1 = q_acc_1_5; - __m256d q_acc_5_2 = q_acc_2_5; - __m256d q_acc_5_3 = q_acc_3_5; - __m256d q_acc_5_4 = q_acc_4_5; - __m256d q_acc_6_0 = q_acc_0_6; - __m256d q_acc_6_1 = q_acc_1_6; - __m256d q_acc_6_2 = q_acc_2_6; - __m256d q_acc_6_3 = q_acc_3_6; - __m256d q_acc_6_4 = q_acc_4_6; - __m256d q_acc_6_5 = q_acc_5_6; - __m256d q_acc_7_0 = q_acc_0_7; - __m256d q_acc_7_1 = q_acc_1_7; - __m256d q_acc_7_2 = q_acc_2_7; - __m256d q_acc_7_3 = q_acc_3_7; - __m256d q_acc_7_4 = q_acc_4_7; - __m256d q_acc_7_5 = q_acc_5_7; - __m256d q_acc_7_6 = q_acc_6_7; - __m256d q_acc_8_0 = q_acc_0_8; - __m256d q_acc_8_1 = q_acc_1_8; - __m256d q_acc_8_2 = q_acc_2_8; - __m256d q_acc_8_3 = q_acc_3_8; - __m256d q_acc_8_4 = q_acc_4_8; - __m256d q_acc_8_5 = q_acc_5_8; - __m256d q_acc_8_6 = q_acc_6_8; - __m256d q_acc_8_7 = q_acc_7_8; - __m256d q_acc_9_0 = q_acc_0_9; - __m256d q_acc_9_1 = q_acc_1_9; - __m256d q_acc_9_2 = q_acc_2_9; - __m256d q_acc_9_3 = q_acc_3_9; - __m256d q_acc_9_4 = q_acc_4_9; - __m256d q_acc_9_5 = q_acc_5_9; - __m256d q_acc_9_6 = q_acc_6_9; - __m256d q_acc_9_7 = q_acc_7_9; - __m256d q_acc_9_8 = q_acc_8_9; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -2860,69 +1222,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -2931,281 +1248,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4832*tmp_q_4; - const double tmp_q_6 = Dummy_4835*tmp_q_4; - const double tmp_q_7 = Dummy_4838*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4833*tmp_q_4; - const double tmp_q_21 = Dummy_4836*tmp_q_4; - const double tmp_q_22 = Dummy_4839*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4834*tmp_q_4; - const double tmp_q_25 = Dummy_4837*tmp_q_4; - const double tmp_q_26 = Dummy_4840*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4841*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4832*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4833*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4834*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4835*tmp_q_36; - const double tmp_q_38 = Dummy_4836*tmp_q_36; - const double tmp_q_39 = Dummy_4837*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4838*tmp_q_40; - const double tmp_q_42 = Dummy_4839*tmp_q_40; - const double tmp_q_43 = Dummy_4840*tmp_q_40; - const double tmp_q_44 = Dummy_4835*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4838*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4836*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4839*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4837*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4840*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4832*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4838*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4833*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4839*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4834*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4840*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4832*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4835*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4833*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4836*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4834*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4837*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4838*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4839*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4840*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4835*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4836*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4837*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4832*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4833*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4834*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4838*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4839*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4840*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4835*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4836*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4837*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4832*Dummy_4832)*tmp_q_103 + (Dummy_4833*Dummy_4833)*tmp_q_103 + (Dummy_4834*Dummy_4834)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4835*Dummy_4835)*tmp_q_107 + (Dummy_4836*Dummy_4836)*tmp_q_107 + (Dummy_4837*Dummy_4837)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4838*Dummy_4838)*tmp_q_108 + (Dummy_4839*Dummy_4839)*tmp_q_108 + (Dummy_4840*Dummy_4840)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4833*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4834*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4832*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4815*tmp_q_4; + const double tmp_q_6 = Dummy_4818*tmp_q_4; + const double tmp_q_7 = Dummy_4821*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4816*tmp_q_4; + const double tmp_q_20 = Dummy_4819*tmp_q_4; + const double tmp_q_21 = Dummy_4822*tmp_q_4; + const double tmp_q_22 = Dummy_4817*tmp_q_4; + const double tmp_q_23 = Dummy_4820*tmp_q_4; + const double tmp_q_24 = Dummy_4823*tmp_q_4; + const double tmp_q_25 = Dummy_4824*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4818*tmp_q_0; + const double tmp_q_31 = Dummy_4821*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4819*tmp_q_0; + const double tmp_q_35 = Dummy_4822*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4820*tmp_q_0; + const double tmp_q_39 = Dummy_4823*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4815*tmp_q_0; + const double tmp_q_43 = Dummy_4821*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4816*tmp_q_0; + const double tmp_q_47 = Dummy_4822*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4817*tmp_q_0; + const double tmp_q_51 = Dummy_4823*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4815*tmp_q_2; + const double tmp_q_55 = Dummy_4818*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4816*tmp_q_2; + const double tmp_q_59 = Dummy_4819*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4817*tmp_q_2; + const double tmp_q_63 = Dummy_4820*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4815*Dummy_4815)*tmp_q_27 + (Dummy_4816*Dummy_4816)*tmp_q_27 + (Dummy_4817*Dummy_4817)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4818*Dummy_4818)*tmp_q_28 + (Dummy_4819*Dummy_4819)*tmp_q_28 + (Dummy_4820*Dummy_4820)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4821*Dummy_4821)*tmp_q_29 + (Dummy_4822*Dummy_4822)*tmp_q_29 + (Dummy_4823*Dummy_4823)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4821*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4821*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4822*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4822*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4823*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4823*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4818*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4818*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4819*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4819*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4820*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4820*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4815*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4815*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4816*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4816*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4817*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4817*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -3234,69 +1362,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_4_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_5_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_6_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_7_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_8_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_8_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_9_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { @@ -3305,281 +1388,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4863,Dummy_4863,Dummy_4863,Dummy_4863)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4866,Dummy_4866,Dummy_4866,Dummy_4866)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4869,Dummy_4869,Dummy_4869,Dummy_4869)); - const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); - const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_12 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_12,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_14 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_15 = _mm256_mul_pd(tmp_q_14,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_16 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); - const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4864,Dummy_4864,Dummy_4864,Dummy_4864)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4867,Dummy_4867,Dummy_4867,Dummy_4867)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4870,Dummy_4870,Dummy_4870,Dummy_4870)); - const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4865,Dummy_4865,Dummy_4865,Dummy_4865)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4868,Dummy_4868,Dummy_4868,Dummy_4868)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4871,Dummy_4871,Dummy_4871,Dummy_4871)); - const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4872*_data_q_w[q]; - const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4863,Dummy_4863,Dummy_4863,Dummy_4863)); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4864,Dummy_4864,Dummy_4864,Dummy_4864)); - const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4865,Dummy_4865,Dummy_4865,Dummy_4865)); - const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4866,Dummy_4866,Dummy_4866,Dummy_4866)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4867,Dummy_4867,Dummy_4867,Dummy_4867)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4868,Dummy_4868,Dummy_4868,Dummy_4868)); - const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4869,Dummy_4869,Dummy_4869,Dummy_4869)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4870,Dummy_4870,Dummy_4870,Dummy_4870)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4871,Dummy_4871,Dummy_4871,Dummy_4871)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4866,Dummy_4866,Dummy_4866,Dummy_4866)); - const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4869,Dummy_4869,Dummy_4869,Dummy_4869)); - const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); - const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4867,Dummy_4867,Dummy_4867,Dummy_4867)); - const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4870,Dummy_4870,Dummy_4870,Dummy_4870)); - const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); - const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4868,Dummy_4868,Dummy_4868,Dummy_4868)); - const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4871,Dummy_4871,Dummy_4871,Dummy_4871)); - const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); - const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4863,Dummy_4863,Dummy_4863,Dummy_4863)); - const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4869,Dummy_4869,Dummy_4869,Dummy_4869)); - const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); - const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4864,Dummy_4864,Dummy_4864,Dummy_4864)); - const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4870,Dummy_4870,Dummy_4870,Dummy_4870)); - const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); - const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4865,Dummy_4865,Dummy_4865,Dummy_4865)); - const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4871,Dummy_4871,Dummy_4871,Dummy_4871)); - const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); - const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4863,Dummy_4863,Dummy_4863,Dummy_4863)); - const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4866,Dummy_4866,Dummy_4866,Dummy_4866)); - const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); - const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4864,Dummy_4864,Dummy_4864,Dummy_4864)); - const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4867,Dummy_4867,Dummy_4867,Dummy_4867)); - const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); - const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4865,Dummy_4865,Dummy_4865,Dummy_4865)); - const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4868,Dummy_4868,Dummy_4868,Dummy_4868)); - const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); - const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); - const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4869,Dummy_4869,Dummy_4869,Dummy_4869))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4870,Dummy_4870,Dummy_4870,Dummy_4870))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4871,Dummy_4871,Dummy_4871,Dummy_4871))); - const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); - const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4866,Dummy_4866,Dummy_4866,Dummy_4866))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4867,Dummy_4867,Dummy_4867,Dummy_4867))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4868,Dummy_4868,Dummy_4868,Dummy_4868))); - const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4863,Dummy_4863,Dummy_4863,Dummy_4863))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4864,Dummy_4864,Dummy_4864,Dummy_4864))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4865,Dummy_4865,Dummy_4865,Dummy_4865))); - const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); - const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); - const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); - const __m256d tmp_q_105 = _mm256_mul_pd(tmp_q_19,tmp_q_32); - const __m256d tmp_q_106 = _mm256_mul_pd(tmp_q_19,tmp_q_34); - const __m256d tmp_q_107 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); - const __m256d tmp_q_108 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); - const __m256d tmp_q_109 = _mm256_add_pd(tmp_q_44,tmp_q_46); - const __m256d tmp_q_110 = _mm256_add_pd(tmp_q_49,tmp_q_51); - const __m256d tmp_q_111 = _mm256_add_pd(tmp_q_54,tmp_q_56); - const __m256d tmp_q_112 = _mm256_add_pd(tmp_q_59,tmp_q_61); - const __m256d tmp_q_113 = _mm256_add_pd(tmp_q_64,tmp_q_66); - const __m256d tmp_q_114 = _mm256_add_pd(tmp_q_69,tmp_q_71); - const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); - const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); - const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4869,Dummy_4869,Dummy_4869,Dummy_4869))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4870,Dummy_4870,Dummy_4870,Dummy_4870))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4871,Dummy_4871,Dummy_4871,Dummy_4871))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4866,Dummy_4866,Dummy_4866,Dummy_4866))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4867,Dummy_4867,Dummy_4867,Dummy_4867))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4868,Dummy_4868,Dummy_4868,Dummy_4868))); - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_41),_mm256_mul_pd(tmp_q_33,tmp_q_42)),_mm256_mul_pd(tmp_q_35,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_53),_mm256_mul_pd(tmp_q_27,tmp_q_58)),_mm256_mul_pd(tmp_q_48,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_68),_mm256_mul_pd(tmp_q_27,tmp_q_73)),_mm256_mul_pd(tmp_q_63,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_83),_mm256_mul_pd(tmp_q_27,tmp_q_88)),_mm256_mul_pd(tmp_q_78,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4863,Dummy_4863,Dummy_4863,Dummy_4863),_mm256_set_pd(Dummy_4863,Dummy_4863,Dummy_4863,Dummy_4863))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4864,Dummy_4864,Dummy_4864,Dummy_4864),_mm256_set_pd(Dummy_4864,Dummy_4864,Dummy_4864,Dummy_4864)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4865,Dummy_4865,Dummy_4865,Dummy_4865),_mm256_set_pd(Dummy_4865,Dummy_4865,Dummy_4865,Dummy_4865)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_63),_mm256_mul_pd(tmp_q_32,tmp_q_68)),_mm256_mul_pd(tmp_q_34,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_78),_mm256_mul_pd(tmp_q_32,tmp_q_83)),_mm256_mul_pd(tmp_q_34,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4866,Dummy_4866,Dummy_4866,Dummy_4866),_mm256_set_pd(Dummy_4866,Dummy_4866,Dummy_4866,Dummy_4866))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4867,Dummy_4867,Dummy_4867,Dummy_4867),_mm256_set_pd(Dummy_4867,Dummy_4867,Dummy_4867,Dummy_4867)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4868,Dummy_4868,Dummy_4868,Dummy_4868),_mm256_set_pd(Dummy_4868,Dummy_4868,Dummy_4868,Dummy_4868)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_78),_mm256_mul_pd(tmp_q_38,tmp_q_83)),_mm256_mul_pd(tmp_q_39,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4869,Dummy_4869,Dummy_4869,Dummy_4869),_mm256_set_pd(Dummy_4869,Dummy_4869,Dummy_4869,Dummy_4869))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4870,Dummy_4870,Dummy_4870,Dummy_4870),_mm256_set_pd(Dummy_4870,Dummy_4870,Dummy_4870,Dummy_4870)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4871,Dummy_4871,Dummy_4871,Dummy_4871),_mm256_set_pd(Dummy_4871,Dummy_4871,Dummy_4871,Dummy_4871)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_90),_mm256_mul_pd(tmp_q_42,tmp_q_91)),_mm256_mul_pd(tmp_q_43,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_95),_mm256_mul_pd(tmp_q_42,tmp_q_96)),_mm256_mul_pd(tmp_q_43,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_42),_mm256_mul_pd(tmp_q_101,tmp_q_43)),_mm256_mul_pd(tmp_q_41,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_48),_mm256_mul_pd(tmp_q_110,tmp_q_53)),_mm256_mul_pd(tmp_q_111,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_63),_mm256_mul_pd(tmp_q_110,tmp_q_68)),_mm256_mul_pd(tmp_q_111,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_78),_mm256_mul_pd(tmp_q_110,tmp_q_83)),_mm256_mul_pd(tmp_q_111,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_90),_mm256_mul_pd(tmp_q_110,tmp_q_91)),_mm256_mul_pd(tmp_q_111,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_95),_mm256_mul_pd(tmp_q_110,tmp_q_96)),_mm256_mul_pd(tmp_q_111,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_110),_mm256_mul_pd(tmp_q_101,tmp_q_111)),_mm256_mul_pd(tmp_q_109,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_63),_mm256_mul_pd(tmp_q_113,tmp_q_68)),_mm256_mul_pd(tmp_q_114,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_78),_mm256_mul_pd(tmp_q_113,tmp_q_83)),_mm256_mul_pd(tmp_q_114,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_90),_mm256_mul_pd(tmp_q_113,tmp_q_91)),_mm256_mul_pd(tmp_q_114,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_95),_mm256_mul_pd(tmp_q_113,tmp_q_96)),_mm256_mul_pd(tmp_q_114,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_113),_mm256_mul_pd(tmp_q_101,tmp_q_114)),_mm256_mul_pd(tmp_q_112,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_78),_mm256_mul_pd(tmp_q_116,tmp_q_83)),_mm256_mul_pd(tmp_q_117,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_90),_mm256_mul_pd(tmp_q_116,tmp_q_91)),_mm256_mul_pd(tmp_q_117,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_95),_mm256_mul_pd(tmp_q_116,tmp_q_96)),_mm256_mul_pd(tmp_q_117,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_116),_mm256_mul_pd(tmp_q_101,tmp_q_117)),_mm256_mul_pd(tmp_q_115,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_90),_mm256_mul_pd(tmp_q_119,tmp_q_91)),_mm256_mul_pd(tmp_q_120,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_95),_mm256_mul_pd(tmp_q_119,tmp_q_96)),_mm256_mul_pd(tmp_q_120,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4863,Dummy_4863,Dummy_4863,Dummy_4863)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4864,Dummy_4864,Dummy_4864,Dummy_4864))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4865,Dummy_4865,Dummy_4865,Dummy_4865))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4846,Dummy_4846,Dummy_4846,Dummy_4846)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4849,Dummy_4849,Dummy_4849,Dummy_4849)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4852,Dummy_4852,Dummy_4852,Dummy_4852)); + const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_11 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_11,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_13 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_14 = _mm256_mul_pd(tmp_q_13,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_15 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_16 = _mm256_mul_pd(tmp_q_15,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_17 = _mm256_add_pd(tmp_q_10,tmp_q_9); + const __m256d tmp_q_18 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_12)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_14))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_16))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_13,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_15,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_12),tmp_q_14),tmp_q_16),tmp_q_17),tmp_q_8))),_mm256_mul_pd(k_dof_4,tmp_q_8)),_mm256_mul_pd(k_dof_5,tmp_q_9)),_mm256_mul_pd(k_dof_6,tmp_q_10)); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4847,Dummy_4847,Dummy_4847,Dummy_4847)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4850,Dummy_4850,Dummy_4850,Dummy_4850)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4853,Dummy_4853,Dummy_4853,Dummy_4853)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4848,Dummy_4848,Dummy_4848,Dummy_4848)); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4851,Dummy_4851,Dummy_4851,Dummy_4851)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4854,Dummy_4854,Dummy_4854,Dummy_4854)); + const double tmp_q_25 = Dummy_4855*_data_q_w[q]; + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_18,_mm256_set_pd(16.0,16.0,16.0,16.0)); + const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); + const __m256d tmp_q_28 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); + const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4849,Dummy_4849,Dummy_4849,Dummy_4849)); + const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4852,Dummy_4852,Dummy_4852,Dummy_4852)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_18,tmp_q_30); + const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_18,tmp_q_31); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4850,Dummy_4850,Dummy_4850,Dummy_4850)); + const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4853,Dummy_4853,Dummy_4853,Dummy_4853)); + const __m256d tmp_q_36 = _mm256_mul_pd(tmp_q_18,tmp_q_34); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_18,tmp_q_35); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4851,Dummy_4851,Dummy_4851,Dummy_4851)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4854,Dummy_4854,Dummy_4854,Dummy_4854)); + const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_18,tmp_q_38); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_18,tmp_q_39); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4846,Dummy_4846,Dummy_4846,Dummy_4846)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4852,Dummy_4852,Dummy_4852,Dummy_4852)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_18,tmp_q_42); + const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_18,tmp_q_43); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4847,Dummy_4847,Dummy_4847,Dummy_4847)); + const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4853,Dummy_4853,Dummy_4853,Dummy_4853)); + const __m256d tmp_q_48 = _mm256_mul_pd(tmp_q_18,tmp_q_46); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_18,tmp_q_47); + const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4848,Dummy_4848,Dummy_4848,Dummy_4848)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4854,Dummy_4854,Dummy_4854,Dummy_4854)); + const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_18,tmp_q_50); + const __m256d tmp_q_53 = _mm256_mul_pd(tmp_q_18,tmp_q_51); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4846,Dummy_4846,Dummy_4846,Dummy_4846)); + const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4849,Dummy_4849,Dummy_4849,Dummy_4849)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_18,tmp_q_54); + const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_18,tmp_q_55); + const __m256d tmp_q_58 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4847,Dummy_4847,Dummy_4847,Dummy_4847)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4850,Dummy_4850,Dummy_4850,Dummy_4850)); + const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_18,tmp_q_58); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_18,tmp_q_59); + const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4848,Dummy_4848,Dummy_4848,Dummy_4848)); + const __m256d tmp_q_63 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4851,Dummy_4851,Dummy_4851,Dummy_4851)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_18,tmp_q_62); + const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_18,tmp_q_63); + const __m256d tmp_q_66 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_67 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); + const __m256d tmp_q_68 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); + const __m256d tmp_q_69 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_19,tmp_q_20),tmp_q_21),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_19),_mm256_mul_pd(tmp_q_18,tmp_q_20)),_mm256_mul_pd(tmp_q_18,tmp_q_21))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_22,tmp_q_23),tmp_q_24),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_18,tmp_q_23)),_mm256_mul_pd(tmp_q_18,tmp_q_24)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_5),_mm256_mul_pd(tmp_q_18,tmp_q_6)),_mm256_mul_pd(tmp_q_18,tmp_q_7)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4846,Dummy_4846,Dummy_4846,Dummy_4846),_mm256_set_pd(Dummy_4846,Dummy_4846,Dummy_4846,Dummy_4846))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4847,Dummy_4847,Dummy_4847,Dummy_4847),_mm256_set_pd(Dummy_4847,Dummy_4847,Dummy_4847,Dummy_4847)))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4848,Dummy_4848,Dummy_4848,Dummy_4848),_mm256_set_pd(Dummy_4848,Dummy_4848,Dummy_4848,Dummy_4848)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4849,Dummy_4849,Dummy_4849,Dummy_4849),_mm256_set_pd(Dummy_4849,Dummy_4849,Dummy_4849,Dummy_4849))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4850,Dummy_4850,Dummy_4850,Dummy_4850),_mm256_set_pd(Dummy_4850,Dummy_4850,Dummy_4850,Dummy_4850)))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4851,Dummy_4851,Dummy_4851,Dummy_4851),_mm256_set_pd(Dummy_4851,Dummy_4851,Dummy_4851,Dummy_4851)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4852,Dummy_4852,Dummy_4852,Dummy_4852),_mm256_set_pd(Dummy_4852,Dummy_4852,Dummy_4852,Dummy_4852))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4853,Dummy_4853,Dummy_4853,Dummy_4853),_mm256_set_pd(Dummy_4853,Dummy_4853,Dummy_4853,Dummy_4853)))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4854,Dummy_4854,Dummy_4854,Dummy_4854),_mm256_set_pd(Dummy_4854,Dummy_4854,Dummy_4854,Dummy_4854)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_30,tmp_q_31),_mm256_add_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(_mm256_add_pd(tmp_q_34,tmp_q_35),_mm256_add_pd(tmp_q_36,tmp_q_37))),_mm256_mul_pd(_mm256_add_pd(tmp_q_38,tmp_q_39),_mm256_add_pd(tmp_q_40,tmp_q_41))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_42,tmp_q_43),_mm256_add_pd(tmp_q_44,tmp_q_45)),_mm256_mul_pd(_mm256_add_pd(tmp_q_46,tmp_q_47),_mm256_add_pd(tmp_q_48,tmp_q_49))),_mm256_mul_pd(_mm256_add_pd(tmp_q_50,tmp_q_51),_mm256_add_pd(tmp_q_52,tmp_q_53))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_54,tmp_q_55),_mm256_add_pd(tmp_q_56,tmp_q_57)),_mm256_mul_pd(_mm256_add_pd(tmp_q_58,tmp_q_59),_mm256_add_pd(tmp_q_60,tmp_q_61))),_mm256_mul_pd(_mm256_add_pd(tmp_q_62,tmp_q_63),_mm256_add_pd(tmp_q_64,tmp_q_65))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_42,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4852,Dummy_4852,Dummy_4852,Dummy_4852))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4852,Dummy_4852,Dummy_4852,Dummy_4852)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_34,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4853,Dummy_4853,Dummy_4853,Dummy_4853))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_36,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_48,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4853,Dummy_4853,Dummy_4853,Dummy_4853))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_38,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4854,Dummy_4854,Dummy_4854,Dummy_4854))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_40,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4854,Dummy_4854,Dummy_4854,Dummy_4854))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4849,Dummy_4849,Dummy_4849,Dummy_4849))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_33,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4849,Dummy_4849,Dummy_4849,Dummy_4849)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_58,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4850,Dummy_4850,Dummy_4850,Dummy_4850))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4850,Dummy_4850,Dummy_4850,Dummy_4850))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4851,Dummy_4851,Dummy_4851,Dummy_4851))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4851,Dummy_4851,Dummy_4851,Dummy_4851))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4846,Dummy_4846,Dummy_4846,Dummy_4846))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4846,Dummy_4846,Dummy_4846,Dummy_4846)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4847,Dummy_4847,Dummy_4847,Dummy_4847))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4847,Dummy_4847,Dummy_4847,Dummy_4847))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_63,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4848,Dummy_4848,Dummy_4848,Dummy_4848))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_53,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4848,Dummy_4848,Dummy_4848,Dummy_4848))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); - q_acc_0_4 = _mm256_add_pd(q_acc_0_4,res_tmp_0_4); - q_acc_0_5 = _mm256_add_pd(q_acc_0_5,res_tmp_0_5); - q_acc_0_6 = _mm256_add_pd(q_acc_0_6,res_tmp_0_6); - q_acc_0_7 = _mm256_add_pd(q_acc_0_7,res_tmp_0_7); - q_acc_0_8 = _mm256_add_pd(q_acc_0_8,res_tmp_0_8); - q_acc_0_9 = _mm256_add_pd(q_acc_0_9,res_tmp_0_9); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); - q_acc_1_4 = _mm256_add_pd(q_acc_1_4,res_tmp_1_4); - q_acc_1_5 = _mm256_add_pd(q_acc_1_5,res_tmp_1_5); - q_acc_1_6 = _mm256_add_pd(q_acc_1_6,res_tmp_1_6); - q_acc_1_7 = _mm256_add_pd(q_acc_1_7,res_tmp_1_7); - q_acc_1_8 = _mm256_add_pd(q_acc_1_8,res_tmp_1_8); - q_acc_1_9 = _mm256_add_pd(q_acc_1_9,res_tmp_1_9); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); - q_acc_2_4 = _mm256_add_pd(q_acc_2_4,res_tmp_2_4); - q_acc_2_5 = _mm256_add_pd(q_acc_2_5,res_tmp_2_5); - q_acc_2_6 = _mm256_add_pd(q_acc_2_6,res_tmp_2_6); - q_acc_2_7 = _mm256_add_pd(q_acc_2_7,res_tmp_2_7); - q_acc_2_8 = _mm256_add_pd(q_acc_2_8,res_tmp_2_8); - q_acc_2_9 = _mm256_add_pd(q_acc_2_9,res_tmp_2_9); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); - q_acc_3_4 = _mm256_add_pd(q_acc_3_4,res_tmp_3_4); - q_acc_3_5 = _mm256_add_pd(q_acc_3_5,res_tmp_3_5); - q_acc_3_6 = _mm256_add_pd(q_acc_3_6,res_tmp_3_6); - q_acc_3_7 = _mm256_add_pd(q_acc_3_7,res_tmp_3_7); - q_acc_3_8 = _mm256_add_pd(q_acc_3_8,res_tmp_3_8); - q_acc_3_9 = _mm256_add_pd(q_acc_3_9,res_tmp_3_9); q_acc_4_4 = _mm256_add_pd(q_acc_4_4,res_tmp_4_4); - q_acc_4_5 = _mm256_add_pd(q_acc_4_5,res_tmp_4_5); - q_acc_4_6 = _mm256_add_pd(q_acc_4_6,res_tmp_4_6); - q_acc_4_7 = _mm256_add_pd(q_acc_4_7,res_tmp_4_7); - q_acc_4_8 = _mm256_add_pd(q_acc_4_8,res_tmp_4_8); - q_acc_4_9 = _mm256_add_pd(q_acc_4_9,res_tmp_4_9); q_acc_5_5 = _mm256_add_pd(q_acc_5_5,res_tmp_5_5); - q_acc_5_6 = _mm256_add_pd(q_acc_5_6,res_tmp_5_6); - q_acc_5_7 = _mm256_add_pd(q_acc_5_7,res_tmp_5_7); - q_acc_5_8 = _mm256_add_pd(q_acc_5_8,res_tmp_5_8); - q_acc_5_9 = _mm256_add_pd(q_acc_5_9,res_tmp_5_9); q_acc_6_6 = _mm256_add_pd(q_acc_6_6,res_tmp_6_6); - q_acc_6_7 = _mm256_add_pd(q_acc_6_7,res_tmp_6_7); - q_acc_6_8 = _mm256_add_pd(q_acc_6_8,res_tmp_6_8); - q_acc_6_9 = _mm256_add_pd(q_acc_6_9,res_tmp_6_9); q_acc_7_7 = _mm256_add_pd(q_acc_7_7,res_tmp_7_7); - q_acc_7_8 = _mm256_add_pd(q_acc_7_8,res_tmp_7_8); - q_acc_7_9 = _mm256_add_pd(q_acc_7_9,res_tmp_7_9); q_acc_8_8 = _mm256_add_pd(q_acc_8_8,res_tmp_8_8); - q_acc_8_9 = _mm256_add_pd(q_acc_8_9,res_tmp_8_9); q_acc_9_9 = _mm256_add_pd(q_acc_9_9,res_tmp_9_9); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; - __m256d q_acc_4_0 = q_acc_0_4; - __m256d q_acc_4_1 = q_acc_1_4; - __m256d q_acc_4_2 = q_acc_2_4; - __m256d q_acc_4_3 = q_acc_3_4; - __m256d q_acc_5_0 = q_acc_0_5; - __m256d q_acc_5_1 = q_acc_1_5; - __m256d q_acc_5_2 = q_acc_2_5; - __m256d q_acc_5_3 = q_acc_3_5; - __m256d q_acc_5_4 = q_acc_4_5; - __m256d q_acc_6_0 = q_acc_0_6; - __m256d q_acc_6_1 = q_acc_1_6; - __m256d q_acc_6_2 = q_acc_2_6; - __m256d q_acc_6_3 = q_acc_3_6; - __m256d q_acc_6_4 = q_acc_4_6; - __m256d q_acc_6_5 = q_acc_5_6; - __m256d q_acc_7_0 = q_acc_0_7; - __m256d q_acc_7_1 = q_acc_1_7; - __m256d q_acc_7_2 = q_acc_2_7; - __m256d q_acc_7_3 = q_acc_3_7; - __m256d q_acc_7_4 = q_acc_4_7; - __m256d q_acc_7_5 = q_acc_5_7; - __m256d q_acc_7_6 = q_acc_6_7; - __m256d q_acc_8_0 = q_acc_0_8; - __m256d q_acc_8_1 = q_acc_1_8; - __m256d q_acc_8_2 = q_acc_2_8; - __m256d q_acc_8_3 = q_acc_3_8; - __m256d q_acc_8_4 = q_acc_4_8; - __m256d q_acc_8_5 = q_acc_5_8; - __m256d q_acc_8_6 = q_acc_6_8; - __m256d q_acc_8_7 = q_acc_7_8; - __m256d q_acc_9_0 = q_acc_0_9; - __m256d q_acc_9_1 = q_acc_1_9; - __m256d q_acc_9_2 = q_acc_2_9; - __m256d q_acc_9_3 = q_acc_3_9; - __m256d q_acc_9_4 = q_acc_4_9; - __m256d q_acc_9_5 = q_acc_5_9; - __m256d q_acc_9_6 = q_acc_6_9; - __m256d q_acc_9_7 = q_acc_7_9; - __m256d q_acc_9_8 = q_acc_8_9; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -3604,69 +1498,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -3675,281 +1524,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4863*tmp_q_4; - const double tmp_q_6 = Dummy_4866*tmp_q_4; - const double tmp_q_7 = Dummy_4869*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4864*tmp_q_4; - const double tmp_q_21 = Dummy_4867*tmp_q_4; - const double tmp_q_22 = Dummy_4870*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4865*tmp_q_4; - const double tmp_q_25 = Dummy_4868*tmp_q_4; - const double tmp_q_26 = Dummy_4871*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4872*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4863*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4864*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4865*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4866*tmp_q_36; - const double tmp_q_38 = Dummy_4867*tmp_q_36; - const double tmp_q_39 = Dummy_4868*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4869*tmp_q_40; - const double tmp_q_42 = Dummy_4870*tmp_q_40; - const double tmp_q_43 = Dummy_4871*tmp_q_40; - const double tmp_q_44 = Dummy_4866*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4869*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4867*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4870*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4868*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4871*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4863*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4869*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4864*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4870*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4865*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4871*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4863*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4866*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4864*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4867*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4865*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4868*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4869*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4870*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4871*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4866*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4867*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4868*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4863*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4864*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4865*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4869*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4870*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4871*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4866*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4867*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4868*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4863*Dummy_4863)*tmp_q_103 + (Dummy_4864*Dummy_4864)*tmp_q_103 + (Dummy_4865*Dummy_4865)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4866*Dummy_4866)*tmp_q_107 + (Dummy_4867*Dummy_4867)*tmp_q_107 + (Dummy_4868*Dummy_4868)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4869*Dummy_4869)*tmp_q_108 + (Dummy_4870*Dummy_4870)*tmp_q_108 + (Dummy_4871*Dummy_4871)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4864*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4865*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4863*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4846*tmp_q_4; + const double tmp_q_6 = Dummy_4849*tmp_q_4; + const double tmp_q_7 = Dummy_4852*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4847*tmp_q_4; + const double tmp_q_20 = Dummy_4850*tmp_q_4; + const double tmp_q_21 = Dummy_4853*tmp_q_4; + const double tmp_q_22 = Dummy_4848*tmp_q_4; + const double tmp_q_23 = Dummy_4851*tmp_q_4; + const double tmp_q_24 = Dummy_4854*tmp_q_4; + const double tmp_q_25 = Dummy_4855*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4849*tmp_q_0; + const double tmp_q_31 = Dummy_4852*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4850*tmp_q_0; + const double tmp_q_35 = Dummy_4853*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4851*tmp_q_0; + const double tmp_q_39 = Dummy_4854*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4846*tmp_q_0; + const double tmp_q_43 = Dummy_4852*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4847*tmp_q_0; + const double tmp_q_47 = Dummy_4853*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4848*tmp_q_0; + const double tmp_q_51 = Dummy_4854*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4846*tmp_q_2; + const double tmp_q_55 = Dummy_4849*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4847*tmp_q_2; + const double tmp_q_59 = Dummy_4850*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4848*tmp_q_2; + const double tmp_q_63 = Dummy_4851*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4846*Dummy_4846)*tmp_q_27 + (Dummy_4847*Dummy_4847)*tmp_q_27 + (Dummy_4848*Dummy_4848)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4849*Dummy_4849)*tmp_q_28 + (Dummy_4850*Dummy_4850)*tmp_q_28 + (Dummy_4851*Dummy_4851)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4852*Dummy_4852)*tmp_q_29 + (Dummy_4853*Dummy_4853)*tmp_q_29 + (Dummy_4854*Dummy_4854)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4852*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4852*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4853*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4853*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4854*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4854*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4849*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4849*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4850*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4850*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4851*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4851*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4846*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4846*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4847*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4847*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4848*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4848*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -3978,69 +1638,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 += 4) { const __m256d k_dof_4 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); - const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_1 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]); - const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_7 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); const __m256d k_dof_6 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]); + const __m256d k_dof_9 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); + const __m256d k_dof_2 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]); const __m256d k_dof_8 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]); + const __m256d k_dof_3 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]); const __m256d k_dof_0 = _mm256_loadu_pd(& _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]); - const __m256d k_dof_5 = _mm256_loadu_pd(& _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]); __m256d q_acc_0_0 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_0_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_1_1 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_1_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_2_2 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_2_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_3_3 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_3_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_4_4 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_4_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_5_5 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_5_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_6_6 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_6_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_7_7 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_7_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_8_8 = _mm256_set_pd(0.0,0.0,0.0,0.0); - __m256d q_acc_8_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); __m256d q_acc_9_9 = _mm256_set_pd(0.0,0.0,0.0,0.0); for (int64_t q = 0; q < 4; q += 1) { @@ -4049,281 +1664,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const __m256d tmp_q_2 = _mm256_mul_pd(_mm256_set_pd(4.0,4.0,4.0,4.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); const __m256d tmp_q_3 = _mm256_add_pd(tmp_q_1,tmp_q_2); const __m256d tmp_q_4 = _mm256_add_pd(_mm256_add_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),tmp_q_0),tmp_q_3); - const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4894,Dummy_4894,Dummy_4894,Dummy_4894)); - const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4897,Dummy_4897,Dummy_4897,Dummy_4897)); - const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4900,Dummy_4900,Dummy_4900,Dummy_4900)); - const __m256d tmp_q_8 = _mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7); - const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_11 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_12 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); - const __m256d tmp_q_13 = _mm256_mul_pd(tmp_q_12,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_14 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); - const __m256d tmp_q_15 = _mm256_mul_pd(tmp_q_14,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_16 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); - const __m256d tmp_q_17 = _mm256_mul_pd(tmp_q_16,_mm256_set_pd(2.0,2.0,2.0,2.0)); - const __m256d tmp_q_18 = _mm256_add_pd(tmp_q_10,tmp_q_11); - const __m256d tmp_q_19 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_13)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_15))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_17))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_12,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_16,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_14,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_13),tmp_q_15),tmp_q_17),tmp_q_18),tmp_q_9))),_mm256_mul_pd(k_dof_4,tmp_q_9)),_mm256_mul_pd(k_dof_5,tmp_q_10)),_mm256_mul_pd(k_dof_6,tmp_q_11)); - const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4895,Dummy_4895,Dummy_4895,Dummy_4895)); - const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4898,Dummy_4898,Dummy_4898,Dummy_4898)); - const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4901,Dummy_4901,Dummy_4901,Dummy_4901)); - const __m256d tmp_q_23 = _mm256_add_pd(_mm256_add_pd(tmp_q_20,tmp_q_21),tmp_q_22); - const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4896,Dummy_4896,Dummy_4896,Dummy_4896)); - const __m256d tmp_q_25 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4899,Dummy_4899,Dummy_4899,Dummy_4899)); - const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4902,Dummy_4902,Dummy_4902,Dummy_4902)); - const __m256d tmp_q_27 = _mm256_add_pd(_mm256_add_pd(tmp_q_24,tmp_q_25),tmp_q_26); - const double tmp_q_28 = Dummy_4903*_data_q_w[q]; - const __m256d tmp_q_29 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_1); - const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4894,Dummy_4894,Dummy_4894,Dummy_4894)); - const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_19,tmp_q_8); - const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4895,Dummy_4895,Dummy_4895,Dummy_4895)); - const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_19,tmp_q_23); - const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_29,_mm256_set_pd(Dummy_4896,Dummy_4896,Dummy_4896,Dummy_4896)); - const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_19,tmp_q_27); - const __m256d tmp_q_36 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_2); - const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4897,Dummy_4897,Dummy_4897,Dummy_4897)); - const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4898,Dummy_4898,Dummy_4898,Dummy_4898)); - const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_36,_mm256_set_pd(Dummy_4899,Dummy_4899,Dummy_4899,Dummy_4899)); - const __m256d tmp_q_40 = _mm256_add_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),tmp_q_0); - const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4900,Dummy_4900,Dummy_4900,Dummy_4900)); - const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4901,Dummy_4901,Dummy_4901,Dummy_4901)); - const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_40,_mm256_set_pd(Dummy_4902,Dummy_4902,Dummy_4902,Dummy_4902)); - const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4897,Dummy_4897,Dummy_4897,Dummy_4897)); - const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_19,tmp_q_44); - const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4900,Dummy_4900,Dummy_4900,Dummy_4900)); - const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_19,tmp_q_46); - const __m256d tmp_q_48 = _mm256_add_pd(tmp_q_45,tmp_q_47); - const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4898,Dummy_4898,Dummy_4898,Dummy_4898)); - const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_19,tmp_q_49); - const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4901,Dummy_4901,Dummy_4901,Dummy_4901)); - const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_19,tmp_q_51); - const __m256d tmp_q_53 = _mm256_add_pd(tmp_q_50,tmp_q_52); - const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4899,Dummy_4899,Dummy_4899,Dummy_4899)); - const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_19,tmp_q_54); - const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4902,Dummy_4902,Dummy_4902,Dummy_4902)); - const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_19,tmp_q_56); - const __m256d tmp_q_58 = _mm256_add_pd(tmp_q_55,tmp_q_57); - const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4894,Dummy_4894,Dummy_4894,Dummy_4894)); - const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_19,tmp_q_59); - const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4900,Dummy_4900,Dummy_4900,Dummy_4900)); - const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_19,tmp_q_61); - const __m256d tmp_q_63 = _mm256_add_pd(tmp_q_60,tmp_q_62); - const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4895,Dummy_4895,Dummy_4895,Dummy_4895)); - const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_19,tmp_q_64); - const __m256d tmp_q_66 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4901,Dummy_4901,Dummy_4901,Dummy_4901)); - const __m256d tmp_q_67 = _mm256_mul_pd(tmp_q_19,tmp_q_66); - const __m256d tmp_q_68 = _mm256_add_pd(tmp_q_65,tmp_q_67); - const __m256d tmp_q_69 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4896,Dummy_4896,Dummy_4896,Dummy_4896)); - const __m256d tmp_q_70 = _mm256_mul_pd(tmp_q_19,tmp_q_69); - const __m256d tmp_q_71 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4902,Dummy_4902,Dummy_4902,Dummy_4902)); - const __m256d tmp_q_72 = _mm256_mul_pd(tmp_q_19,tmp_q_71); - const __m256d tmp_q_73 = _mm256_add_pd(tmp_q_70,tmp_q_72); - const __m256d tmp_q_74 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4894,Dummy_4894,Dummy_4894,Dummy_4894)); - const __m256d tmp_q_75 = _mm256_mul_pd(tmp_q_19,tmp_q_74); - const __m256d tmp_q_76 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4897,Dummy_4897,Dummy_4897,Dummy_4897)); - const __m256d tmp_q_77 = _mm256_mul_pd(tmp_q_19,tmp_q_76); - const __m256d tmp_q_78 = _mm256_add_pd(tmp_q_75,tmp_q_77); - const __m256d tmp_q_79 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4895,Dummy_4895,Dummy_4895,Dummy_4895)); - const __m256d tmp_q_80 = _mm256_mul_pd(tmp_q_19,tmp_q_79); - const __m256d tmp_q_81 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4898,Dummy_4898,Dummy_4898,Dummy_4898)); - const __m256d tmp_q_82 = _mm256_mul_pd(tmp_q_19,tmp_q_81); - const __m256d tmp_q_83 = _mm256_add_pd(tmp_q_80,tmp_q_82); - const __m256d tmp_q_84 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4896,Dummy_4896,Dummy_4896,Dummy_4896)); - const __m256d tmp_q_85 = _mm256_mul_pd(tmp_q_19,tmp_q_84); - const __m256d tmp_q_86 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4899,Dummy_4899,Dummy_4899,Dummy_4899)); - const __m256d tmp_q_87 = _mm256_mul_pd(tmp_q_19,tmp_q_86); - const __m256d tmp_q_88 = _mm256_add_pd(tmp_q_85,tmp_q_87); - const __m256d tmp_q_89 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); - const __m256d tmp_q_90 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4900,Dummy_4900,Dummy_4900,Dummy_4900))); - const __m256d tmp_q_91 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4901,Dummy_4901,Dummy_4901,Dummy_4901))); - const __m256d tmp_q_92 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_70,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_89),_mm256_set_pd(Dummy_4902,Dummy_4902,Dummy_4902,Dummy_4902))); - const __m256d tmp_q_93 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); - const __m256d tmp_q_94 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); - const __m256d tmp_q_95 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_75,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4897,Dummy_4897,Dummy_4897,Dummy_4897))); - const __m256d tmp_q_96 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_80,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4898,Dummy_4898,Dummy_4898,Dummy_4898))); - const __m256d tmp_q_97 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_85,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_94),_mm256_set_pd(Dummy_4899,Dummy_4899,Dummy_4899,Dummy_4899))); - const __m256d tmp_q_98 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_93,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); - const __m256d tmp_q_99 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_77,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4894,Dummy_4894,Dummy_4894,Dummy_4894))); - const __m256d tmp_q_100 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_82,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4895,Dummy_4895,Dummy_4895,Dummy_4895))); - const __m256d tmp_q_101 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_72,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_87,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_98),_mm256_set_pd(Dummy_4896,Dummy_4896,Dummy_4896,Dummy_4896))); - const __m256d tmp_q_102 = _mm256_mul_pd(tmp_q_19,_mm256_set_pd(16.0,16.0,16.0,16.0)); - const __m256d tmp_q_103 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); - const __m256d tmp_q_104 = _mm256_mul_pd(tmp_q_19,tmp_q_30); - const __m256d tmp_q_105 = _mm256_mul_pd(tmp_q_19,tmp_q_32); - const __m256d tmp_q_106 = _mm256_mul_pd(tmp_q_19,tmp_q_34); - const __m256d tmp_q_107 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); - const __m256d tmp_q_108 = _mm256_mul_pd(tmp_q_102,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); - const __m256d tmp_q_109 = _mm256_add_pd(tmp_q_44,tmp_q_46); - const __m256d tmp_q_110 = _mm256_add_pd(tmp_q_49,tmp_q_51); - const __m256d tmp_q_111 = _mm256_add_pd(tmp_q_54,tmp_q_56); - const __m256d tmp_q_112 = _mm256_add_pd(tmp_q_59,tmp_q_61); - const __m256d tmp_q_113 = _mm256_add_pd(tmp_q_64,tmp_q_66); - const __m256d tmp_q_114 = _mm256_add_pd(tmp_q_69,tmp_q_71); - const __m256d tmp_q_115 = _mm256_add_pd(tmp_q_74,tmp_q_76); - const __m256d tmp_q_116 = _mm256_add_pd(tmp_q_79,tmp_q_81); - const __m256d tmp_q_117 = _mm256_add_pd(tmp_q_84,tmp_q_86); - const __m256d tmp_q_118 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4900,Dummy_4900,Dummy_4900,Dummy_4900))); - const __m256d tmp_q_119 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4901,Dummy_4901,Dummy_4901,Dummy_4901))); - const __m256d tmp_q_120 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_89,_mm256_set_pd(Dummy_4902,Dummy_4902,Dummy_4902,Dummy_4902))); - const __m256d tmp_q_121 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_74,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4897,Dummy_4897,Dummy_4897,Dummy_4897))); - const __m256d tmp_q_122 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_79,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4898,Dummy_4898,Dummy_4898,Dummy_4898))); - const __m256d tmp_q_123 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_84,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_94,_mm256_set_pd(Dummy_4899,Dummy_4899,Dummy_4899,Dummy_4899))); - const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_20),_mm256_mul_pd(tmp_q_19,tmp_q_21)),_mm256_mul_pd(tmp_q_19,tmp_q_22))),_mm256_mul_pd(tmp_q_27,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_24),_mm256_mul_pd(tmp_q_19,tmp_q_25)),_mm256_mul_pd(tmp_q_19,tmp_q_26)))),_mm256_mul_pd(tmp_q_8,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_19,tmp_q_5),_mm256_mul_pd(tmp_q_19,tmp_q_6)),_mm256_mul_pd(tmp_q_19,tmp_q_7)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_31),_mm256_mul_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(tmp_q_34,tmp_q_35)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_37),_mm256_mul_pd(tmp_q_33,tmp_q_38)),_mm256_mul_pd(tmp_q_35,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,tmp_q_41),_mm256_mul_pd(tmp_q_33,tmp_q_42)),_mm256_mul_pd(tmp_q_35,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_53),_mm256_mul_pd(tmp_q_27,tmp_q_58)),_mm256_mul_pd(tmp_q_48,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_68),_mm256_mul_pd(tmp_q_27,tmp_q_73)),_mm256_mul_pd(tmp_q_63,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_83),_mm256_mul_pd(tmp_q_27,tmp_q_88)),_mm256_mul_pd(tmp_q_78,tmp_q_8)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_91),_mm256_mul_pd(tmp_q_27,tmp_q_92)),_mm256_mul_pd(tmp_q_8,tmp_q_90)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_23,tmp_q_96),_mm256_mul_pd(tmp_q_27,tmp_q_97)),_mm256_mul_pd(tmp_q_8,tmp_q_95)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_0_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_23),_mm256_mul_pd(tmp_q_101,tmp_q_27)),_mm256_mul_pd(tmp_q_8,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4894,Dummy_4894,Dummy_4894,Dummy_4894),_mm256_set_pd(Dummy_4894,Dummy_4894,Dummy_4894,Dummy_4894))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4895,Dummy_4895,Dummy_4895,Dummy_4895),_mm256_set_pd(Dummy_4895,Dummy_4895,Dummy_4895,Dummy_4895)))),_mm256_mul_pd(tmp_q_103,_mm256_mul_pd(_mm256_set_pd(Dummy_4896,Dummy_4896,Dummy_4896,Dummy_4896),_mm256_set_pd(Dummy_4896,Dummy_4896,Dummy_4896,Dummy_4896)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_37),_mm256_mul_pd(tmp_q_105,tmp_q_38)),_mm256_mul_pd(tmp_q_106,tmp_q_39)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_104,tmp_q_41),_mm256_mul_pd(tmp_q_105,tmp_q_42)),_mm256_mul_pd(tmp_q_106,tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_48),_mm256_mul_pd(tmp_q_32,tmp_q_53)),_mm256_mul_pd(tmp_q_34,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_63),_mm256_mul_pd(tmp_q_32,tmp_q_68)),_mm256_mul_pd(tmp_q_34,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_78),_mm256_mul_pd(tmp_q_32,tmp_q_83)),_mm256_mul_pd(tmp_q_34,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_90),_mm256_mul_pd(tmp_q_32,tmp_q_91)),_mm256_mul_pd(tmp_q_34,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,tmp_q_95),_mm256_mul_pd(tmp_q_32,tmp_q_96)),_mm256_mul_pd(tmp_q_34,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_1_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_32),_mm256_mul_pd(tmp_q_101,tmp_q_34)),_mm256_mul_pd(tmp_q_30,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4897,Dummy_4897,Dummy_4897,Dummy_4897),_mm256_set_pd(Dummy_4897,Dummy_4897,Dummy_4897,Dummy_4897))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4898,Dummy_4898,Dummy_4898,Dummy_4898),_mm256_set_pd(Dummy_4898,Dummy_4898,Dummy_4898,Dummy_4898)))),_mm256_mul_pd(tmp_q_107,_mm256_mul_pd(_mm256_set_pd(Dummy_4899,Dummy_4899,Dummy_4899,Dummy_4899),_mm256_set_pd(Dummy_4899,Dummy_4899,Dummy_4899,Dummy_4899)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_37),tmp_q_41),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_38),tmp_q_42)),_mm256_mul_pd(_mm256_mul_pd(tmp_q_19,tmp_q_39),tmp_q_43)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_48),_mm256_mul_pd(tmp_q_38,tmp_q_53)),_mm256_mul_pd(tmp_q_39,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_63),_mm256_mul_pd(tmp_q_38,tmp_q_68)),_mm256_mul_pd(tmp_q_39,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_78),_mm256_mul_pd(tmp_q_38,tmp_q_83)),_mm256_mul_pd(tmp_q_39,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_90),_mm256_mul_pd(tmp_q_38,tmp_q_91)),_mm256_mul_pd(tmp_q_39,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,tmp_q_95),_mm256_mul_pd(tmp_q_38,tmp_q_96)),_mm256_mul_pd(tmp_q_39,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_2_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_38),_mm256_mul_pd(tmp_q_101,tmp_q_39)),_mm256_mul_pd(tmp_q_37,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4900,Dummy_4900,Dummy_4900,Dummy_4900),_mm256_set_pd(Dummy_4900,Dummy_4900,Dummy_4900,Dummy_4900))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4901,Dummy_4901,Dummy_4901,Dummy_4901),_mm256_set_pd(Dummy_4901,Dummy_4901,Dummy_4901,Dummy_4901)))),_mm256_mul_pd(tmp_q_108,_mm256_mul_pd(_mm256_set_pd(Dummy_4902,Dummy_4902,Dummy_4902,Dummy_4902),_mm256_set_pd(Dummy_4902,Dummy_4902,Dummy_4902,Dummy_4902)))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_48),_mm256_mul_pd(tmp_q_42,tmp_q_53)),_mm256_mul_pd(tmp_q_43,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_63),_mm256_mul_pd(tmp_q_42,tmp_q_68)),_mm256_mul_pd(tmp_q_43,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_78),_mm256_mul_pd(tmp_q_42,tmp_q_83)),_mm256_mul_pd(tmp_q_43,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_90),_mm256_mul_pd(tmp_q_42,tmp_q_91)),_mm256_mul_pd(tmp_q_43,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,tmp_q_95),_mm256_mul_pd(tmp_q_42,tmp_q_96)),_mm256_mul_pd(tmp_q_43,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_3_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_42),_mm256_mul_pd(tmp_q_101,tmp_q_43)),_mm256_mul_pd(tmp_q_41,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_48),_mm256_mul_pd(tmp_q_110,tmp_q_53)),_mm256_mul_pd(tmp_q_111,tmp_q_58)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_63),_mm256_mul_pd(tmp_q_110,tmp_q_68)),_mm256_mul_pd(tmp_q_111,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_78),_mm256_mul_pd(tmp_q_110,tmp_q_83)),_mm256_mul_pd(tmp_q_111,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_90),_mm256_mul_pd(tmp_q_110,tmp_q_91)),_mm256_mul_pd(tmp_q_111,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_109,tmp_q_95),_mm256_mul_pd(tmp_q_110,tmp_q_96)),_mm256_mul_pd(tmp_q_111,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_4_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_110),_mm256_mul_pd(tmp_q_101,tmp_q_111)),_mm256_mul_pd(tmp_q_109,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_63),_mm256_mul_pd(tmp_q_113,tmp_q_68)),_mm256_mul_pd(tmp_q_114,tmp_q_73)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_78),_mm256_mul_pd(tmp_q_113,tmp_q_83)),_mm256_mul_pd(tmp_q_114,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_90),_mm256_mul_pd(tmp_q_113,tmp_q_91)),_mm256_mul_pd(tmp_q_114,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_112,tmp_q_95),_mm256_mul_pd(tmp_q_113,tmp_q_96)),_mm256_mul_pd(tmp_q_114,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_5_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_113),_mm256_mul_pd(tmp_q_101,tmp_q_114)),_mm256_mul_pd(tmp_q_112,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_78),_mm256_mul_pd(tmp_q_116,tmp_q_83)),_mm256_mul_pd(tmp_q_117,tmp_q_88)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_90),_mm256_mul_pd(tmp_q_116,tmp_q_91)),_mm256_mul_pd(tmp_q_117,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_115,tmp_q_95),_mm256_mul_pd(tmp_q_116,tmp_q_96)),_mm256_mul_pd(tmp_q_117,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_6_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_116),_mm256_mul_pd(tmp_q_101,tmp_q_117)),_mm256_mul_pd(tmp_q_115,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_90),_mm256_mul_pd(tmp_q_119,tmp_q_91)),_mm256_mul_pd(tmp_q_120,tmp_q_92)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_118,tmp_q_95),_mm256_mul_pd(tmp_q_119,tmp_q_96)),_mm256_mul_pd(tmp_q_120,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_7_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_119),_mm256_mul_pd(tmp_q_101,tmp_q_120)),_mm256_mul_pd(tmp_q_118,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_121,tmp_q_95),_mm256_mul_pd(tmp_q_122,tmp_q_96)),_mm256_mul_pd(tmp_q_123,tmp_q_97)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_8_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_100,tmp_q_122),_mm256_mul_pd(tmp_q_101,tmp_q_123)),_mm256_mul_pd(tmp_q_121,tmp_q_99)),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); - const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_99,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_76,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4894,Dummy_4894,Dummy_4894,Dummy_4894)))),_mm256_mul_pd(tmp_q_100,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_66,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_81,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4895,Dummy_4895,Dummy_4895,Dummy_4895))))),_mm256_mul_pd(tmp_q_101,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_71,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_86,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_98,_mm256_set_pd(Dummy_4896,Dummy_4896,Dummy_4896,Dummy_4896))))),_mm256_set_pd(tmp_q_28,tmp_q_28,tmp_q_28,tmp_q_28)); + const __m256d tmp_q_5 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4877,Dummy_4877,Dummy_4877,Dummy_4877)); + const __m256d tmp_q_6 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4880,Dummy_4880,Dummy_4880,Dummy_4880)); + const __m256d tmp_q_7 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4883,Dummy_4883,Dummy_4883,Dummy_4883)); + const __m256d tmp_q_8 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_9 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_10 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_11 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])); + const __m256d tmp_q_12 = _mm256_mul_pd(tmp_q_11,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_13 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])); + const __m256d tmp_q_14 = _mm256_mul_pd(tmp_q_13,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_15 = _mm256_mul_pd(_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])); + const __m256d tmp_q_16 = _mm256_mul_pd(tmp_q_15,_mm256_set_pd(2.0,2.0,2.0,2.0)); + const __m256d tmp_q_17 = _mm256_add_pd(tmp_q_10,tmp_q_9); + const __m256d tmp_q_18 = _mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(k_dof_1,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),tmp_q_12)),_mm256_mul_pd(k_dof_2,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),tmp_q_14))),_mm256_mul_pd(k_dof_3,_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-1.0,-1.0,-1.0,-1.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),tmp_q_16))),_mm256_mul_pd(k_dof_9,_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_17,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_11,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_1))),_mm256_mul_pd(k_dof_8,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_10,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_13,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_2))),_mm256_mul_pd(k_dof_7,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_8,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_9,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_15,_mm256_set_pd(-4.0,-4.0,-4.0,-4.0))),tmp_q_0))),_mm256_mul_pd(k_dof_0,_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))),_mm256_mul_pd(_mm256_set_pd(-3.0,-3.0,-3.0,-3.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(1.0,1.0,1.0,1.0)),tmp_q_12),tmp_q_14),tmp_q_16),tmp_q_17),tmp_q_8))),_mm256_mul_pd(k_dof_4,tmp_q_8)),_mm256_mul_pd(k_dof_5,tmp_q_9)),_mm256_mul_pd(k_dof_6,tmp_q_10)); + const __m256d tmp_q_19 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4878,Dummy_4878,Dummy_4878,Dummy_4878)); + const __m256d tmp_q_20 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4881,Dummy_4881,Dummy_4881,Dummy_4881)); + const __m256d tmp_q_21 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4884,Dummy_4884,Dummy_4884,Dummy_4884)); + const __m256d tmp_q_22 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4879,Dummy_4879,Dummy_4879,Dummy_4879)); + const __m256d tmp_q_23 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4882,Dummy_4882,Dummy_4882,Dummy_4882)); + const __m256d tmp_q_24 = _mm256_mul_pd(tmp_q_4,_mm256_set_pd(Dummy_4885,Dummy_4885,Dummy_4885,Dummy_4885)); + const double tmp_q_25 = Dummy_4886*_data_q_w[q]; + const __m256d tmp_q_26 = _mm256_mul_pd(tmp_q_18,_mm256_set_pd(16.0,16.0,16.0,16.0)); + const __m256d tmp_q_27 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q])))); + const __m256d tmp_q_28 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q])))); + const __m256d tmp_q_29 = _mm256_mul_pd(tmp_q_26,_mm256_mul_pd(_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])),_mm256_add_pd(_mm256_set_pd(-0.25,-0.25,-0.25,-0.25),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q])))); + const __m256d tmp_q_30 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4880,Dummy_4880,Dummy_4880,Dummy_4880)); + const __m256d tmp_q_31 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4883,Dummy_4883,Dummy_4883,Dummy_4883)); + const __m256d tmp_q_32 = _mm256_mul_pd(tmp_q_18,tmp_q_30); + const __m256d tmp_q_33 = _mm256_mul_pd(tmp_q_18,tmp_q_31); + const __m256d tmp_q_34 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4881,Dummy_4881,Dummy_4881,Dummy_4881)); + const __m256d tmp_q_35 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4884,Dummy_4884,Dummy_4884,Dummy_4884)); + const __m256d tmp_q_36 = _mm256_mul_pd(tmp_q_18,tmp_q_34); + const __m256d tmp_q_37 = _mm256_mul_pd(tmp_q_18,tmp_q_35); + const __m256d tmp_q_38 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4882,Dummy_4882,Dummy_4882,Dummy_4882)); + const __m256d tmp_q_39 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4885,Dummy_4885,Dummy_4885,Dummy_4885)); + const __m256d tmp_q_40 = _mm256_mul_pd(tmp_q_18,tmp_q_38); + const __m256d tmp_q_41 = _mm256_mul_pd(tmp_q_18,tmp_q_39); + const __m256d tmp_q_42 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4877,Dummy_4877,Dummy_4877,Dummy_4877)); + const __m256d tmp_q_43 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4883,Dummy_4883,Dummy_4883,Dummy_4883)); + const __m256d tmp_q_44 = _mm256_mul_pd(tmp_q_18,tmp_q_42); + const __m256d tmp_q_45 = _mm256_mul_pd(tmp_q_18,tmp_q_43); + const __m256d tmp_q_46 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4878,Dummy_4878,Dummy_4878,Dummy_4878)); + const __m256d tmp_q_47 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4884,Dummy_4884,Dummy_4884,Dummy_4884)); + const __m256d tmp_q_48 = _mm256_mul_pd(tmp_q_18,tmp_q_46); + const __m256d tmp_q_49 = _mm256_mul_pd(tmp_q_18,tmp_q_47); + const __m256d tmp_q_50 = _mm256_mul_pd(tmp_q_0,_mm256_set_pd(Dummy_4879,Dummy_4879,Dummy_4879,Dummy_4879)); + const __m256d tmp_q_51 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4885,Dummy_4885,Dummy_4885,Dummy_4885)); + const __m256d tmp_q_52 = _mm256_mul_pd(tmp_q_18,tmp_q_50); + const __m256d tmp_q_53 = _mm256_mul_pd(tmp_q_18,tmp_q_51); + const __m256d tmp_q_54 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4877,Dummy_4877,Dummy_4877,Dummy_4877)); + const __m256d tmp_q_55 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4880,Dummy_4880,Dummy_4880,Dummy_4880)); + const __m256d tmp_q_56 = _mm256_mul_pd(tmp_q_18,tmp_q_54); + const __m256d tmp_q_57 = _mm256_mul_pd(tmp_q_18,tmp_q_55); + const __m256d tmp_q_58 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4878,Dummy_4878,Dummy_4878,Dummy_4878)); + const __m256d tmp_q_59 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4881,Dummy_4881,Dummy_4881,Dummy_4881)); + const __m256d tmp_q_60 = _mm256_mul_pd(tmp_q_18,tmp_q_58); + const __m256d tmp_q_61 = _mm256_mul_pd(tmp_q_18,tmp_q_59); + const __m256d tmp_q_62 = _mm256_mul_pd(tmp_q_2,_mm256_set_pd(Dummy_4879,Dummy_4879,Dummy_4879,Dummy_4879)); + const __m256d tmp_q_63 = _mm256_mul_pd(tmp_q_1,_mm256_set_pd(Dummy_4882,Dummy_4882,Dummy_4882,Dummy_4882)); + const __m256d tmp_q_64 = _mm256_mul_pd(tmp_q_18,tmp_q_62); + const __m256d tmp_q_65 = _mm256_mul_pd(tmp_q_18,tmp_q_63); + const __m256d tmp_q_66 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_3,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q],_data_q_p_2[q]))),_mm256_set_pd(4.0,4.0,4.0,4.0)); + const __m256d tmp_q_67 = _mm256_add_pd(_mm256_set_pd(-4.0,-4.0,-4.0,-4.0),tmp_q_0); + const __m256d tmp_q_68 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_1,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q],_data_q_p_1[q]))); + const __m256d tmp_q_69 = _mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_2,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_67,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_set_pd(-8.0,-8.0,-8.0,-8.0),_mm256_set_pd(_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q],_data_q_p_0[q]))); + const __m256d res_tmp_0_0 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_19,tmp_q_20),tmp_q_21),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_19),_mm256_mul_pd(tmp_q_18,tmp_q_20)),_mm256_mul_pd(tmp_q_18,tmp_q_21))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_22,tmp_q_23),tmp_q_24),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_22),_mm256_mul_pd(tmp_q_18,tmp_q_23)),_mm256_mul_pd(tmp_q_18,tmp_q_24)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(tmp_q_5,tmp_q_6),tmp_q_7),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_18,tmp_q_5),_mm256_mul_pd(tmp_q_18,tmp_q_6)),_mm256_mul_pd(tmp_q_18,tmp_q_7)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_1_1 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4877,Dummy_4877,Dummy_4877,Dummy_4877),_mm256_set_pd(Dummy_4877,Dummy_4877,Dummy_4877,Dummy_4877))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4878,Dummy_4878,Dummy_4878,Dummy_4878),_mm256_set_pd(Dummy_4878,Dummy_4878,Dummy_4878,Dummy_4878)))),_mm256_mul_pd(tmp_q_27,_mm256_mul_pd(_mm256_set_pd(Dummy_4879,Dummy_4879,Dummy_4879,Dummy_4879),_mm256_set_pd(Dummy_4879,Dummy_4879,Dummy_4879,Dummy_4879)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_2_2 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4880,Dummy_4880,Dummy_4880,Dummy_4880),_mm256_set_pd(Dummy_4880,Dummy_4880,Dummy_4880,Dummy_4880))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4881,Dummy_4881,Dummy_4881,Dummy_4881),_mm256_set_pd(Dummy_4881,Dummy_4881,Dummy_4881,Dummy_4881)))),_mm256_mul_pd(tmp_q_28,_mm256_mul_pd(_mm256_set_pd(Dummy_4882,Dummy_4882,Dummy_4882,Dummy_4882),_mm256_set_pd(Dummy_4882,Dummy_4882,Dummy_4882,Dummy_4882)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_3_3 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4883,Dummy_4883,Dummy_4883,Dummy_4883),_mm256_set_pd(Dummy_4883,Dummy_4883,Dummy_4883,Dummy_4883))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4884,Dummy_4884,Dummy_4884,Dummy_4884),_mm256_set_pd(Dummy_4884,Dummy_4884,Dummy_4884,Dummy_4884)))),_mm256_mul_pd(tmp_q_29,_mm256_mul_pd(_mm256_set_pd(Dummy_4885,Dummy_4885,Dummy_4885,Dummy_4885),_mm256_set_pd(Dummy_4885,Dummy_4885,Dummy_4885,Dummy_4885)))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_4_4 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_30,tmp_q_31),_mm256_add_pd(tmp_q_32,tmp_q_33)),_mm256_mul_pd(_mm256_add_pd(tmp_q_34,tmp_q_35),_mm256_add_pd(tmp_q_36,tmp_q_37))),_mm256_mul_pd(_mm256_add_pd(tmp_q_38,tmp_q_39),_mm256_add_pd(tmp_q_40,tmp_q_41))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_5_5 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_42,tmp_q_43),_mm256_add_pd(tmp_q_44,tmp_q_45)),_mm256_mul_pd(_mm256_add_pd(tmp_q_46,tmp_q_47),_mm256_add_pd(tmp_q_48,tmp_q_49))),_mm256_mul_pd(_mm256_add_pd(tmp_q_50,tmp_q_51),_mm256_add_pd(tmp_q_52,tmp_q_53))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_6_6 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(tmp_q_54,tmp_q_55),_mm256_add_pd(tmp_q_56,tmp_q_57)),_mm256_mul_pd(_mm256_add_pd(tmp_q_58,tmp_q_59),_mm256_add_pd(tmp_q_60,tmp_q_61))),_mm256_mul_pd(_mm256_add_pd(tmp_q_62,tmp_q_63),_mm256_add_pd(tmp_q_64,tmp_q_65))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_7_7 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_30,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_42,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4883,Dummy_4883,Dummy_4883,Dummy_4883))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_32,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_44,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4883,Dummy_4883,Dummy_4883,Dummy_4883)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_34,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_46,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4884,Dummy_4884,Dummy_4884,Dummy_4884))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_36,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_48,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4884,Dummy_4884,Dummy_4884,Dummy_4884))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_38,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_50,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_66,_mm256_set_pd(Dummy_4885,Dummy_4885,Dummy_4885,Dummy_4885))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_40,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_52,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_66),_mm256_set_pd(Dummy_4885,Dummy_4885,Dummy_4885,Dummy_4885))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_8_8 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_31,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_54,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4880,Dummy_4880,Dummy_4880,Dummy_4880))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_33,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_56,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4880,Dummy_4880,Dummy_4880,Dummy_4880)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_35,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_58,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4881,Dummy_4881,Dummy_4881,Dummy_4881))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_37,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_60,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4881,Dummy_4881,Dummy_4881,Dummy_4881))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_39,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_62,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_68,_mm256_set_pd(Dummy_4882,Dummy_4882,Dummy_4882,Dummy_4882))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_41,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_64,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_68),_mm256_set_pd(Dummy_4882,Dummy_4882,Dummy_4882,Dummy_4882))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); + const __m256d res_tmp_9_9 = _mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_43,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_55,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4877,Dummy_4877,Dummy_4877,Dummy_4877))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_45,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_57,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4877,Dummy_4877,Dummy_4877,Dummy_4877)))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_47,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_59,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4878,Dummy_4878,Dummy_4878,Dummy_4878))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_49,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_61,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4878,Dummy_4878,Dummy_4878,Dummy_4878))))),_mm256_mul_pd(_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_51,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_63,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(tmp_q_69,_mm256_set_pd(Dummy_4879,Dummy_4879,Dummy_4879,Dummy_4879))),_mm256_add_pd(_mm256_add_pd(_mm256_mul_pd(tmp_q_53,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0)),_mm256_mul_pd(tmp_q_65,_mm256_set_pd(-1.0,-1.0,-1.0,-1.0))),_mm256_mul_pd(_mm256_mul_pd(tmp_q_18,tmp_q_69),_mm256_set_pd(Dummy_4879,Dummy_4879,Dummy_4879,Dummy_4879))))),_mm256_set_pd(tmp_q_25,tmp_q_25,tmp_q_25,tmp_q_25)); q_acc_0_0 = _mm256_add_pd(q_acc_0_0,res_tmp_0_0); - q_acc_0_1 = _mm256_add_pd(q_acc_0_1,res_tmp_0_1); - q_acc_0_2 = _mm256_add_pd(q_acc_0_2,res_tmp_0_2); - q_acc_0_3 = _mm256_add_pd(q_acc_0_3,res_tmp_0_3); - q_acc_0_4 = _mm256_add_pd(q_acc_0_4,res_tmp_0_4); - q_acc_0_5 = _mm256_add_pd(q_acc_0_5,res_tmp_0_5); - q_acc_0_6 = _mm256_add_pd(q_acc_0_6,res_tmp_0_6); - q_acc_0_7 = _mm256_add_pd(q_acc_0_7,res_tmp_0_7); - q_acc_0_8 = _mm256_add_pd(q_acc_0_8,res_tmp_0_8); - q_acc_0_9 = _mm256_add_pd(q_acc_0_9,res_tmp_0_9); q_acc_1_1 = _mm256_add_pd(q_acc_1_1,res_tmp_1_1); - q_acc_1_2 = _mm256_add_pd(q_acc_1_2,res_tmp_1_2); - q_acc_1_3 = _mm256_add_pd(q_acc_1_3,res_tmp_1_3); - q_acc_1_4 = _mm256_add_pd(q_acc_1_4,res_tmp_1_4); - q_acc_1_5 = _mm256_add_pd(q_acc_1_5,res_tmp_1_5); - q_acc_1_6 = _mm256_add_pd(q_acc_1_6,res_tmp_1_6); - q_acc_1_7 = _mm256_add_pd(q_acc_1_7,res_tmp_1_7); - q_acc_1_8 = _mm256_add_pd(q_acc_1_8,res_tmp_1_8); - q_acc_1_9 = _mm256_add_pd(q_acc_1_9,res_tmp_1_9); q_acc_2_2 = _mm256_add_pd(q_acc_2_2,res_tmp_2_2); - q_acc_2_3 = _mm256_add_pd(q_acc_2_3,res_tmp_2_3); - q_acc_2_4 = _mm256_add_pd(q_acc_2_4,res_tmp_2_4); - q_acc_2_5 = _mm256_add_pd(q_acc_2_5,res_tmp_2_5); - q_acc_2_6 = _mm256_add_pd(q_acc_2_6,res_tmp_2_6); - q_acc_2_7 = _mm256_add_pd(q_acc_2_7,res_tmp_2_7); - q_acc_2_8 = _mm256_add_pd(q_acc_2_8,res_tmp_2_8); - q_acc_2_9 = _mm256_add_pd(q_acc_2_9,res_tmp_2_9); q_acc_3_3 = _mm256_add_pd(q_acc_3_3,res_tmp_3_3); - q_acc_3_4 = _mm256_add_pd(q_acc_3_4,res_tmp_3_4); - q_acc_3_5 = _mm256_add_pd(q_acc_3_5,res_tmp_3_5); - q_acc_3_6 = _mm256_add_pd(q_acc_3_6,res_tmp_3_6); - q_acc_3_7 = _mm256_add_pd(q_acc_3_7,res_tmp_3_7); - q_acc_3_8 = _mm256_add_pd(q_acc_3_8,res_tmp_3_8); - q_acc_3_9 = _mm256_add_pd(q_acc_3_9,res_tmp_3_9); q_acc_4_4 = _mm256_add_pd(q_acc_4_4,res_tmp_4_4); - q_acc_4_5 = _mm256_add_pd(q_acc_4_5,res_tmp_4_5); - q_acc_4_6 = _mm256_add_pd(q_acc_4_6,res_tmp_4_6); - q_acc_4_7 = _mm256_add_pd(q_acc_4_7,res_tmp_4_7); - q_acc_4_8 = _mm256_add_pd(q_acc_4_8,res_tmp_4_8); - q_acc_4_9 = _mm256_add_pd(q_acc_4_9,res_tmp_4_9); q_acc_5_5 = _mm256_add_pd(q_acc_5_5,res_tmp_5_5); - q_acc_5_6 = _mm256_add_pd(q_acc_5_6,res_tmp_5_6); - q_acc_5_7 = _mm256_add_pd(q_acc_5_7,res_tmp_5_7); - q_acc_5_8 = _mm256_add_pd(q_acc_5_8,res_tmp_5_8); - q_acc_5_9 = _mm256_add_pd(q_acc_5_9,res_tmp_5_9); q_acc_6_6 = _mm256_add_pd(q_acc_6_6,res_tmp_6_6); - q_acc_6_7 = _mm256_add_pd(q_acc_6_7,res_tmp_6_7); - q_acc_6_8 = _mm256_add_pd(q_acc_6_8,res_tmp_6_8); - q_acc_6_9 = _mm256_add_pd(q_acc_6_9,res_tmp_6_9); q_acc_7_7 = _mm256_add_pd(q_acc_7_7,res_tmp_7_7); - q_acc_7_8 = _mm256_add_pd(q_acc_7_8,res_tmp_7_8); - q_acc_7_9 = _mm256_add_pd(q_acc_7_9,res_tmp_7_9); q_acc_8_8 = _mm256_add_pd(q_acc_8_8,res_tmp_8_8); - q_acc_8_9 = _mm256_add_pd(q_acc_8_9,res_tmp_8_9); q_acc_9_9 = _mm256_add_pd(q_acc_9_9,res_tmp_9_9); } - __m256d q_acc_1_0 = q_acc_0_1; - __m256d q_acc_2_0 = q_acc_0_2; - __m256d q_acc_2_1 = q_acc_1_2; - __m256d q_acc_3_0 = q_acc_0_3; - __m256d q_acc_3_1 = q_acc_1_3; - __m256d q_acc_3_2 = q_acc_2_3; - __m256d q_acc_4_0 = q_acc_0_4; - __m256d q_acc_4_1 = q_acc_1_4; - __m256d q_acc_4_2 = q_acc_2_4; - __m256d q_acc_4_3 = q_acc_3_4; - __m256d q_acc_5_0 = q_acc_0_5; - __m256d q_acc_5_1 = q_acc_1_5; - __m256d q_acc_5_2 = q_acc_2_5; - __m256d q_acc_5_3 = q_acc_3_5; - __m256d q_acc_5_4 = q_acc_4_5; - __m256d q_acc_6_0 = q_acc_0_6; - __m256d q_acc_6_1 = q_acc_1_6; - __m256d q_acc_6_2 = q_acc_2_6; - __m256d q_acc_6_3 = q_acc_3_6; - __m256d q_acc_6_4 = q_acc_4_6; - __m256d q_acc_6_5 = q_acc_5_6; - __m256d q_acc_7_0 = q_acc_0_7; - __m256d q_acc_7_1 = q_acc_1_7; - __m256d q_acc_7_2 = q_acc_2_7; - __m256d q_acc_7_3 = q_acc_3_7; - __m256d q_acc_7_4 = q_acc_4_7; - __m256d q_acc_7_5 = q_acc_5_7; - __m256d q_acc_7_6 = q_acc_6_7; - __m256d q_acc_8_0 = q_acc_0_8; - __m256d q_acc_8_1 = q_acc_1_8; - __m256d q_acc_8_2 = q_acc_2_8; - __m256d q_acc_8_3 = q_acc_3_8; - __m256d q_acc_8_4 = q_acc_4_8; - __m256d q_acc_8_5 = q_acc_5_8; - __m256d q_acc_8_6 = q_acc_6_8; - __m256d q_acc_8_7 = q_acc_7_8; - __m256d q_acc_9_0 = q_acc_0_9; - __m256d q_acc_9_1 = q_acc_1_9; - __m256d q_acc_9_2 = q_acc_2_9; - __m256d q_acc_9_3 = q_acc_3_9; - __m256d q_acc_9_4 = q_acc_4_9; - __m256d q_acc_9_5 = q_acc_5_9; - __m256d q_acc_9_6 = q_acc_6_9; - __m256d q_acc_9_7 = q_acc_7_9; - __m256d q_acc_9_8 = q_acc_8_9; const __m256d elMatDiag_0 = q_acc_0_0; const __m256d elMatDiag_1 = q_acc_1_1; const __m256d elMatDiag_2 = q_acc_2_2; @@ -4348,69 +1774,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = (int64_t)((-ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1) / (4)) * (4); ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -4419,281 +1800,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4894*tmp_q_4; - const double tmp_q_6 = Dummy_4897*tmp_q_4; - const double tmp_q_7 = Dummy_4900*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4895*tmp_q_4; - const double tmp_q_21 = Dummy_4898*tmp_q_4; - const double tmp_q_22 = Dummy_4901*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4896*tmp_q_4; - const double tmp_q_25 = Dummy_4899*tmp_q_4; - const double tmp_q_26 = Dummy_4902*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4903*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4894*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4895*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4896*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4897*tmp_q_36; - const double tmp_q_38 = Dummy_4898*tmp_q_36; - const double tmp_q_39 = Dummy_4899*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4900*tmp_q_40; - const double tmp_q_42 = Dummy_4901*tmp_q_40; - const double tmp_q_43 = Dummy_4902*tmp_q_40; - const double tmp_q_44 = Dummy_4897*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4900*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4898*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4901*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4899*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4902*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4894*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4900*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4895*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4901*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4896*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4902*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4894*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4897*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4895*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4898*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4896*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4899*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4900*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4901*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4902*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4897*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4898*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4899*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4894*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4895*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4896*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4900*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4901*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4902*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4897*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4898*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4899*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4894*Dummy_4894)*tmp_q_103 + (Dummy_4895*Dummy_4895)*tmp_q_103 + (Dummy_4896*Dummy_4896)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4897*Dummy_4897)*tmp_q_107 + (Dummy_4898*Dummy_4898)*tmp_q_107 + (Dummy_4899*Dummy_4899)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4900*Dummy_4900)*tmp_q_108 + (Dummy_4901*Dummy_4901)*tmp_q_108 + (Dummy_4902*Dummy_4902)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4895*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4896*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4894*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4877*tmp_q_4; + const double tmp_q_6 = Dummy_4880*tmp_q_4; + const double tmp_q_7 = Dummy_4883*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4878*tmp_q_4; + const double tmp_q_20 = Dummy_4881*tmp_q_4; + const double tmp_q_21 = Dummy_4884*tmp_q_4; + const double tmp_q_22 = Dummy_4879*tmp_q_4; + const double tmp_q_23 = Dummy_4882*tmp_q_4; + const double tmp_q_24 = Dummy_4885*tmp_q_4; + const double tmp_q_25 = Dummy_4886*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4880*tmp_q_0; + const double tmp_q_31 = Dummy_4883*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4881*tmp_q_0; + const double tmp_q_35 = Dummy_4884*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4882*tmp_q_0; + const double tmp_q_39 = Dummy_4885*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4877*tmp_q_0; + const double tmp_q_43 = Dummy_4883*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4878*tmp_q_0; + const double tmp_q_47 = Dummy_4884*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4879*tmp_q_0; + const double tmp_q_51 = Dummy_4885*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4877*tmp_q_2; + const double tmp_q_55 = Dummy_4880*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4878*tmp_q_2; + const double tmp_q_59 = Dummy_4881*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4879*tmp_q_2; + const double tmp_q_63 = Dummy_4882*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4877*Dummy_4877)*tmp_q_27 + (Dummy_4878*Dummy_4878)*tmp_q_27 + (Dummy_4879*Dummy_4879)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4880*Dummy_4880)*tmp_q_28 + (Dummy_4881*Dummy_4881)*tmp_q_28 + (Dummy_4882*Dummy_4882)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4883*Dummy_4883)*tmp_q_29 + (Dummy_4884*Dummy_4884)*tmp_q_29 + (Dummy_4885*Dummy_4885)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4883*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4883*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4884*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4884*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4885*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4885*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4880*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4880*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4881*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4881*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4882*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4882*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4877*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4877*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4878*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4878*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4879*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4879*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; diff --git a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_apply_macro_2D.cpp b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_apply_macro_2D.cpp index ead9fa398828c625947f6676855dfbdf1ff19663..f338c7a9d30717d1f382ee7bc7a6da31904faab3 100644 --- a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_apply_macro_2D.cpp +++ b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_apply_macro_2D.cpp @@ -57,11 +57,11 @@ namespace operatorgeneration { void P1ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dst, double * RESTRICT _data_k, double * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -104,9 +104,9 @@ void P1ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dst, double const double src_dof_0 = _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; const double src_dof_1 = _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -150,9 +150,9 @@ void P1ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dst, double const double src_dof_0 = _data_src[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double src_dof_1 = _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; diff --git a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_apply_macro_3D.cpp b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_apply_macro_3D.cpp index 15fabbeb682e729dd76e4c505f2d42c90862e358..47675f3fdb9079dba9d2c3821a5945aa523d40e5 100644 --- a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_apply_macro_3D.cpp +++ b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_apply_macro_3D.cpp @@ -57,13 +57,13 @@ namespace operatorgeneration { void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double * RESTRICT _data_k, double * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -278,10 +278,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_3 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -349,10 +349,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_3 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -420,10 +420,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_2 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_3 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -491,10 +491,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_2 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_3 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -562,10 +562,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_2 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double src_dof_3 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -633,10 +633,10 @@ void P1ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dst, double const double src_dof_1 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_2 = _data_src[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double src_dof_3 = _data_src[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; diff --git a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp index f408cecc9a143d36165461c4309705c2e86ebecb..5e984454165a382543876c4e732ef0e3bb597779 100644 --- a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp +++ b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp @@ -57,11 +57,11 @@ namespace operatorgeneration { void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( double * RESTRICT _data_invDiag_, double * RESTRICT _data_k, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -78,8 +78,6 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const double jac_affine_inv_1_0 = -jac_affine_1_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double jac_affine_inv_1_1 = jac_affine_0_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); - const double tmp_q_0 = -jac_affine_inv_0_0 - jac_affine_inv_1_0; - const double tmp_q_4 = -jac_affine_inv_0_1 - jac_affine_inv_1_1; const double Dummy_3697 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; const double Dummy_3698 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; const double Dummy_3699 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; @@ -95,45 +93,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const double Dummy_3709 = -Dummy_3705*1.0 / (Dummy_3703*Dummy_3706 - Dummy_3704*Dummy_3705); const double Dummy_3710 = Dummy_3703*1.0 / (Dummy_3703*Dummy_3706 - Dummy_3704*Dummy_3705); const double Dummy_3711 = fabs(Dummy_3703*Dummy_3706 - Dummy_3704*Dummy_3705); - const double Dummy_3712 = -Dummy_3707 - Dummy_3709; - const double Dummy_3713 = -Dummy_3708 - Dummy_3710; { for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; double q_acc_2_2 = 0.0; for (int64_t q = 0; q < 3; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q]; - const double tmp_q_2 = jac_affine_inv_0_0*tmp_q_1; - const double tmp_q_3 = jac_affine_inv_1_0*tmp_q_1; - const double tmp_q_5 = jac_affine_inv_0_1*tmp_q_1; - const double tmp_q_6 = jac_affine_inv_1_1*tmp_q_1; - const double tmp_q_7 = abs_det_jac_affine*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_7*(tmp_q_0*(-tmp_q_2 - tmp_q_3) + tmp_q_4*(-tmp_q_5 - tmp_q_6)); - const double res_tmp_0_1 = tmp_q_7*(tmp_q_0*tmp_q_2 + tmp_q_4*tmp_q_5); - const double res_tmp_0_2 = tmp_q_7*(tmp_q_0*tmp_q_3 + tmp_q_4*tmp_q_6); - const double res_tmp_1_1 = tmp_q_7*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_1 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_7*(jac_affine_inv_1_0*tmp_q_2 + jac_affine_inv_1_1*tmp_q_5); - const double res_tmp_2_2 = tmp_q_7*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_1 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q]; + const double tmp_q_1 = abs_det_jac_affine*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-jac_affine_inv_0_0 - jac_affine_inv_1_0)*(-jac_affine_inv_0_0*tmp_q_0 - jac_affine_inv_1_0*tmp_q_0) + (-jac_affine_inv_0_1 - jac_affine_inv_1_1)*(-jac_affine_inv_0_1*tmp_q_0 - jac_affine_inv_1_1*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_0 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_0 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -144,39 +124,23 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; double q_acc_2_2 = 0.0; for (int64_t q = 0; q < 3; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q]; - const double tmp_q_2 = Dummy_3707*tmp_q_1; - const double tmp_q_3 = Dummy_3709*tmp_q_1; - const double tmp_q_5 = Dummy_3708*tmp_q_1; - const double tmp_q_6 = Dummy_3710*tmp_q_1; - const double tmp_q_7 = Dummy_3711*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_7*(Dummy_3712*(-tmp_q_2 - tmp_q_3) + Dummy_3713*(-tmp_q_5 - tmp_q_6)); - const double res_tmp_0_1 = tmp_q_7*(Dummy_3712*tmp_q_2 + Dummy_3713*tmp_q_5); - const double res_tmp_0_2 = tmp_q_7*(Dummy_3712*tmp_q_3 + Dummy_3713*tmp_q_6); - const double res_tmp_1_1 = tmp_q_7*((Dummy_3707*Dummy_3707)*tmp_q_1 + (Dummy_3708*Dummy_3708)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_7*(Dummy_3709*tmp_q_2 + Dummy_3710*tmp_q_5); - const double res_tmp_2_2 = tmp_q_7*((Dummy_3709*Dummy_3709)*tmp_q_1 + (Dummy_3710*Dummy_3710)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q]; + const double tmp_q_1 = Dummy_3711*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3707 - Dummy_3709)*(-Dummy_3707*tmp_q_0 - Dummy_3709*tmp_q_0) + (-Dummy_3708 - Dummy_3710)*(-Dummy_3708*tmp_q_0 - Dummy_3710*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3707*Dummy_3707)*tmp_q_0 + (Dummy_3708*Dummy_3708)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3709*Dummy_3709)*tmp_q_0 + (Dummy_3710*Dummy_3710)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; diff --git a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp index 1666957d3efee1fe7b479991fbda7081ef793649..4f463d1b18b999a13656fbfec00a2cb3b5629aeb 100644 --- a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp +++ b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp @@ -57,13 +57,13 @@ namespace operatorgeneration { void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( double * RESTRICT _data_invDiag_, double * RESTRICT _data_k, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -96,238 +96,187 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double jac_affine_inv_2_1 = (-jac_affine_0_0*jac_affine_2_1 + jac_affine_0_1*jac_affine_2_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double jac_affine_inv_2_2 = (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); - const double tmp_q_0 = -jac_affine_inv_0_0 - jac_affine_inv_1_0 - jac_affine_inv_2_0; - const double tmp_q_5 = -jac_affine_inv_0_1 - jac_affine_inv_1_1 - jac_affine_inv_2_1; - const double tmp_q_9 = -jac_affine_inv_0_2 - jac_affine_inv_1_2 - jac_affine_inv_2_2; - const double Dummy_3822 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3823 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3824 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3825 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3826 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3827 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3828 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3829 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3830 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3831 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3832 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3833 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3834 = -Dummy_3822 + Dummy_3825; - const double Dummy_3835 = -Dummy_3822 + Dummy_3828; - const double Dummy_3836 = -Dummy_3822 + Dummy_3831; - const double Dummy_3837 = -Dummy_3823 + Dummy_3826; - const double Dummy_3838 = -Dummy_3823 + Dummy_3829; - const double Dummy_3839 = -Dummy_3823 + Dummy_3832; - const double Dummy_3840 = -Dummy_3824 + Dummy_3827; - const double Dummy_3841 = -Dummy_3824 + Dummy_3830; - const double Dummy_3842 = -Dummy_3824 + Dummy_3833; - const double Dummy_3843 = (Dummy_3838*Dummy_3842 - Dummy_3839*Dummy_3841)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3844 = (-Dummy_3835*Dummy_3842 + Dummy_3836*Dummy_3841)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3845 = (Dummy_3835*Dummy_3839 - Dummy_3836*Dummy_3838)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3846 = (-Dummy_3837*Dummy_3842 + Dummy_3839*Dummy_3840)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3847 = (Dummy_3834*Dummy_3842 - Dummy_3836*Dummy_3840)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3848 = (-Dummy_3834*Dummy_3839 + Dummy_3836*Dummy_3837)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3849 = (Dummy_3837*Dummy_3841 - Dummy_3838*Dummy_3840)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3850 = (-Dummy_3834*Dummy_3841 + Dummy_3835*Dummy_3840)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3851 = (Dummy_3834*Dummy_3838 - Dummy_3835*Dummy_3837)*1.0 / (Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3852 = fabs(Dummy_3834*Dummy_3838*Dummy_3842 - Dummy_3834*Dummy_3839*Dummy_3841 - Dummy_3835*Dummy_3837*Dummy_3842 + Dummy_3835*Dummy_3839*Dummy_3840 + Dummy_3836*Dummy_3837*Dummy_3841 - Dummy_3836*Dummy_3838*Dummy_3840); - const double Dummy_3853 = -Dummy_3843 - Dummy_3846 - Dummy_3849; - const double Dummy_3854 = -Dummy_3844 - Dummy_3847 - Dummy_3850; - const double Dummy_3855 = -Dummy_3845 - Dummy_3848 - Dummy_3851; - const double Dummy_3856 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_3857 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_3858 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_3859 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3860 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3861 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3862 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3863 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3864 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3865 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3866 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3867 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3868 = -Dummy_3856 + Dummy_3859; - const double Dummy_3869 = -Dummy_3856 + Dummy_3862; - const double Dummy_3870 = -Dummy_3856 + Dummy_3865; - const double Dummy_3871 = -Dummy_3857 + Dummy_3860; - const double Dummy_3872 = -Dummy_3857 + Dummy_3863; - const double Dummy_3873 = -Dummy_3857 + Dummy_3866; - const double Dummy_3874 = -Dummy_3858 + Dummy_3861; - const double Dummy_3875 = -Dummy_3858 + Dummy_3864; - const double Dummy_3876 = -Dummy_3858 + Dummy_3867; - const double Dummy_3877 = (Dummy_3872*Dummy_3876 - Dummy_3873*Dummy_3875)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3878 = (-Dummy_3869*Dummy_3876 + Dummy_3870*Dummy_3875)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3879 = (Dummy_3869*Dummy_3873 - Dummy_3870*Dummy_3872)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3880 = (-Dummy_3871*Dummy_3876 + Dummy_3873*Dummy_3874)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3881 = (Dummy_3868*Dummy_3876 - Dummy_3870*Dummy_3874)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3882 = (-Dummy_3868*Dummy_3873 + Dummy_3870*Dummy_3871)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3883 = (Dummy_3871*Dummy_3875 - Dummy_3872*Dummy_3874)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3884 = (-Dummy_3868*Dummy_3875 + Dummy_3869*Dummy_3874)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3885 = (Dummy_3868*Dummy_3872 - Dummy_3869*Dummy_3871)*1.0 / (Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3886 = fabs(Dummy_3868*Dummy_3872*Dummy_3876 - Dummy_3868*Dummy_3873*Dummy_3875 - Dummy_3869*Dummy_3871*Dummy_3876 + Dummy_3869*Dummy_3873*Dummy_3874 + Dummy_3870*Dummy_3871*Dummy_3875 - Dummy_3870*Dummy_3872*Dummy_3874); - const double Dummy_3887 = -Dummy_3877 - Dummy_3880 - Dummy_3883; - const double Dummy_3888 = -Dummy_3878 - Dummy_3881 - Dummy_3884; - const double Dummy_3889 = -Dummy_3879 - Dummy_3882 - Dummy_3885; - const double Dummy_3890 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3891 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3892 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3893 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3894 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3895 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3896 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3897 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3898 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3899 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3900 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3901 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3902 = -Dummy_3890 + Dummy_3893; - const double Dummy_3903 = -Dummy_3890 + Dummy_3896; - const double Dummy_3904 = -Dummy_3890 + Dummy_3899; - const double Dummy_3905 = -Dummy_3891 + Dummy_3894; - const double Dummy_3906 = -Dummy_3891 + Dummy_3897; - const double Dummy_3907 = -Dummy_3891 + Dummy_3900; - const double Dummy_3908 = -Dummy_3892 + Dummy_3895; - const double Dummy_3909 = -Dummy_3892 + Dummy_3898; - const double Dummy_3910 = -Dummy_3892 + Dummy_3901; - const double Dummy_3911 = (Dummy_3906*Dummy_3910 - Dummy_3907*Dummy_3909)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3912 = (-Dummy_3903*Dummy_3910 + Dummy_3904*Dummy_3909)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3913 = (Dummy_3903*Dummy_3907 - Dummy_3904*Dummy_3906)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3914 = (-Dummy_3905*Dummy_3910 + Dummy_3907*Dummy_3908)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3915 = (Dummy_3902*Dummy_3910 - Dummy_3904*Dummy_3908)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3916 = (-Dummy_3902*Dummy_3907 + Dummy_3904*Dummy_3905)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3917 = (Dummy_3905*Dummy_3909 - Dummy_3906*Dummy_3908)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3918 = (-Dummy_3902*Dummy_3909 + Dummy_3903*Dummy_3908)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3919 = (Dummy_3902*Dummy_3906 - Dummy_3903*Dummy_3905)*1.0 / (Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3920 = fabs(Dummy_3902*Dummy_3906*Dummy_3910 - Dummy_3902*Dummy_3907*Dummy_3909 - Dummy_3903*Dummy_3905*Dummy_3910 + Dummy_3903*Dummy_3907*Dummy_3908 + Dummy_3904*Dummy_3905*Dummy_3909 - Dummy_3904*Dummy_3906*Dummy_3908); - const double Dummy_3921 = -Dummy_3911 - Dummy_3914 - Dummy_3917; - const double Dummy_3922 = -Dummy_3912 - Dummy_3915 - Dummy_3918; - const double Dummy_3923 = -Dummy_3913 - Dummy_3916 - Dummy_3919; - const double Dummy_3924 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_3925 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_3926 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_3927 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3928 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3929 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3930 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3931 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3932 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3933 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3934 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3935 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3936 = -Dummy_3924 + Dummy_3927; - const double Dummy_3937 = -Dummy_3924 + Dummy_3930; - const double Dummy_3938 = -Dummy_3924 + Dummy_3933; - const double Dummy_3939 = -Dummy_3925 + Dummy_3928; - const double Dummy_3940 = -Dummy_3925 + Dummy_3931; - const double Dummy_3941 = -Dummy_3925 + Dummy_3934; - const double Dummy_3942 = -Dummy_3926 + Dummy_3929; - const double Dummy_3943 = -Dummy_3926 + Dummy_3932; - const double Dummy_3944 = -Dummy_3926 + Dummy_3935; - const double Dummy_3945 = (Dummy_3940*Dummy_3944 - Dummy_3941*Dummy_3943)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3946 = (-Dummy_3937*Dummy_3944 + Dummy_3938*Dummy_3943)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3947 = (Dummy_3937*Dummy_3941 - Dummy_3938*Dummy_3940)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3948 = (-Dummy_3939*Dummy_3944 + Dummy_3941*Dummy_3942)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3949 = (Dummy_3936*Dummy_3944 - Dummy_3938*Dummy_3942)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3950 = (-Dummy_3936*Dummy_3941 + Dummy_3938*Dummy_3939)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3951 = (Dummy_3939*Dummy_3943 - Dummy_3940*Dummy_3942)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3952 = (-Dummy_3936*Dummy_3943 + Dummy_3937*Dummy_3942)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3953 = (Dummy_3936*Dummy_3940 - Dummy_3937*Dummy_3939)*1.0 / (Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3954 = fabs(Dummy_3936*Dummy_3940*Dummy_3944 - Dummy_3936*Dummy_3941*Dummy_3943 - Dummy_3937*Dummy_3939*Dummy_3944 + Dummy_3937*Dummy_3941*Dummy_3942 + Dummy_3938*Dummy_3939*Dummy_3943 - Dummy_3938*Dummy_3940*Dummy_3942); - const double Dummy_3955 = -Dummy_3945 - Dummy_3948 - Dummy_3951; - const double Dummy_3956 = -Dummy_3946 - Dummy_3949 - Dummy_3952; - const double Dummy_3957 = -Dummy_3947 - Dummy_3950 - Dummy_3953; - const double Dummy_3958 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3959 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3960 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3961 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_3962 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_3963 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_3964 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3965 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3966 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3967 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_3968 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_3969 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_3970 = -Dummy_3958 + Dummy_3961; - const double Dummy_3971 = -Dummy_3958 + Dummy_3964; - const double Dummy_3972 = -Dummy_3958 + Dummy_3967; - const double Dummy_3973 = -Dummy_3959 + Dummy_3962; - const double Dummy_3974 = -Dummy_3959 + Dummy_3965; - const double Dummy_3975 = -Dummy_3959 + Dummy_3968; - const double Dummy_3976 = -Dummy_3960 + Dummy_3963; - const double Dummy_3977 = -Dummy_3960 + Dummy_3966; - const double Dummy_3978 = -Dummy_3960 + Dummy_3969; - const double Dummy_3979 = (Dummy_3974*Dummy_3978 - Dummy_3975*Dummy_3977)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3980 = (-Dummy_3971*Dummy_3978 + Dummy_3972*Dummy_3977)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3981 = (Dummy_3971*Dummy_3975 - Dummy_3972*Dummy_3974)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3982 = (-Dummy_3973*Dummy_3978 + Dummy_3975*Dummy_3976)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3983 = (Dummy_3970*Dummy_3978 - Dummy_3972*Dummy_3976)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3984 = (-Dummy_3970*Dummy_3975 + Dummy_3972*Dummy_3973)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3985 = (Dummy_3973*Dummy_3977 - Dummy_3974*Dummy_3976)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3986 = (-Dummy_3970*Dummy_3977 + Dummy_3971*Dummy_3976)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3987 = (Dummy_3970*Dummy_3974 - Dummy_3971*Dummy_3973)*1.0 / (Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3988 = fabs(Dummy_3970*Dummy_3974*Dummy_3978 - Dummy_3970*Dummy_3975*Dummy_3977 - Dummy_3971*Dummy_3973*Dummy_3978 + Dummy_3971*Dummy_3975*Dummy_3976 + Dummy_3972*Dummy_3973*Dummy_3977 - Dummy_3972*Dummy_3974*Dummy_3976); - const double Dummy_3989 = -Dummy_3979 - Dummy_3982 - Dummy_3985; - const double Dummy_3990 = -Dummy_3980 - Dummy_3983 - Dummy_3986; - const double Dummy_3991 = -Dummy_3981 - Dummy_3984 - Dummy_3987; + const double Dummy_3820 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3821 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3822 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3823 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3824 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3825 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3826 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3827 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3828 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3829 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3830 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3831 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3832 = -Dummy_3820 + Dummy_3823; + const double Dummy_3833 = -Dummy_3820 + Dummy_3826; + const double Dummy_3834 = -Dummy_3820 + Dummy_3829; + const double Dummy_3835 = -Dummy_3821 + Dummy_3824; + const double Dummy_3836 = -Dummy_3821 + Dummy_3827; + const double Dummy_3837 = -Dummy_3821 + Dummy_3830; + const double Dummy_3838 = -Dummy_3822 + Dummy_3825; + const double Dummy_3839 = -Dummy_3822 + Dummy_3828; + const double Dummy_3840 = -Dummy_3822 + Dummy_3831; + const double Dummy_3841 = (Dummy_3836*Dummy_3840 - Dummy_3837*Dummy_3839)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3842 = (-Dummy_3833*Dummy_3840 + Dummy_3834*Dummy_3839)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3843 = (Dummy_3833*Dummy_3837 - Dummy_3834*Dummy_3836)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3844 = (-Dummy_3835*Dummy_3840 + Dummy_3837*Dummy_3838)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3845 = (Dummy_3832*Dummy_3840 - Dummy_3834*Dummy_3838)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3846 = (-Dummy_3832*Dummy_3837 + Dummy_3834*Dummy_3835)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3847 = (Dummy_3835*Dummy_3839 - Dummy_3836*Dummy_3838)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3848 = (-Dummy_3832*Dummy_3839 + Dummy_3833*Dummy_3838)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3849 = (Dummy_3832*Dummy_3836 - Dummy_3833*Dummy_3835)*1.0 / (Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3850 = fabs(Dummy_3832*Dummy_3836*Dummy_3840 - Dummy_3832*Dummy_3837*Dummy_3839 - Dummy_3833*Dummy_3835*Dummy_3840 + Dummy_3833*Dummy_3837*Dummy_3838 + Dummy_3834*Dummy_3835*Dummy_3839 - Dummy_3834*Dummy_3836*Dummy_3838); + const double Dummy_3851 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_3852 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_3853 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_3854 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3855 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3856 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3857 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3858 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3859 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3860 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3861 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3862 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3863 = -Dummy_3851 + Dummy_3854; + const double Dummy_3864 = -Dummy_3851 + Dummy_3857; + const double Dummy_3865 = -Dummy_3851 + Dummy_3860; + const double Dummy_3866 = -Dummy_3852 + Dummy_3855; + const double Dummy_3867 = -Dummy_3852 + Dummy_3858; + const double Dummy_3868 = -Dummy_3852 + Dummy_3861; + const double Dummy_3869 = -Dummy_3853 + Dummy_3856; + const double Dummy_3870 = -Dummy_3853 + Dummy_3859; + const double Dummy_3871 = -Dummy_3853 + Dummy_3862; + const double Dummy_3872 = (Dummy_3867*Dummy_3871 - Dummy_3868*Dummy_3870)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3873 = (-Dummy_3864*Dummy_3871 + Dummy_3865*Dummy_3870)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3874 = (Dummy_3864*Dummy_3868 - Dummy_3865*Dummy_3867)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3875 = (-Dummy_3866*Dummy_3871 + Dummy_3868*Dummy_3869)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3876 = (Dummy_3863*Dummy_3871 - Dummy_3865*Dummy_3869)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3877 = (-Dummy_3863*Dummy_3868 + Dummy_3865*Dummy_3866)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3878 = (Dummy_3866*Dummy_3870 - Dummy_3867*Dummy_3869)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3879 = (-Dummy_3863*Dummy_3870 + Dummy_3864*Dummy_3869)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3880 = (Dummy_3863*Dummy_3867 - Dummy_3864*Dummy_3866)*1.0 / (Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3881 = fabs(Dummy_3863*Dummy_3867*Dummy_3871 - Dummy_3863*Dummy_3868*Dummy_3870 - Dummy_3864*Dummy_3866*Dummy_3871 + Dummy_3864*Dummy_3868*Dummy_3869 + Dummy_3865*Dummy_3866*Dummy_3870 - Dummy_3865*Dummy_3867*Dummy_3869); + const double Dummy_3882 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3883 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3884 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3885 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3886 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3887 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3888 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3889 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3890 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3891 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3892 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3893 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3894 = -Dummy_3882 + Dummy_3885; + const double Dummy_3895 = -Dummy_3882 + Dummy_3888; + const double Dummy_3896 = -Dummy_3882 + Dummy_3891; + const double Dummy_3897 = -Dummy_3883 + Dummy_3886; + const double Dummy_3898 = -Dummy_3883 + Dummy_3889; + const double Dummy_3899 = -Dummy_3883 + Dummy_3892; + const double Dummy_3900 = -Dummy_3884 + Dummy_3887; + const double Dummy_3901 = -Dummy_3884 + Dummy_3890; + const double Dummy_3902 = -Dummy_3884 + Dummy_3893; + const double Dummy_3903 = (Dummy_3898*Dummy_3902 - Dummy_3899*Dummy_3901)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3904 = (-Dummy_3895*Dummy_3902 + Dummy_3896*Dummy_3901)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3905 = (Dummy_3895*Dummy_3899 - Dummy_3896*Dummy_3898)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3906 = (-Dummy_3897*Dummy_3902 + Dummy_3899*Dummy_3900)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3907 = (Dummy_3894*Dummy_3902 - Dummy_3896*Dummy_3900)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3908 = (-Dummy_3894*Dummy_3899 + Dummy_3896*Dummy_3897)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3909 = (Dummy_3897*Dummy_3901 - Dummy_3898*Dummy_3900)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3910 = (-Dummy_3894*Dummy_3901 + Dummy_3895*Dummy_3900)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3911 = (Dummy_3894*Dummy_3898 - Dummy_3895*Dummy_3897)*1.0 / (Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3912 = fabs(Dummy_3894*Dummy_3898*Dummy_3902 - Dummy_3894*Dummy_3899*Dummy_3901 - Dummy_3895*Dummy_3897*Dummy_3902 + Dummy_3895*Dummy_3899*Dummy_3900 + Dummy_3896*Dummy_3897*Dummy_3901 - Dummy_3896*Dummy_3898*Dummy_3900); + const double Dummy_3913 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_3914 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_3915 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_3916 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3917 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3918 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3919 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3920 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3921 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3922 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3923 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3924 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3925 = -Dummy_3913 + Dummy_3916; + const double Dummy_3926 = -Dummy_3913 + Dummy_3919; + const double Dummy_3927 = -Dummy_3913 + Dummy_3922; + const double Dummy_3928 = -Dummy_3914 + Dummy_3917; + const double Dummy_3929 = -Dummy_3914 + Dummy_3920; + const double Dummy_3930 = -Dummy_3914 + Dummy_3923; + const double Dummy_3931 = -Dummy_3915 + Dummy_3918; + const double Dummy_3932 = -Dummy_3915 + Dummy_3921; + const double Dummy_3933 = -Dummy_3915 + Dummy_3924; + const double Dummy_3934 = (Dummy_3929*Dummy_3933 - Dummy_3930*Dummy_3932)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3935 = (-Dummy_3926*Dummy_3933 + Dummy_3927*Dummy_3932)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3936 = (Dummy_3926*Dummy_3930 - Dummy_3927*Dummy_3929)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3937 = (-Dummy_3928*Dummy_3933 + Dummy_3930*Dummy_3931)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3938 = (Dummy_3925*Dummy_3933 - Dummy_3927*Dummy_3931)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3939 = (-Dummy_3925*Dummy_3930 + Dummy_3927*Dummy_3928)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3940 = (Dummy_3928*Dummy_3932 - Dummy_3929*Dummy_3931)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3941 = (-Dummy_3925*Dummy_3932 + Dummy_3926*Dummy_3931)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3942 = (Dummy_3925*Dummy_3929 - Dummy_3926*Dummy_3928)*1.0 / (Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3943 = fabs(Dummy_3925*Dummy_3929*Dummy_3933 - Dummy_3925*Dummy_3930*Dummy_3932 - Dummy_3926*Dummy_3928*Dummy_3933 + Dummy_3926*Dummy_3930*Dummy_3931 + Dummy_3927*Dummy_3928*Dummy_3932 - Dummy_3927*Dummy_3929*Dummy_3931); + const double Dummy_3944 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3945 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3946 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3947 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_3948 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_3949 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_3950 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3951 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3952 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3953 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_3954 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_3955 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_3956 = -Dummy_3944 + Dummy_3947; + const double Dummy_3957 = -Dummy_3944 + Dummy_3950; + const double Dummy_3958 = -Dummy_3944 + Dummy_3953; + const double Dummy_3959 = -Dummy_3945 + Dummy_3948; + const double Dummy_3960 = -Dummy_3945 + Dummy_3951; + const double Dummy_3961 = -Dummy_3945 + Dummy_3954; + const double Dummy_3962 = -Dummy_3946 + Dummy_3949; + const double Dummy_3963 = -Dummy_3946 + Dummy_3952; + const double Dummy_3964 = -Dummy_3946 + Dummy_3955; + const double Dummy_3965 = (Dummy_3960*Dummy_3964 - Dummy_3961*Dummy_3963)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3966 = (-Dummy_3957*Dummy_3964 + Dummy_3958*Dummy_3963)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3967 = (Dummy_3957*Dummy_3961 - Dummy_3958*Dummy_3960)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3968 = (-Dummy_3959*Dummy_3964 + Dummy_3961*Dummy_3962)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3969 = (Dummy_3956*Dummy_3964 - Dummy_3958*Dummy_3962)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3970 = (-Dummy_3956*Dummy_3961 + Dummy_3958*Dummy_3959)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3971 = (Dummy_3959*Dummy_3963 - Dummy_3960*Dummy_3962)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3972 = (-Dummy_3956*Dummy_3963 + Dummy_3957*Dummy_3962)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3973 = (Dummy_3956*Dummy_3960 - Dummy_3957*Dummy_3959)*1.0 / (Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); + const double Dummy_3974 = fabs(Dummy_3956*Dummy_3960*Dummy_3964 - Dummy_3956*Dummy_3961*Dummy_3963 - Dummy_3957*Dummy_3959*Dummy_3964 + Dummy_3957*Dummy_3961*Dummy_3962 + Dummy_3958*Dummy_3959*Dummy_3963 - Dummy_3958*Dummy_3960*Dummy_3962); { for (int64_t ctr_2 = 0; ctr_2 < micro_edges_per_macro_edge; ctr_2 += 1) for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = jac_affine_inv_0_0*tmp_q_1; - const double tmp_q_3 = jac_affine_inv_1_0*tmp_q_1; - const double tmp_q_4 = jac_affine_inv_2_0*tmp_q_1; - const double tmp_q_6 = jac_affine_inv_0_1*tmp_q_1; - const double tmp_q_7 = jac_affine_inv_1_1*tmp_q_1; - const double tmp_q_8 = jac_affine_inv_2_1*tmp_q_1; - const double tmp_q_10 = jac_affine_inv_0_2*tmp_q_1; - const double tmp_q_11 = jac_affine_inv_1_2*tmp_q_1; - const double tmp_q_12 = jac_affine_inv_2_2*tmp_q_1; - const double tmp_q_13 = abs_det_jac_affine*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(tmp_q_0*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + tmp_q_5*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + tmp_q_9*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(tmp_q_0*tmp_q_2 + tmp_q_10*tmp_q_9 + tmp_q_5*tmp_q_6); - const double res_tmp_0_2 = tmp_q_13*(tmp_q_0*tmp_q_3 + tmp_q_11*tmp_q_9 + tmp_q_5*tmp_q_7); - const double res_tmp_0_3 = tmp_q_13*(tmp_q_0*tmp_q_4 + tmp_q_12*tmp_q_9 + tmp_q_5*tmp_q_8); - const double res_tmp_1_1 = tmp_q_13*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_1 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_1 + (jac_affine_inv_0_2*jac_affine_inv_0_2)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(jac_affine_inv_1_0*tmp_q_2 + jac_affine_inv_1_1*tmp_q_6 + jac_affine_inv_1_2*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(jac_affine_inv_2_0*tmp_q_2 + jac_affine_inv_2_1*tmp_q_6 + jac_affine_inv_2_2*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_1 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_1 + (jac_affine_inv_1_2*jac_affine_inv_1_2)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(jac_affine_inv_2_0*tmp_q_3 + jac_affine_inv_2_1*tmp_q_7 + jac_affine_inv_2_2*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((jac_affine_inv_2_0*jac_affine_inv_2_0)*tmp_q_1 + (jac_affine_inv_2_1*jac_affine_inv_2_1)*tmp_q_1 + (jac_affine_inv_2_2*jac_affine_inv_2_2)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = abs_det_jac_affine*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-jac_affine_inv_0_0 - jac_affine_inv_1_0 - jac_affine_inv_2_0)*(-jac_affine_inv_0_0*tmp_q_0 - jac_affine_inv_1_0*tmp_q_0 - jac_affine_inv_2_0*tmp_q_0) + (-jac_affine_inv_0_1 - jac_affine_inv_1_1 - jac_affine_inv_2_1)*(-jac_affine_inv_0_1*tmp_q_0 - jac_affine_inv_1_1*tmp_q_0 - jac_affine_inv_2_1*tmp_q_0) + (-jac_affine_inv_0_2 - jac_affine_inv_1_2 - jac_affine_inv_2_2)*(-jac_affine_inv_0_2*tmp_q_0 - jac_affine_inv_1_2*tmp_q_0 - jac_affine_inv_2_2*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_0 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_0 + (jac_affine_inv_0_2*jac_affine_inv_0_2)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_0 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_0 + (jac_affine_inv_1_2*jac_affine_inv_1_2)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((jac_affine_inv_2_0*jac_affine_inv_2_0)*tmp_q_0 + (jac_affine_inv_2_1*jac_affine_inv_2_1)*tmp_q_0 + (jac_affine_inv_2_2*jac_affine_inv_2_2)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -341,60 +290,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3843*tmp_q_1; - const double tmp_q_3 = Dummy_3846*tmp_q_1; - const double tmp_q_4 = Dummy_3849*tmp_q_1; - const double tmp_q_6 = Dummy_3844*tmp_q_1; - const double tmp_q_7 = Dummy_3847*tmp_q_1; - const double tmp_q_8 = Dummy_3850*tmp_q_1; - const double tmp_q_10 = Dummy_3845*tmp_q_1; - const double tmp_q_11 = Dummy_3848*tmp_q_1; - const double tmp_q_12 = Dummy_3851*tmp_q_1; - const double tmp_q_13 = Dummy_3852*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3853*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3854*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3855*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3853*tmp_q_2 + Dummy_3854*tmp_q_6 + Dummy_3855*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3853*tmp_q_3 + Dummy_3854*tmp_q_7 + Dummy_3855*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3853*tmp_q_4 + Dummy_3854*tmp_q_8 + Dummy_3855*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3843*Dummy_3843)*tmp_q_1 + (Dummy_3844*Dummy_3844)*tmp_q_1 + (Dummy_3845*Dummy_3845)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3846*tmp_q_2 + Dummy_3847*tmp_q_6 + Dummy_3848*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3849*tmp_q_2 + Dummy_3850*tmp_q_6 + Dummy_3851*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3846*Dummy_3846)*tmp_q_1 + (Dummy_3847*Dummy_3847)*tmp_q_1 + (Dummy_3848*Dummy_3848)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3849*tmp_q_3 + Dummy_3850*tmp_q_7 + Dummy_3851*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3849*Dummy_3849)*tmp_q_1 + (Dummy_3850*Dummy_3850)*tmp_q_1 + (Dummy_3851*Dummy_3851)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3850*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3841 - Dummy_3844 - Dummy_3847)*(-Dummy_3841*tmp_q_0 - Dummy_3844*tmp_q_0 - Dummy_3847*tmp_q_0) + (-Dummy_3842 - Dummy_3845 - Dummy_3848)*(-Dummy_3842*tmp_q_0 - Dummy_3845*tmp_q_0 - Dummy_3848*tmp_q_0) + (-Dummy_3843 - Dummy_3846 - Dummy_3849)*(-Dummy_3843*tmp_q_0 - Dummy_3846*tmp_q_0 - Dummy_3849*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3841*Dummy_3841)*tmp_q_0 + (Dummy_3842*Dummy_3842)*tmp_q_0 + (Dummy_3843*Dummy_3843)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3844*Dummy_3844)*tmp_q_0 + (Dummy_3845*Dummy_3845)*tmp_q_0 + (Dummy_3846*Dummy_3846)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3847*Dummy_3847)*tmp_q_0 + (Dummy_3848*Dummy_3848)*tmp_q_0 + (Dummy_3849*Dummy_3849)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -408,60 +324,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3877*tmp_q_1; - const double tmp_q_3 = Dummy_3880*tmp_q_1; - const double tmp_q_4 = Dummy_3883*tmp_q_1; - const double tmp_q_6 = Dummy_3878*tmp_q_1; - const double tmp_q_7 = Dummy_3881*tmp_q_1; - const double tmp_q_8 = Dummy_3884*tmp_q_1; - const double tmp_q_10 = Dummy_3879*tmp_q_1; - const double tmp_q_11 = Dummy_3882*tmp_q_1; - const double tmp_q_12 = Dummy_3885*tmp_q_1; - const double tmp_q_13 = Dummy_3886*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3887*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3888*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3889*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3887*tmp_q_2 + Dummy_3888*tmp_q_6 + Dummy_3889*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3887*tmp_q_3 + Dummy_3888*tmp_q_7 + Dummy_3889*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3887*tmp_q_4 + Dummy_3888*tmp_q_8 + Dummy_3889*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3877*Dummy_3877)*tmp_q_1 + (Dummy_3878*Dummy_3878)*tmp_q_1 + (Dummy_3879*Dummy_3879)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3880*tmp_q_2 + Dummy_3881*tmp_q_6 + Dummy_3882*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3883*tmp_q_2 + Dummy_3884*tmp_q_6 + Dummy_3885*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3880*Dummy_3880)*tmp_q_1 + (Dummy_3881*Dummy_3881)*tmp_q_1 + (Dummy_3882*Dummy_3882)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3883*tmp_q_3 + Dummy_3884*tmp_q_7 + Dummy_3885*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3883*Dummy_3883)*tmp_q_1 + (Dummy_3884*Dummy_3884)*tmp_q_1 + (Dummy_3885*Dummy_3885)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3881*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3872 - Dummy_3875 - Dummy_3878)*(-Dummy_3872*tmp_q_0 - Dummy_3875*tmp_q_0 - Dummy_3878*tmp_q_0) + (-Dummy_3873 - Dummy_3876 - Dummy_3879)*(-Dummy_3873*tmp_q_0 - Dummy_3876*tmp_q_0 - Dummy_3879*tmp_q_0) + (-Dummy_3874 - Dummy_3877 - Dummy_3880)*(-Dummy_3874*tmp_q_0 - Dummy_3877*tmp_q_0 - Dummy_3880*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3872*Dummy_3872)*tmp_q_0 + (Dummy_3873*Dummy_3873)*tmp_q_0 + (Dummy_3874*Dummy_3874)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3875*Dummy_3875)*tmp_q_0 + (Dummy_3876*Dummy_3876)*tmp_q_0 + (Dummy_3877*Dummy_3877)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3878*Dummy_3878)*tmp_q_0 + (Dummy_3879*Dummy_3879)*tmp_q_0 + (Dummy_3880*Dummy_3880)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -475,60 +358,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3911*tmp_q_1; - const double tmp_q_3 = Dummy_3914*tmp_q_1; - const double tmp_q_4 = Dummy_3917*tmp_q_1; - const double tmp_q_6 = Dummy_3912*tmp_q_1; - const double tmp_q_7 = Dummy_3915*tmp_q_1; - const double tmp_q_8 = Dummy_3918*tmp_q_1; - const double tmp_q_10 = Dummy_3913*tmp_q_1; - const double tmp_q_11 = Dummy_3916*tmp_q_1; - const double tmp_q_12 = Dummy_3919*tmp_q_1; - const double tmp_q_13 = Dummy_3920*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3921*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3922*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3923*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3921*tmp_q_2 + Dummy_3922*tmp_q_6 + Dummy_3923*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3921*tmp_q_3 + Dummy_3922*tmp_q_7 + Dummy_3923*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3921*tmp_q_4 + Dummy_3922*tmp_q_8 + Dummy_3923*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3911*Dummy_3911)*tmp_q_1 + (Dummy_3912*Dummy_3912)*tmp_q_1 + (Dummy_3913*Dummy_3913)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3914*tmp_q_2 + Dummy_3915*tmp_q_6 + Dummy_3916*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3917*tmp_q_2 + Dummy_3918*tmp_q_6 + Dummy_3919*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3914*Dummy_3914)*tmp_q_1 + (Dummy_3915*Dummy_3915)*tmp_q_1 + (Dummy_3916*Dummy_3916)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3917*tmp_q_3 + Dummy_3918*tmp_q_7 + Dummy_3919*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3917*Dummy_3917)*tmp_q_1 + (Dummy_3918*Dummy_3918)*tmp_q_1 + (Dummy_3919*Dummy_3919)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3912*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3903 - Dummy_3906 - Dummy_3909)*(-Dummy_3903*tmp_q_0 - Dummy_3906*tmp_q_0 - Dummy_3909*tmp_q_0) + (-Dummy_3904 - Dummy_3907 - Dummy_3910)*(-Dummy_3904*tmp_q_0 - Dummy_3907*tmp_q_0 - Dummy_3910*tmp_q_0) + (-Dummy_3905 - Dummy_3908 - Dummy_3911)*(-Dummy_3905*tmp_q_0 - Dummy_3908*tmp_q_0 - Dummy_3911*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3903*Dummy_3903)*tmp_q_0 + (Dummy_3904*Dummy_3904)*tmp_q_0 + (Dummy_3905*Dummy_3905)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3906*Dummy_3906)*tmp_q_0 + (Dummy_3907*Dummy_3907)*tmp_q_0 + (Dummy_3908*Dummy_3908)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3909*Dummy_3909)*tmp_q_0 + (Dummy_3910*Dummy_3910)*tmp_q_0 + (Dummy_3911*Dummy_3911)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -542,60 +392,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3945*tmp_q_1; - const double tmp_q_3 = Dummy_3948*tmp_q_1; - const double tmp_q_4 = Dummy_3951*tmp_q_1; - const double tmp_q_6 = Dummy_3946*tmp_q_1; - const double tmp_q_7 = Dummy_3949*tmp_q_1; - const double tmp_q_8 = Dummy_3952*tmp_q_1; - const double tmp_q_10 = Dummy_3947*tmp_q_1; - const double tmp_q_11 = Dummy_3950*tmp_q_1; - const double tmp_q_12 = Dummy_3953*tmp_q_1; - const double tmp_q_13 = Dummy_3954*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3955*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3956*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3957*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3955*tmp_q_2 + Dummy_3956*tmp_q_6 + Dummy_3957*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3955*tmp_q_3 + Dummy_3956*tmp_q_7 + Dummy_3957*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3955*tmp_q_4 + Dummy_3956*tmp_q_8 + Dummy_3957*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3945*Dummy_3945)*tmp_q_1 + (Dummy_3946*Dummy_3946)*tmp_q_1 + (Dummy_3947*Dummy_3947)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3948*tmp_q_2 + Dummy_3949*tmp_q_6 + Dummy_3950*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3951*tmp_q_2 + Dummy_3952*tmp_q_6 + Dummy_3953*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3948*Dummy_3948)*tmp_q_1 + (Dummy_3949*Dummy_3949)*tmp_q_1 + (Dummy_3950*Dummy_3950)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3951*tmp_q_3 + Dummy_3952*tmp_q_7 + Dummy_3953*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3951*Dummy_3951)*tmp_q_1 + (Dummy_3952*Dummy_3952)*tmp_q_1 + (Dummy_3953*Dummy_3953)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3943*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3934 - Dummy_3937 - Dummy_3940)*(-Dummy_3934*tmp_q_0 - Dummy_3937*tmp_q_0 - Dummy_3940*tmp_q_0) + (-Dummy_3935 - Dummy_3938 - Dummy_3941)*(-Dummy_3935*tmp_q_0 - Dummy_3938*tmp_q_0 - Dummy_3941*tmp_q_0) + (-Dummy_3936 - Dummy_3939 - Dummy_3942)*(-Dummy_3936*tmp_q_0 - Dummy_3939*tmp_q_0 - Dummy_3942*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3934*Dummy_3934)*tmp_q_0 + (Dummy_3935*Dummy_3935)*tmp_q_0 + (Dummy_3936*Dummy_3936)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3937*Dummy_3937)*tmp_q_0 + (Dummy_3938*Dummy_3938)*tmp_q_0 + (Dummy_3939*Dummy_3939)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3940*Dummy_3940)*tmp_q_0 + (Dummy_3941*Dummy_3941)*tmp_q_0 + (Dummy_3942*Dummy_3942)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -609,60 +426,27 @@ void P1ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; double q_acc_3_3 = 0.0; for (int64_t q = 0; q < 4; q += 1) { - const double tmp_q_1 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; - const double tmp_q_2 = Dummy_3979*tmp_q_1; - const double tmp_q_3 = Dummy_3982*tmp_q_1; - const double tmp_q_4 = Dummy_3985*tmp_q_1; - const double tmp_q_6 = Dummy_3980*tmp_q_1; - const double tmp_q_7 = Dummy_3983*tmp_q_1; - const double tmp_q_8 = Dummy_3986*tmp_q_1; - const double tmp_q_10 = Dummy_3981*tmp_q_1; - const double tmp_q_11 = Dummy_3984*tmp_q_1; - const double tmp_q_12 = Dummy_3987*tmp_q_1; - const double tmp_q_13 = Dummy_3988*_data_q_w[q]; - const double res_tmp_0_0 = tmp_q_13*(Dummy_3989*(-tmp_q_2 - tmp_q_3 - tmp_q_4) + Dummy_3990*(-tmp_q_6 - tmp_q_7 - tmp_q_8) + Dummy_3991*(-tmp_q_10 - tmp_q_11 - tmp_q_12)); - const double res_tmp_0_1 = tmp_q_13*(Dummy_3989*tmp_q_2 + Dummy_3990*tmp_q_6 + Dummy_3991*tmp_q_10); - const double res_tmp_0_2 = tmp_q_13*(Dummy_3989*tmp_q_3 + Dummy_3990*tmp_q_7 + Dummy_3991*tmp_q_11); - const double res_tmp_0_3 = tmp_q_13*(Dummy_3989*tmp_q_4 + Dummy_3990*tmp_q_8 + Dummy_3991*tmp_q_12); - const double res_tmp_1_1 = tmp_q_13*((Dummy_3979*Dummy_3979)*tmp_q_1 + (Dummy_3980*Dummy_3980)*tmp_q_1 + (Dummy_3981*Dummy_3981)*tmp_q_1); - const double res_tmp_1_2 = tmp_q_13*(Dummy_3982*tmp_q_2 + Dummy_3983*tmp_q_6 + Dummy_3984*tmp_q_10); - const double res_tmp_1_3 = tmp_q_13*(Dummy_3985*tmp_q_2 + Dummy_3986*tmp_q_6 + Dummy_3987*tmp_q_10); - const double res_tmp_2_2 = tmp_q_13*((Dummy_3982*Dummy_3982)*tmp_q_1 + (Dummy_3983*Dummy_3983)*tmp_q_1 + (Dummy_3984*Dummy_3984)*tmp_q_1); - const double res_tmp_2_3 = tmp_q_13*(Dummy_3985*tmp_q_3 + Dummy_3986*tmp_q_7 + Dummy_3987*tmp_q_11); - const double res_tmp_3_3 = tmp_q_13*((Dummy_3985*Dummy_3985)*tmp_q_1 + (Dummy_3986*Dummy_3986)*tmp_q_1 + (Dummy_3987*Dummy_3987)*tmp_q_1); + const double tmp_q_0 = k_dof_0*(1.0 - _data_q_p_0[q] - _data_q_p_1[q] - _data_q_p_2[q]) + k_dof_1*_data_q_p_0[q] + k_dof_2*_data_q_p_1[q] + k_dof_3*_data_q_p_2[q]; + const double tmp_q_1 = Dummy_3974*_data_q_w[q]; + const double res_tmp_0_0 = tmp_q_1*((-Dummy_3965 - Dummy_3968 - Dummy_3971)*(-Dummy_3965*tmp_q_0 - Dummy_3968*tmp_q_0 - Dummy_3971*tmp_q_0) + (-Dummy_3966 - Dummy_3969 - Dummy_3972)*(-Dummy_3966*tmp_q_0 - Dummy_3969*tmp_q_0 - Dummy_3972*tmp_q_0) + (-Dummy_3967 - Dummy_3970 - Dummy_3973)*(-Dummy_3967*tmp_q_0 - Dummy_3970*tmp_q_0 - Dummy_3973*tmp_q_0)); + const double res_tmp_1_1 = tmp_q_1*((Dummy_3965*Dummy_3965)*tmp_q_0 + (Dummy_3966*Dummy_3966)*tmp_q_0 + (Dummy_3967*Dummy_3967)*tmp_q_0); + const double res_tmp_2_2 = tmp_q_1*((Dummy_3968*Dummy_3968)*tmp_q_0 + (Dummy_3969*Dummy_3969)*tmp_q_0 + (Dummy_3970*Dummy_3970)*tmp_q_0); + const double res_tmp_3_3 = tmp_q_1*((Dummy_3971*Dummy_3971)*tmp_q_0 + (Dummy_3972*Dummy_3972)*tmp_q_0 + (Dummy_3973*Dummy_3973)*tmp_q_0); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; diff --git a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_toMatrix_macro_2D.cpp b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_toMatrix_macro_2D.cpp index c74e1b93c279c465234ff40bf548e7f3aecaaccc..eb40bb3b84d335abceace7fbbb73c213eff7d0fa 100644 --- a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_toMatrix_macro_2D.cpp +++ b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_toMatrix_macro_2D.cpp @@ -54,14 +54,14 @@ namespace hyteg { namespace operatorgeneration { -void P1ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, double * RESTRICT _data_k, int64_t * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const +void P1ElementwiseDivKGrad::toMatrix_macro_2D( idx_t * RESTRICT _data_dst, double * RESTRICT _data_k, idx_t * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -101,9 +101,9 @@ void P1ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, do for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -146,7 +146,7 @@ void P1ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, do std::vector< uint_t > _data_rowIdx( 3 ); std::vector< uint_t > _data_colIdx( 3 ); - std::vector< double > _data_mat( 9 ); + std::vector< real_t > _data_mat( 9 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); @@ -159,15 +159,15 @@ void P1ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, do - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_1_0; - _data_mat[4] = elMat_1_1; - _data_mat[5] = elMat_1_2; - _data_mat[6] = elMat_2_0; - _data_mat[7] = elMat_2_1; - _data_mat[8] = elMat_2_2; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_1_0)); + _data_mat[4] = ((real_t)(elMat_1_1)); + _data_mat[5] = ((real_t)(elMat_1_2)); + _data_mat[6] = ((real_t)(elMat_2_0)); + _data_mat[7] = ((real_t)(elMat_2_1)); + _data_mat[8] = ((real_t)(elMat_2_2)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -175,9 +175,9 @@ void P1ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, do for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -220,7 +220,7 @@ void P1ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, do std::vector< uint_t > _data_rowIdx( 3 ); std::vector< uint_t > _data_colIdx( 3 ); - std::vector< double > _data_mat( 9 ); + std::vector< real_t > _data_mat( 9 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))])); @@ -233,15 +233,15 @@ void P1ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dst, do - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_1_0; - _data_mat[4] = elMat_1_1; - _data_mat[5] = elMat_1_2; - _data_mat[6] = elMat_2_0; - _data_mat[7] = elMat_2_1; - _data_mat[8] = elMat_2_2; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_1_0)); + _data_mat[4] = ((real_t)(elMat_1_1)); + _data_mat[5] = ((real_t)(elMat_1_2)); + _data_mat[6] = ((real_t)(elMat_2_0)); + _data_mat[7] = ((real_t)(elMat_2_1)); + _data_mat[8] = ((real_t)(elMat_2_2)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); diff --git a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_toMatrix_macro_3D.cpp b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_toMatrix_macro_3D.cpp index 5a985250b2ddc799e80f07787eef9c11152c0cd2..7313897fbce90d0379146f3db3339af75a7e5753 100644 --- a/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_toMatrix_macro_3D.cpp +++ b/operators/div_k_grad/noarch/P1ElementwiseDivKGrad_toMatrix_macro_3D.cpp @@ -54,16 +54,16 @@ namespace hyteg { namespace operatorgeneration { -void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, double * RESTRICT _data_k, int64_t * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const +void P1ElementwiseDivKGrad::toMatrix_macro_3D( idx_t * RESTRICT _data_dst, double * RESTRICT _data_k, idx_t * RESTRICT _data_src, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -274,10 +274,10 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -347,7 +347,7 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -362,22 +362,22 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -386,10 +386,10 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -459,7 +459,7 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -474,22 +474,22 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -498,10 +498,10 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -571,7 +571,7 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); @@ -586,22 +586,22 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -610,10 +610,10 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -683,7 +683,7 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))])); @@ -698,22 +698,22 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -722,10 +722,10 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_3 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -795,7 +795,7 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); @@ -810,22 +810,22 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -834,10 +834,10 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_3 = _data_k[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; + const double k_dof_2 = _data_k[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -907,7 +907,7 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do std::vector< uint_t > _data_rowIdx( 4 ); std::vector< uint_t > _data_colIdx( 4 ); - std::vector< double > _data_mat( 16 ); + std::vector< real_t > _data_mat( 16 ); _data_rowIdx[0] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dst[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -922,22 +922,22 @@ void P1ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dst, do - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_1_0; - _data_mat[5] = elMat_1_1; - _data_mat[6] = elMat_1_2; - _data_mat[7] = elMat_1_3; - _data_mat[8] = elMat_2_0; - _data_mat[9] = elMat_2_1; - _data_mat[10] = elMat_2_2; - _data_mat[11] = elMat_2_3; - _data_mat[12] = elMat_3_0; - _data_mat[13] = elMat_3_1; - _data_mat[14] = elMat_3_2; - _data_mat[15] = elMat_3_3; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_1_0)); + _data_mat[5] = ((real_t)(elMat_1_1)); + _data_mat[6] = ((real_t)(elMat_1_2)); + _data_mat[7] = ((real_t)(elMat_1_3)); + _data_mat[8] = ((real_t)(elMat_2_0)); + _data_mat[9] = ((real_t)(elMat_2_1)); + _data_mat[10] = ((real_t)(elMat_2_2)); + _data_mat[11] = ((real_t)(elMat_2_3)); + _data_mat[12] = ((real_t)(elMat_3_0)); + _data_mat[13] = ((real_t)(elMat_3_1)); + _data_mat[14] = ((real_t)(elMat_3_2)); + _data_mat[15] = ((real_t)(elMat_3_3)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); diff --git a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_apply_macro_2D.cpp b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_apply_macro_2D.cpp index 8fedba70e999ba608bd8a2609f23973e0eb0729d..c297e3940e1a764bc73d9bcb1ea097a2a1136920 100644 --- a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_apply_macro_2D.cpp +++ b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_apply_macro_2D.cpp @@ -54,14 +54,14 @@ namespace hyteg { namespace operatorgeneration { -void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, double * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double * RESTRICT _data_srcEdge, double * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float, int64_t micro_edges_per_macro_face ) const +void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, double * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double * RESTRICT _data_srcEdge, double * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -78,21 +78,21 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double jac_affine_inv_1_0 = -jac_affine_1_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double jac_affine_inv_1_1 = jac_affine_0_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); - const double Dummy_4018 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4019 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4020 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4021 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4022 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4023 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4024 = -Dummy_4018 + Dummy_4020; - const double Dummy_4025 = -Dummy_4018 + Dummy_4022; - const double Dummy_4026 = -Dummy_4019 + Dummy_4021; - const double Dummy_4027 = -Dummy_4019 + Dummy_4023; - const double Dummy_4028 = Dummy_4027*1.0 / (Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); - const double Dummy_4029 = -Dummy_4025*1.0 / (Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); - const double Dummy_4030 = -Dummy_4026*1.0 / (Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); - const double Dummy_4031 = Dummy_4024*1.0 / (Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); - const double Dummy_4032 = fabs(Dummy_4024*Dummy_4027 - Dummy_4025*Dummy_4026); + const double Dummy_4001 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4002 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4003 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4004 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4005 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4006 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4007 = -Dummy_4001 + Dummy_4003; + const double Dummy_4008 = -Dummy_4001 + Dummy_4005; + const double Dummy_4009 = -Dummy_4002 + Dummy_4004; + const double Dummy_4010 = -Dummy_4002 + Dummy_4006; + const double Dummy_4011 = Dummy_4010*1.0 / (Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); + const double Dummy_4012 = -Dummy_4008*1.0 / (Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); + const double Dummy_4013 = -Dummy_4009*1.0 / (Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); + const double Dummy_4014 = Dummy_4007*1.0 / (Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); + const double Dummy_4015 = fabs(Dummy_4007*Dummy_4010 - Dummy_4008*Dummy_4009); { for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge; ctr_0 += 1) @@ -100,15 +100,15 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double src_dof_0 = _data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; const double src_dof_1 = _data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double src_dof_2 = _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double src_dof_3 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double src_dof_4 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double src_dof_3 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double src_dof_4 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; const double src_dof_5 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -247,8 +247,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_0 + _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1] = elMatVec_1 + _data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatVec_2 + _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_3 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_4 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatVec_3 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatVec_4 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_5 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; } for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) @@ -258,14 +258,14 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double src_dof_1 = _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double src_dof_2 = _data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; const double src_dof_3 = _data_srcEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double src_dof_4 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double src_dof_5 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; - const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double src_dof_4 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + const double src_dof_5 = _data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; + const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -292,8 +292,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double tmp_q_0 = 4.0*_data_q_p_0[q]; const double tmp_q_1 = 4.0*_data_q_p_1[q]; const double tmp_q_2 = tmp_q_0 + tmp_q_1 - 3.0; - const double tmp_q_3 = Dummy_4028*tmp_q_2; - const double tmp_q_4 = Dummy_4030*tmp_q_2; + const double tmp_q_3 = Dummy_4011*tmp_q_2; + const double tmp_q_4 = Dummy_4013*tmp_q_2; const double tmp_q_5 = tmp_q_3 + tmp_q_4; const double tmp_q_6 = tmp_q_0*_data_q_p_1[q]; const double tmp_q_7 = (_data_q_p_0[q]*_data_q_p_0[q]); @@ -301,54 +301,54 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do const double tmp_q_9 = (_data_q_p_1[q]*_data_q_p_1[q]); const double tmp_q_10 = tmp_q_9*2.0; const double tmp_q_11 = k_dof_0*(tmp_q_10 + tmp_q_6 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_8 - _data_q_p_0[q]) + k_dof_2*(tmp_q_10 - _data_q_p_1[q]) + k_dof_3*tmp_q_6 + k_dof_4*(tmp_q_1 - tmp_q_6 + tmp_q_9*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_6 + tmp_q_7*-4.0); - const double tmp_q_12 = Dummy_4029*tmp_q_2; - const double tmp_q_13 = Dummy_4031*tmp_q_2; + const double tmp_q_12 = Dummy_4012*tmp_q_2; + const double tmp_q_13 = Dummy_4014*tmp_q_2; const double tmp_q_14 = tmp_q_12 + tmp_q_13; - const double tmp_q_15 = Dummy_4032*_data_q_w[q]; + const double tmp_q_15 = Dummy_4015*_data_q_w[q]; const double tmp_q_16 = tmp_q_0 - 1.0; - const double tmp_q_17 = Dummy_4028*tmp_q_16; + const double tmp_q_17 = Dummy_4011*tmp_q_16; const double tmp_q_18 = tmp_q_11*tmp_q_5; - const double tmp_q_19 = Dummy_4029*tmp_q_16; + const double tmp_q_19 = Dummy_4012*tmp_q_16; const double tmp_q_20 = tmp_q_11*tmp_q_14; const double tmp_q_21 = tmp_q_1 - 1.0; - const double tmp_q_22 = Dummy_4030*tmp_q_21; - const double tmp_q_23 = Dummy_4031*tmp_q_21; - const double tmp_q_24 = Dummy_4028*tmp_q_1; + const double tmp_q_22 = Dummy_4013*tmp_q_21; + const double tmp_q_23 = Dummy_4014*tmp_q_21; + const double tmp_q_24 = Dummy_4011*tmp_q_1; const double tmp_q_25 = tmp_q_11*tmp_q_24; - const double tmp_q_26 = Dummy_4030*tmp_q_0; + const double tmp_q_26 = Dummy_4013*tmp_q_0; const double tmp_q_27 = tmp_q_11*tmp_q_26; const double tmp_q_28 = tmp_q_25 + tmp_q_27; - const double tmp_q_29 = Dummy_4029*tmp_q_1; + const double tmp_q_29 = Dummy_4012*tmp_q_1; const double tmp_q_30 = tmp_q_11*tmp_q_29; - const double tmp_q_31 = Dummy_4031*tmp_q_0; + const double tmp_q_31 = Dummy_4014*tmp_q_0; const double tmp_q_32 = tmp_q_11*tmp_q_31; const double tmp_q_33 = tmp_q_30 + tmp_q_32; const double tmp_q_34 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; - const double tmp_q_35 = Dummy_4030*tmp_q_11*tmp_q_34 - tmp_q_25; - const double tmp_q_36 = Dummy_4031*tmp_q_11*tmp_q_34 - tmp_q_30; + const double tmp_q_35 = Dummy_4013*tmp_q_11*tmp_q_34 - tmp_q_25; + const double tmp_q_36 = Dummy_4014*tmp_q_11*tmp_q_34 - tmp_q_30; const double tmp_q_37 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; - const double tmp_q_38 = Dummy_4028*tmp_q_37; + const double tmp_q_38 = Dummy_4011*tmp_q_37; const double tmp_q_39 = tmp_q_11*tmp_q_38 - tmp_q_27; - const double tmp_q_40 = Dummy_4029*tmp_q_37; + const double tmp_q_40 = Dummy_4012*tmp_q_37; const double tmp_q_41 = tmp_q_11*tmp_q_40 - tmp_q_32; const double tmp_q_42 = tmp_q_11*(tmp_q_16*tmp_q_16); const double tmp_q_43 = tmp_q_11*(tmp_q_21*tmp_q_21); const double tmp_q_44 = tmp_q_24 + tmp_q_26; const double tmp_q_45 = tmp_q_29 + tmp_q_31; - const double tmp_q_46 = Dummy_4030*tmp_q_34 - tmp_q_24; - const double tmp_q_47 = Dummy_4031*tmp_q_34 - tmp_q_29; + const double tmp_q_46 = Dummy_4013*tmp_q_34 - tmp_q_24; + const double tmp_q_47 = Dummy_4014*tmp_q_34 - tmp_q_29; const double res_tmp_0_0 = tmp_q_15*(tmp_q_14*(tmp_q_11*tmp_q_12 + tmp_q_11*tmp_q_13) + tmp_q_5*(tmp_q_11*tmp_q_3 + tmp_q_11*tmp_q_4)); const double res_tmp_0_1 = tmp_q_15*(tmp_q_17*tmp_q_18 + tmp_q_19*tmp_q_20); const double res_tmp_0_2 = tmp_q_15*(tmp_q_18*tmp_q_22 + tmp_q_20*tmp_q_23); const double res_tmp_0_3 = tmp_q_15*(tmp_q_14*tmp_q_33 + tmp_q_28*tmp_q_5); const double res_tmp_0_4 = tmp_q_15*(tmp_q_14*tmp_q_36 + tmp_q_35*tmp_q_5); const double res_tmp_0_5 = tmp_q_15*(tmp_q_14*tmp_q_41 + tmp_q_39*tmp_q_5); - const double res_tmp_1_1 = tmp_q_15*((Dummy_4028*Dummy_4028)*tmp_q_42 + (Dummy_4029*Dummy_4029)*tmp_q_42); + const double res_tmp_1_1 = tmp_q_15*((Dummy_4011*Dummy_4011)*tmp_q_42 + (Dummy_4012*Dummy_4012)*tmp_q_42); const double res_tmp_1_2 = tmp_q_15*(tmp_q_11*tmp_q_17*tmp_q_22 + tmp_q_11*tmp_q_19*tmp_q_23); const double res_tmp_1_3 = tmp_q_15*(tmp_q_17*tmp_q_28 + tmp_q_19*tmp_q_33); const double res_tmp_1_4 = tmp_q_15*(tmp_q_17*tmp_q_35 + tmp_q_19*tmp_q_36); const double res_tmp_1_5 = tmp_q_15*(tmp_q_17*tmp_q_39 + tmp_q_19*tmp_q_41); - const double res_tmp_2_2 = tmp_q_15*((Dummy_4030*Dummy_4030)*tmp_q_43 + (Dummy_4031*Dummy_4031)*tmp_q_43); + const double res_tmp_2_2 = tmp_q_15*((Dummy_4013*Dummy_4013)*tmp_q_43 + (Dummy_4014*Dummy_4014)*tmp_q_43); const double res_tmp_2_3 = tmp_q_15*(tmp_q_22*tmp_q_28 + tmp_q_23*tmp_q_33); const double res_tmp_2_4 = tmp_q_15*(tmp_q_22*tmp_q_35 + tmp_q_23*tmp_q_36); const double res_tmp_2_5 = tmp_q_15*(tmp_q_22*tmp_q_39 + tmp_q_23*tmp_q_41); @@ -405,8 +405,8 @@ void P2ElementwiseDivKGrad::apply_macro_2D( double * RESTRICT _data_dstEdge, do _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatVec_1 + _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1] = elMatVec_2 + _data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; _data_dstEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatVec_3 + _data_dstEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1] = elMatVec_4 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatVec_5 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1] = elMatVec_4 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatVec_5 + _data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; } } } diff --git a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_apply_macro_3D.cpp b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_apply_macro_3D.cpp index 7016dcde63b057b59cc4976c16a68ee348e28509..c54a00afd31a83d94a440bb4115da6ac78a06af0 100644 --- a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_apply_macro_3D.cpp +++ b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_apply_macro_3D.cpp @@ -57,13 +57,13 @@ namespace operatorgeneration { void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, double * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double * RESTRICT _data_srcEdge, double * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -96,161 +96,161 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double jac_affine_inv_2_1 = (-jac_affine_0_0*jac_affine_2_1 + jac_affine_0_1*jac_affine_2_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double jac_affine_inv_2_2 = (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); - const double Dummy_4141 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4142 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4143 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4144 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4145 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4146 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4147 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4148 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4149 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4150 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4151 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4152 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4153 = -Dummy_4141 + Dummy_4144; - const double Dummy_4154 = -Dummy_4141 + Dummy_4147; - const double Dummy_4155 = -Dummy_4141 + Dummy_4150; - const double Dummy_4156 = -Dummy_4142 + Dummy_4145; - const double Dummy_4157 = -Dummy_4142 + Dummy_4148; - const double Dummy_4158 = -Dummy_4142 + Dummy_4151; - const double Dummy_4159 = -Dummy_4143 + Dummy_4146; - const double Dummy_4160 = -Dummy_4143 + Dummy_4149; - const double Dummy_4161 = -Dummy_4143 + Dummy_4152; - const double Dummy_4162 = (Dummy_4157*Dummy_4161 - Dummy_4158*Dummy_4160)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4163 = (-Dummy_4154*Dummy_4161 + Dummy_4155*Dummy_4160)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4164 = (Dummy_4154*Dummy_4158 - Dummy_4155*Dummy_4157)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4165 = (-Dummy_4156*Dummy_4161 + Dummy_4158*Dummy_4159)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4166 = (Dummy_4153*Dummy_4161 - Dummy_4155*Dummy_4159)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4167 = (-Dummy_4153*Dummy_4158 + Dummy_4155*Dummy_4156)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4168 = (Dummy_4156*Dummy_4160 - Dummy_4157*Dummy_4159)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4169 = (-Dummy_4153*Dummy_4160 + Dummy_4154*Dummy_4159)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4170 = (Dummy_4153*Dummy_4157 - Dummy_4154*Dummy_4156)*1.0 / (Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4171 = fabs(Dummy_4153*Dummy_4157*Dummy_4161 - Dummy_4153*Dummy_4158*Dummy_4160 - Dummy_4154*Dummy_4156*Dummy_4161 + Dummy_4154*Dummy_4158*Dummy_4159 + Dummy_4155*Dummy_4156*Dummy_4160 - Dummy_4155*Dummy_4157*Dummy_4159); - const double Dummy_4172 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4173 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4174 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4175 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4176 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4177 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4178 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4179 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4180 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4181 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4182 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4183 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4184 = -Dummy_4172 + Dummy_4175; - const double Dummy_4185 = -Dummy_4172 + Dummy_4178; - const double Dummy_4186 = -Dummy_4172 + Dummy_4181; - const double Dummy_4187 = -Dummy_4173 + Dummy_4176; - const double Dummy_4188 = -Dummy_4173 + Dummy_4179; - const double Dummy_4189 = -Dummy_4173 + Dummy_4182; - const double Dummy_4190 = -Dummy_4174 + Dummy_4177; - const double Dummy_4191 = -Dummy_4174 + Dummy_4180; - const double Dummy_4192 = -Dummy_4174 + Dummy_4183; - const double Dummy_4193 = (Dummy_4188*Dummy_4192 - Dummy_4189*Dummy_4191)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4194 = (-Dummy_4185*Dummy_4192 + Dummy_4186*Dummy_4191)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4195 = (Dummy_4185*Dummy_4189 - Dummy_4186*Dummy_4188)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4196 = (-Dummy_4187*Dummy_4192 + Dummy_4189*Dummy_4190)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4197 = (Dummy_4184*Dummy_4192 - Dummy_4186*Dummy_4190)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4198 = (-Dummy_4184*Dummy_4189 + Dummy_4186*Dummy_4187)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4199 = (Dummy_4187*Dummy_4191 - Dummy_4188*Dummy_4190)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4200 = (-Dummy_4184*Dummy_4191 + Dummy_4185*Dummy_4190)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4201 = (Dummy_4184*Dummy_4188 - Dummy_4185*Dummy_4187)*1.0 / (Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4202 = fabs(Dummy_4184*Dummy_4188*Dummy_4192 - Dummy_4184*Dummy_4189*Dummy_4191 - Dummy_4185*Dummy_4187*Dummy_4192 + Dummy_4185*Dummy_4189*Dummy_4190 + Dummy_4186*Dummy_4187*Dummy_4191 - Dummy_4186*Dummy_4188*Dummy_4190); - const double Dummy_4203 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4204 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4205 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4206 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4207 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4208 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4209 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4210 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4211 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4212 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4213 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4214 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4215 = -Dummy_4203 + Dummy_4206; - const double Dummy_4216 = -Dummy_4203 + Dummy_4209; - const double Dummy_4217 = -Dummy_4203 + Dummy_4212; - const double Dummy_4218 = -Dummy_4204 + Dummy_4207; - const double Dummy_4219 = -Dummy_4204 + Dummy_4210; - const double Dummy_4220 = -Dummy_4204 + Dummy_4213; - const double Dummy_4221 = -Dummy_4205 + Dummy_4208; - const double Dummy_4222 = -Dummy_4205 + Dummy_4211; - const double Dummy_4223 = -Dummy_4205 + Dummy_4214; - const double Dummy_4224 = (Dummy_4219*Dummy_4223 - Dummy_4220*Dummy_4222)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4225 = (-Dummy_4216*Dummy_4223 + Dummy_4217*Dummy_4222)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4226 = (Dummy_4216*Dummy_4220 - Dummy_4217*Dummy_4219)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4227 = (-Dummy_4218*Dummy_4223 + Dummy_4220*Dummy_4221)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4228 = (Dummy_4215*Dummy_4223 - Dummy_4217*Dummy_4221)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4229 = (-Dummy_4215*Dummy_4220 + Dummy_4217*Dummy_4218)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4230 = (Dummy_4218*Dummy_4222 - Dummy_4219*Dummy_4221)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4231 = (-Dummy_4215*Dummy_4222 + Dummy_4216*Dummy_4221)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4232 = (Dummy_4215*Dummy_4219 - Dummy_4216*Dummy_4218)*1.0 / (Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4233 = fabs(Dummy_4215*Dummy_4219*Dummy_4223 - Dummy_4215*Dummy_4220*Dummy_4222 - Dummy_4216*Dummy_4218*Dummy_4223 + Dummy_4216*Dummy_4220*Dummy_4221 + Dummy_4217*Dummy_4218*Dummy_4222 - Dummy_4217*Dummy_4219*Dummy_4221); - const double Dummy_4234 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4235 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4236 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4237 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4238 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4239 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4240 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4241 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4242 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4243 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4244 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4245 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4246 = -Dummy_4234 + Dummy_4237; - const double Dummy_4247 = -Dummy_4234 + Dummy_4240; - const double Dummy_4248 = -Dummy_4234 + Dummy_4243; - const double Dummy_4249 = -Dummy_4235 + Dummy_4238; - const double Dummy_4250 = -Dummy_4235 + Dummy_4241; - const double Dummy_4251 = -Dummy_4235 + Dummy_4244; - const double Dummy_4252 = -Dummy_4236 + Dummy_4239; - const double Dummy_4253 = -Dummy_4236 + Dummy_4242; - const double Dummy_4254 = -Dummy_4236 + Dummy_4245; - const double Dummy_4255 = (Dummy_4250*Dummy_4254 - Dummy_4251*Dummy_4253)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4256 = (-Dummy_4247*Dummy_4254 + Dummy_4248*Dummy_4253)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4257 = (Dummy_4247*Dummy_4251 - Dummy_4248*Dummy_4250)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4258 = (-Dummy_4249*Dummy_4254 + Dummy_4251*Dummy_4252)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4259 = (Dummy_4246*Dummy_4254 - Dummy_4248*Dummy_4252)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4260 = (-Dummy_4246*Dummy_4251 + Dummy_4248*Dummy_4249)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4261 = (Dummy_4249*Dummy_4253 - Dummy_4250*Dummy_4252)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4262 = (-Dummy_4246*Dummy_4253 + Dummy_4247*Dummy_4252)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4263 = (Dummy_4246*Dummy_4250 - Dummy_4247*Dummy_4249)*1.0 / (Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4264 = fabs(Dummy_4246*Dummy_4250*Dummy_4254 - Dummy_4246*Dummy_4251*Dummy_4253 - Dummy_4247*Dummy_4249*Dummy_4254 + Dummy_4247*Dummy_4251*Dummy_4252 + Dummy_4248*Dummy_4249*Dummy_4253 - Dummy_4248*Dummy_4250*Dummy_4252); - const double Dummy_4265 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4266 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4267 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4268 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4269 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4270 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4271 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4272 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4273 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4274 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4275 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4276 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4277 = -Dummy_4265 + Dummy_4268; - const double Dummy_4278 = -Dummy_4265 + Dummy_4271; - const double Dummy_4279 = -Dummy_4265 + Dummy_4274; - const double Dummy_4280 = -Dummy_4266 + Dummy_4269; - const double Dummy_4281 = -Dummy_4266 + Dummy_4272; - const double Dummy_4282 = -Dummy_4266 + Dummy_4275; - const double Dummy_4283 = -Dummy_4267 + Dummy_4270; - const double Dummy_4284 = -Dummy_4267 + Dummy_4273; - const double Dummy_4285 = -Dummy_4267 + Dummy_4276; - const double Dummy_4286 = (Dummy_4281*Dummy_4285 - Dummy_4282*Dummy_4284)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4287 = (-Dummy_4278*Dummy_4285 + Dummy_4279*Dummy_4284)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4288 = (Dummy_4278*Dummy_4282 - Dummy_4279*Dummy_4281)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4289 = (-Dummy_4280*Dummy_4285 + Dummy_4282*Dummy_4283)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4290 = (Dummy_4277*Dummy_4285 - Dummy_4279*Dummy_4283)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4291 = (-Dummy_4277*Dummy_4282 + Dummy_4279*Dummy_4280)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4292 = (Dummy_4280*Dummy_4284 - Dummy_4281*Dummy_4283)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4293 = (-Dummy_4277*Dummy_4284 + Dummy_4278*Dummy_4283)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4294 = (Dummy_4277*Dummy_4281 - Dummy_4278*Dummy_4280)*1.0 / (Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); - const double Dummy_4295 = fabs(Dummy_4277*Dummy_4281*Dummy_4285 - Dummy_4277*Dummy_4282*Dummy_4284 - Dummy_4278*Dummy_4280*Dummy_4285 + Dummy_4278*Dummy_4282*Dummy_4283 + Dummy_4279*Dummy_4280*Dummy_4284 - Dummy_4279*Dummy_4281*Dummy_4283); + const double Dummy_4124 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4125 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4126 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4127 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4128 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4129 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4130 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4131 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4132 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4133 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4134 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4135 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4136 = -Dummy_4124 + Dummy_4127; + const double Dummy_4137 = -Dummy_4124 + Dummy_4130; + const double Dummy_4138 = -Dummy_4124 + Dummy_4133; + const double Dummy_4139 = -Dummy_4125 + Dummy_4128; + const double Dummy_4140 = -Dummy_4125 + Dummy_4131; + const double Dummy_4141 = -Dummy_4125 + Dummy_4134; + const double Dummy_4142 = -Dummy_4126 + Dummy_4129; + const double Dummy_4143 = -Dummy_4126 + Dummy_4132; + const double Dummy_4144 = -Dummy_4126 + Dummy_4135; + const double Dummy_4145 = (Dummy_4140*Dummy_4144 - Dummy_4141*Dummy_4143)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4146 = (-Dummy_4137*Dummy_4144 + Dummy_4138*Dummy_4143)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4147 = (Dummy_4137*Dummy_4141 - Dummy_4138*Dummy_4140)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4148 = (-Dummy_4139*Dummy_4144 + Dummy_4141*Dummy_4142)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4149 = (Dummy_4136*Dummy_4144 - Dummy_4138*Dummy_4142)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4150 = (-Dummy_4136*Dummy_4141 + Dummy_4138*Dummy_4139)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4151 = (Dummy_4139*Dummy_4143 - Dummy_4140*Dummy_4142)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4152 = (-Dummy_4136*Dummy_4143 + Dummy_4137*Dummy_4142)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4153 = (Dummy_4136*Dummy_4140 - Dummy_4137*Dummy_4139)*1.0 / (Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4154 = fabs(Dummy_4136*Dummy_4140*Dummy_4144 - Dummy_4136*Dummy_4141*Dummy_4143 - Dummy_4137*Dummy_4139*Dummy_4144 + Dummy_4137*Dummy_4141*Dummy_4142 + Dummy_4138*Dummy_4139*Dummy_4143 - Dummy_4138*Dummy_4140*Dummy_4142); + const double Dummy_4155 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4156 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4157 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4158 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4159 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4160 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4161 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4162 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4163 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4164 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4165 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4166 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4167 = -Dummy_4155 + Dummy_4158; + const double Dummy_4168 = -Dummy_4155 + Dummy_4161; + const double Dummy_4169 = -Dummy_4155 + Dummy_4164; + const double Dummy_4170 = -Dummy_4156 + Dummy_4159; + const double Dummy_4171 = -Dummy_4156 + Dummy_4162; + const double Dummy_4172 = -Dummy_4156 + Dummy_4165; + const double Dummy_4173 = -Dummy_4157 + Dummy_4160; + const double Dummy_4174 = -Dummy_4157 + Dummy_4163; + const double Dummy_4175 = -Dummy_4157 + Dummy_4166; + const double Dummy_4176 = (Dummy_4171*Dummy_4175 - Dummy_4172*Dummy_4174)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4177 = (-Dummy_4168*Dummy_4175 + Dummy_4169*Dummy_4174)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4178 = (Dummy_4168*Dummy_4172 - Dummy_4169*Dummy_4171)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4179 = (-Dummy_4170*Dummy_4175 + Dummy_4172*Dummy_4173)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4180 = (Dummy_4167*Dummy_4175 - Dummy_4169*Dummy_4173)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4181 = (-Dummy_4167*Dummy_4172 + Dummy_4169*Dummy_4170)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4182 = (Dummy_4170*Dummy_4174 - Dummy_4171*Dummy_4173)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4183 = (-Dummy_4167*Dummy_4174 + Dummy_4168*Dummy_4173)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4184 = (Dummy_4167*Dummy_4171 - Dummy_4168*Dummy_4170)*1.0 / (Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4185 = fabs(Dummy_4167*Dummy_4171*Dummy_4175 - Dummy_4167*Dummy_4172*Dummy_4174 - Dummy_4168*Dummy_4170*Dummy_4175 + Dummy_4168*Dummy_4172*Dummy_4173 + Dummy_4169*Dummy_4170*Dummy_4174 - Dummy_4169*Dummy_4171*Dummy_4173); + const double Dummy_4186 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4187 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4188 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4189 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4190 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4191 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4192 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4193 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4194 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4195 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4196 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4197 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4198 = -Dummy_4186 + Dummy_4189; + const double Dummy_4199 = -Dummy_4186 + Dummy_4192; + const double Dummy_4200 = -Dummy_4186 + Dummy_4195; + const double Dummy_4201 = -Dummy_4187 + Dummy_4190; + const double Dummy_4202 = -Dummy_4187 + Dummy_4193; + const double Dummy_4203 = -Dummy_4187 + Dummy_4196; + const double Dummy_4204 = -Dummy_4188 + Dummy_4191; + const double Dummy_4205 = -Dummy_4188 + Dummy_4194; + const double Dummy_4206 = -Dummy_4188 + Dummy_4197; + const double Dummy_4207 = (Dummy_4202*Dummy_4206 - Dummy_4203*Dummy_4205)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4208 = (-Dummy_4199*Dummy_4206 + Dummy_4200*Dummy_4205)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4209 = (Dummy_4199*Dummy_4203 - Dummy_4200*Dummy_4202)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4210 = (-Dummy_4201*Dummy_4206 + Dummy_4203*Dummy_4204)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4211 = (Dummy_4198*Dummy_4206 - Dummy_4200*Dummy_4204)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4212 = (-Dummy_4198*Dummy_4203 + Dummy_4200*Dummy_4201)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4213 = (Dummy_4201*Dummy_4205 - Dummy_4202*Dummy_4204)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4214 = (-Dummy_4198*Dummy_4205 + Dummy_4199*Dummy_4204)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4215 = (Dummy_4198*Dummy_4202 - Dummy_4199*Dummy_4201)*1.0 / (Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4216 = fabs(Dummy_4198*Dummy_4202*Dummy_4206 - Dummy_4198*Dummy_4203*Dummy_4205 - Dummy_4199*Dummy_4201*Dummy_4206 + Dummy_4199*Dummy_4203*Dummy_4204 + Dummy_4200*Dummy_4201*Dummy_4205 - Dummy_4200*Dummy_4202*Dummy_4204); + const double Dummy_4217 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4218 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4219 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4220 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4221 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4222 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4223 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4224 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4225 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4226 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4227 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4228 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4229 = -Dummy_4217 + Dummy_4220; + const double Dummy_4230 = -Dummy_4217 + Dummy_4223; + const double Dummy_4231 = -Dummy_4217 + Dummy_4226; + const double Dummy_4232 = -Dummy_4218 + Dummy_4221; + const double Dummy_4233 = -Dummy_4218 + Dummy_4224; + const double Dummy_4234 = -Dummy_4218 + Dummy_4227; + const double Dummy_4235 = -Dummy_4219 + Dummy_4222; + const double Dummy_4236 = -Dummy_4219 + Dummy_4225; + const double Dummy_4237 = -Dummy_4219 + Dummy_4228; + const double Dummy_4238 = (Dummy_4233*Dummy_4237 - Dummy_4234*Dummy_4236)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4239 = (-Dummy_4230*Dummy_4237 + Dummy_4231*Dummy_4236)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4240 = (Dummy_4230*Dummy_4234 - Dummy_4231*Dummy_4233)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4241 = (-Dummy_4232*Dummy_4237 + Dummy_4234*Dummy_4235)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4242 = (Dummy_4229*Dummy_4237 - Dummy_4231*Dummy_4235)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4243 = (-Dummy_4229*Dummy_4234 + Dummy_4231*Dummy_4232)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4244 = (Dummy_4232*Dummy_4236 - Dummy_4233*Dummy_4235)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4245 = (-Dummy_4229*Dummy_4236 + Dummy_4230*Dummy_4235)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4246 = (Dummy_4229*Dummy_4233 - Dummy_4230*Dummy_4232)*1.0 / (Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4247 = fabs(Dummy_4229*Dummy_4233*Dummy_4237 - Dummy_4229*Dummy_4234*Dummy_4236 - Dummy_4230*Dummy_4232*Dummy_4237 + Dummy_4230*Dummy_4234*Dummy_4235 + Dummy_4231*Dummy_4232*Dummy_4236 - Dummy_4231*Dummy_4233*Dummy_4235); + const double Dummy_4248 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4249 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4250 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4251 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4252 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4253 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4254 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4255 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4256 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4257 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4258 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4259 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4260 = -Dummy_4248 + Dummy_4251; + const double Dummy_4261 = -Dummy_4248 + Dummy_4254; + const double Dummy_4262 = -Dummy_4248 + Dummy_4257; + const double Dummy_4263 = -Dummy_4249 + Dummy_4252; + const double Dummy_4264 = -Dummy_4249 + Dummy_4255; + const double Dummy_4265 = -Dummy_4249 + Dummy_4258; + const double Dummy_4266 = -Dummy_4250 + Dummy_4253; + const double Dummy_4267 = -Dummy_4250 + Dummy_4256; + const double Dummy_4268 = -Dummy_4250 + Dummy_4259; + const double Dummy_4269 = (Dummy_4264*Dummy_4268 - Dummy_4265*Dummy_4267)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4270 = (-Dummy_4261*Dummy_4268 + Dummy_4262*Dummy_4267)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4271 = (Dummy_4261*Dummy_4265 - Dummy_4262*Dummy_4264)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4272 = (-Dummy_4263*Dummy_4268 + Dummy_4265*Dummy_4266)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4273 = (Dummy_4260*Dummy_4268 - Dummy_4262*Dummy_4266)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4274 = (-Dummy_4260*Dummy_4265 + Dummy_4262*Dummy_4263)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4275 = (Dummy_4263*Dummy_4267 - Dummy_4264*Dummy_4266)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4276 = (-Dummy_4260*Dummy_4267 + Dummy_4261*Dummy_4266)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4277 = (Dummy_4260*Dummy_4264 - Dummy_4261*Dummy_4263)*1.0 / (Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); + const double Dummy_4278 = fabs(Dummy_4260*Dummy_4264*Dummy_4268 - Dummy_4260*Dummy_4265*Dummy_4267 - Dummy_4261*Dummy_4263*Dummy_4268 + Dummy_4261*Dummy_4265*Dummy_4266 + Dummy_4262*Dummy_4263*Dummy_4267 - Dummy_4262*Dummy_4264*Dummy_4266); { for (int64_t ctr_2 = 0; ctr_2 < micro_edges_per_macro_edge; ctr_2 += 1) for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) @@ -267,15 +267,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -649,15 +649,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double k_dof_4 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -720,9 +720,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4162*tmp_q_4; - const double tmp_q_6 = Dummy_4165*tmp_q_4; - const double tmp_q_7 = Dummy_4168*tmp_q_4; + const double tmp_q_5 = Dummy_4145*tmp_q_4; + const double tmp_q_6 = Dummy_4148*tmp_q_4; + const double tmp_q_7 = Dummy_4151*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -735,88 +735,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4163*tmp_q_4; - const double tmp_q_21 = Dummy_4166*tmp_q_4; - const double tmp_q_22 = Dummy_4169*tmp_q_4; + const double tmp_q_20 = Dummy_4146*tmp_q_4; + const double tmp_q_21 = Dummy_4149*tmp_q_4; + const double tmp_q_22 = Dummy_4152*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4164*tmp_q_4; - const double tmp_q_25 = Dummy_4167*tmp_q_4; - const double tmp_q_26 = Dummy_4170*tmp_q_4; + const double tmp_q_24 = Dummy_4147*tmp_q_4; + const double tmp_q_25 = Dummy_4150*tmp_q_4; + const double tmp_q_26 = Dummy_4153*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4171*_data_q_w[q]; + const double tmp_q_28 = Dummy_4154*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4162*tmp_q_29; + const double tmp_q_30 = Dummy_4145*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4163*tmp_q_29; + const double tmp_q_32 = Dummy_4146*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4164*tmp_q_29; + const double tmp_q_34 = Dummy_4147*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4165*tmp_q_36; - const double tmp_q_38 = Dummy_4166*tmp_q_36; - const double tmp_q_39 = Dummy_4167*tmp_q_36; + const double tmp_q_37 = Dummy_4148*tmp_q_36; + const double tmp_q_38 = Dummy_4149*tmp_q_36; + const double tmp_q_39 = Dummy_4150*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4168*tmp_q_40; - const double tmp_q_42 = Dummy_4169*tmp_q_40; - const double tmp_q_43 = Dummy_4170*tmp_q_40; - const double tmp_q_44 = Dummy_4165*tmp_q_0; + const double tmp_q_41 = Dummy_4151*tmp_q_40; + const double tmp_q_42 = Dummy_4152*tmp_q_40; + const double tmp_q_43 = Dummy_4153*tmp_q_40; + const double tmp_q_44 = Dummy_4148*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4168*tmp_q_2; + const double tmp_q_46 = Dummy_4151*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4166*tmp_q_0; + const double tmp_q_49 = Dummy_4149*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4169*tmp_q_2; + const double tmp_q_51 = Dummy_4152*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4167*tmp_q_0; + const double tmp_q_54 = Dummy_4150*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4170*tmp_q_2; + const double tmp_q_56 = Dummy_4153*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4162*tmp_q_0; + const double tmp_q_59 = Dummy_4145*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4168*tmp_q_1; + const double tmp_q_61 = Dummy_4151*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4163*tmp_q_0; + const double tmp_q_64 = Dummy_4146*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4169*tmp_q_1; + const double tmp_q_66 = Dummy_4152*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4164*tmp_q_0; + const double tmp_q_69 = Dummy_4147*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4170*tmp_q_1; + const double tmp_q_71 = Dummy_4153*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4162*tmp_q_2; + const double tmp_q_74 = Dummy_4145*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4165*tmp_q_1; + const double tmp_q_76 = Dummy_4148*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4163*tmp_q_2; + const double tmp_q_79 = Dummy_4146*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4166*tmp_q_1; + const double tmp_q_81 = Dummy_4149*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4164*tmp_q_2; + const double tmp_q_84 = Dummy_4147*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4167*tmp_q_1; + const double tmp_q_86 = Dummy_4150*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4168*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4169*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4170*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4151*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4152*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4153*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4165*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4166*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4167*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4148*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4149*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4150*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4162*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4163*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4164*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4145*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4146*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4147*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -833,12 +833,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4168*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4169*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4170*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4165*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4166*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4167*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4151*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4152*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4153*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4148*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4149*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4150*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -849,7 +849,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4162*Dummy_4162)*tmp_q_103 + (Dummy_4163*Dummy_4163)*tmp_q_103 + (Dummy_4164*Dummy_4164)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4145*Dummy_4145)*tmp_q_103 + (Dummy_4146*Dummy_4146)*tmp_q_103 + (Dummy_4147*Dummy_4147)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -858,7 +858,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4165*Dummy_4165)*tmp_q_107 + (Dummy_4166*Dummy_4166)*tmp_q_107 + (Dummy_4167*Dummy_4167)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4148*Dummy_4148)*tmp_q_107 + (Dummy_4149*Dummy_4149)*tmp_q_107 + (Dummy_4150*Dummy_4150)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -866,7 +866,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4168*Dummy_4168)*tmp_q_108 + (Dummy_4169*Dummy_4169)*tmp_q_108 + (Dummy_4170*Dummy_4170)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4151*Dummy_4151)*tmp_q_108 + (Dummy_4152*Dummy_4152)*tmp_q_108 + (Dummy_4153*Dummy_4153)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -893,7 +893,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4163*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4164*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4162*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4146*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4147*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4145*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -1031,15 +1031,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -1102,9 +1102,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4193*tmp_q_4; - const double tmp_q_6 = Dummy_4196*tmp_q_4; - const double tmp_q_7 = Dummy_4199*tmp_q_4; + const double tmp_q_5 = Dummy_4176*tmp_q_4; + const double tmp_q_6 = Dummy_4179*tmp_q_4; + const double tmp_q_7 = Dummy_4182*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -1117,88 +1117,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4194*tmp_q_4; - const double tmp_q_21 = Dummy_4197*tmp_q_4; - const double tmp_q_22 = Dummy_4200*tmp_q_4; + const double tmp_q_20 = Dummy_4177*tmp_q_4; + const double tmp_q_21 = Dummy_4180*tmp_q_4; + const double tmp_q_22 = Dummy_4183*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4195*tmp_q_4; - const double tmp_q_25 = Dummy_4198*tmp_q_4; - const double tmp_q_26 = Dummy_4201*tmp_q_4; + const double tmp_q_24 = Dummy_4178*tmp_q_4; + const double tmp_q_25 = Dummy_4181*tmp_q_4; + const double tmp_q_26 = Dummy_4184*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4202*_data_q_w[q]; + const double tmp_q_28 = Dummy_4185*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4193*tmp_q_29; + const double tmp_q_30 = Dummy_4176*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4194*tmp_q_29; + const double tmp_q_32 = Dummy_4177*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4195*tmp_q_29; + const double tmp_q_34 = Dummy_4178*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4196*tmp_q_36; - const double tmp_q_38 = Dummy_4197*tmp_q_36; - const double tmp_q_39 = Dummy_4198*tmp_q_36; + const double tmp_q_37 = Dummy_4179*tmp_q_36; + const double tmp_q_38 = Dummy_4180*tmp_q_36; + const double tmp_q_39 = Dummy_4181*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4199*tmp_q_40; - const double tmp_q_42 = Dummy_4200*tmp_q_40; - const double tmp_q_43 = Dummy_4201*tmp_q_40; - const double tmp_q_44 = Dummy_4196*tmp_q_0; + const double tmp_q_41 = Dummy_4182*tmp_q_40; + const double tmp_q_42 = Dummy_4183*tmp_q_40; + const double tmp_q_43 = Dummy_4184*tmp_q_40; + const double tmp_q_44 = Dummy_4179*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4199*tmp_q_2; + const double tmp_q_46 = Dummy_4182*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4197*tmp_q_0; + const double tmp_q_49 = Dummy_4180*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4200*tmp_q_2; + const double tmp_q_51 = Dummy_4183*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4198*tmp_q_0; + const double tmp_q_54 = Dummy_4181*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4201*tmp_q_2; + const double tmp_q_56 = Dummy_4184*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4193*tmp_q_0; + const double tmp_q_59 = Dummy_4176*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4199*tmp_q_1; + const double tmp_q_61 = Dummy_4182*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4194*tmp_q_0; + const double tmp_q_64 = Dummy_4177*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4200*tmp_q_1; + const double tmp_q_66 = Dummy_4183*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4195*tmp_q_0; + const double tmp_q_69 = Dummy_4178*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4201*tmp_q_1; + const double tmp_q_71 = Dummy_4184*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4193*tmp_q_2; + const double tmp_q_74 = Dummy_4176*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4196*tmp_q_1; + const double tmp_q_76 = Dummy_4179*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4194*tmp_q_2; + const double tmp_q_79 = Dummy_4177*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4197*tmp_q_1; + const double tmp_q_81 = Dummy_4180*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4195*tmp_q_2; + const double tmp_q_84 = Dummy_4178*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4198*tmp_q_1; + const double tmp_q_86 = Dummy_4181*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4199*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4200*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4201*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4182*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4183*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4184*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4196*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4197*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4198*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4179*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4180*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4181*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4193*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4194*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4195*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4176*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4177*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4178*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -1215,12 +1215,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4199*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4200*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4201*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4196*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4197*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4198*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4182*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4183*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4184*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4179*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4180*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4181*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -1231,7 +1231,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4193*Dummy_4193)*tmp_q_103 + (Dummy_4194*Dummy_4194)*tmp_q_103 + (Dummy_4195*Dummy_4195)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4176*Dummy_4176)*tmp_q_103 + (Dummy_4177*Dummy_4177)*tmp_q_103 + (Dummy_4178*Dummy_4178)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -1240,7 +1240,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4196*Dummy_4196)*tmp_q_107 + (Dummy_4197*Dummy_4197)*tmp_q_107 + (Dummy_4198*Dummy_4198)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4179*Dummy_4179)*tmp_q_107 + (Dummy_4180*Dummy_4180)*tmp_q_107 + (Dummy_4181*Dummy_4181)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -1248,7 +1248,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4199*Dummy_4199)*tmp_q_108 + (Dummy_4200*Dummy_4200)*tmp_q_108 + (Dummy_4201*Dummy_4201)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4182*Dummy_4182)*tmp_q_108 + (Dummy_4183*Dummy_4183)*tmp_q_108 + (Dummy_4184*Dummy_4184)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -1275,7 +1275,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4194*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4195*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4193*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4177*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4178*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4176*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -1413,15 +1413,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -1484,9 +1484,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4224*tmp_q_4; - const double tmp_q_6 = Dummy_4227*tmp_q_4; - const double tmp_q_7 = Dummy_4230*tmp_q_4; + const double tmp_q_5 = Dummy_4207*tmp_q_4; + const double tmp_q_6 = Dummy_4210*tmp_q_4; + const double tmp_q_7 = Dummy_4213*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -1499,88 +1499,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4225*tmp_q_4; - const double tmp_q_21 = Dummy_4228*tmp_q_4; - const double tmp_q_22 = Dummy_4231*tmp_q_4; + const double tmp_q_20 = Dummy_4208*tmp_q_4; + const double tmp_q_21 = Dummy_4211*tmp_q_4; + const double tmp_q_22 = Dummy_4214*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4226*tmp_q_4; - const double tmp_q_25 = Dummy_4229*tmp_q_4; - const double tmp_q_26 = Dummy_4232*tmp_q_4; + const double tmp_q_24 = Dummy_4209*tmp_q_4; + const double tmp_q_25 = Dummy_4212*tmp_q_4; + const double tmp_q_26 = Dummy_4215*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4233*_data_q_w[q]; + const double tmp_q_28 = Dummy_4216*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4224*tmp_q_29; + const double tmp_q_30 = Dummy_4207*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4225*tmp_q_29; + const double tmp_q_32 = Dummy_4208*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4226*tmp_q_29; + const double tmp_q_34 = Dummy_4209*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4227*tmp_q_36; - const double tmp_q_38 = Dummy_4228*tmp_q_36; - const double tmp_q_39 = Dummy_4229*tmp_q_36; + const double tmp_q_37 = Dummy_4210*tmp_q_36; + const double tmp_q_38 = Dummy_4211*tmp_q_36; + const double tmp_q_39 = Dummy_4212*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4230*tmp_q_40; - const double tmp_q_42 = Dummy_4231*tmp_q_40; - const double tmp_q_43 = Dummy_4232*tmp_q_40; - const double tmp_q_44 = Dummy_4227*tmp_q_0; + const double tmp_q_41 = Dummy_4213*tmp_q_40; + const double tmp_q_42 = Dummy_4214*tmp_q_40; + const double tmp_q_43 = Dummy_4215*tmp_q_40; + const double tmp_q_44 = Dummy_4210*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4230*tmp_q_2; + const double tmp_q_46 = Dummy_4213*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4228*tmp_q_0; + const double tmp_q_49 = Dummy_4211*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4231*tmp_q_2; + const double tmp_q_51 = Dummy_4214*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4229*tmp_q_0; + const double tmp_q_54 = Dummy_4212*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4232*tmp_q_2; + const double tmp_q_56 = Dummy_4215*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4224*tmp_q_0; + const double tmp_q_59 = Dummy_4207*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4230*tmp_q_1; + const double tmp_q_61 = Dummy_4213*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4225*tmp_q_0; + const double tmp_q_64 = Dummy_4208*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4231*tmp_q_1; + const double tmp_q_66 = Dummy_4214*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4226*tmp_q_0; + const double tmp_q_69 = Dummy_4209*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4232*tmp_q_1; + const double tmp_q_71 = Dummy_4215*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4224*tmp_q_2; + const double tmp_q_74 = Dummy_4207*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4227*tmp_q_1; + const double tmp_q_76 = Dummy_4210*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4225*tmp_q_2; + const double tmp_q_79 = Dummy_4208*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4228*tmp_q_1; + const double tmp_q_81 = Dummy_4211*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4226*tmp_q_2; + const double tmp_q_84 = Dummy_4209*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4229*tmp_q_1; + const double tmp_q_86 = Dummy_4212*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4230*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4231*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4232*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4213*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4214*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4215*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4227*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4228*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4229*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4210*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4211*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4212*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4224*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4225*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4226*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4207*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4208*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4209*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -1597,12 +1597,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4230*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4231*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4232*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4227*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4228*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4229*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4213*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4214*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4215*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4210*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4211*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4212*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -1613,7 +1613,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4224*Dummy_4224)*tmp_q_103 + (Dummy_4225*Dummy_4225)*tmp_q_103 + (Dummy_4226*Dummy_4226)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4207*Dummy_4207)*tmp_q_103 + (Dummy_4208*Dummy_4208)*tmp_q_103 + (Dummy_4209*Dummy_4209)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -1622,7 +1622,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4227*Dummy_4227)*tmp_q_107 + (Dummy_4228*Dummy_4228)*tmp_q_107 + (Dummy_4229*Dummy_4229)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4210*Dummy_4210)*tmp_q_107 + (Dummy_4211*Dummy_4211)*tmp_q_107 + (Dummy_4212*Dummy_4212)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -1630,7 +1630,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4230*Dummy_4230)*tmp_q_108 + (Dummy_4231*Dummy_4231)*tmp_q_108 + (Dummy_4232*Dummy_4232)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4213*Dummy_4213)*tmp_q_108 + (Dummy_4214*Dummy_4214)*tmp_q_108 + (Dummy_4215*Dummy_4215)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -1657,7 +1657,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4225*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4226*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4224*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4208*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4209*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4207*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -1795,15 +1795,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -1866,9 +1866,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4255*tmp_q_4; - const double tmp_q_6 = Dummy_4258*tmp_q_4; - const double tmp_q_7 = Dummy_4261*tmp_q_4; + const double tmp_q_5 = Dummy_4238*tmp_q_4; + const double tmp_q_6 = Dummy_4241*tmp_q_4; + const double tmp_q_7 = Dummy_4244*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -1881,88 +1881,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4256*tmp_q_4; - const double tmp_q_21 = Dummy_4259*tmp_q_4; - const double tmp_q_22 = Dummy_4262*tmp_q_4; + const double tmp_q_20 = Dummy_4239*tmp_q_4; + const double tmp_q_21 = Dummy_4242*tmp_q_4; + const double tmp_q_22 = Dummy_4245*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4257*tmp_q_4; - const double tmp_q_25 = Dummy_4260*tmp_q_4; - const double tmp_q_26 = Dummy_4263*tmp_q_4; + const double tmp_q_24 = Dummy_4240*tmp_q_4; + const double tmp_q_25 = Dummy_4243*tmp_q_4; + const double tmp_q_26 = Dummy_4246*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4264*_data_q_w[q]; + const double tmp_q_28 = Dummy_4247*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4255*tmp_q_29; + const double tmp_q_30 = Dummy_4238*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4256*tmp_q_29; + const double tmp_q_32 = Dummy_4239*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4257*tmp_q_29; + const double tmp_q_34 = Dummy_4240*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4258*tmp_q_36; - const double tmp_q_38 = Dummy_4259*tmp_q_36; - const double tmp_q_39 = Dummy_4260*tmp_q_36; + const double tmp_q_37 = Dummy_4241*tmp_q_36; + const double tmp_q_38 = Dummy_4242*tmp_q_36; + const double tmp_q_39 = Dummy_4243*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4261*tmp_q_40; - const double tmp_q_42 = Dummy_4262*tmp_q_40; - const double tmp_q_43 = Dummy_4263*tmp_q_40; - const double tmp_q_44 = Dummy_4258*tmp_q_0; + const double tmp_q_41 = Dummy_4244*tmp_q_40; + const double tmp_q_42 = Dummy_4245*tmp_q_40; + const double tmp_q_43 = Dummy_4246*tmp_q_40; + const double tmp_q_44 = Dummy_4241*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4261*tmp_q_2; + const double tmp_q_46 = Dummy_4244*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4259*tmp_q_0; + const double tmp_q_49 = Dummy_4242*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4262*tmp_q_2; + const double tmp_q_51 = Dummy_4245*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4260*tmp_q_0; + const double tmp_q_54 = Dummy_4243*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4263*tmp_q_2; + const double tmp_q_56 = Dummy_4246*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4255*tmp_q_0; + const double tmp_q_59 = Dummy_4238*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4261*tmp_q_1; + const double tmp_q_61 = Dummy_4244*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4256*tmp_q_0; + const double tmp_q_64 = Dummy_4239*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4262*tmp_q_1; + const double tmp_q_66 = Dummy_4245*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4257*tmp_q_0; + const double tmp_q_69 = Dummy_4240*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4263*tmp_q_1; + const double tmp_q_71 = Dummy_4246*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4255*tmp_q_2; + const double tmp_q_74 = Dummy_4238*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4258*tmp_q_1; + const double tmp_q_76 = Dummy_4241*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4256*tmp_q_2; + const double tmp_q_79 = Dummy_4239*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4259*tmp_q_1; + const double tmp_q_81 = Dummy_4242*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4257*tmp_q_2; + const double tmp_q_84 = Dummy_4240*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4260*tmp_q_1; + const double tmp_q_86 = Dummy_4243*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4261*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4262*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4263*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4244*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4245*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4246*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4258*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4259*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4260*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4241*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4242*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4243*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4255*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4256*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4257*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4238*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4239*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4240*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -1979,12 +1979,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4261*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4262*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4263*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4258*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4259*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4260*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4244*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4245*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4246*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4241*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4242*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4243*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -1995,7 +1995,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4255*Dummy_4255)*tmp_q_103 + (Dummy_4256*Dummy_4256)*tmp_q_103 + (Dummy_4257*Dummy_4257)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4238*Dummy_4238)*tmp_q_103 + (Dummy_4239*Dummy_4239)*tmp_q_103 + (Dummy_4240*Dummy_4240)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -2004,7 +2004,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4258*Dummy_4258)*tmp_q_107 + (Dummy_4259*Dummy_4259)*tmp_q_107 + (Dummy_4260*Dummy_4260)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4241*Dummy_4241)*tmp_q_107 + (Dummy_4242*Dummy_4242)*tmp_q_107 + (Dummy_4243*Dummy_4243)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -2012,7 +2012,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4261*Dummy_4261)*tmp_q_108 + (Dummy_4262*Dummy_4262)*tmp_q_108 + (Dummy_4263*Dummy_4263)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4244*Dummy_4244)*tmp_q_108 + (Dummy_4245*Dummy_4245)*tmp_q_108 + (Dummy_4246*Dummy_4246)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -2039,7 +2039,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4256*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4257*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4255*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4239*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4240*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4238*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -2177,15 +2177,15 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double src_dof_8 = _data_srcEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double src_dof_9 = _data_srcEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -2248,9 +2248,9 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4286*tmp_q_4; - const double tmp_q_6 = Dummy_4289*tmp_q_4; - const double tmp_q_7 = Dummy_4292*tmp_q_4; + const double tmp_q_5 = Dummy_4269*tmp_q_4; + const double tmp_q_6 = Dummy_4272*tmp_q_4; + const double tmp_q_7 = Dummy_4275*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -2263,88 +2263,88 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4287*tmp_q_4; - const double tmp_q_21 = Dummy_4290*tmp_q_4; - const double tmp_q_22 = Dummy_4293*tmp_q_4; + const double tmp_q_20 = Dummy_4270*tmp_q_4; + const double tmp_q_21 = Dummy_4273*tmp_q_4; + const double tmp_q_22 = Dummy_4276*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4288*tmp_q_4; - const double tmp_q_25 = Dummy_4291*tmp_q_4; - const double tmp_q_26 = Dummy_4294*tmp_q_4; + const double tmp_q_24 = Dummy_4271*tmp_q_4; + const double tmp_q_25 = Dummy_4274*tmp_q_4; + const double tmp_q_26 = Dummy_4277*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4295*_data_q_w[q]; + const double tmp_q_28 = Dummy_4278*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4286*tmp_q_29; + const double tmp_q_30 = Dummy_4269*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4287*tmp_q_29; + const double tmp_q_32 = Dummy_4270*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4288*tmp_q_29; + const double tmp_q_34 = Dummy_4271*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4289*tmp_q_36; - const double tmp_q_38 = Dummy_4290*tmp_q_36; - const double tmp_q_39 = Dummy_4291*tmp_q_36; + const double tmp_q_37 = Dummy_4272*tmp_q_36; + const double tmp_q_38 = Dummy_4273*tmp_q_36; + const double tmp_q_39 = Dummy_4274*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4292*tmp_q_40; - const double tmp_q_42 = Dummy_4293*tmp_q_40; - const double tmp_q_43 = Dummy_4294*tmp_q_40; - const double tmp_q_44 = Dummy_4289*tmp_q_0; + const double tmp_q_41 = Dummy_4275*tmp_q_40; + const double tmp_q_42 = Dummy_4276*tmp_q_40; + const double tmp_q_43 = Dummy_4277*tmp_q_40; + const double tmp_q_44 = Dummy_4272*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4292*tmp_q_2; + const double tmp_q_46 = Dummy_4275*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4290*tmp_q_0; + const double tmp_q_49 = Dummy_4273*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4293*tmp_q_2; + const double tmp_q_51 = Dummy_4276*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4291*tmp_q_0; + const double tmp_q_54 = Dummy_4274*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4294*tmp_q_2; + const double tmp_q_56 = Dummy_4277*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4286*tmp_q_0; + const double tmp_q_59 = Dummy_4269*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4292*tmp_q_1; + const double tmp_q_61 = Dummy_4275*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4287*tmp_q_0; + const double tmp_q_64 = Dummy_4270*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4293*tmp_q_1; + const double tmp_q_66 = Dummy_4276*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4288*tmp_q_0; + const double tmp_q_69 = Dummy_4271*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4294*tmp_q_1; + const double tmp_q_71 = Dummy_4277*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4286*tmp_q_2; + const double tmp_q_74 = Dummy_4269*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4289*tmp_q_1; + const double tmp_q_76 = Dummy_4272*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4287*tmp_q_2; + const double tmp_q_79 = Dummy_4270*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4290*tmp_q_1; + const double tmp_q_81 = Dummy_4273*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4288*tmp_q_2; + const double tmp_q_84 = Dummy_4271*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4291*tmp_q_1; + const double tmp_q_86 = Dummy_4274*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4292*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4293*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4294*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4275*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4276*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4277*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4289*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4290*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4291*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4272*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4273*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4274*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4286*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4287*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4288*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4269*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4270*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4271*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -2361,12 +2361,12 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4292*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4293*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4294*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4289*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4290*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4291*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4275*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4276*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4277*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4272*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4273*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4274*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -2377,7 +2377,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4286*Dummy_4286)*tmp_q_103 + (Dummy_4287*Dummy_4287)*tmp_q_103 + (Dummy_4288*Dummy_4288)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4269*Dummy_4269)*tmp_q_103 + (Dummy_4270*Dummy_4270)*tmp_q_103 + (Dummy_4271*Dummy_4271)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -2386,7 +2386,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4289*Dummy_4289)*tmp_q_107 + (Dummy_4290*Dummy_4290)*tmp_q_107 + (Dummy_4291*Dummy_4291)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4272*Dummy_4272)*tmp_q_107 + (Dummy_4273*Dummy_4273)*tmp_q_107 + (Dummy_4274*Dummy_4274)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -2394,7 +2394,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4292*Dummy_4292)*tmp_q_108 + (Dummy_4293*Dummy_4293)*tmp_q_108 + (Dummy_4294*Dummy_4294)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4275*Dummy_4275)*tmp_q_108 + (Dummy_4276*Dummy_4276)*tmp_q_108 + (Dummy_4277*Dummy_4277)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -2421,7 +2421,7 @@ void P2ElementwiseDivKGrad::apply_macro_3D( double * RESTRICT _data_dstEdge, do const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4287*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4288*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4286*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4270*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4271*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4269*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; diff --git a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp index 78190581f5517cd58ed39323843a83d17b7b39ea..347ac5facbe50759e5d66cf3a9e3748b1482f558 100644 --- a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp +++ b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_2D.cpp @@ -54,14 +54,14 @@ namespace hyteg { namespace operatorgeneration { -void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( double * RESTRICT _data_invDiag_Edge, double * RESTRICT _data_invDiag_Vertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float, int64_t micro_edges_per_macro_face ) const +void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( double * RESTRICT _data_invDiag_Edge, double * RESTRICT _data_invDiag_Vertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -78,51 +78,36 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const double jac_affine_inv_1_0 = -jac_affine_1_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double jac_affine_inv_1_1 = jac_affine_0_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); - const double Dummy_4626 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4627 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4628 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4629 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4630 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4631 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4632 = -Dummy_4626 + Dummy_4628; - const double Dummy_4633 = -Dummy_4626 + Dummy_4630; - const double Dummy_4634 = -Dummy_4627 + Dummy_4629; - const double Dummy_4635 = -Dummy_4627 + Dummy_4631; - const double Dummy_4636 = Dummy_4635*1.0 / (Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); - const double Dummy_4637 = -Dummy_4633*1.0 / (Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); - const double Dummy_4638 = -Dummy_4634*1.0 / (Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); - const double Dummy_4639 = Dummy_4632*1.0 / (Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); - const double Dummy_4640 = fabs(Dummy_4632*Dummy_4635 - Dummy_4633*Dummy_4634); + const double Dummy_4609 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4610 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4611 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4612 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4613 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4614 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4615 = -Dummy_4609 + Dummy_4611; + const double Dummy_4616 = -Dummy_4609 + Dummy_4613; + const double Dummy_4617 = -Dummy_4610 + Dummy_4612; + const double Dummy_4618 = -Dummy_4610 + Dummy_4614; + const double Dummy_4619 = Dummy_4618*1.0 / (Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); + const double Dummy_4620 = -Dummy_4616*1.0 / (Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); + const double Dummy_4621 = -Dummy_4617*1.0 / (Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); + const double Dummy_4622 = Dummy_4615*1.0 / (Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); + const double Dummy_4623 = fabs(Dummy_4615*Dummy_4618 - Dummy_4616*Dummy_4617); { for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; double q_acc_5_5 = 0.0; for (int64_t q = 0; q < 3; q += 1) { @@ -131,107 +116,42 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl const double tmp_q_2 = tmp_q_0 + tmp_q_1 - 3.0; const double tmp_q_3 = jac_affine_inv_0_0*tmp_q_2; const double tmp_q_4 = jac_affine_inv_1_0*tmp_q_2; - const double tmp_q_5 = tmp_q_3 + tmp_q_4; - const double tmp_q_6 = tmp_q_0*_data_q_p_1[q]; - const double tmp_q_7 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_8 = tmp_q_7*2.0; - const double tmp_q_9 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_10 = tmp_q_9*2.0; - const double tmp_q_11 = k_dof_0*(tmp_q_10 + tmp_q_6 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_8 - _data_q_p_0[q]) + k_dof_2*(tmp_q_10 - _data_q_p_1[q]) + k_dof_3*tmp_q_6 + k_dof_4*(tmp_q_1 - tmp_q_6 + tmp_q_9*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_6 + tmp_q_7*-4.0); - const double tmp_q_12 = jac_affine_inv_0_1*tmp_q_2; - const double tmp_q_13 = jac_affine_inv_1_1*tmp_q_2; - const double tmp_q_14 = tmp_q_12 + tmp_q_13; - const double tmp_q_15 = abs_det_jac_affine*_data_q_w[q]; - const double tmp_q_16 = tmp_q_0 - 1.0; - const double tmp_q_17 = jac_affine_inv_0_0*tmp_q_16; - const double tmp_q_18 = tmp_q_11*tmp_q_5; - const double tmp_q_19 = jac_affine_inv_0_1*tmp_q_16; - const double tmp_q_20 = tmp_q_11*tmp_q_14; - const double tmp_q_21 = tmp_q_1 - 1.0; - const double tmp_q_22 = jac_affine_inv_1_0*tmp_q_21; - const double tmp_q_23 = jac_affine_inv_1_1*tmp_q_21; - const double tmp_q_24 = jac_affine_inv_0_0*tmp_q_1; - const double tmp_q_25 = tmp_q_11*tmp_q_24; - const double tmp_q_26 = jac_affine_inv_1_0*tmp_q_0; - const double tmp_q_27 = tmp_q_11*tmp_q_26; - const double tmp_q_28 = tmp_q_25 + tmp_q_27; - const double tmp_q_29 = jac_affine_inv_0_1*tmp_q_1; - const double tmp_q_30 = tmp_q_11*tmp_q_29; - const double tmp_q_31 = jac_affine_inv_1_1*tmp_q_0; - const double tmp_q_32 = tmp_q_11*tmp_q_31; - const double tmp_q_33 = tmp_q_30 + tmp_q_32; - const double tmp_q_34 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; - const double tmp_q_35 = jac_affine_inv_1_0*tmp_q_11*tmp_q_34 - tmp_q_25; - const double tmp_q_36 = jac_affine_inv_1_1*tmp_q_11*tmp_q_34 - tmp_q_30; - const double tmp_q_37 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; - const double tmp_q_38 = jac_affine_inv_0_0*tmp_q_37; - const double tmp_q_39 = tmp_q_11*tmp_q_38 - tmp_q_27; - const double tmp_q_40 = jac_affine_inv_0_1*tmp_q_37; - const double tmp_q_41 = tmp_q_11*tmp_q_40 - tmp_q_32; - const double tmp_q_42 = tmp_q_11*(tmp_q_16*tmp_q_16); - const double tmp_q_43 = tmp_q_11*(tmp_q_21*tmp_q_21); - const double tmp_q_44 = tmp_q_24 + tmp_q_26; - const double tmp_q_45 = tmp_q_29 + tmp_q_31; - const double tmp_q_46 = jac_affine_inv_1_0*tmp_q_34 - tmp_q_24; - const double tmp_q_47 = jac_affine_inv_1_1*tmp_q_34 - tmp_q_29; - const double res_tmp_0_0 = tmp_q_15*(tmp_q_14*(tmp_q_11*tmp_q_12 + tmp_q_11*tmp_q_13) + tmp_q_5*(tmp_q_11*tmp_q_3 + tmp_q_11*tmp_q_4)); - const double res_tmp_0_1 = tmp_q_15*(tmp_q_17*tmp_q_18 + tmp_q_19*tmp_q_20); - const double res_tmp_0_2 = tmp_q_15*(tmp_q_18*tmp_q_22 + tmp_q_20*tmp_q_23); - const double res_tmp_0_3 = tmp_q_15*(tmp_q_14*tmp_q_33 + tmp_q_28*tmp_q_5); - const double res_tmp_0_4 = tmp_q_15*(tmp_q_14*tmp_q_36 + tmp_q_35*tmp_q_5); - const double res_tmp_0_5 = tmp_q_15*(tmp_q_14*tmp_q_41 + tmp_q_39*tmp_q_5); - const double res_tmp_1_1 = tmp_q_15*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_42 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_42); - const double res_tmp_1_2 = tmp_q_15*(tmp_q_11*tmp_q_17*tmp_q_22 + tmp_q_11*tmp_q_19*tmp_q_23); - const double res_tmp_1_3 = tmp_q_15*(tmp_q_17*tmp_q_28 + tmp_q_19*tmp_q_33); - const double res_tmp_1_4 = tmp_q_15*(tmp_q_17*tmp_q_35 + tmp_q_19*tmp_q_36); - const double res_tmp_1_5 = tmp_q_15*(tmp_q_17*tmp_q_39 + tmp_q_19*tmp_q_41); - const double res_tmp_2_2 = tmp_q_15*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_43 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_43); - const double res_tmp_2_3 = tmp_q_15*(tmp_q_22*tmp_q_28 + tmp_q_23*tmp_q_33); - const double res_tmp_2_4 = tmp_q_15*(tmp_q_22*tmp_q_35 + tmp_q_23*tmp_q_36); - const double res_tmp_2_5 = tmp_q_15*(tmp_q_22*tmp_q_39 + tmp_q_23*tmp_q_41); - const double res_tmp_3_3 = tmp_q_15*(tmp_q_28*tmp_q_44 + tmp_q_33*tmp_q_45); - const double res_tmp_3_4 = tmp_q_15*(tmp_q_35*tmp_q_44 + tmp_q_36*tmp_q_45); - const double res_tmp_3_5 = tmp_q_15*(tmp_q_39*tmp_q_44 + tmp_q_41*tmp_q_45); - const double res_tmp_4_4 = tmp_q_15*(tmp_q_35*tmp_q_46 + tmp_q_36*tmp_q_47); - const double res_tmp_4_5 = tmp_q_15*(tmp_q_39*tmp_q_46 + tmp_q_41*tmp_q_47); - const double res_tmp_5_5 = tmp_q_15*(tmp_q_39*(-tmp_q_26 + tmp_q_38) + tmp_q_41*(-tmp_q_31 + tmp_q_40)); + const double tmp_q_5 = tmp_q_0*_data_q_p_1[q]; + const double tmp_q_6 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_7 = tmp_q_6*2.0; + const double tmp_q_8 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_9 = tmp_q_8*2.0; + const double tmp_q_10 = k_dof_0*(tmp_q_5 + tmp_q_7 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_7 - _data_q_p_0[q]) + k_dof_2*(tmp_q_9 - _data_q_p_1[q]) + k_dof_3*tmp_q_5 + k_dof_4*(tmp_q_1 - tmp_q_5 + tmp_q_8*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_5 + tmp_q_6*-4.0); + const double tmp_q_11 = jac_affine_inv_0_1*tmp_q_2; + const double tmp_q_12 = jac_affine_inv_1_1*tmp_q_2; + const double tmp_q_13 = abs_det_jac_affine*_data_q_w[q]; + const double tmp_q_14 = tmp_q_10*((tmp_q_0 - 1.0)*(tmp_q_0 - 1.0)); + const double tmp_q_15 = tmp_q_10*((tmp_q_1 - 1.0)*(tmp_q_1 - 1.0)); + const double tmp_q_16 = jac_affine_inv_0_0*tmp_q_1; + const double tmp_q_17 = jac_affine_inv_1_0*tmp_q_0; + const double tmp_q_18 = tmp_q_10*tmp_q_16; + const double tmp_q_19 = tmp_q_10*tmp_q_17; + const double tmp_q_20 = jac_affine_inv_0_1*tmp_q_1; + const double tmp_q_21 = jac_affine_inv_1_1*tmp_q_0; + const double tmp_q_22 = tmp_q_10*tmp_q_20; + const double tmp_q_23 = tmp_q_10*tmp_q_21; + const double tmp_q_24 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; + const double tmp_q_25 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; + const double tmp_q_26 = jac_affine_inv_0_0*tmp_q_25; + const double tmp_q_27 = jac_affine_inv_0_1*tmp_q_25; + const double res_tmp_0_0 = tmp_q_13*((tmp_q_11 + tmp_q_12)*(tmp_q_10*tmp_q_11 + tmp_q_10*tmp_q_12) + (tmp_q_3 + tmp_q_4)*(tmp_q_10*tmp_q_3 + tmp_q_10*tmp_q_4)); + const double res_tmp_1_1 = tmp_q_13*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_14 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_14); + const double res_tmp_2_2 = tmp_q_13*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_15 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_15); + const double res_tmp_3_3 = tmp_q_13*((tmp_q_16 + tmp_q_17)*(tmp_q_18 + tmp_q_19) + (tmp_q_20 + tmp_q_21)*(tmp_q_22 + tmp_q_23)); + const double res_tmp_4_4 = tmp_q_13*((jac_affine_inv_1_0*tmp_q_24 - tmp_q_16)*(jac_affine_inv_1_0*tmp_q_10*tmp_q_24 - tmp_q_18) + (jac_affine_inv_1_1*tmp_q_24 - tmp_q_20)*(jac_affine_inv_1_1*tmp_q_10*tmp_q_24 - tmp_q_22)); + const double res_tmp_5_5 = tmp_q_13*((-tmp_q_17 + tmp_q_26)*(tmp_q_10*tmp_q_26 - tmp_q_19) + (-tmp_q_21 + tmp_q_27)*(tmp_q_10*tmp_q_27 - tmp_q_23)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -241,148 +161,68 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_0 + _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1] = elMatDiag_1 + _data_invDiag_Vertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatDiag_2 + _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_3 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_4 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatDiag_3 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatDiag_4 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_5 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; } for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; - const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; + const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; double q_acc_5_5 = 0.0; for (int64_t q = 0; q < 3; q += 1) { const double tmp_q_0 = 4.0*_data_q_p_0[q]; const double tmp_q_1 = 4.0*_data_q_p_1[q]; const double tmp_q_2 = tmp_q_0 + tmp_q_1 - 3.0; - const double tmp_q_3 = Dummy_4636*tmp_q_2; - const double tmp_q_4 = Dummy_4638*tmp_q_2; - const double tmp_q_5 = tmp_q_3 + tmp_q_4; - const double tmp_q_6 = tmp_q_0*_data_q_p_1[q]; - const double tmp_q_7 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_8 = tmp_q_7*2.0; - const double tmp_q_9 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_10 = tmp_q_9*2.0; - const double tmp_q_11 = k_dof_0*(tmp_q_10 + tmp_q_6 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_8 - _data_q_p_0[q]) + k_dof_2*(tmp_q_10 - _data_q_p_1[q]) + k_dof_3*tmp_q_6 + k_dof_4*(tmp_q_1 - tmp_q_6 + tmp_q_9*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_6 + tmp_q_7*-4.0); - const double tmp_q_12 = Dummy_4637*tmp_q_2; - const double tmp_q_13 = Dummy_4639*tmp_q_2; - const double tmp_q_14 = tmp_q_12 + tmp_q_13; - const double tmp_q_15 = Dummy_4640*_data_q_w[q]; - const double tmp_q_16 = tmp_q_0 - 1.0; - const double tmp_q_17 = Dummy_4636*tmp_q_16; - const double tmp_q_18 = tmp_q_11*tmp_q_5; - const double tmp_q_19 = Dummy_4637*tmp_q_16; - const double tmp_q_20 = tmp_q_11*tmp_q_14; - const double tmp_q_21 = tmp_q_1 - 1.0; - const double tmp_q_22 = Dummy_4638*tmp_q_21; - const double tmp_q_23 = Dummy_4639*tmp_q_21; - const double tmp_q_24 = Dummy_4636*tmp_q_1; - const double tmp_q_25 = tmp_q_11*tmp_q_24; - const double tmp_q_26 = Dummy_4638*tmp_q_0; - const double tmp_q_27 = tmp_q_11*tmp_q_26; - const double tmp_q_28 = tmp_q_25 + tmp_q_27; - const double tmp_q_29 = Dummy_4637*tmp_q_1; - const double tmp_q_30 = tmp_q_11*tmp_q_29; - const double tmp_q_31 = Dummy_4639*tmp_q_0; - const double tmp_q_32 = tmp_q_11*tmp_q_31; - const double tmp_q_33 = tmp_q_30 + tmp_q_32; - const double tmp_q_34 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; - const double tmp_q_35 = Dummy_4638*tmp_q_11*tmp_q_34 - tmp_q_25; - const double tmp_q_36 = Dummy_4639*tmp_q_11*tmp_q_34 - tmp_q_30; - const double tmp_q_37 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; - const double tmp_q_38 = Dummy_4636*tmp_q_37; - const double tmp_q_39 = tmp_q_11*tmp_q_38 - tmp_q_27; - const double tmp_q_40 = Dummy_4637*tmp_q_37; - const double tmp_q_41 = tmp_q_11*tmp_q_40 - tmp_q_32; - const double tmp_q_42 = tmp_q_11*(tmp_q_16*tmp_q_16); - const double tmp_q_43 = tmp_q_11*(tmp_q_21*tmp_q_21); - const double tmp_q_44 = tmp_q_24 + tmp_q_26; - const double tmp_q_45 = tmp_q_29 + tmp_q_31; - const double tmp_q_46 = Dummy_4638*tmp_q_34 - tmp_q_24; - const double tmp_q_47 = Dummy_4639*tmp_q_34 - tmp_q_29; - const double res_tmp_0_0 = tmp_q_15*(tmp_q_14*(tmp_q_11*tmp_q_12 + tmp_q_11*tmp_q_13) + tmp_q_5*(tmp_q_11*tmp_q_3 + tmp_q_11*tmp_q_4)); - const double res_tmp_0_1 = tmp_q_15*(tmp_q_17*tmp_q_18 + tmp_q_19*tmp_q_20); - const double res_tmp_0_2 = tmp_q_15*(tmp_q_18*tmp_q_22 + tmp_q_20*tmp_q_23); - const double res_tmp_0_3 = tmp_q_15*(tmp_q_14*tmp_q_33 + tmp_q_28*tmp_q_5); - const double res_tmp_0_4 = tmp_q_15*(tmp_q_14*tmp_q_36 + tmp_q_35*tmp_q_5); - const double res_tmp_0_5 = tmp_q_15*(tmp_q_14*tmp_q_41 + tmp_q_39*tmp_q_5); - const double res_tmp_1_1 = tmp_q_15*((Dummy_4636*Dummy_4636)*tmp_q_42 + (Dummy_4637*Dummy_4637)*tmp_q_42); - const double res_tmp_1_2 = tmp_q_15*(tmp_q_11*tmp_q_17*tmp_q_22 + tmp_q_11*tmp_q_19*tmp_q_23); - const double res_tmp_1_3 = tmp_q_15*(tmp_q_17*tmp_q_28 + tmp_q_19*tmp_q_33); - const double res_tmp_1_4 = tmp_q_15*(tmp_q_17*tmp_q_35 + tmp_q_19*tmp_q_36); - const double res_tmp_1_5 = tmp_q_15*(tmp_q_17*tmp_q_39 + tmp_q_19*tmp_q_41); - const double res_tmp_2_2 = tmp_q_15*((Dummy_4638*Dummy_4638)*tmp_q_43 + (Dummy_4639*Dummy_4639)*tmp_q_43); - const double res_tmp_2_3 = tmp_q_15*(tmp_q_22*tmp_q_28 + tmp_q_23*tmp_q_33); - const double res_tmp_2_4 = tmp_q_15*(tmp_q_22*tmp_q_35 + tmp_q_23*tmp_q_36); - const double res_tmp_2_5 = tmp_q_15*(tmp_q_22*tmp_q_39 + tmp_q_23*tmp_q_41); - const double res_tmp_3_3 = tmp_q_15*(tmp_q_28*tmp_q_44 + tmp_q_33*tmp_q_45); - const double res_tmp_3_4 = tmp_q_15*(tmp_q_35*tmp_q_44 + tmp_q_36*tmp_q_45); - const double res_tmp_3_5 = tmp_q_15*(tmp_q_39*tmp_q_44 + tmp_q_41*tmp_q_45); - const double res_tmp_4_4 = tmp_q_15*(tmp_q_35*tmp_q_46 + tmp_q_36*tmp_q_47); - const double res_tmp_4_5 = tmp_q_15*(tmp_q_39*tmp_q_46 + tmp_q_41*tmp_q_47); - const double res_tmp_5_5 = tmp_q_15*(tmp_q_39*(-tmp_q_26 + tmp_q_38) + tmp_q_41*(-tmp_q_31 + tmp_q_40)); + const double tmp_q_3 = Dummy_4619*tmp_q_2; + const double tmp_q_4 = Dummy_4621*tmp_q_2; + const double tmp_q_5 = tmp_q_0*_data_q_p_1[q]; + const double tmp_q_6 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_7 = tmp_q_6*2.0; + const double tmp_q_8 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_9 = tmp_q_8*2.0; + const double tmp_q_10 = k_dof_0*(tmp_q_5 + tmp_q_7 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_7 - _data_q_p_0[q]) + k_dof_2*(tmp_q_9 - _data_q_p_1[q]) + k_dof_3*tmp_q_5 + k_dof_4*(tmp_q_1 - tmp_q_5 + tmp_q_8*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_5 + tmp_q_6*-4.0); + const double tmp_q_11 = Dummy_4620*tmp_q_2; + const double tmp_q_12 = Dummy_4622*tmp_q_2; + const double tmp_q_13 = Dummy_4623*_data_q_w[q]; + const double tmp_q_14 = tmp_q_10*((tmp_q_0 - 1.0)*(tmp_q_0 - 1.0)); + const double tmp_q_15 = tmp_q_10*((tmp_q_1 - 1.0)*(tmp_q_1 - 1.0)); + const double tmp_q_16 = Dummy_4619*tmp_q_1; + const double tmp_q_17 = Dummy_4621*tmp_q_0; + const double tmp_q_18 = tmp_q_10*tmp_q_16; + const double tmp_q_19 = tmp_q_10*tmp_q_17; + const double tmp_q_20 = Dummy_4620*tmp_q_1; + const double tmp_q_21 = Dummy_4622*tmp_q_0; + const double tmp_q_22 = tmp_q_10*tmp_q_20; + const double tmp_q_23 = tmp_q_10*tmp_q_21; + const double tmp_q_24 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; + const double tmp_q_25 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; + const double tmp_q_26 = Dummy_4619*tmp_q_25; + const double tmp_q_27 = Dummy_4620*tmp_q_25; + const double res_tmp_0_0 = tmp_q_13*((tmp_q_11 + tmp_q_12)*(tmp_q_10*tmp_q_11 + tmp_q_10*tmp_q_12) + (tmp_q_3 + tmp_q_4)*(tmp_q_10*tmp_q_3 + tmp_q_10*tmp_q_4)); + const double res_tmp_1_1 = tmp_q_13*((Dummy_4619*Dummy_4619)*tmp_q_14 + (Dummy_4620*Dummy_4620)*tmp_q_14); + const double res_tmp_2_2 = tmp_q_13*((Dummy_4621*Dummy_4621)*tmp_q_15 + (Dummy_4622*Dummy_4622)*tmp_q_15); + const double res_tmp_3_3 = tmp_q_13*((tmp_q_16 + tmp_q_17)*(tmp_q_18 + tmp_q_19) + (tmp_q_20 + tmp_q_21)*(tmp_q_22 + tmp_q_23)); + const double res_tmp_4_4 = tmp_q_13*((Dummy_4621*tmp_q_24 - tmp_q_16)*(Dummy_4621*tmp_q_10*tmp_q_24 - tmp_q_18) + (Dummy_4622*tmp_q_24 - tmp_q_20)*(Dummy_4622*tmp_q_10*tmp_q_24 - tmp_q_22)); + const double res_tmp_5_5 = tmp_q_13*((-tmp_q_17 + tmp_q_26)*(tmp_q_10*tmp_q_26 - tmp_q_19) + (-tmp_q_21 + tmp_q_27)*(tmp_q_10*tmp_q_27 - tmp_q_23)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -393,8 +233,8 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_2D( doubl _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatDiag_1 + _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1] = elMatDiag_2 + _data_invDiag_Vertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; _data_invDiag_Edge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))] = elMatDiag_3 + _data_invDiag_Edge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1] = elMatDiag_4 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))] = elMatDiag_5 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1] = elMatDiag_4 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))] = elMatDiag_5 + _data_invDiag_Edge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; } } } diff --git a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp index 6c2231b8292a24e18df4e03927cead046124f6e7..9de80d02460c7eb37f57824bbceebec8e4705610 100644 --- a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp +++ b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_computeInverseDiagonalOperatorValues_macro_3D.cpp @@ -57,13 +57,13 @@ namespace operatorgeneration { void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( double * RESTRICT _data_invDiag_Edge, double * RESTRICT _data_invDiag_Vertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -96,230 +96,185 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double jac_affine_inv_2_1 = (-jac_affine_0_0*jac_affine_2_1 + jac_affine_0_1*jac_affine_2_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double jac_affine_inv_2_2 = (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); - const double Dummy_4749 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4750 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4751 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4752 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4753 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4754 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4755 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4756 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4757 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4758 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4759 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4760 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4761 = -Dummy_4749 + Dummy_4752; - const double Dummy_4762 = -Dummy_4749 + Dummy_4755; - const double Dummy_4763 = -Dummy_4749 + Dummy_4758; - const double Dummy_4764 = -Dummy_4750 + Dummy_4753; - const double Dummy_4765 = -Dummy_4750 + Dummy_4756; - const double Dummy_4766 = -Dummy_4750 + Dummy_4759; - const double Dummy_4767 = -Dummy_4751 + Dummy_4754; - const double Dummy_4768 = -Dummy_4751 + Dummy_4757; - const double Dummy_4769 = -Dummy_4751 + Dummy_4760; - const double Dummy_4770 = (Dummy_4765*Dummy_4769 - Dummy_4766*Dummy_4768)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4771 = (-Dummy_4762*Dummy_4769 + Dummy_4763*Dummy_4768)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4772 = (Dummy_4762*Dummy_4766 - Dummy_4763*Dummy_4765)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4773 = (-Dummy_4764*Dummy_4769 + Dummy_4766*Dummy_4767)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4774 = (Dummy_4761*Dummy_4769 - Dummy_4763*Dummy_4767)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4775 = (-Dummy_4761*Dummy_4766 + Dummy_4763*Dummy_4764)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4776 = (Dummy_4764*Dummy_4768 - Dummy_4765*Dummy_4767)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4777 = (-Dummy_4761*Dummy_4768 + Dummy_4762*Dummy_4767)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4778 = (Dummy_4761*Dummy_4765 - Dummy_4762*Dummy_4764)*1.0 / (Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4779 = fabs(Dummy_4761*Dummy_4765*Dummy_4769 - Dummy_4761*Dummy_4766*Dummy_4768 - Dummy_4762*Dummy_4764*Dummy_4769 + Dummy_4762*Dummy_4766*Dummy_4767 + Dummy_4763*Dummy_4764*Dummy_4768 - Dummy_4763*Dummy_4765*Dummy_4767); - const double Dummy_4780 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4781 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4782 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4783 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4784 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4785 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4786 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4787 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4788 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4789 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4790 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4791 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4792 = -Dummy_4780 + Dummy_4783; - const double Dummy_4793 = -Dummy_4780 + Dummy_4786; - const double Dummy_4794 = -Dummy_4780 + Dummy_4789; - const double Dummy_4795 = -Dummy_4781 + Dummy_4784; - const double Dummy_4796 = -Dummy_4781 + Dummy_4787; - const double Dummy_4797 = -Dummy_4781 + Dummy_4790; - const double Dummy_4798 = -Dummy_4782 + Dummy_4785; - const double Dummy_4799 = -Dummy_4782 + Dummy_4788; - const double Dummy_4800 = -Dummy_4782 + Dummy_4791; - const double Dummy_4801 = (Dummy_4796*Dummy_4800 - Dummy_4797*Dummy_4799)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4802 = (-Dummy_4793*Dummy_4800 + Dummy_4794*Dummy_4799)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4803 = (Dummy_4793*Dummy_4797 - Dummy_4794*Dummy_4796)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4804 = (-Dummy_4795*Dummy_4800 + Dummy_4797*Dummy_4798)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4805 = (Dummy_4792*Dummy_4800 - Dummy_4794*Dummy_4798)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4806 = (-Dummy_4792*Dummy_4797 + Dummy_4794*Dummy_4795)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4807 = (Dummy_4795*Dummy_4799 - Dummy_4796*Dummy_4798)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4808 = (-Dummy_4792*Dummy_4799 + Dummy_4793*Dummy_4798)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4809 = (Dummy_4792*Dummy_4796 - Dummy_4793*Dummy_4795)*1.0 / (Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4810 = fabs(Dummy_4792*Dummy_4796*Dummy_4800 - Dummy_4792*Dummy_4797*Dummy_4799 - Dummy_4793*Dummy_4795*Dummy_4800 + Dummy_4793*Dummy_4797*Dummy_4798 + Dummy_4794*Dummy_4795*Dummy_4799 - Dummy_4794*Dummy_4796*Dummy_4798); - const double Dummy_4811 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4812 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4813 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4814 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4815 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4816 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4817 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4818 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4819 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4820 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4821 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4822 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4823 = -Dummy_4811 + Dummy_4814; - const double Dummy_4824 = -Dummy_4811 + Dummy_4817; - const double Dummy_4825 = -Dummy_4811 + Dummy_4820; - const double Dummy_4826 = -Dummy_4812 + Dummy_4815; - const double Dummy_4827 = -Dummy_4812 + Dummy_4818; - const double Dummy_4828 = -Dummy_4812 + Dummy_4821; - const double Dummy_4829 = -Dummy_4813 + Dummy_4816; - const double Dummy_4830 = -Dummy_4813 + Dummy_4819; - const double Dummy_4831 = -Dummy_4813 + Dummy_4822; - const double Dummy_4832 = (Dummy_4827*Dummy_4831 - Dummy_4828*Dummy_4830)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4833 = (-Dummy_4824*Dummy_4831 + Dummy_4825*Dummy_4830)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4834 = (Dummy_4824*Dummy_4828 - Dummy_4825*Dummy_4827)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4835 = (-Dummy_4826*Dummy_4831 + Dummy_4828*Dummy_4829)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4836 = (Dummy_4823*Dummy_4831 - Dummy_4825*Dummy_4829)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4837 = (-Dummy_4823*Dummy_4828 + Dummy_4825*Dummy_4826)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4838 = (Dummy_4826*Dummy_4830 - Dummy_4827*Dummy_4829)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4839 = (-Dummy_4823*Dummy_4830 + Dummy_4824*Dummy_4829)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4840 = (Dummy_4823*Dummy_4827 - Dummy_4824*Dummy_4826)*1.0 / (Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4841 = fabs(Dummy_4823*Dummy_4827*Dummy_4831 - Dummy_4823*Dummy_4828*Dummy_4830 - Dummy_4824*Dummy_4826*Dummy_4831 + Dummy_4824*Dummy_4828*Dummy_4829 + Dummy_4825*Dummy_4826*Dummy_4830 - Dummy_4825*Dummy_4827*Dummy_4829); - const double Dummy_4842 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4843 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4844 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4845 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4846 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4847 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4848 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4849 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4850 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4851 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4852 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4853 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4854 = -Dummy_4842 + Dummy_4845; - const double Dummy_4855 = -Dummy_4842 + Dummy_4848; - const double Dummy_4856 = -Dummy_4842 + Dummy_4851; - const double Dummy_4857 = -Dummy_4843 + Dummy_4846; - const double Dummy_4858 = -Dummy_4843 + Dummy_4849; - const double Dummy_4859 = -Dummy_4843 + Dummy_4852; - const double Dummy_4860 = -Dummy_4844 + Dummy_4847; - const double Dummy_4861 = -Dummy_4844 + Dummy_4850; - const double Dummy_4862 = -Dummy_4844 + Dummy_4853; - const double Dummy_4863 = (Dummy_4858*Dummy_4862 - Dummy_4859*Dummy_4861)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4864 = (-Dummy_4855*Dummy_4862 + Dummy_4856*Dummy_4861)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4865 = (Dummy_4855*Dummy_4859 - Dummy_4856*Dummy_4858)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4866 = (-Dummy_4857*Dummy_4862 + Dummy_4859*Dummy_4860)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4867 = (Dummy_4854*Dummy_4862 - Dummy_4856*Dummy_4860)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4868 = (-Dummy_4854*Dummy_4859 + Dummy_4856*Dummy_4857)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4869 = (Dummy_4857*Dummy_4861 - Dummy_4858*Dummy_4860)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4870 = (-Dummy_4854*Dummy_4861 + Dummy_4855*Dummy_4860)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4871 = (Dummy_4854*Dummy_4858 - Dummy_4855*Dummy_4857)*1.0 / (Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4872 = fabs(Dummy_4854*Dummy_4858*Dummy_4862 - Dummy_4854*Dummy_4859*Dummy_4861 - Dummy_4855*Dummy_4857*Dummy_4862 + Dummy_4855*Dummy_4859*Dummy_4860 + Dummy_4856*Dummy_4857*Dummy_4861 - Dummy_4856*Dummy_4858*Dummy_4860); - const double Dummy_4873 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4874 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4875 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4876 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4877 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4878 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4879 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4880 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4881 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4882 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4883 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4884 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4885 = -Dummy_4873 + Dummy_4876; - const double Dummy_4886 = -Dummy_4873 + Dummy_4879; - const double Dummy_4887 = -Dummy_4873 + Dummy_4882; - const double Dummy_4888 = -Dummy_4874 + Dummy_4877; - const double Dummy_4889 = -Dummy_4874 + Dummy_4880; - const double Dummy_4890 = -Dummy_4874 + Dummy_4883; - const double Dummy_4891 = -Dummy_4875 + Dummy_4878; - const double Dummy_4892 = -Dummy_4875 + Dummy_4881; - const double Dummy_4893 = -Dummy_4875 + Dummy_4884; - const double Dummy_4894 = (Dummy_4889*Dummy_4893 - Dummy_4890*Dummy_4892)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4895 = (-Dummy_4886*Dummy_4893 + Dummy_4887*Dummy_4892)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4896 = (Dummy_4886*Dummy_4890 - Dummy_4887*Dummy_4889)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4897 = (-Dummy_4888*Dummy_4893 + Dummy_4890*Dummy_4891)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4898 = (Dummy_4885*Dummy_4893 - Dummy_4887*Dummy_4891)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4899 = (-Dummy_4885*Dummy_4890 + Dummy_4887*Dummy_4888)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4900 = (Dummy_4888*Dummy_4892 - Dummy_4889*Dummy_4891)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4901 = (-Dummy_4885*Dummy_4892 + Dummy_4886*Dummy_4891)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4902 = (Dummy_4885*Dummy_4889 - Dummy_4886*Dummy_4888)*1.0 / (Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); - const double Dummy_4903 = fabs(Dummy_4885*Dummy_4889*Dummy_4893 - Dummy_4885*Dummy_4890*Dummy_4892 - Dummy_4886*Dummy_4888*Dummy_4893 + Dummy_4886*Dummy_4890*Dummy_4891 + Dummy_4887*Dummy_4888*Dummy_4892 - Dummy_4887*Dummy_4889*Dummy_4891); + const double Dummy_4732 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4733 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4734 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4735 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4736 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4737 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4738 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4739 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4740 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4741 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4742 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4743 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4744 = -Dummy_4732 + Dummy_4735; + const double Dummy_4745 = -Dummy_4732 + Dummy_4738; + const double Dummy_4746 = -Dummy_4732 + Dummy_4741; + const double Dummy_4747 = -Dummy_4733 + Dummy_4736; + const double Dummy_4748 = -Dummy_4733 + Dummy_4739; + const double Dummy_4749 = -Dummy_4733 + Dummy_4742; + const double Dummy_4750 = -Dummy_4734 + Dummy_4737; + const double Dummy_4751 = -Dummy_4734 + Dummy_4740; + const double Dummy_4752 = -Dummy_4734 + Dummy_4743; + const double Dummy_4753 = (Dummy_4748*Dummy_4752 - Dummy_4749*Dummy_4751)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4754 = (-Dummy_4745*Dummy_4752 + Dummy_4746*Dummy_4751)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4755 = (Dummy_4745*Dummy_4749 - Dummy_4746*Dummy_4748)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4756 = (-Dummy_4747*Dummy_4752 + Dummy_4749*Dummy_4750)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4757 = (Dummy_4744*Dummy_4752 - Dummy_4746*Dummy_4750)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4758 = (-Dummy_4744*Dummy_4749 + Dummy_4746*Dummy_4747)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4759 = (Dummy_4747*Dummy_4751 - Dummy_4748*Dummy_4750)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4760 = (-Dummy_4744*Dummy_4751 + Dummy_4745*Dummy_4750)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4761 = (Dummy_4744*Dummy_4748 - Dummy_4745*Dummy_4747)*1.0 / (Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4762 = fabs(Dummy_4744*Dummy_4748*Dummy_4752 - Dummy_4744*Dummy_4749*Dummy_4751 - Dummy_4745*Dummy_4747*Dummy_4752 + Dummy_4745*Dummy_4749*Dummy_4750 + Dummy_4746*Dummy_4747*Dummy_4751 - Dummy_4746*Dummy_4748*Dummy_4750); + const double Dummy_4763 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4764 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4765 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4766 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4767 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4768 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4769 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4770 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4771 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4772 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4773 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4774 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4775 = -Dummy_4763 + Dummy_4766; + const double Dummy_4776 = -Dummy_4763 + Dummy_4769; + const double Dummy_4777 = -Dummy_4763 + Dummy_4772; + const double Dummy_4778 = -Dummy_4764 + Dummy_4767; + const double Dummy_4779 = -Dummy_4764 + Dummy_4770; + const double Dummy_4780 = -Dummy_4764 + Dummy_4773; + const double Dummy_4781 = -Dummy_4765 + Dummy_4768; + const double Dummy_4782 = -Dummy_4765 + Dummy_4771; + const double Dummy_4783 = -Dummy_4765 + Dummy_4774; + const double Dummy_4784 = (Dummy_4779*Dummy_4783 - Dummy_4780*Dummy_4782)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4785 = (-Dummy_4776*Dummy_4783 + Dummy_4777*Dummy_4782)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4786 = (Dummy_4776*Dummy_4780 - Dummy_4777*Dummy_4779)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4787 = (-Dummy_4778*Dummy_4783 + Dummy_4780*Dummy_4781)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4788 = (Dummy_4775*Dummy_4783 - Dummy_4777*Dummy_4781)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4789 = (-Dummy_4775*Dummy_4780 + Dummy_4777*Dummy_4778)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4790 = (Dummy_4778*Dummy_4782 - Dummy_4779*Dummy_4781)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4791 = (-Dummy_4775*Dummy_4782 + Dummy_4776*Dummy_4781)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4792 = (Dummy_4775*Dummy_4779 - Dummy_4776*Dummy_4778)*1.0 / (Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4793 = fabs(Dummy_4775*Dummy_4779*Dummy_4783 - Dummy_4775*Dummy_4780*Dummy_4782 - Dummy_4776*Dummy_4778*Dummy_4783 + Dummy_4776*Dummy_4780*Dummy_4781 + Dummy_4777*Dummy_4778*Dummy_4782 - Dummy_4777*Dummy_4779*Dummy_4781); + const double Dummy_4794 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4795 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4796 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4797 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4798 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4799 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4800 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4801 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4802 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4803 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4804 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4805 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4806 = -Dummy_4794 + Dummy_4797; + const double Dummy_4807 = -Dummy_4794 + Dummy_4800; + const double Dummy_4808 = -Dummy_4794 + Dummy_4803; + const double Dummy_4809 = -Dummy_4795 + Dummy_4798; + const double Dummy_4810 = -Dummy_4795 + Dummy_4801; + const double Dummy_4811 = -Dummy_4795 + Dummy_4804; + const double Dummy_4812 = -Dummy_4796 + Dummy_4799; + const double Dummy_4813 = -Dummy_4796 + Dummy_4802; + const double Dummy_4814 = -Dummy_4796 + Dummy_4805; + const double Dummy_4815 = (Dummy_4810*Dummy_4814 - Dummy_4811*Dummy_4813)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4816 = (-Dummy_4807*Dummy_4814 + Dummy_4808*Dummy_4813)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4817 = (Dummy_4807*Dummy_4811 - Dummy_4808*Dummy_4810)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4818 = (-Dummy_4809*Dummy_4814 + Dummy_4811*Dummy_4812)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4819 = (Dummy_4806*Dummy_4814 - Dummy_4808*Dummy_4812)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4820 = (-Dummy_4806*Dummy_4811 + Dummy_4808*Dummy_4809)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4821 = (Dummy_4809*Dummy_4813 - Dummy_4810*Dummy_4812)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4822 = (-Dummy_4806*Dummy_4813 + Dummy_4807*Dummy_4812)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4823 = (Dummy_4806*Dummy_4810 - Dummy_4807*Dummy_4809)*1.0 / (Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4824 = fabs(Dummy_4806*Dummy_4810*Dummy_4814 - Dummy_4806*Dummy_4811*Dummy_4813 - Dummy_4807*Dummy_4809*Dummy_4814 + Dummy_4807*Dummy_4811*Dummy_4812 + Dummy_4808*Dummy_4809*Dummy_4813 - Dummy_4808*Dummy_4810*Dummy_4812); + const double Dummy_4825 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4826 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4827 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4828 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4829 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4830 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4831 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4832 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4833 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4834 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4835 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4836 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4837 = -Dummy_4825 + Dummy_4828; + const double Dummy_4838 = -Dummy_4825 + Dummy_4831; + const double Dummy_4839 = -Dummy_4825 + Dummy_4834; + const double Dummy_4840 = -Dummy_4826 + Dummy_4829; + const double Dummy_4841 = -Dummy_4826 + Dummy_4832; + const double Dummy_4842 = -Dummy_4826 + Dummy_4835; + const double Dummy_4843 = -Dummy_4827 + Dummy_4830; + const double Dummy_4844 = -Dummy_4827 + Dummy_4833; + const double Dummy_4845 = -Dummy_4827 + Dummy_4836; + const double Dummy_4846 = (Dummy_4841*Dummy_4845 - Dummy_4842*Dummy_4844)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4847 = (-Dummy_4838*Dummy_4845 + Dummy_4839*Dummy_4844)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4848 = (Dummy_4838*Dummy_4842 - Dummy_4839*Dummy_4841)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4849 = (-Dummy_4840*Dummy_4845 + Dummy_4842*Dummy_4843)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4850 = (Dummy_4837*Dummy_4845 - Dummy_4839*Dummy_4843)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4851 = (-Dummy_4837*Dummy_4842 + Dummy_4839*Dummy_4840)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4852 = (Dummy_4840*Dummy_4844 - Dummy_4841*Dummy_4843)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4853 = (-Dummy_4837*Dummy_4844 + Dummy_4838*Dummy_4843)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4854 = (Dummy_4837*Dummy_4841 - Dummy_4838*Dummy_4840)*1.0 / (Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4855 = fabs(Dummy_4837*Dummy_4841*Dummy_4845 - Dummy_4837*Dummy_4842*Dummy_4844 - Dummy_4838*Dummy_4840*Dummy_4845 + Dummy_4838*Dummy_4842*Dummy_4843 + Dummy_4839*Dummy_4840*Dummy_4844 - Dummy_4839*Dummy_4841*Dummy_4843); + const double Dummy_4856 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4857 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4858 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4859 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4860 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4861 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4862 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4863 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4864 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4865 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4866 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4867 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4868 = -Dummy_4856 + Dummy_4859; + const double Dummy_4869 = -Dummy_4856 + Dummy_4862; + const double Dummy_4870 = -Dummy_4856 + Dummy_4865; + const double Dummy_4871 = -Dummy_4857 + Dummy_4860; + const double Dummy_4872 = -Dummy_4857 + Dummy_4863; + const double Dummy_4873 = -Dummy_4857 + Dummy_4866; + const double Dummy_4874 = -Dummy_4858 + Dummy_4861; + const double Dummy_4875 = -Dummy_4858 + Dummy_4864; + const double Dummy_4876 = -Dummy_4858 + Dummy_4867; + const double Dummy_4877 = (Dummy_4872*Dummy_4876 - Dummy_4873*Dummy_4875)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4878 = (-Dummy_4869*Dummy_4876 + Dummy_4870*Dummy_4875)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4879 = (Dummy_4869*Dummy_4873 - Dummy_4870*Dummy_4872)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4880 = (-Dummy_4871*Dummy_4876 + Dummy_4873*Dummy_4874)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4881 = (Dummy_4868*Dummy_4876 - Dummy_4870*Dummy_4874)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4882 = (-Dummy_4868*Dummy_4873 + Dummy_4870*Dummy_4871)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4883 = (Dummy_4871*Dummy_4875 - Dummy_4872*Dummy_4874)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4884 = (-Dummy_4868*Dummy_4875 + Dummy_4869*Dummy_4874)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4885 = (Dummy_4868*Dummy_4872 - Dummy_4869*Dummy_4871)*1.0 / (Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); + const double Dummy_4886 = fabs(Dummy_4868*Dummy_4872*Dummy_4876 - Dummy_4868*Dummy_4873*Dummy_4875 - Dummy_4869*Dummy_4871*Dummy_4876 + Dummy_4869*Dummy_4873*Dummy_4874 + Dummy_4870*Dummy_4871*Dummy_4875 - Dummy_4870*Dummy_4872*Dummy_4874); { for (int64_t ctr_2 = 0; ctr_2 < micro_edges_per_macro_edge; ctr_2 += 1) for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -331,278 +286,89 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_5 = jac_affine_inv_0_0*tmp_q_4; const double tmp_q_6 = jac_affine_inv_1_0*tmp_q_4; const double tmp_q_7 = jac_affine_inv_2_0*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = jac_affine_inv_0_1*tmp_q_4; - const double tmp_q_21 = jac_affine_inv_1_1*tmp_q_4; - const double tmp_q_22 = jac_affine_inv_2_1*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = jac_affine_inv_0_2*tmp_q_4; - const double tmp_q_25 = jac_affine_inv_1_2*tmp_q_4; - const double tmp_q_26 = jac_affine_inv_2_2*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = abs_det_jac_affine*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = jac_affine_inv_0_0*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = jac_affine_inv_0_1*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = jac_affine_inv_0_2*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = jac_affine_inv_1_0*tmp_q_36; - const double tmp_q_38 = jac_affine_inv_1_1*tmp_q_36; - const double tmp_q_39 = jac_affine_inv_1_2*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = jac_affine_inv_2_0*tmp_q_40; - const double tmp_q_42 = jac_affine_inv_2_1*tmp_q_40; - const double tmp_q_43 = jac_affine_inv_2_2*tmp_q_40; - const double tmp_q_44 = jac_affine_inv_1_0*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = jac_affine_inv_2_0*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = jac_affine_inv_1_1*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = jac_affine_inv_2_1*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = jac_affine_inv_1_2*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = jac_affine_inv_2_2*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = jac_affine_inv_0_0*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = jac_affine_inv_2_0*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = jac_affine_inv_0_1*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = jac_affine_inv_2_1*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = jac_affine_inv_0_2*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = jac_affine_inv_2_2*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = jac_affine_inv_0_0*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = jac_affine_inv_1_0*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = jac_affine_inv_0_1*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = jac_affine_inv_1_1*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = jac_affine_inv_0_2*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = jac_affine_inv_1_2*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = jac_affine_inv_2_0*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = jac_affine_inv_2_1*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = jac_affine_inv_2_2*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = jac_affine_inv_1_0*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = jac_affine_inv_1_1*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = jac_affine_inv_1_2*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = jac_affine_inv_0_0*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = jac_affine_inv_0_1*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = jac_affine_inv_0_2*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = jac_affine_inv_2_0*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = jac_affine_inv_2_1*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = jac_affine_inv_2_2*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = jac_affine_inv_1_0*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = jac_affine_inv_1_1*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = jac_affine_inv_1_2*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_103 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_103 + (jac_affine_inv_0_2*jac_affine_inv_0_2)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_107 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_107 + (jac_affine_inv_1_2*jac_affine_inv_1_2)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((jac_affine_inv_2_0*jac_affine_inv_2_0)*tmp_q_108 + (jac_affine_inv_2_1*jac_affine_inv_2_1)*tmp_q_108 + (jac_affine_inv_2_2*jac_affine_inv_2_2)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(jac_affine_inv_0_1*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(jac_affine_inv_0_2*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(jac_affine_inv_0_0*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = jac_affine_inv_0_1*tmp_q_4; + const double tmp_q_20 = jac_affine_inv_1_1*tmp_q_4; + const double tmp_q_21 = jac_affine_inv_2_1*tmp_q_4; + const double tmp_q_22 = jac_affine_inv_0_2*tmp_q_4; + const double tmp_q_23 = jac_affine_inv_1_2*tmp_q_4; + const double tmp_q_24 = jac_affine_inv_2_2*tmp_q_4; + const double tmp_q_25 = abs_det_jac_affine*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = jac_affine_inv_1_0*tmp_q_0; + const double tmp_q_31 = jac_affine_inv_2_0*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = jac_affine_inv_1_1*tmp_q_0; + const double tmp_q_35 = jac_affine_inv_2_1*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = jac_affine_inv_1_2*tmp_q_0; + const double tmp_q_39 = jac_affine_inv_2_2*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = jac_affine_inv_0_0*tmp_q_0; + const double tmp_q_43 = jac_affine_inv_2_0*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = jac_affine_inv_0_1*tmp_q_0; + const double tmp_q_47 = jac_affine_inv_2_1*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = jac_affine_inv_0_2*tmp_q_0; + const double tmp_q_51 = jac_affine_inv_2_2*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = jac_affine_inv_0_0*tmp_q_2; + const double tmp_q_55 = jac_affine_inv_1_0*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = jac_affine_inv_0_1*tmp_q_2; + const double tmp_q_59 = jac_affine_inv_1_1*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = jac_affine_inv_0_2*tmp_q_2; + const double tmp_q_63 = jac_affine_inv_1_2*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((jac_affine_inv_0_0*jac_affine_inv_0_0)*tmp_q_27 + (jac_affine_inv_0_1*jac_affine_inv_0_1)*tmp_q_27 + (jac_affine_inv_0_2*jac_affine_inv_0_2)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((jac_affine_inv_1_0*jac_affine_inv_1_0)*tmp_q_28 + (jac_affine_inv_1_1*jac_affine_inv_1_1)*tmp_q_28 + (jac_affine_inv_1_2*jac_affine_inv_1_2)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((jac_affine_inv_2_0*jac_affine_inv_2_0)*tmp_q_29 + (jac_affine_inv_2_1*jac_affine_inv_2_1)*tmp_q_29 + (jac_affine_inv_2_2*jac_affine_inv_2_2)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((jac_affine_inv_2_0*tmp_q_66 - tmp_q_30 - tmp_q_42)*(jac_affine_inv_2_0*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (jac_affine_inv_2_1*tmp_q_66 - tmp_q_34 - tmp_q_46)*(jac_affine_inv_2_1*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (jac_affine_inv_2_2*tmp_q_66 - tmp_q_38 - tmp_q_50)*(jac_affine_inv_2_2*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((jac_affine_inv_1_0*tmp_q_68 - tmp_q_31 - tmp_q_54)*(jac_affine_inv_1_0*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (jac_affine_inv_1_1*tmp_q_68 - tmp_q_35 - tmp_q_58)*(jac_affine_inv_1_1*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (jac_affine_inv_1_2*tmp_q_68 - tmp_q_39 - tmp_q_62)*(jac_affine_inv_1_2*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((jac_affine_inv_0_0*tmp_q_69 - tmp_q_43 - tmp_q_55)*(jac_affine_inv_0_0*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (jac_affine_inv_0_1*tmp_q_69 - tmp_q_47 - tmp_q_59)*(jac_affine_inv_0_1*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (jac_affine_inv_0_2*tmp_q_69 - tmp_q_51 - tmp_q_63)*(jac_affine_inv_0_2*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -629,69 +395,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -700,281 +421,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4770*tmp_q_4; - const double tmp_q_6 = Dummy_4773*tmp_q_4; - const double tmp_q_7 = Dummy_4776*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4771*tmp_q_4; - const double tmp_q_21 = Dummy_4774*tmp_q_4; - const double tmp_q_22 = Dummy_4777*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4772*tmp_q_4; - const double tmp_q_25 = Dummy_4775*tmp_q_4; - const double tmp_q_26 = Dummy_4778*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4779*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4770*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4771*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4772*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4773*tmp_q_36; - const double tmp_q_38 = Dummy_4774*tmp_q_36; - const double tmp_q_39 = Dummy_4775*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4776*tmp_q_40; - const double tmp_q_42 = Dummy_4777*tmp_q_40; - const double tmp_q_43 = Dummy_4778*tmp_q_40; - const double tmp_q_44 = Dummy_4773*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4776*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4774*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4777*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4775*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4778*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4770*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4776*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4771*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4777*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4772*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4778*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4770*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4773*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4771*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4774*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4772*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4775*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4776*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4777*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4778*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4773*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4774*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4775*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4770*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4771*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4772*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4776*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4777*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4778*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4773*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4774*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4775*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4770*Dummy_4770)*tmp_q_103 + (Dummy_4771*Dummy_4771)*tmp_q_103 + (Dummy_4772*Dummy_4772)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4773*Dummy_4773)*tmp_q_107 + (Dummy_4774*Dummy_4774)*tmp_q_107 + (Dummy_4775*Dummy_4775)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4776*Dummy_4776)*tmp_q_108 + (Dummy_4777*Dummy_4777)*tmp_q_108 + (Dummy_4778*Dummy_4778)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4771*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4772*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4770*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4753*tmp_q_4; + const double tmp_q_6 = Dummy_4756*tmp_q_4; + const double tmp_q_7 = Dummy_4759*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4754*tmp_q_4; + const double tmp_q_20 = Dummy_4757*tmp_q_4; + const double tmp_q_21 = Dummy_4760*tmp_q_4; + const double tmp_q_22 = Dummy_4755*tmp_q_4; + const double tmp_q_23 = Dummy_4758*tmp_q_4; + const double tmp_q_24 = Dummy_4761*tmp_q_4; + const double tmp_q_25 = Dummy_4762*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4756*tmp_q_0; + const double tmp_q_31 = Dummy_4759*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4757*tmp_q_0; + const double tmp_q_35 = Dummy_4760*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4758*tmp_q_0; + const double tmp_q_39 = Dummy_4761*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4753*tmp_q_0; + const double tmp_q_43 = Dummy_4759*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4754*tmp_q_0; + const double tmp_q_47 = Dummy_4760*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4755*tmp_q_0; + const double tmp_q_51 = Dummy_4761*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4753*tmp_q_2; + const double tmp_q_55 = Dummy_4756*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4754*tmp_q_2; + const double tmp_q_59 = Dummy_4757*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4755*tmp_q_2; + const double tmp_q_63 = Dummy_4758*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4753*Dummy_4753)*tmp_q_27 + (Dummy_4754*Dummy_4754)*tmp_q_27 + (Dummy_4755*Dummy_4755)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4756*Dummy_4756)*tmp_q_28 + (Dummy_4757*Dummy_4757)*tmp_q_28 + (Dummy_4758*Dummy_4758)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4759*Dummy_4759)*tmp_q_29 + (Dummy_4760*Dummy_4760)*tmp_q_29 + (Dummy_4761*Dummy_4761)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4759*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4759*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4760*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4760*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4761*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4761*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4756*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4756*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4757*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4757*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4758*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4758*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4753*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4753*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4754*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4754*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4755*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4755*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -1001,69 +533,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -1072,281 +559,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4801*tmp_q_4; - const double tmp_q_6 = Dummy_4804*tmp_q_4; - const double tmp_q_7 = Dummy_4807*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4802*tmp_q_4; - const double tmp_q_21 = Dummy_4805*tmp_q_4; - const double tmp_q_22 = Dummy_4808*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4803*tmp_q_4; - const double tmp_q_25 = Dummy_4806*tmp_q_4; - const double tmp_q_26 = Dummy_4809*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4810*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4801*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4802*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4803*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4804*tmp_q_36; - const double tmp_q_38 = Dummy_4805*tmp_q_36; - const double tmp_q_39 = Dummy_4806*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4807*tmp_q_40; - const double tmp_q_42 = Dummy_4808*tmp_q_40; - const double tmp_q_43 = Dummy_4809*tmp_q_40; - const double tmp_q_44 = Dummy_4804*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4807*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4805*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4808*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4806*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4809*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4801*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4807*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4802*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4808*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4803*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4809*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4801*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4804*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4802*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4805*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4803*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4806*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4807*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4808*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4809*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4804*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4805*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4806*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4801*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4802*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4803*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4807*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4808*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4809*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4804*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4805*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4806*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4801*Dummy_4801)*tmp_q_103 + (Dummy_4802*Dummy_4802)*tmp_q_103 + (Dummy_4803*Dummy_4803)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4804*Dummy_4804)*tmp_q_107 + (Dummy_4805*Dummy_4805)*tmp_q_107 + (Dummy_4806*Dummy_4806)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4807*Dummy_4807)*tmp_q_108 + (Dummy_4808*Dummy_4808)*tmp_q_108 + (Dummy_4809*Dummy_4809)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4802*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4803*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4801*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4784*tmp_q_4; + const double tmp_q_6 = Dummy_4787*tmp_q_4; + const double tmp_q_7 = Dummy_4790*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4785*tmp_q_4; + const double tmp_q_20 = Dummy_4788*tmp_q_4; + const double tmp_q_21 = Dummy_4791*tmp_q_4; + const double tmp_q_22 = Dummy_4786*tmp_q_4; + const double tmp_q_23 = Dummy_4789*tmp_q_4; + const double tmp_q_24 = Dummy_4792*tmp_q_4; + const double tmp_q_25 = Dummy_4793*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4787*tmp_q_0; + const double tmp_q_31 = Dummy_4790*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4788*tmp_q_0; + const double tmp_q_35 = Dummy_4791*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4789*tmp_q_0; + const double tmp_q_39 = Dummy_4792*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4784*tmp_q_0; + const double tmp_q_43 = Dummy_4790*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4785*tmp_q_0; + const double tmp_q_47 = Dummy_4791*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4786*tmp_q_0; + const double tmp_q_51 = Dummy_4792*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4784*tmp_q_2; + const double tmp_q_55 = Dummy_4787*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4785*tmp_q_2; + const double tmp_q_59 = Dummy_4788*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4786*tmp_q_2; + const double tmp_q_63 = Dummy_4789*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4784*Dummy_4784)*tmp_q_27 + (Dummy_4785*Dummy_4785)*tmp_q_27 + (Dummy_4786*Dummy_4786)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4787*Dummy_4787)*tmp_q_28 + (Dummy_4788*Dummy_4788)*tmp_q_28 + (Dummy_4789*Dummy_4789)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4790*Dummy_4790)*tmp_q_29 + (Dummy_4791*Dummy_4791)*tmp_q_29 + (Dummy_4792*Dummy_4792)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4790*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4790*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4791*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4791*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4792*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4792*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4787*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4787*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4788*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4788*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4789*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4789*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4784*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4784*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4785*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4785*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4786*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4786*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -1373,69 +671,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -1444,281 +697,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4832*tmp_q_4; - const double tmp_q_6 = Dummy_4835*tmp_q_4; - const double tmp_q_7 = Dummy_4838*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4833*tmp_q_4; - const double tmp_q_21 = Dummy_4836*tmp_q_4; - const double tmp_q_22 = Dummy_4839*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4834*tmp_q_4; - const double tmp_q_25 = Dummy_4837*tmp_q_4; - const double tmp_q_26 = Dummy_4840*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4841*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4832*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4833*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4834*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4835*tmp_q_36; - const double tmp_q_38 = Dummy_4836*tmp_q_36; - const double tmp_q_39 = Dummy_4837*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4838*tmp_q_40; - const double tmp_q_42 = Dummy_4839*tmp_q_40; - const double tmp_q_43 = Dummy_4840*tmp_q_40; - const double tmp_q_44 = Dummy_4835*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4838*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4836*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4839*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4837*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4840*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4832*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4838*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4833*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4839*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4834*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4840*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4832*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4835*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4833*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4836*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4834*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4837*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4838*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4839*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4840*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4835*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4836*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4837*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4832*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4833*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4834*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4838*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4839*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4840*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4835*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4836*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4837*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4832*Dummy_4832)*tmp_q_103 + (Dummy_4833*Dummy_4833)*tmp_q_103 + (Dummy_4834*Dummy_4834)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4835*Dummy_4835)*tmp_q_107 + (Dummy_4836*Dummy_4836)*tmp_q_107 + (Dummy_4837*Dummy_4837)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4838*Dummy_4838)*tmp_q_108 + (Dummy_4839*Dummy_4839)*tmp_q_108 + (Dummy_4840*Dummy_4840)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4833*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4834*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4832*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4815*tmp_q_4; + const double tmp_q_6 = Dummy_4818*tmp_q_4; + const double tmp_q_7 = Dummy_4821*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4816*tmp_q_4; + const double tmp_q_20 = Dummy_4819*tmp_q_4; + const double tmp_q_21 = Dummy_4822*tmp_q_4; + const double tmp_q_22 = Dummy_4817*tmp_q_4; + const double tmp_q_23 = Dummy_4820*tmp_q_4; + const double tmp_q_24 = Dummy_4823*tmp_q_4; + const double tmp_q_25 = Dummy_4824*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4818*tmp_q_0; + const double tmp_q_31 = Dummy_4821*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4819*tmp_q_0; + const double tmp_q_35 = Dummy_4822*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4820*tmp_q_0; + const double tmp_q_39 = Dummy_4823*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4815*tmp_q_0; + const double tmp_q_43 = Dummy_4821*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4816*tmp_q_0; + const double tmp_q_47 = Dummy_4822*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4817*tmp_q_0; + const double tmp_q_51 = Dummy_4823*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4815*tmp_q_2; + const double tmp_q_55 = Dummy_4818*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4816*tmp_q_2; + const double tmp_q_59 = Dummy_4819*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4817*tmp_q_2; + const double tmp_q_63 = Dummy_4820*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4815*Dummy_4815)*tmp_q_27 + (Dummy_4816*Dummy_4816)*tmp_q_27 + (Dummy_4817*Dummy_4817)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4818*Dummy_4818)*tmp_q_28 + (Dummy_4819*Dummy_4819)*tmp_q_28 + (Dummy_4820*Dummy_4820)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4821*Dummy_4821)*tmp_q_29 + (Dummy_4822*Dummy_4822)*tmp_q_29 + (Dummy_4823*Dummy_4823)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4821*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4821*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4822*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4822*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4823*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4823*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4818*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4818*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4819*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4819*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4820*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4820*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4815*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4815*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4816*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4816*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4817*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4817*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -1745,69 +809,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -1816,281 +835,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4863*tmp_q_4; - const double tmp_q_6 = Dummy_4866*tmp_q_4; - const double tmp_q_7 = Dummy_4869*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4864*tmp_q_4; - const double tmp_q_21 = Dummy_4867*tmp_q_4; - const double tmp_q_22 = Dummy_4870*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4865*tmp_q_4; - const double tmp_q_25 = Dummy_4868*tmp_q_4; - const double tmp_q_26 = Dummy_4871*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4872*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4863*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4864*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4865*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4866*tmp_q_36; - const double tmp_q_38 = Dummy_4867*tmp_q_36; - const double tmp_q_39 = Dummy_4868*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4869*tmp_q_40; - const double tmp_q_42 = Dummy_4870*tmp_q_40; - const double tmp_q_43 = Dummy_4871*tmp_q_40; - const double tmp_q_44 = Dummy_4866*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4869*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4867*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4870*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4868*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4871*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4863*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4869*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4864*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4870*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4865*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4871*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4863*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4866*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4864*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4867*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4865*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4868*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4869*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4870*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4871*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4866*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4867*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4868*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4863*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4864*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4865*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4869*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4870*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4871*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4866*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4867*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4868*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4863*Dummy_4863)*tmp_q_103 + (Dummy_4864*Dummy_4864)*tmp_q_103 + (Dummy_4865*Dummy_4865)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4866*Dummy_4866)*tmp_q_107 + (Dummy_4867*Dummy_4867)*tmp_q_107 + (Dummy_4868*Dummy_4868)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4869*Dummy_4869)*tmp_q_108 + (Dummy_4870*Dummy_4870)*tmp_q_108 + (Dummy_4871*Dummy_4871)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4864*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4865*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4863*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4846*tmp_q_4; + const double tmp_q_6 = Dummy_4849*tmp_q_4; + const double tmp_q_7 = Dummy_4852*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4847*tmp_q_4; + const double tmp_q_20 = Dummy_4850*tmp_q_4; + const double tmp_q_21 = Dummy_4853*tmp_q_4; + const double tmp_q_22 = Dummy_4848*tmp_q_4; + const double tmp_q_23 = Dummy_4851*tmp_q_4; + const double tmp_q_24 = Dummy_4854*tmp_q_4; + const double tmp_q_25 = Dummy_4855*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4849*tmp_q_0; + const double tmp_q_31 = Dummy_4852*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4850*tmp_q_0; + const double tmp_q_35 = Dummy_4853*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4851*tmp_q_0; + const double tmp_q_39 = Dummy_4854*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4846*tmp_q_0; + const double tmp_q_43 = Dummy_4852*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4847*tmp_q_0; + const double tmp_q_47 = Dummy_4853*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4848*tmp_q_0; + const double tmp_q_51 = Dummy_4854*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4846*tmp_q_2; + const double tmp_q_55 = Dummy_4849*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4847*tmp_q_2; + const double tmp_q_59 = Dummy_4850*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4848*tmp_q_2; + const double tmp_q_63 = Dummy_4851*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4846*Dummy_4846)*tmp_q_27 + (Dummy_4847*Dummy_4847)*tmp_q_27 + (Dummy_4848*Dummy_4848)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4849*Dummy_4849)*tmp_q_28 + (Dummy_4850*Dummy_4850)*tmp_q_28 + (Dummy_4851*Dummy_4851)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4852*Dummy_4852)*tmp_q_29 + (Dummy_4853*Dummy_4853)*tmp_q_29 + (Dummy_4854*Dummy_4854)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4852*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4852*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4853*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4853*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4854*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4854*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4849*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4849*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4850*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4850*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4851*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4851*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4846*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4846*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4847*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4847*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4848*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4848*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; @@ -2117,69 +947,24 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; - double q_acc_0_1 = 0.0; - double q_acc_0_2 = 0.0; - double q_acc_0_3 = 0.0; - double q_acc_0_4 = 0.0; - double q_acc_0_5 = 0.0; - double q_acc_0_6 = 0.0; - double q_acc_0_7 = 0.0; - double q_acc_0_8 = 0.0; - double q_acc_0_9 = 0.0; double q_acc_1_1 = 0.0; - double q_acc_1_2 = 0.0; - double q_acc_1_3 = 0.0; - double q_acc_1_4 = 0.0; - double q_acc_1_5 = 0.0; - double q_acc_1_6 = 0.0; - double q_acc_1_7 = 0.0; - double q_acc_1_8 = 0.0; - double q_acc_1_9 = 0.0; double q_acc_2_2 = 0.0; - double q_acc_2_3 = 0.0; - double q_acc_2_4 = 0.0; - double q_acc_2_5 = 0.0; - double q_acc_2_6 = 0.0; - double q_acc_2_7 = 0.0; - double q_acc_2_8 = 0.0; - double q_acc_2_9 = 0.0; double q_acc_3_3 = 0.0; - double q_acc_3_4 = 0.0; - double q_acc_3_5 = 0.0; - double q_acc_3_6 = 0.0; - double q_acc_3_7 = 0.0; - double q_acc_3_8 = 0.0; - double q_acc_3_9 = 0.0; double q_acc_4_4 = 0.0; - double q_acc_4_5 = 0.0; - double q_acc_4_6 = 0.0; - double q_acc_4_7 = 0.0; - double q_acc_4_8 = 0.0; - double q_acc_4_9 = 0.0; double q_acc_5_5 = 0.0; - double q_acc_5_6 = 0.0; - double q_acc_5_7 = 0.0; - double q_acc_5_8 = 0.0; - double q_acc_5_9 = 0.0; double q_acc_6_6 = 0.0; - double q_acc_6_7 = 0.0; - double q_acc_6_8 = 0.0; - double q_acc_6_9 = 0.0; double q_acc_7_7 = 0.0; - double q_acc_7_8 = 0.0; - double q_acc_7_9 = 0.0; double q_acc_8_8 = 0.0; - double q_acc_8_9 = 0.0; double q_acc_9_9 = 0.0; for (int64_t q = 0; q < 4; q += 1) { @@ -2188,281 +973,92 @@ void P2ElementwiseDivKGrad::computeInverseDiagonalOperatorValues_macro_3D( doubl const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4894*tmp_q_4; - const double tmp_q_6 = Dummy_4897*tmp_q_4; - const double tmp_q_7 = Dummy_4900*tmp_q_4; - const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; - const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; - const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; - const double tmp_q_11 = tmp_q_1*_data_q_p_1[q]; - const double tmp_q_12 = (_data_q_p_0[q]*_data_q_p_0[q]); - const double tmp_q_13 = tmp_q_12*2.0; - const double tmp_q_14 = (_data_q_p_1[q]*_data_q_p_1[q]); - const double tmp_q_15 = tmp_q_14*2.0; - const double tmp_q_16 = (_data_q_p_2[q]*_data_q_p_2[q]); - const double tmp_q_17 = tmp_q_16*2.0; - const double tmp_q_18 = tmp_q_10 + tmp_q_11; - const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4895*tmp_q_4; - const double tmp_q_21 = Dummy_4898*tmp_q_4; - const double tmp_q_22 = Dummy_4901*tmp_q_4; - const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4896*tmp_q_4; - const double tmp_q_25 = Dummy_4899*tmp_q_4; - const double tmp_q_26 = Dummy_4902*tmp_q_4; - const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4903*_data_q_w[q]; - const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4894*tmp_q_29; - const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4895*tmp_q_29; - const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4896*tmp_q_29; - const double tmp_q_35 = tmp_q_19*tmp_q_27; - const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4897*tmp_q_36; - const double tmp_q_38 = Dummy_4898*tmp_q_36; - const double tmp_q_39 = Dummy_4899*tmp_q_36; - const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4900*tmp_q_40; - const double tmp_q_42 = Dummy_4901*tmp_q_40; - const double tmp_q_43 = Dummy_4902*tmp_q_40; - const double tmp_q_44 = Dummy_4897*tmp_q_0; - const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4900*tmp_q_2; - const double tmp_q_47 = tmp_q_19*tmp_q_46; - const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4898*tmp_q_0; - const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4901*tmp_q_2; - const double tmp_q_52 = tmp_q_19*tmp_q_51; - const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4899*tmp_q_0; - const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4902*tmp_q_2; - const double tmp_q_57 = tmp_q_19*tmp_q_56; - const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4894*tmp_q_0; - const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4900*tmp_q_1; - const double tmp_q_62 = tmp_q_19*tmp_q_61; - const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4895*tmp_q_0; - const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4901*tmp_q_1; - const double tmp_q_67 = tmp_q_19*tmp_q_66; - const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4896*tmp_q_0; - const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4902*tmp_q_1; - const double tmp_q_72 = tmp_q_19*tmp_q_71; - const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4894*tmp_q_2; - const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4897*tmp_q_1; - const double tmp_q_77 = tmp_q_19*tmp_q_76; - const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4895*tmp_q_2; - const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4898*tmp_q_1; - const double tmp_q_82 = tmp_q_19*tmp_q_81; - const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4896*tmp_q_2; - const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4899*tmp_q_1; - const double tmp_q_87 = tmp_q_19*tmp_q_86; - const double tmp_q_88 = tmp_q_85 + tmp_q_87; - const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4900*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4901*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4902*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; - const double tmp_q_93 = tmp_q_0 - 4.0; - const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4897*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4898*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4899*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; - const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4894*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4895*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4896*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; - const double tmp_q_102 = tmp_q_19*16.0; - const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); - const double tmp_q_104 = tmp_q_19*tmp_q_30; - const double tmp_q_105 = tmp_q_19*tmp_q_32; - const double tmp_q_106 = tmp_q_19*tmp_q_34; - const double tmp_q_107 = tmp_q_102*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); - const double tmp_q_108 = tmp_q_102*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); - const double tmp_q_109 = tmp_q_44 + tmp_q_46; - const double tmp_q_110 = tmp_q_49 + tmp_q_51; - const double tmp_q_111 = tmp_q_54 + tmp_q_56; - const double tmp_q_112 = tmp_q_59 + tmp_q_61; - const double tmp_q_113 = tmp_q_64 + tmp_q_66; - const double tmp_q_114 = tmp_q_69 + tmp_q_71; - const double tmp_q_115 = tmp_q_74 + tmp_q_76; - const double tmp_q_116 = tmp_q_79 + tmp_q_81; - const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4900*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4901*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4902*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4897*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4898*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4899*tmp_q_94 - tmp_q_56 - tmp_q_84; - const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); - const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); - const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); - const double res_tmp_0_3 = tmp_q_28*(tmp_q_31*tmp_q_41 + tmp_q_33*tmp_q_42 + tmp_q_35*tmp_q_43); - const double res_tmp_0_4 = tmp_q_28*(tmp_q_23*tmp_q_53 + tmp_q_27*tmp_q_58 + tmp_q_48*tmp_q_8); - const double res_tmp_0_5 = tmp_q_28*(tmp_q_23*tmp_q_68 + tmp_q_27*tmp_q_73 + tmp_q_63*tmp_q_8); - const double res_tmp_0_6 = tmp_q_28*(tmp_q_23*tmp_q_83 + tmp_q_27*tmp_q_88 + tmp_q_78*tmp_q_8); - const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); - const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); - const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4894*Dummy_4894)*tmp_q_103 + (Dummy_4895*Dummy_4895)*tmp_q_103 + (Dummy_4896*Dummy_4896)*tmp_q_103); - const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); - const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); - const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); - const double res_tmp_1_5 = tmp_q_28*(tmp_q_30*tmp_q_63 + tmp_q_32*tmp_q_68 + tmp_q_34*tmp_q_73); - const double res_tmp_1_6 = tmp_q_28*(tmp_q_30*tmp_q_78 + tmp_q_32*tmp_q_83 + tmp_q_34*tmp_q_88); - const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); - const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); - const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4897*Dummy_4897)*tmp_q_107 + (Dummy_4898*Dummy_4898)*tmp_q_107 + (Dummy_4899*Dummy_4899)*tmp_q_107); - const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); - const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); - const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); - const double res_tmp_2_6 = tmp_q_28*(tmp_q_37*tmp_q_78 + tmp_q_38*tmp_q_83 + tmp_q_39*tmp_q_88); - const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); - const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); - const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4900*Dummy_4900)*tmp_q_108 + (Dummy_4901*Dummy_4901)*tmp_q_108 + (Dummy_4902*Dummy_4902)*tmp_q_108); - const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); - const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); - const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); - const double res_tmp_3_7 = tmp_q_28*(tmp_q_41*tmp_q_90 + tmp_q_42*tmp_q_91 + tmp_q_43*tmp_q_92); - const double res_tmp_3_8 = tmp_q_28*(tmp_q_41*tmp_q_95 + tmp_q_42*tmp_q_96 + tmp_q_43*tmp_q_97); - const double res_tmp_3_9 = tmp_q_28*(tmp_q_100*tmp_q_42 + tmp_q_101*tmp_q_43 + tmp_q_41*tmp_q_99); - const double res_tmp_4_4 = tmp_q_28*(tmp_q_109*tmp_q_48 + tmp_q_110*tmp_q_53 + tmp_q_111*tmp_q_58); - const double res_tmp_4_5 = tmp_q_28*(tmp_q_109*tmp_q_63 + tmp_q_110*tmp_q_68 + tmp_q_111*tmp_q_73); - const double res_tmp_4_6 = tmp_q_28*(tmp_q_109*tmp_q_78 + tmp_q_110*tmp_q_83 + tmp_q_111*tmp_q_88); - const double res_tmp_4_7 = tmp_q_28*(tmp_q_109*tmp_q_90 + tmp_q_110*tmp_q_91 + tmp_q_111*tmp_q_92); - const double res_tmp_4_8 = tmp_q_28*(tmp_q_109*tmp_q_95 + tmp_q_110*tmp_q_96 + tmp_q_111*tmp_q_97); - const double res_tmp_4_9 = tmp_q_28*(tmp_q_100*tmp_q_110 + tmp_q_101*tmp_q_111 + tmp_q_109*tmp_q_99); - const double res_tmp_5_5 = tmp_q_28*(tmp_q_112*tmp_q_63 + tmp_q_113*tmp_q_68 + tmp_q_114*tmp_q_73); - const double res_tmp_5_6 = tmp_q_28*(tmp_q_112*tmp_q_78 + tmp_q_113*tmp_q_83 + tmp_q_114*tmp_q_88); - const double res_tmp_5_7 = tmp_q_28*(tmp_q_112*tmp_q_90 + tmp_q_113*tmp_q_91 + tmp_q_114*tmp_q_92); - const double res_tmp_5_8 = tmp_q_28*(tmp_q_112*tmp_q_95 + tmp_q_113*tmp_q_96 + tmp_q_114*tmp_q_97); - const double res_tmp_5_9 = tmp_q_28*(tmp_q_100*tmp_q_113 + tmp_q_101*tmp_q_114 + tmp_q_112*tmp_q_99); - const double res_tmp_6_6 = tmp_q_28*(tmp_q_115*tmp_q_78 + tmp_q_116*tmp_q_83 + tmp_q_117*tmp_q_88); - const double res_tmp_6_7 = tmp_q_28*(tmp_q_115*tmp_q_90 + tmp_q_116*tmp_q_91 + tmp_q_117*tmp_q_92); - const double res_tmp_6_8 = tmp_q_28*(tmp_q_115*tmp_q_95 + tmp_q_116*tmp_q_96 + tmp_q_117*tmp_q_97); - const double res_tmp_6_9 = tmp_q_28*(tmp_q_100*tmp_q_116 + tmp_q_101*tmp_q_117 + tmp_q_115*tmp_q_99); - const double res_tmp_7_7 = tmp_q_28*(tmp_q_118*tmp_q_90 + tmp_q_119*tmp_q_91 + tmp_q_120*tmp_q_92); - const double res_tmp_7_8 = tmp_q_28*(tmp_q_118*tmp_q_95 + tmp_q_119*tmp_q_96 + tmp_q_120*tmp_q_97); - const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); - const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); - const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4895*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4896*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4894*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double tmp_q_5 = Dummy_4877*tmp_q_4; + const double tmp_q_6 = Dummy_4880*tmp_q_4; + const double tmp_q_7 = Dummy_4883*tmp_q_4; + const double tmp_q_8 = tmp_q_2*_data_q_p_2[q]; + const double tmp_q_9 = tmp_q_1*_data_q_p_2[q]; + const double tmp_q_10 = tmp_q_1*_data_q_p_1[q]; + const double tmp_q_11 = (_data_q_p_0[q]*_data_q_p_0[q]); + const double tmp_q_12 = tmp_q_11*2.0; + const double tmp_q_13 = (_data_q_p_1[q]*_data_q_p_1[q]); + const double tmp_q_14 = tmp_q_13*2.0; + const double tmp_q_15 = (_data_q_p_2[q]*_data_q_p_2[q]); + const double tmp_q_16 = tmp_q_15*2.0; + const double tmp_q_17 = tmp_q_10 + tmp_q_9; + const double tmp_q_18 = k_dof_0*(tmp_q_12 + tmp_q_14 + tmp_q_16 + tmp_q_17 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_12 - _data_q_p_0[q]) + k_dof_2*(tmp_q_14 - _data_q_p_1[q]) + k_dof_3*(tmp_q_16 - _data_q_p_2[q]) + k_dof_4*tmp_q_8 + k_dof_5*tmp_q_9 + k_dof_6*tmp_q_10 + k_dof_7*(tmp_q_0 + tmp_q_15*-4.0 - tmp_q_8 - tmp_q_9) + k_dof_8*(-tmp_q_10 + tmp_q_13*-4.0 + tmp_q_2 - tmp_q_8) + k_dof_9*(tmp_q_1 + tmp_q_11*-4.0 - tmp_q_17); + const double tmp_q_19 = Dummy_4878*tmp_q_4; + const double tmp_q_20 = Dummy_4881*tmp_q_4; + const double tmp_q_21 = Dummy_4884*tmp_q_4; + const double tmp_q_22 = Dummy_4879*tmp_q_4; + const double tmp_q_23 = Dummy_4882*tmp_q_4; + const double tmp_q_24 = Dummy_4885*tmp_q_4; + const double tmp_q_25 = Dummy_4886*_data_q_w[q]; + const double tmp_q_26 = tmp_q_18*16.0; + const double tmp_q_27 = tmp_q_26*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); + const double tmp_q_28 = tmp_q_26*((-0.25 + _data_q_p_1[q])*(-0.25 + _data_q_p_1[q])); + const double tmp_q_29 = tmp_q_26*((-0.25 + _data_q_p_2[q])*(-0.25 + _data_q_p_2[q])); + const double tmp_q_30 = Dummy_4880*tmp_q_0; + const double tmp_q_31 = Dummy_4883*tmp_q_2; + const double tmp_q_32 = tmp_q_18*tmp_q_30; + const double tmp_q_33 = tmp_q_18*tmp_q_31; + const double tmp_q_34 = Dummy_4881*tmp_q_0; + const double tmp_q_35 = Dummy_4884*tmp_q_2; + const double tmp_q_36 = tmp_q_18*tmp_q_34; + const double tmp_q_37 = tmp_q_18*tmp_q_35; + const double tmp_q_38 = Dummy_4882*tmp_q_0; + const double tmp_q_39 = Dummy_4885*tmp_q_2; + const double tmp_q_40 = tmp_q_18*tmp_q_38; + const double tmp_q_41 = tmp_q_18*tmp_q_39; + const double tmp_q_42 = Dummy_4877*tmp_q_0; + const double tmp_q_43 = Dummy_4883*tmp_q_1; + const double tmp_q_44 = tmp_q_18*tmp_q_42; + const double tmp_q_45 = tmp_q_18*tmp_q_43; + const double tmp_q_46 = Dummy_4878*tmp_q_0; + const double tmp_q_47 = Dummy_4884*tmp_q_1; + const double tmp_q_48 = tmp_q_18*tmp_q_46; + const double tmp_q_49 = tmp_q_18*tmp_q_47; + const double tmp_q_50 = Dummy_4879*tmp_q_0; + const double tmp_q_51 = Dummy_4885*tmp_q_1; + const double tmp_q_52 = tmp_q_18*tmp_q_50; + const double tmp_q_53 = tmp_q_18*tmp_q_51; + const double tmp_q_54 = Dummy_4877*tmp_q_2; + const double tmp_q_55 = Dummy_4880*tmp_q_1; + const double tmp_q_56 = tmp_q_18*tmp_q_54; + const double tmp_q_57 = tmp_q_18*tmp_q_55; + const double tmp_q_58 = Dummy_4878*tmp_q_2; + const double tmp_q_59 = Dummy_4881*tmp_q_1; + const double tmp_q_60 = tmp_q_18*tmp_q_58; + const double tmp_q_61 = tmp_q_18*tmp_q_59; + const double tmp_q_62 = Dummy_4879*tmp_q_2; + const double tmp_q_63 = Dummy_4882*tmp_q_1; + const double tmp_q_64 = tmp_q_18*tmp_q_62; + const double tmp_q_65 = tmp_q_18*tmp_q_63; + const double tmp_q_66 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; + const double tmp_q_67 = tmp_q_0 - 4.0; + const double tmp_q_68 = -tmp_q_1 - tmp_q_67 - 8.0*_data_q_p_1[q]; + const double tmp_q_69 = -tmp_q_2 - tmp_q_67 - 8.0*_data_q_p_0[q]; + const double res_tmp_0_0 = tmp_q_25*((tmp_q_19 + tmp_q_20 + tmp_q_21)*(tmp_q_18*tmp_q_19 + tmp_q_18*tmp_q_20 + tmp_q_18*tmp_q_21) + (tmp_q_22 + tmp_q_23 + tmp_q_24)*(tmp_q_18*tmp_q_22 + tmp_q_18*tmp_q_23 + tmp_q_18*tmp_q_24) + (tmp_q_5 + tmp_q_6 + tmp_q_7)*(tmp_q_18*tmp_q_5 + tmp_q_18*tmp_q_6 + tmp_q_18*tmp_q_7)); + const double res_tmp_1_1 = tmp_q_25*((Dummy_4877*Dummy_4877)*tmp_q_27 + (Dummy_4878*Dummy_4878)*tmp_q_27 + (Dummy_4879*Dummy_4879)*tmp_q_27); + const double res_tmp_2_2 = tmp_q_25*((Dummy_4880*Dummy_4880)*tmp_q_28 + (Dummy_4881*Dummy_4881)*tmp_q_28 + (Dummy_4882*Dummy_4882)*tmp_q_28); + const double res_tmp_3_3 = tmp_q_25*((Dummy_4883*Dummy_4883)*tmp_q_29 + (Dummy_4884*Dummy_4884)*tmp_q_29 + (Dummy_4885*Dummy_4885)*tmp_q_29); + const double res_tmp_4_4 = tmp_q_25*((tmp_q_30 + tmp_q_31)*(tmp_q_32 + tmp_q_33) + (tmp_q_34 + tmp_q_35)*(tmp_q_36 + tmp_q_37) + (tmp_q_38 + tmp_q_39)*(tmp_q_40 + tmp_q_41)); + const double res_tmp_5_5 = tmp_q_25*((tmp_q_42 + tmp_q_43)*(tmp_q_44 + tmp_q_45) + (tmp_q_46 + tmp_q_47)*(tmp_q_48 + tmp_q_49) + (tmp_q_50 + tmp_q_51)*(tmp_q_52 + tmp_q_53)); + const double res_tmp_6_6 = tmp_q_25*((tmp_q_54 + tmp_q_55)*(tmp_q_56 + tmp_q_57) + (tmp_q_58 + tmp_q_59)*(tmp_q_60 + tmp_q_61) + (tmp_q_62 + tmp_q_63)*(tmp_q_64 + tmp_q_65)); + const double res_tmp_7_7 = tmp_q_25*((Dummy_4883*tmp_q_66 - tmp_q_30 - tmp_q_42)*(Dummy_4883*tmp_q_18*tmp_q_66 - tmp_q_32 - tmp_q_44) + (Dummy_4884*tmp_q_66 - tmp_q_34 - tmp_q_46)*(Dummy_4884*tmp_q_18*tmp_q_66 - tmp_q_36 - tmp_q_48) + (Dummy_4885*tmp_q_66 - tmp_q_38 - tmp_q_50)*(Dummy_4885*tmp_q_18*tmp_q_66 - tmp_q_40 - tmp_q_52)); + const double res_tmp_8_8 = tmp_q_25*((Dummy_4880*tmp_q_68 - tmp_q_31 - tmp_q_54)*(Dummy_4880*tmp_q_18*tmp_q_68 - tmp_q_33 - tmp_q_56) + (Dummy_4881*tmp_q_68 - tmp_q_35 - tmp_q_58)*(Dummy_4881*tmp_q_18*tmp_q_68 - tmp_q_37 - tmp_q_60) + (Dummy_4882*tmp_q_68 - tmp_q_39 - tmp_q_62)*(Dummy_4882*tmp_q_18*tmp_q_68 - tmp_q_41 - tmp_q_64)); + const double res_tmp_9_9 = tmp_q_25*((Dummy_4877*tmp_q_69 - tmp_q_43 - tmp_q_55)*(Dummy_4877*tmp_q_18*tmp_q_69 - tmp_q_45 - tmp_q_57) + (Dummy_4878*tmp_q_69 - tmp_q_47 - tmp_q_59)*(Dummy_4878*tmp_q_18*tmp_q_69 - tmp_q_49 - tmp_q_61) + (Dummy_4879*tmp_q_69 - tmp_q_51 - tmp_q_63)*(Dummy_4879*tmp_q_18*tmp_q_69 - tmp_q_53 - tmp_q_65)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; - q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; - q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; - q_acc_0_3 = q_acc_0_3 + res_tmp_0_3; - q_acc_0_4 = q_acc_0_4 + res_tmp_0_4; - q_acc_0_5 = q_acc_0_5 + res_tmp_0_5; - q_acc_0_6 = q_acc_0_6 + res_tmp_0_6; - q_acc_0_7 = q_acc_0_7 + res_tmp_0_7; - q_acc_0_8 = q_acc_0_8 + res_tmp_0_8; - q_acc_0_9 = q_acc_0_9 + res_tmp_0_9; q_acc_1_1 = q_acc_1_1 + res_tmp_1_1; - q_acc_1_2 = q_acc_1_2 + res_tmp_1_2; - q_acc_1_3 = q_acc_1_3 + res_tmp_1_3; - q_acc_1_4 = q_acc_1_4 + res_tmp_1_4; - q_acc_1_5 = q_acc_1_5 + res_tmp_1_5; - q_acc_1_6 = q_acc_1_6 + res_tmp_1_6; - q_acc_1_7 = q_acc_1_7 + res_tmp_1_7; - q_acc_1_8 = q_acc_1_8 + res_tmp_1_8; - q_acc_1_9 = q_acc_1_9 + res_tmp_1_9; q_acc_2_2 = q_acc_2_2 + res_tmp_2_2; - q_acc_2_3 = q_acc_2_3 + res_tmp_2_3; - q_acc_2_4 = q_acc_2_4 + res_tmp_2_4; - q_acc_2_5 = q_acc_2_5 + res_tmp_2_5; - q_acc_2_6 = q_acc_2_6 + res_tmp_2_6; - q_acc_2_7 = q_acc_2_7 + res_tmp_2_7; - q_acc_2_8 = q_acc_2_8 + res_tmp_2_8; - q_acc_2_9 = q_acc_2_9 + res_tmp_2_9; q_acc_3_3 = q_acc_3_3 + res_tmp_3_3; - q_acc_3_4 = q_acc_3_4 + res_tmp_3_4; - q_acc_3_5 = q_acc_3_5 + res_tmp_3_5; - q_acc_3_6 = q_acc_3_6 + res_tmp_3_6; - q_acc_3_7 = q_acc_3_7 + res_tmp_3_7; - q_acc_3_8 = q_acc_3_8 + res_tmp_3_8; - q_acc_3_9 = q_acc_3_9 + res_tmp_3_9; q_acc_4_4 = q_acc_4_4 + res_tmp_4_4; - q_acc_4_5 = q_acc_4_5 + res_tmp_4_5; - q_acc_4_6 = q_acc_4_6 + res_tmp_4_6; - q_acc_4_7 = q_acc_4_7 + res_tmp_4_7; - q_acc_4_8 = q_acc_4_8 + res_tmp_4_8; - q_acc_4_9 = q_acc_4_9 + res_tmp_4_9; q_acc_5_5 = q_acc_5_5 + res_tmp_5_5; - q_acc_5_6 = q_acc_5_6 + res_tmp_5_6; - q_acc_5_7 = q_acc_5_7 + res_tmp_5_7; - q_acc_5_8 = q_acc_5_8 + res_tmp_5_8; - q_acc_5_9 = q_acc_5_9 + res_tmp_5_9; q_acc_6_6 = q_acc_6_6 + res_tmp_6_6; - q_acc_6_7 = q_acc_6_7 + res_tmp_6_7; - q_acc_6_8 = q_acc_6_8 + res_tmp_6_8; - q_acc_6_9 = q_acc_6_9 + res_tmp_6_9; q_acc_7_7 = q_acc_7_7 + res_tmp_7_7; - q_acc_7_8 = q_acc_7_8 + res_tmp_7_8; - q_acc_7_9 = q_acc_7_9 + res_tmp_7_9; q_acc_8_8 = q_acc_8_8 + res_tmp_8_8; - q_acc_8_9 = q_acc_8_9 + res_tmp_8_9; q_acc_9_9 = q_acc_9_9 + res_tmp_9_9; } - double q_acc_1_0 = q_acc_0_1; - double q_acc_2_0 = q_acc_0_2; - double q_acc_2_1 = q_acc_1_2; - double q_acc_3_0 = q_acc_0_3; - double q_acc_3_1 = q_acc_1_3; - double q_acc_3_2 = q_acc_2_3; - double q_acc_4_0 = q_acc_0_4; - double q_acc_4_1 = q_acc_1_4; - double q_acc_4_2 = q_acc_2_4; - double q_acc_4_3 = q_acc_3_4; - double q_acc_5_0 = q_acc_0_5; - double q_acc_5_1 = q_acc_1_5; - double q_acc_5_2 = q_acc_2_5; - double q_acc_5_3 = q_acc_3_5; - double q_acc_5_4 = q_acc_4_5; - double q_acc_6_0 = q_acc_0_6; - double q_acc_6_1 = q_acc_1_6; - double q_acc_6_2 = q_acc_2_6; - double q_acc_6_3 = q_acc_3_6; - double q_acc_6_4 = q_acc_4_6; - double q_acc_6_5 = q_acc_5_6; - double q_acc_7_0 = q_acc_0_7; - double q_acc_7_1 = q_acc_1_7; - double q_acc_7_2 = q_acc_2_7; - double q_acc_7_3 = q_acc_3_7; - double q_acc_7_4 = q_acc_4_7; - double q_acc_7_5 = q_acc_5_7; - double q_acc_7_6 = q_acc_6_7; - double q_acc_8_0 = q_acc_0_8; - double q_acc_8_1 = q_acc_1_8; - double q_acc_8_2 = q_acc_2_8; - double q_acc_8_3 = q_acc_3_8; - double q_acc_8_4 = q_acc_4_8; - double q_acc_8_5 = q_acc_5_8; - double q_acc_8_6 = q_acc_6_8; - double q_acc_8_7 = q_acc_7_8; - double q_acc_9_0 = q_acc_0_9; - double q_acc_9_1 = q_acc_1_9; - double q_acc_9_2 = q_acc_2_9; - double q_acc_9_3 = q_acc_3_9; - double q_acc_9_4 = q_acc_4_9; - double q_acc_9_5 = q_acc_5_9; - double q_acc_9_6 = q_acc_6_9; - double q_acc_9_7 = q_acc_7_9; - double q_acc_9_8 = q_acc_8_9; const double elMatDiag_0 = q_acc_0_0; const double elMatDiag_1 = q_acc_1_1; const double elMatDiag_2 = q_acc_2_2; diff --git a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_toMatrix_macro_2D.cpp b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_toMatrix_macro_2D.cpp index db260ab915af1ffb93b4d8496d1049d21e63e401..aa3858ea7c0742bfc0a4549454d04728ca1dabc8 100644 --- a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_toMatrix_macro_2D.cpp +++ b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_toMatrix_macro_2D.cpp @@ -54,14 +54,14 @@ namespace hyteg { namespace operatorgeneration { -void P2ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dstEdge, int64_t * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, int64_t * RESTRICT _data_srcEdge, int64_t * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float, int64_t micro_edges_per_macro_face ) const +void P2ElementwiseDivKGrad::toMatrix_macro_2D( idx_t * RESTRICT _data_dstEdge, idx_t * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, idx_t * RESTRICT _data_srcEdge, idx_t * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.16666666666666674, 0.16666666666666674, 0.16666666666666674}; + const double _data_q_w [] = {0.166666666666667, 0.166666666666667, 0.166666666666667}; - const double _data_q_p_0 [] = {0.16666666666666674, 0.66666666666666674, 0.16666666666666663}; + const double _data_q_p_0 [] = {0.166666666666667, 0.666666666666667, 0.166666666666667}; - const double _data_q_p_1 [] = {0.16666666666666663, 0.16666666666666663, 0.66666666666666685}; + const double _data_q_p_1 [] = {0.166666666666667, 0.166666666666667, 0.666666666666667}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -78,31 +78,31 @@ void P2ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dstEdge const double jac_affine_inv_1_0 = -jac_affine_1_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double jac_affine_inv_1_1 = jac_affine_0_0*1.0 / (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0); - const double Dummy_4322 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4323 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4324 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4325 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4326 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4327 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4328 = -Dummy_4322 + Dummy_4324; - const double Dummy_4329 = -Dummy_4322 + Dummy_4326; - const double Dummy_4330 = -Dummy_4323 + Dummy_4325; - const double Dummy_4331 = -Dummy_4323 + Dummy_4327; - const double Dummy_4332 = Dummy_4331*1.0 / (Dummy_4328*Dummy_4331 - Dummy_4329*Dummy_4330); - const double Dummy_4333 = -Dummy_4329*1.0 / (Dummy_4328*Dummy_4331 - Dummy_4329*Dummy_4330); - const double Dummy_4334 = -Dummy_4330*1.0 / (Dummy_4328*Dummy_4331 - Dummy_4329*Dummy_4330); - const double Dummy_4335 = Dummy_4328*1.0 / (Dummy_4328*Dummy_4331 - Dummy_4329*Dummy_4330); - const double Dummy_4336 = fabs(Dummy_4328*Dummy_4331 - Dummy_4329*Dummy_4330); + const double Dummy_4305 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4306 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4307 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4308 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4309 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4310 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4311 = -Dummy_4305 + Dummy_4307; + const double Dummy_4312 = -Dummy_4305 + Dummy_4309; + const double Dummy_4313 = -Dummy_4306 + Dummy_4308; + const double Dummy_4314 = -Dummy_4306 + Dummy_4310; + const double Dummy_4315 = Dummy_4314*1.0 / (Dummy_4311*Dummy_4314 - Dummy_4312*Dummy_4313); + const double Dummy_4316 = -Dummy_4312*1.0 / (Dummy_4311*Dummy_4314 - Dummy_4312*Dummy_4313); + const double Dummy_4317 = -Dummy_4313*1.0 / (Dummy_4311*Dummy_4314 - Dummy_4312*Dummy_4313); + const double Dummy_4318 = Dummy_4311*1.0 / (Dummy_4311*Dummy_4314 - Dummy_4312*Dummy_4313); + const double Dummy_4319 = fabs(Dummy_4311*Dummy_4314 - Dummy_4312*Dummy_4313); { for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge; ctr_0 += 1) { - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_3 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -271,61 +271,61 @@ void P2ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dstEdge std::vector< uint_t > _data_rowIdx( 6 ); std::vector< uint_t > _data_colIdx( 6 ); - std::vector< double > _data_mat( 36 ); + std::vector< real_t > _data_mat( 36 ); _data_rowIdx[0] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))])); _data_rowIdx[1] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); _data_rowIdx[2] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))])); - _data_rowIdx[3] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))])); - _data_rowIdx[4] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))])); + _data_rowIdx[3] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))])); + _data_rowIdx[4] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))])); _data_rowIdx[5] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))])); _data_colIdx[0] = ((uint64_t)(_data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2))])); _data_colIdx[1] = ((uint64_t)(_data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); _data_colIdx[2] = ((uint64_t)(_data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))])); - _data_colIdx[3] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))])); - _data_colIdx[4] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))])); + _data_colIdx[3] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))])); + _data_colIdx[4] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))])); _data_colIdx[5] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2))])); /* Apply basis transformation */ - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_0_4; - _data_mat[5] = elMat_0_5; - _data_mat[6] = elMat_1_0; - _data_mat[7] = elMat_1_1; - _data_mat[8] = elMat_1_2; - _data_mat[9] = elMat_1_3; - _data_mat[10] = elMat_1_4; - _data_mat[11] = elMat_1_5; - _data_mat[12] = elMat_2_0; - _data_mat[13] = elMat_2_1; - _data_mat[14] = elMat_2_2; - _data_mat[15] = elMat_2_3; - _data_mat[16] = elMat_2_4; - _data_mat[17] = elMat_2_5; - _data_mat[18] = elMat_3_0; - _data_mat[19] = elMat_3_1; - _data_mat[20] = elMat_3_2; - _data_mat[21] = elMat_3_3; - _data_mat[22] = elMat_3_4; - _data_mat[23] = elMat_3_5; - _data_mat[24] = elMat_4_0; - _data_mat[25] = elMat_4_1; - _data_mat[26] = elMat_4_2; - _data_mat[27] = elMat_4_3; - _data_mat[28] = elMat_4_4; - _data_mat[29] = elMat_4_5; - _data_mat[30] = elMat_5_0; - _data_mat[31] = elMat_5_1; - _data_mat[32] = elMat_5_2; - _data_mat[33] = elMat_5_3; - _data_mat[34] = elMat_5_4; - _data_mat[35] = elMat_5_5; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_0_4)); + _data_mat[5] = ((real_t)(elMat_0_5)); + _data_mat[6] = ((real_t)(elMat_1_0)); + _data_mat[7] = ((real_t)(elMat_1_1)); + _data_mat[8] = ((real_t)(elMat_1_2)); + _data_mat[9] = ((real_t)(elMat_1_3)); + _data_mat[10] = ((real_t)(elMat_1_4)); + _data_mat[11] = ((real_t)(elMat_1_5)); + _data_mat[12] = ((real_t)(elMat_2_0)); + _data_mat[13] = ((real_t)(elMat_2_1)); + _data_mat[14] = ((real_t)(elMat_2_2)); + _data_mat[15] = ((real_t)(elMat_2_3)); + _data_mat[16] = ((real_t)(elMat_2_4)); + _data_mat[17] = ((real_t)(elMat_2_5)); + _data_mat[18] = ((real_t)(elMat_3_0)); + _data_mat[19] = ((real_t)(elMat_3_1)); + _data_mat[20] = ((real_t)(elMat_3_2)); + _data_mat[21] = ((real_t)(elMat_3_3)); + _data_mat[22] = ((real_t)(elMat_3_4)); + _data_mat[23] = ((real_t)(elMat_3_5)); + _data_mat[24] = ((real_t)(elMat_4_0)); + _data_mat[25] = ((real_t)(elMat_4_1)); + _data_mat[26] = ((real_t)(elMat_4_2)); + _data_mat[27] = ((real_t)(elMat_4_3)); + _data_mat[28] = ((real_t)(elMat_4_4)); + _data_mat[29] = ((real_t)(elMat_4_5)); + _data_mat[30] = ((real_t)(elMat_5_0)); + _data_mat[31] = ((real_t)(elMat_5_1)); + _data_mat[32] = ((real_t)(elMat_5_2)); + _data_mat[33] = ((real_t)(elMat_5_3)); + _data_mat[34] = ((real_t)(elMat_5_4)); + _data_mat[35] = ((real_t)(elMat_5_5)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -333,12 +333,12 @@ void P2ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dstEdge for (int64_t ctr_1 = 0; ctr_1 < micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { - const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; - const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))]; + const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1]; + const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1]; + const double k_dof_3 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -365,8 +365,8 @@ void P2ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dstEdge const double tmp_q_0 = 4.0*_data_q_p_0[q]; const double tmp_q_1 = 4.0*_data_q_p_1[q]; const double tmp_q_2 = tmp_q_0 + tmp_q_1 - 3.0; - const double tmp_q_3 = Dummy_4332*tmp_q_2; - const double tmp_q_4 = Dummy_4334*tmp_q_2; + const double tmp_q_3 = Dummy_4315*tmp_q_2; + const double tmp_q_4 = Dummy_4317*tmp_q_2; const double tmp_q_5 = tmp_q_3 + tmp_q_4; const double tmp_q_6 = tmp_q_0*_data_q_p_1[q]; const double tmp_q_7 = (_data_q_p_0[q]*_data_q_p_0[q]); @@ -374,54 +374,54 @@ void P2ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dstEdge const double tmp_q_9 = (_data_q_p_1[q]*_data_q_p_1[q]); const double tmp_q_10 = tmp_q_9*2.0; const double tmp_q_11 = k_dof_0*(tmp_q_10 + tmp_q_6 + tmp_q_8 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] + 1.0) + k_dof_1*(tmp_q_8 - _data_q_p_0[q]) + k_dof_2*(tmp_q_10 - _data_q_p_1[q]) + k_dof_3*tmp_q_6 + k_dof_4*(tmp_q_1 - tmp_q_6 + tmp_q_9*-4.0) + k_dof_5*(tmp_q_0 - tmp_q_6 + tmp_q_7*-4.0); - const double tmp_q_12 = Dummy_4333*tmp_q_2; - const double tmp_q_13 = Dummy_4335*tmp_q_2; + const double tmp_q_12 = Dummy_4316*tmp_q_2; + const double tmp_q_13 = Dummy_4318*tmp_q_2; const double tmp_q_14 = tmp_q_12 + tmp_q_13; - const double tmp_q_15 = Dummy_4336*_data_q_w[q]; + const double tmp_q_15 = Dummy_4319*_data_q_w[q]; const double tmp_q_16 = tmp_q_0 - 1.0; - const double tmp_q_17 = Dummy_4332*tmp_q_16; + const double tmp_q_17 = Dummy_4315*tmp_q_16; const double tmp_q_18 = tmp_q_11*tmp_q_5; - const double tmp_q_19 = Dummy_4333*tmp_q_16; + const double tmp_q_19 = Dummy_4316*tmp_q_16; const double tmp_q_20 = tmp_q_11*tmp_q_14; const double tmp_q_21 = tmp_q_1 - 1.0; - const double tmp_q_22 = Dummy_4334*tmp_q_21; - const double tmp_q_23 = Dummy_4335*tmp_q_21; - const double tmp_q_24 = Dummy_4332*tmp_q_1; + const double tmp_q_22 = Dummy_4317*tmp_q_21; + const double tmp_q_23 = Dummy_4318*tmp_q_21; + const double tmp_q_24 = Dummy_4315*tmp_q_1; const double tmp_q_25 = tmp_q_11*tmp_q_24; - const double tmp_q_26 = Dummy_4334*tmp_q_0; + const double tmp_q_26 = Dummy_4317*tmp_q_0; const double tmp_q_27 = tmp_q_11*tmp_q_26; const double tmp_q_28 = tmp_q_25 + tmp_q_27; - const double tmp_q_29 = Dummy_4333*tmp_q_1; + const double tmp_q_29 = Dummy_4316*tmp_q_1; const double tmp_q_30 = tmp_q_11*tmp_q_29; - const double tmp_q_31 = Dummy_4335*tmp_q_0; + const double tmp_q_31 = Dummy_4318*tmp_q_0; const double tmp_q_32 = tmp_q_11*tmp_q_31; const double tmp_q_33 = tmp_q_30 + tmp_q_32; const double tmp_q_34 = -tmp_q_0 - 8.0*_data_q_p_1[q] + 4.0; - const double tmp_q_35 = Dummy_4334*tmp_q_11*tmp_q_34 - tmp_q_25; - const double tmp_q_36 = Dummy_4335*tmp_q_11*tmp_q_34 - tmp_q_30; + const double tmp_q_35 = Dummy_4317*tmp_q_11*tmp_q_34 - tmp_q_25; + const double tmp_q_36 = Dummy_4318*tmp_q_11*tmp_q_34 - tmp_q_30; const double tmp_q_37 = -tmp_q_1 - 8.0*_data_q_p_0[q] + 4.0; - const double tmp_q_38 = Dummy_4332*tmp_q_37; + const double tmp_q_38 = Dummy_4315*tmp_q_37; const double tmp_q_39 = tmp_q_11*tmp_q_38 - tmp_q_27; - const double tmp_q_40 = Dummy_4333*tmp_q_37; + const double tmp_q_40 = Dummy_4316*tmp_q_37; const double tmp_q_41 = tmp_q_11*tmp_q_40 - tmp_q_32; const double tmp_q_42 = tmp_q_11*(tmp_q_16*tmp_q_16); const double tmp_q_43 = tmp_q_11*(tmp_q_21*tmp_q_21); const double tmp_q_44 = tmp_q_24 + tmp_q_26; const double tmp_q_45 = tmp_q_29 + tmp_q_31; - const double tmp_q_46 = Dummy_4334*tmp_q_34 - tmp_q_24; - const double tmp_q_47 = Dummy_4335*tmp_q_34 - tmp_q_29; + const double tmp_q_46 = Dummy_4317*tmp_q_34 - tmp_q_24; + const double tmp_q_47 = Dummy_4318*tmp_q_34 - tmp_q_29; const double res_tmp_0_0 = tmp_q_15*(tmp_q_14*(tmp_q_11*tmp_q_12 + tmp_q_11*tmp_q_13) + tmp_q_5*(tmp_q_11*tmp_q_3 + tmp_q_11*tmp_q_4)); const double res_tmp_0_1 = tmp_q_15*(tmp_q_17*tmp_q_18 + tmp_q_19*tmp_q_20); const double res_tmp_0_2 = tmp_q_15*(tmp_q_18*tmp_q_22 + tmp_q_20*tmp_q_23); const double res_tmp_0_3 = tmp_q_15*(tmp_q_14*tmp_q_33 + tmp_q_28*tmp_q_5); const double res_tmp_0_4 = tmp_q_15*(tmp_q_14*tmp_q_36 + tmp_q_35*tmp_q_5); const double res_tmp_0_5 = tmp_q_15*(tmp_q_14*tmp_q_41 + tmp_q_39*tmp_q_5); - const double res_tmp_1_1 = tmp_q_15*((Dummy_4332*Dummy_4332)*tmp_q_42 + (Dummy_4333*Dummy_4333)*tmp_q_42); + const double res_tmp_1_1 = tmp_q_15*((Dummy_4315*Dummy_4315)*tmp_q_42 + (Dummy_4316*Dummy_4316)*tmp_q_42); const double res_tmp_1_2 = tmp_q_15*(tmp_q_11*tmp_q_17*tmp_q_22 + tmp_q_11*tmp_q_19*tmp_q_23); const double res_tmp_1_3 = tmp_q_15*(tmp_q_17*tmp_q_28 + tmp_q_19*tmp_q_33); const double res_tmp_1_4 = tmp_q_15*(tmp_q_17*tmp_q_35 + tmp_q_19*tmp_q_36); const double res_tmp_1_5 = tmp_q_15*(tmp_q_17*tmp_q_39 + tmp_q_19*tmp_q_41); - const double res_tmp_2_2 = tmp_q_15*((Dummy_4334*Dummy_4334)*tmp_q_43 + (Dummy_4335*Dummy_4335)*tmp_q_43); + const double res_tmp_2_2 = tmp_q_15*((Dummy_4317*Dummy_4317)*tmp_q_43 + (Dummy_4318*Dummy_4318)*tmp_q_43); const double res_tmp_2_3 = tmp_q_15*(tmp_q_22*tmp_q_28 + tmp_q_23*tmp_q_33); const double res_tmp_2_4 = tmp_q_15*(tmp_q_22*tmp_q_35 + tmp_q_23*tmp_q_36); const double res_tmp_2_5 = tmp_q_15*(tmp_q_22*tmp_q_39 + tmp_q_23*tmp_q_41); @@ -507,61 +507,61 @@ void P2ElementwiseDivKGrad::toMatrix_macro_2D( int64_t * RESTRICT _data_dstEdge std::vector< uint_t > _data_rowIdx( 6 ); std::vector< uint_t > _data_colIdx( 6 ); - std::vector< double > _data_mat( 36 ); + std::vector< real_t > _data_mat( 36 ); _data_rowIdx[0] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))])); _data_rowIdx[2] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1])); _data_rowIdx[3] = ((uint64_t)(_data_dstEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))])); - _data_rowIdx[4] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); - _data_rowIdx[5] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))])); + _data_rowIdx[4] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1])); + _data_rowIdx[5] = ((uint64_t)(_data_dstEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))])); _data_colIdx[0] = ((uint64_t)(_data_srcVertex[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); _data_colIdx[1] = ((uint64_t)(_data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))])); _data_colIdx[2] = ((uint64_t)(_data_srcVertex[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 1])); _data_colIdx[3] = ((uint64_t)(_data_srcEdge[ctr_0 + (ctr_1 + 1)*(micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2))])); - _data_colIdx[4] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + 2*((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2)) + 1])); - _data_colIdx[5] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) + ((micro_edges_per_macro_face) / (3)) - ((ctr_1*(ctr_1 + 1)) / (2))])); + _data_colIdx[4] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2)) + 1])); + _data_colIdx[5] = ((uint64_t)(_data_srcEdge[ctr_0 + ctr_1*(micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)) / (2))])); /* Apply basis transformation */ - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_0_4; - _data_mat[5] = elMat_0_5; - _data_mat[6] = elMat_1_0; - _data_mat[7] = elMat_1_1; - _data_mat[8] = elMat_1_2; - _data_mat[9] = elMat_1_3; - _data_mat[10] = elMat_1_4; - _data_mat[11] = elMat_1_5; - _data_mat[12] = elMat_2_0; - _data_mat[13] = elMat_2_1; - _data_mat[14] = elMat_2_2; - _data_mat[15] = elMat_2_3; - _data_mat[16] = elMat_2_4; - _data_mat[17] = elMat_2_5; - _data_mat[18] = elMat_3_0; - _data_mat[19] = elMat_3_1; - _data_mat[20] = elMat_3_2; - _data_mat[21] = elMat_3_3; - _data_mat[22] = elMat_3_4; - _data_mat[23] = elMat_3_5; - _data_mat[24] = elMat_4_0; - _data_mat[25] = elMat_4_1; - _data_mat[26] = elMat_4_2; - _data_mat[27] = elMat_4_3; - _data_mat[28] = elMat_4_4; - _data_mat[29] = elMat_4_5; - _data_mat[30] = elMat_5_0; - _data_mat[31] = elMat_5_1; - _data_mat[32] = elMat_5_2; - _data_mat[33] = elMat_5_3; - _data_mat[34] = elMat_5_4; - _data_mat[35] = elMat_5_5; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_0_4)); + _data_mat[5] = ((real_t)(elMat_0_5)); + _data_mat[6] = ((real_t)(elMat_1_0)); + _data_mat[7] = ((real_t)(elMat_1_1)); + _data_mat[8] = ((real_t)(elMat_1_2)); + _data_mat[9] = ((real_t)(elMat_1_3)); + _data_mat[10] = ((real_t)(elMat_1_4)); + _data_mat[11] = ((real_t)(elMat_1_5)); + _data_mat[12] = ((real_t)(elMat_2_0)); + _data_mat[13] = ((real_t)(elMat_2_1)); + _data_mat[14] = ((real_t)(elMat_2_2)); + _data_mat[15] = ((real_t)(elMat_2_3)); + _data_mat[16] = ((real_t)(elMat_2_4)); + _data_mat[17] = ((real_t)(elMat_2_5)); + _data_mat[18] = ((real_t)(elMat_3_0)); + _data_mat[19] = ((real_t)(elMat_3_1)); + _data_mat[20] = ((real_t)(elMat_3_2)); + _data_mat[21] = ((real_t)(elMat_3_3)); + _data_mat[22] = ((real_t)(elMat_3_4)); + _data_mat[23] = ((real_t)(elMat_3_5)); + _data_mat[24] = ((real_t)(elMat_4_0)); + _data_mat[25] = ((real_t)(elMat_4_1)); + _data_mat[26] = ((real_t)(elMat_4_2)); + _data_mat[27] = ((real_t)(elMat_4_3)); + _data_mat[28] = ((real_t)(elMat_4_4)); + _data_mat[29] = ((real_t)(elMat_4_5)); + _data_mat[30] = ((real_t)(elMat_5_0)); + _data_mat[31] = ((real_t)(elMat_5_1)); + _data_mat[32] = ((real_t)(elMat_5_2)); + _data_mat[33] = ((real_t)(elMat_5_3)); + _data_mat[34] = ((real_t)(elMat_5_4)); + _data_mat[35] = ((real_t)(elMat_5_5)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); diff --git a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_toMatrix_macro_3D.cpp b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_toMatrix_macro_3D.cpp index 396c868db15b779ed1b2deb115d955bb12ba4e5e..ceb31fbc85e0afea702acfc13ca55d9d64b0c478 100644 --- a/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_toMatrix_macro_3D.cpp +++ b/operators/div_k_grad/noarch/P2ElementwiseDivKGrad_toMatrix_macro_3D.cpp @@ -54,16 +54,16 @@ namespace hyteg { namespace operatorgeneration { -void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge, int64_t * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, int64_t * RESTRICT _data_srcEdge, int64_t * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const +void P2ElementwiseDivKGrad::toMatrix_macro_3D( idx_t * RESTRICT _data_dstEdge, idx_t * RESTRICT _data_dstVertex, double * RESTRICT _data_kEdge, double * RESTRICT _data_kVertex, idx_t * RESTRICT _data_srcEdge, idx_t * RESTRICT _data_srcVertex, double macro_vertex_coord_id_0comp0, double macro_vertex_coord_id_0comp1, double macro_vertex_coord_id_0comp2, double macro_vertex_coord_id_1comp0, double macro_vertex_coord_id_1comp1, double macro_vertex_coord_id_1comp2, double macro_vertex_coord_id_2comp0, double macro_vertex_coord_id_2comp1, double macro_vertex_coord_id_2comp2, double macro_vertex_coord_id_3comp0, double macro_vertex_coord_id_3comp1, double macro_vertex_coord_id_3comp2, std::shared_ptr< SparseMatrixProxy > mat, int64_t micro_edges_per_macro_edge, double micro_edges_per_macro_edge_float ) const { { - const double _data_q_w [] = {0.050086823222829389, 0.046462929447761279, 0.05318232258357912, 0.016934591412496786}; + const double _data_q_w [] = {0.0500868232228294, 0.0464629294477613, 0.0531823225835791, 0.0169345914124968}; - const double _data_q_p_0 [] = {0.18002969351036546, 0.15593312049918584, 0.21607642918484793, 0.82157254096761967}; + const double _data_q_p_0 [] = {0.180029693510365, 0.155933120499186, 0.216076429184848, 0.821572540967620}; - const double _data_q_p_1 [] = {0.36531451881463461, 0.45746158708559559, 0.00037551502872928966, 0.12366680032845823}; + const double _data_q_p_1 [] = {0.365314518814635, 0.457461587085596, 0.000375515028729290, 0.123666800328458}; - const double _data_q_p_2 [] = {0.0069232355736274509, 0.3817653560693467, 0.43070170707783589, 0.039933048641498381}; + const double _data_q_p_2 [] = {0.00692323557362745, 0.381765356069347, 0.430701707077836, 0.0399330486414984}; const double p_affine_0_0 = macro_vertex_coord_id_0comp0; const double p_affine_0_1 = macro_vertex_coord_id_0comp1; @@ -96,176 +96,176 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double jac_affine_inv_2_1 = (-jac_affine_0_0*jac_affine_2_1 + jac_affine_0_1*jac_affine_2_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double jac_affine_inv_2_2 = (jac_affine_0_0*jac_affine_1_1 - jac_affine_0_1*jac_affine_1_0)*1.0 / (jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); const double abs_det_jac_affine = fabs(jac_affine_0_0*jac_affine_1_1*jac_affine_2_2 - jac_affine_0_0*jac_affine_1_2*jac_affine_2_1 - jac_affine_0_1*jac_affine_1_0*jac_affine_2_2 + jac_affine_0_1*jac_affine_1_2*jac_affine_2_0 + jac_affine_0_2*jac_affine_1_0*jac_affine_2_1 - jac_affine_0_2*jac_affine_1_1*jac_affine_2_0); - const double Dummy_4445 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4446 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4447 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4448 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4449 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4450 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4451 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4452 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4453 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4454 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4455 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4456 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4457 = -Dummy_4445 + Dummy_4448; - const double Dummy_4458 = -Dummy_4445 + Dummy_4451; - const double Dummy_4459 = -Dummy_4445 + Dummy_4454; - const double Dummy_4460 = -Dummy_4446 + Dummy_4449; - const double Dummy_4461 = -Dummy_4446 + Dummy_4452; - const double Dummy_4462 = -Dummy_4446 + Dummy_4455; - const double Dummy_4463 = -Dummy_4447 + Dummy_4450; - const double Dummy_4464 = -Dummy_4447 + Dummy_4453; - const double Dummy_4465 = -Dummy_4447 + Dummy_4456; - const double Dummy_4466 = (Dummy_4461*Dummy_4465 - Dummy_4462*Dummy_4464)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4467 = (-Dummy_4458*Dummy_4465 + Dummy_4459*Dummy_4464)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4468 = (Dummy_4458*Dummy_4462 - Dummy_4459*Dummy_4461)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4469 = (-Dummy_4460*Dummy_4465 + Dummy_4462*Dummy_4463)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4470 = (Dummy_4457*Dummy_4465 - Dummy_4459*Dummy_4463)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4471 = (-Dummy_4457*Dummy_4462 + Dummy_4459*Dummy_4460)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4472 = (Dummy_4460*Dummy_4464 - Dummy_4461*Dummy_4463)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4473 = (-Dummy_4457*Dummy_4464 + Dummy_4458*Dummy_4463)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4474 = (Dummy_4457*Dummy_4461 - Dummy_4458*Dummy_4460)*1.0 / (Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4475 = fabs(Dummy_4457*Dummy_4461*Dummy_4465 - Dummy_4457*Dummy_4462*Dummy_4464 - Dummy_4458*Dummy_4460*Dummy_4465 + Dummy_4458*Dummy_4462*Dummy_4463 + Dummy_4459*Dummy_4460*Dummy_4464 - Dummy_4459*Dummy_4461*Dummy_4463); - const double Dummy_4476 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4477 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4478 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4479 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4480 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4481 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4482 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4483 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4484 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4485 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4486 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4487 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4488 = -Dummy_4476 + Dummy_4479; - const double Dummy_4489 = -Dummy_4476 + Dummy_4482; - const double Dummy_4490 = -Dummy_4476 + Dummy_4485; - const double Dummy_4491 = -Dummy_4477 + Dummy_4480; - const double Dummy_4492 = -Dummy_4477 + Dummy_4483; - const double Dummy_4493 = -Dummy_4477 + Dummy_4486; - const double Dummy_4494 = -Dummy_4478 + Dummy_4481; - const double Dummy_4495 = -Dummy_4478 + Dummy_4484; - const double Dummy_4496 = -Dummy_4478 + Dummy_4487; - const double Dummy_4497 = (Dummy_4492*Dummy_4496 - Dummy_4493*Dummy_4495)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4498 = (-Dummy_4489*Dummy_4496 + Dummy_4490*Dummy_4495)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4499 = (Dummy_4489*Dummy_4493 - Dummy_4490*Dummy_4492)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4500 = (-Dummy_4491*Dummy_4496 + Dummy_4493*Dummy_4494)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4501 = (Dummy_4488*Dummy_4496 - Dummy_4490*Dummy_4494)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4502 = (-Dummy_4488*Dummy_4493 + Dummy_4490*Dummy_4491)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4503 = (Dummy_4491*Dummy_4495 - Dummy_4492*Dummy_4494)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4504 = (-Dummy_4488*Dummy_4495 + Dummy_4489*Dummy_4494)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4505 = (Dummy_4488*Dummy_4492 - Dummy_4489*Dummy_4491)*1.0 / (Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4506 = fabs(Dummy_4488*Dummy_4492*Dummy_4496 - Dummy_4488*Dummy_4493*Dummy_4495 - Dummy_4489*Dummy_4491*Dummy_4496 + Dummy_4489*Dummy_4493*Dummy_4494 + Dummy_4490*Dummy_4491*Dummy_4495 - Dummy_4490*Dummy_4492*Dummy_4494); - const double Dummy_4507 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4508 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4509 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4510 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4511 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4512 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4513 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4514 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4515 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4516 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4517 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4518 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4519 = -Dummy_4507 + Dummy_4510; - const double Dummy_4520 = -Dummy_4507 + Dummy_4513; - const double Dummy_4521 = -Dummy_4507 + Dummy_4516; - const double Dummy_4522 = -Dummy_4508 + Dummy_4511; - const double Dummy_4523 = -Dummy_4508 + Dummy_4514; - const double Dummy_4524 = -Dummy_4508 + Dummy_4517; - const double Dummy_4525 = -Dummy_4509 + Dummy_4512; - const double Dummy_4526 = -Dummy_4509 + Dummy_4515; - const double Dummy_4527 = -Dummy_4509 + Dummy_4518; - const double Dummy_4528 = (Dummy_4523*Dummy_4527 - Dummy_4524*Dummy_4526)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4529 = (-Dummy_4520*Dummy_4527 + Dummy_4521*Dummy_4526)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4530 = (Dummy_4520*Dummy_4524 - Dummy_4521*Dummy_4523)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4531 = (-Dummy_4522*Dummy_4527 + Dummy_4524*Dummy_4525)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4532 = (Dummy_4519*Dummy_4527 - Dummy_4521*Dummy_4525)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4533 = (-Dummy_4519*Dummy_4524 + Dummy_4521*Dummy_4522)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4534 = (Dummy_4522*Dummy_4526 - Dummy_4523*Dummy_4525)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4535 = (-Dummy_4519*Dummy_4526 + Dummy_4520*Dummy_4525)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4536 = (Dummy_4519*Dummy_4523 - Dummy_4520*Dummy_4522)*1.0 / (Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4537 = fabs(Dummy_4519*Dummy_4523*Dummy_4527 - Dummy_4519*Dummy_4524*Dummy_4526 - Dummy_4520*Dummy_4522*Dummy_4527 + Dummy_4520*Dummy_4524*Dummy_4525 + Dummy_4521*Dummy_4522*Dummy_4526 - Dummy_4521*Dummy_4523*Dummy_4525); - const double Dummy_4538 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; - const double Dummy_4539 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; - const double Dummy_4540 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; - const double Dummy_4541 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4542 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4543 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4544 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4545 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4546 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4547 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4548 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4549 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4550 = -Dummy_4538 + Dummy_4541; - const double Dummy_4551 = -Dummy_4538 + Dummy_4544; - const double Dummy_4552 = -Dummy_4538 + Dummy_4547; - const double Dummy_4553 = -Dummy_4539 + Dummy_4542; - const double Dummy_4554 = -Dummy_4539 + Dummy_4545; - const double Dummy_4555 = -Dummy_4539 + Dummy_4548; - const double Dummy_4556 = -Dummy_4540 + Dummy_4543; - const double Dummy_4557 = -Dummy_4540 + Dummy_4546; - const double Dummy_4558 = -Dummy_4540 + Dummy_4549; - const double Dummy_4559 = (Dummy_4554*Dummy_4558 - Dummy_4555*Dummy_4557)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4560 = (-Dummy_4551*Dummy_4558 + Dummy_4552*Dummy_4557)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4561 = (Dummy_4551*Dummy_4555 - Dummy_4552*Dummy_4554)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4562 = (-Dummy_4553*Dummy_4558 + Dummy_4555*Dummy_4556)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4563 = (Dummy_4550*Dummy_4558 - Dummy_4552*Dummy_4556)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4564 = (-Dummy_4550*Dummy_4555 + Dummy_4552*Dummy_4553)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4565 = (Dummy_4553*Dummy_4557 - Dummy_4554*Dummy_4556)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4566 = (-Dummy_4550*Dummy_4557 + Dummy_4551*Dummy_4556)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4567 = (Dummy_4550*Dummy_4554 - Dummy_4551*Dummy_4553)*1.0 / (Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4568 = fabs(Dummy_4550*Dummy_4554*Dummy_4558 - Dummy_4550*Dummy_4555*Dummy_4557 - Dummy_4551*Dummy_4553*Dummy_4558 + Dummy_4551*Dummy_4555*Dummy_4556 + Dummy_4552*Dummy_4553*Dummy_4557 - Dummy_4552*Dummy_4554*Dummy_4556); - const double Dummy_4569 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4570 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4571 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4572 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; - const double Dummy_4573 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; - const double Dummy_4574 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; - const double Dummy_4575 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4576 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4577 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4578 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; - const double Dummy_4579 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; - const double Dummy_4580 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; - const double Dummy_4581 = -Dummy_4569 + Dummy_4572; - const double Dummy_4582 = -Dummy_4569 + Dummy_4575; - const double Dummy_4583 = -Dummy_4569 + Dummy_4578; - const double Dummy_4584 = -Dummy_4570 + Dummy_4573; - const double Dummy_4585 = -Dummy_4570 + Dummy_4576; - const double Dummy_4586 = -Dummy_4570 + Dummy_4579; - const double Dummy_4587 = -Dummy_4571 + Dummy_4574; - const double Dummy_4588 = -Dummy_4571 + Dummy_4577; - const double Dummy_4589 = -Dummy_4571 + Dummy_4580; - const double Dummy_4590 = (Dummy_4585*Dummy_4589 - Dummy_4586*Dummy_4588)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4591 = (-Dummy_4582*Dummy_4589 + Dummy_4583*Dummy_4588)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4592 = (Dummy_4582*Dummy_4586 - Dummy_4583*Dummy_4585)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4593 = (-Dummy_4584*Dummy_4589 + Dummy_4586*Dummy_4587)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4594 = (Dummy_4581*Dummy_4589 - Dummy_4583*Dummy_4587)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4595 = (-Dummy_4581*Dummy_4586 + Dummy_4583*Dummy_4584)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4596 = (Dummy_4584*Dummy_4588 - Dummy_4585*Dummy_4587)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4597 = (-Dummy_4581*Dummy_4588 + Dummy_4582*Dummy_4587)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4598 = (Dummy_4581*Dummy_4585 - Dummy_4582*Dummy_4584)*1.0 / (Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); - const double Dummy_4599 = fabs(Dummy_4581*Dummy_4585*Dummy_4589 - Dummy_4581*Dummy_4586*Dummy_4588 - Dummy_4582*Dummy_4584*Dummy_4589 + Dummy_4582*Dummy_4586*Dummy_4587 + Dummy_4583*Dummy_4584*Dummy_4588 - Dummy_4583*Dummy_4585*Dummy_4587); + const double Dummy_4428 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4429 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4430 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4431 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4432 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4433 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4434 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4435 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4436 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4437 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4438 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4439 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4440 = -Dummy_4428 + Dummy_4431; + const double Dummy_4441 = -Dummy_4428 + Dummy_4434; + const double Dummy_4442 = -Dummy_4428 + Dummy_4437; + const double Dummy_4443 = -Dummy_4429 + Dummy_4432; + const double Dummy_4444 = -Dummy_4429 + Dummy_4435; + const double Dummy_4445 = -Dummy_4429 + Dummy_4438; + const double Dummy_4446 = -Dummy_4430 + Dummy_4433; + const double Dummy_4447 = -Dummy_4430 + Dummy_4436; + const double Dummy_4448 = -Dummy_4430 + Dummy_4439; + const double Dummy_4449 = (Dummy_4444*Dummy_4448 - Dummy_4445*Dummy_4447)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4450 = (-Dummy_4441*Dummy_4448 + Dummy_4442*Dummy_4447)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4451 = (Dummy_4441*Dummy_4445 - Dummy_4442*Dummy_4444)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4452 = (-Dummy_4443*Dummy_4448 + Dummy_4445*Dummy_4446)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4453 = (Dummy_4440*Dummy_4448 - Dummy_4442*Dummy_4446)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4454 = (-Dummy_4440*Dummy_4445 + Dummy_4442*Dummy_4443)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4455 = (Dummy_4443*Dummy_4447 - Dummy_4444*Dummy_4446)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4456 = (-Dummy_4440*Dummy_4447 + Dummy_4441*Dummy_4446)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4457 = (Dummy_4440*Dummy_4444 - Dummy_4441*Dummy_4443)*1.0 / (Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4458 = fabs(Dummy_4440*Dummy_4444*Dummy_4448 - Dummy_4440*Dummy_4445*Dummy_4447 - Dummy_4441*Dummy_4443*Dummy_4448 + Dummy_4441*Dummy_4445*Dummy_4446 + Dummy_4442*Dummy_4443*Dummy_4447 - Dummy_4442*Dummy_4444*Dummy_4446); + const double Dummy_4459 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4460 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4461 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4462 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4463 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4464 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4465 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4466 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4467 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4468 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4469 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4470 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4471 = -Dummy_4459 + Dummy_4462; + const double Dummy_4472 = -Dummy_4459 + Dummy_4465; + const double Dummy_4473 = -Dummy_4459 + Dummy_4468; + const double Dummy_4474 = -Dummy_4460 + Dummy_4463; + const double Dummy_4475 = -Dummy_4460 + Dummy_4466; + const double Dummy_4476 = -Dummy_4460 + Dummy_4469; + const double Dummy_4477 = -Dummy_4461 + Dummy_4464; + const double Dummy_4478 = -Dummy_4461 + Dummy_4467; + const double Dummy_4479 = -Dummy_4461 + Dummy_4470; + const double Dummy_4480 = (Dummy_4475*Dummy_4479 - Dummy_4476*Dummy_4478)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4481 = (-Dummy_4472*Dummy_4479 + Dummy_4473*Dummy_4478)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4482 = (Dummy_4472*Dummy_4476 - Dummy_4473*Dummy_4475)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4483 = (-Dummy_4474*Dummy_4479 + Dummy_4476*Dummy_4477)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4484 = (Dummy_4471*Dummy_4479 - Dummy_4473*Dummy_4477)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4485 = (-Dummy_4471*Dummy_4476 + Dummy_4473*Dummy_4474)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4486 = (Dummy_4474*Dummy_4478 - Dummy_4475*Dummy_4477)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4487 = (-Dummy_4471*Dummy_4478 + Dummy_4472*Dummy_4477)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4488 = (Dummy_4471*Dummy_4475 - Dummy_4472*Dummy_4474)*1.0 / (Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4489 = fabs(Dummy_4471*Dummy_4475*Dummy_4479 - Dummy_4471*Dummy_4476*Dummy_4478 - Dummy_4472*Dummy_4474*Dummy_4479 + Dummy_4472*Dummy_4476*Dummy_4477 + Dummy_4473*Dummy_4474*Dummy_4478 - Dummy_4473*Dummy_4475*Dummy_4477); + const double Dummy_4490 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4491 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4492 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4493 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4494 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4495 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4496 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4497 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4498 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4499 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4500 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4501 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4502 = -Dummy_4490 + Dummy_4493; + const double Dummy_4503 = -Dummy_4490 + Dummy_4496; + const double Dummy_4504 = -Dummy_4490 + Dummy_4499; + const double Dummy_4505 = -Dummy_4491 + Dummy_4494; + const double Dummy_4506 = -Dummy_4491 + Dummy_4497; + const double Dummy_4507 = -Dummy_4491 + Dummy_4500; + const double Dummy_4508 = -Dummy_4492 + Dummy_4495; + const double Dummy_4509 = -Dummy_4492 + Dummy_4498; + const double Dummy_4510 = -Dummy_4492 + Dummy_4501; + const double Dummy_4511 = (Dummy_4506*Dummy_4510 - Dummy_4507*Dummy_4509)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4512 = (-Dummy_4503*Dummy_4510 + Dummy_4504*Dummy_4509)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4513 = (Dummy_4503*Dummy_4507 - Dummy_4504*Dummy_4506)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4514 = (-Dummy_4505*Dummy_4510 + Dummy_4507*Dummy_4508)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4515 = (Dummy_4502*Dummy_4510 - Dummy_4504*Dummy_4508)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4516 = (-Dummy_4502*Dummy_4507 + Dummy_4504*Dummy_4505)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4517 = (Dummy_4505*Dummy_4509 - Dummy_4506*Dummy_4508)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4518 = (-Dummy_4502*Dummy_4509 + Dummy_4503*Dummy_4508)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4519 = (Dummy_4502*Dummy_4506 - Dummy_4503*Dummy_4505)*1.0 / (Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4520 = fabs(Dummy_4502*Dummy_4506*Dummy_4510 - Dummy_4502*Dummy_4507*Dummy_4509 - Dummy_4503*Dummy_4505*Dummy_4510 + Dummy_4503*Dummy_4507*Dummy_4508 + Dummy_4504*Dummy_4505*Dummy_4509 - Dummy_4504*Dummy_4506*Dummy_4508); + const double Dummy_4521 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0; + const double Dummy_4522 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0; + const double Dummy_4523 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0; + const double Dummy_4524 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4525 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4526 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4527 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4528 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4529 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4530 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4531 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4532 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4533 = -Dummy_4521 + Dummy_4524; + const double Dummy_4534 = -Dummy_4521 + Dummy_4527; + const double Dummy_4535 = -Dummy_4521 + Dummy_4530; + const double Dummy_4536 = -Dummy_4522 + Dummy_4525; + const double Dummy_4537 = -Dummy_4522 + Dummy_4528; + const double Dummy_4538 = -Dummy_4522 + Dummy_4531; + const double Dummy_4539 = -Dummy_4523 + Dummy_4526; + const double Dummy_4540 = -Dummy_4523 + Dummy_4529; + const double Dummy_4541 = -Dummy_4523 + Dummy_4532; + const double Dummy_4542 = (Dummy_4537*Dummy_4541 - Dummy_4538*Dummy_4540)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4543 = (-Dummy_4534*Dummy_4541 + Dummy_4535*Dummy_4540)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4544 = (Dummy_4534*Dummy_4538 - Dummy_4535*Dummy_4537)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4545 = (-Dummy_4536*Dummy_4541 + Dummy_4538*Dummy_4539)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4546 = (Dummy_4533*Dummy_4541 - Dummy_4535*Dummy_4539)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4547 = (-Dummy_4533*Dummy_4538 + Dummy_4535*Dummy_4536)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4548 = (Dummy_4536*Dummy_4540 - Dummy_4537*Dummy_4539)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4549 = (-Dummy_4533*Dummy_4540 + Dummy_4534*Dummy_4539)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4550 = (Dummy_4533*Dummy_4537 - Dummy_4534*Dummy_4536)*1.0 / (Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4551 = fabs(Dummy_4533*Dummy_4537*Dummy_4541 - Dummy_4533*Dummy_4538*Dummy_4540 - Dummy_4534*Dummy_4536*Dummy_4541 + Dummy_4534*Dummy_4538*Dummy_4539 + Dummy_4535*Dummy_4536*Dummy_4540 - Dummy_4535*Dummy_4537*Dummy_4539); + const double Dummy_4552 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4553 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4554 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4555 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0; + const double Dummy_4556 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0; + const double Dummy_4557 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0; + const double Dummy_4558 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_1comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4559 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_1comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4560 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_1comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4561 = macro_vertex_coord_id_0comp0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_2comp0)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp0 + macro_vertex_coord_id_3comp0)*1.0; + const double Dummy_4562 = macro_vertex_coord_id_0comp1 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_2comp1)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp1 + macro_vertex_coord_id_3comp1)*1.0; + const double Dummy_4563 = macro_vertex_coord_id_0comp2 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_2comp2)*1.0 + 1.0 / (micro_edges_per_macro_edge_float)*(-macro_vertex_coord_id_0comp2 + macro_vertex_coord_id_3comp2)*1.0; + const double Dummy_4564 = -Dummy_4552 + Dummy_4555; + const double Dummy_4565 = -Dummy_4552 + Dummy_4558; + const double Dummy_4566 = -Dummy_4552 + Dummy_4561; + const double Dummy_4567 = -Dummy_4553 + Dummy_4556; + const double Dummy_4568 = -Dummy_4553 + Dummy_4559; + const double Dummy_4569 = -Dummy_4553 + Dummy_4562; + const double Dummy_4570 = -Dummy_4554 + Dummy_4557; + const double Dummy_4571 = -Dummy_4554 + Dummy_4560; + const double Dummy_4572 = -Dummy_4554 + Dummy_4563; + const double Dummy_4573 = (Dummy_4568*Dummy_4572 - Dummy_4569*Dummy_4571)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4574 = (-Dummy_4565*Dummy_4572 + Dummy_4566*Dummy_4571)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4575 = (Dummy_4565*Dummy_4569 - Dummy_4566*Dummy_4568)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4576 = (-Dummy_4567*Dummy_4572 + Dummy_4569*Dummy_4570)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4577 = (Dummy_4564*Dummy_4572 - Dummy_4566*Dummy_4570)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4578 = (-Dummy_4564*Dummy_4569 + Dummy_4566*Dummy_4567)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4579 = (Dummy_4567*Dummy_4571 - Dummy_4568*Dummy_4570)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4580 = (-Dummy_4564*Dummy_4571 + Dummy_4565*Dummy_4570)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4581 = (Dummy_4564*Dummy_4568 - Dummy_4565*Dummy_4567)*1.0 / (Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); + const double Dummy_4582 = fabs(Dummy_4564*Dummy_4568*Dummy_4572 - Dummy_4564*Dummy_4569*Dummy_4571 - Dummy_4565*Dummy_4567*Dummy_4572 + Dummy_4565*Dummy_4569*Dummy_4570 + Dummy_4566*Dummy_4567*Dummy_4571 - Dummy_4566*Dummy_4568*Dummy_4570); { for (int64_t ctr_2 = 0; ctr_2 < micro_edges_per_macro_edge; ctr_2 += 1) for (int64_t ctr_1 = 0; ctr_1 < -ctr_2 + micro_edges_per_macro_edge; ctr_1 += 1) for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -706,7 +706,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge std::vector< uint_t > _data_rowIdx( 10 ); std::vector< uint_t > _data_colIdx( 10 ); - std::vector< double > _data_mat( 100 ); + std::vector< real_t > _data_mat( 100 ); _data_rowIdx[0] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -733,106 +733,106 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_0_4; - _data_mat[5] = elMat_0_5; - _data_mat[6] = elMat_0_6; - _data_mat[7] = elMat_0_7; - _data_mat[8] = elMat_0_8; - _data_mat[9] = elMat_0_9; - _data_mat[10] = elMat_1_0; - _data_mat[11] = elMat_1_1; - _data_mat[12] = elMat_1_2; - _data_mat[13] = elMat_1_3; - _data_mat[14] = elMat_1_4; - _data_mat[15] = elMat_1_5; - _data_mat[16] = elMat_1_6; - _data_mat[17] = elMat_1_7; - _data_mat[18] = elMat_1_8; - _data_mat[19] = elMat_1_9; - _data_mat[20] = elMat_2_0; - _data_mat[21] = elMat_2_1; - _data_mat[22] = elMat_2_2; - _data_mat[23] = elMat_2_3; - _data_mat[24] = elMat_2_4; - _data_mat[25] = elMat_2_5; - _data_mat[26] = elMat_2_6; - _data_mat[27] = elMat_2_7; - _data_mat[28] = elMat_2_8; - _data_mat[29] = elMat_2_9; - _data_mat[30] = elMat_3_0; - _data_mat[31] = elMat_3_1; - _data_mat[32] = elMat_3_2; - _data_mat[33] = elMat_3_3; - _data_mat[34] = elMat_3_4; - _data_mat[35] = elMat_3_5; - _data_mat[36] = elMat_3_6; - _data_mat[37] = elMat_3_7; - _data_mat[38] = elMat_3_8; - _data_mat[39] = elMat_3_9; - _data_mat[40] = elMat_4_0; - _data_mat[41] = elMat_4_1; - _data_mat[42] = elMat_4_2; - _data_mat[43] = elMat_4_3; - _data_mat[44] = elMat_4_4; - _data_mat[45] = elMat_4_5; - _data_mat[46] = elMat_4_6; - _data_mat[47] = elMat_4_7; - _data_mat[48] = elMat_4_8; - _data_mat[49] = elMat_4_9; - _data_mat[50] = elMat_5_0; - _data_mat[51] = elMat_5_1; - _data_mat[52] = elMat_5_2; - _data_mat[53] = elMat_5_3; - _data_mat[54] = elMat_5_4; - _data_mat[55] = elMat_5_5; - _data_mat[56] = elMat_5_6; - _data_mat[57] = elMat_5_7; - _data_mat[58] = elMat_5_8; - _data_mat[59] = elMat_5_9; - _data_mat[60] = elMat_6_0; - _data_mat[61] = elMat_6_1; - _data_mat[62] = elMat_6_2; - _data_mat[63] = elMat_6_3; - _data_mat[64] = elMat_6_4; - _data_mat[65] = elMat_6_5; - _data_mat[66] = elMat_6_6; - _data_mat[67] = elMat_6_7; - _data_mat[68] = elMat_6_8; - _data_mat[69] = elMat_6_9; - _data_mat[70] = elMat_7_0; - _data_mat[71] = elMat_7_1; - _data_mat[72] = elMat_7_2; - _data_mat[73] = elMat_7_3; - _data_mat[74] = elMat_7_4; - _data_mat[75] = elMat_7_5; - _data_mat[76] = elMat_7_6; - _data_mat[77] = elMat_7_7; - _data_mat[78] = elMat_7_8; - _data_mat[79] = elMat_7_9; - _data_mat[80] = elMat_8_0; - _data_mat[81] = elMat_8_1; - _data_mat[82] = elMat_8_2; - _data_mat[83] = elMat_8_3; - _data_mat[84] = elMat_8_4; - _data_mat[85] = elMat_8_5; - _data_mat[86] = elMat_8_6; - _data_mat[87] = elMat_8_7; - _data_mat[88] = elMat_8_8; - _data_mat[89] = elMat_8_9; - _data_mat[90] = elMat_9_0; - _data_mat[91] = elMat_9_1; - _data_mat[92] = elMat_9_2; - _data_mat[93] = elMat_9_3; - _data_mat[94] = elMat_9_4; - _data_mat[95] = elMat_9_5; - _data_mat[96] = elMat_9_6; - _data_mat[97] = elMat_9_7; - _data_mat[98] = elMat_9_8; - _data_mat[99] = elMat_9_9; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_0_4)); + _data_mat[5] = ((real_t)(elMat_0_5)); + _data_mat[6] = ((real_t)(elMat_0_6)); + _data_mat[7] = ((real_t)(elMat_0_7)); + _data_mat[8] = ((real_t)(elMat_0_8)); + _data_mat[9] = ((real_t)(elMat_0_9)); + _data_mat[10] = ((real_t)(elMat_1_0)); + _data_mat[11] = ((real_t)(elMat_1_1)); + _data_mat[12] = ((real_t)(elMat_1_2)); + _data_mat[13] = ((real_t)(elMat_1_3)); + _data_mat[14] = ((real_t)(elMat_1_4)); + _data_mat[15] = ((real_t)(elMat_1_5)); + _data_mat[16] = ((real_t)(elMat_1_6)); + _data_mat[17] = ((real_t)(elMat_1_7)); + _data_mat[18] = ((real_t)(elMat_1_8)); + _data_mat[19] = ((real_t)(elMat_1_9)); + _data_mat[20] = ((real_t)(elMat_2_0)); + _data_mat[21] = ((real_t)(elMat_2_1)); + _data_mat[22] = ((real_t)(elMat_2_2)); + _data_mat[23] = ((real_t)(elMat_2_3)); + _data_mat[24] = ((real_t)(elMat_2_4)); + _data_mat[25] = ((real_t)(elMat_2_5)); + _data_mat[26] = ((real_t)(elMat_2_6)); + _data_mat[27] = ((real_t)(elMat_2_7)); + _data_mat[28] = ((real_t)(elMat_2_8)); + _data_mat[29] = ((real_t)(elMat_2_9)); + _data_mat[30] = ((real_t)(elMat_3_0)); + _data_mat[31] = ((real_t)(elMat_3_1)); + _data_mat[32] = ((real_t)(elMat_3_2)); + _data_mat[33] = ((real_t)(elMat_3_3)); + _data_mat[34] = ((real_t)(elMat_3_4)); + _data_mat[35] = ((real_t)(elMat_3_5)); + _data_mat[36] = ((real_t)(elMat_3_6)); + _data_mat[37] = ((real_t)(elMat_3_7)); + _data_mat[38] = ((real_t)(elMat_3_8)); + _data_mat[39] = ((real_t)(elMat_3_9)); + _data_mat[40] = ((real_t)(elMat_4_0)); + _data_mat[41] = ((real_t)(elMat_4_1)); + _data_mat[42] = ((real_t)(elMat_4_2)); + _data_mat[43] = ((real_t)(elMat_4_3)); + _data_mat[44] = ((real_t)(elMat_4_4)); + _data_mat[45] = ((real_t)(elMat_4_5)); + _data_mat[46] = ((real_t)(elMat_4_6)); + _data_mat[47] = ((real_t)(elMat_4_7)); + _data_mat[48] = ((real_t)(elMat_4_8)); + _data_mat[49] = ((real_t)(elMat_4_9)); + _data_mat[50] = ((real_t)(elMat_5_0)); + _data_mat[51] = ((real_t)(elMat_5_1)); + _data_mat[52] = ((real_t)(elMat_5_2)); + _data_mat[53] = ((real_t)(elMat_5_3)); + _data_mat[54] = ((real_t)(elMat_5_4)); + _data_mat[55] = ((real_t)(elMat_5_5)); + _data_mat[56] = ((real_t)(elMat_5_6)); + _data_mat[57] = ((real_t)(elMat_5_7)); + _data_mat[58] = ((real_t)(elMat_5_8)); + _data_mat[59] = ((real_t)(elMat_5_9)); + _data_mat[60] = ((real_t)(elMat_6_0)); + _data_mat[61] = ((real_t)(elMat_6_1)); + _data_mat[62] = ((real_t)(elMat_6_2)); + _data_mat[63] = ((real_t)(elMat_6_3)); + _data_mat[64] = ((real_t)(elMat_6_4)); + _data_mat[65] = ((real_t)(elMat_6_5)); + _data_mat[66] = ((real_t)(elMat_6_6)); + _data_mat[67] = ((real_t)(elMat_6_7)); + _data_mat[68] = ((real_t)(elMat_6_8)); + _data_mat[69] = ((real_t)(elMat_6_9)); + _data_mat[70] = ((real_t)(elMat_7_0)); + _data_mat[71] = ((real_t)(elMat_7_1)); + _data_mat[72] = ((real_t)(elMat_7_2)); + _data_mat[73] = ((real_t)(elMat_7_3)); + _data_mat[74] = ((real_t)(elMat_7_4)); + _data_mat[75] = ((real_t)(elMat_7_5)); + _data_mat[76] = ((real_t)(elMat_7_6)); + _data_mat[77] = ((real_t)(elMat_7_7)); + _data_mat[78] = ((real_t)(elMat_7_8)); + _data_mat[79] = ((real_t)(elMat_7_9)); + _data_mat[80] = ((real_t)(elMat_8_0)); + _data_mat[81] = ((real_t)(elMat_8_1)); + _data_mat[82] = ((real_t)(elMat_8_2)); + _data_mat[83] = ((real_t)(elMat_8_3)); + _data_mat[84] = ((real_t)(elMat_8_4)); + _data_mat[85] = ((real_t)(elMat_8_5)); + _data_mat[86] = ((real_t)(elMat_8_6)); + _data_mat[87] = ((real_t)(elMat_8_7)); + _data_mat[88] = ((real_t)(elMat_8_8)); + _data_mat[89] = ((real_t)(elMat_8_9)); + _data_mat[90] = ((real_t)(elMat_9_0)); + _data_mat[91] = ((real_t)(elMat_9_1)); + _data_mat[92] = ((real_t)(elMat_9_2)); + _data_mat[93] = ((real_t)(elMat_9_3)); + _data_mat[94] = ((real_t)(elMat_9_4)); + _data_mat[95] = ((real_t)(elMat_9_5)); + _data_mat[96] = ((real_t)(elMat_9_6)); + _data_mat[97] = ((real_t)(elMat_9_7)); + _data_mat[98] = ((real_t)(elMat_9_8)); + _data_mat[99] = ((real_t)(elMat_9_9)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -842,15 +842,15 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 2; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6)) + 1]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -913,9 +913,9 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4466*tmp_q_4; - const double tmp_q_6 = Dummy_4469*tmp_q_4; - const double tmp_q_7 = Dummy_4472*tmp_q_4; + const double tmp_q_5 = Dummy_4449*tmp_q_4; + const double tmp_q_6 = Dummy_4452*tmp_q_4; + const double tmp_q_7 = Dummy_4455*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -928,88 +928,88 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4467*tmp_q_4; - const double tmp_q_21 = Dummy_4470*tmp_q_4; - const double tmp_q_22 = Dummy_4473*tmp_q_4; + const double tmp_q_20 = Dummy_4450*tmp_q_4; + const double tmp_q_21 = Dummy_4453*tmp_q_4; + const double tmp_q_22 = Dummy_4456*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4468*tmp_q_4; - const double tmp_q_25 = Dummy_4471*tmp_q_4; - const double tmp_q_26 = Dummy_4474*tmp_q_4; + const double tmp_q_24 = Dummy_4451*tmp_q_4; + const double tmp_q_25 = Dummy_4454*tmp_q_4; + const double tmp_q_26 = Dummy_4457*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4475*_data_q_w[q]; + const double tmp_q_28 = Dummy_4458*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4466*tmp_q_29; + const double tmp_q_30 = Dummy_4449*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4467*tmp_q_29; + const double tmp_q_32 = Dummy_4450*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4468*tmp_q_29; + const double tmp_q_34 = Dummy_4451*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4469*tmp_q_36; - const double tmp_q_38 = Dummy_4470*tmp_q_36; - const double tmp_q_39 = Dummy_4471*tmp_q_36; + const double tmp_q_37 = Dummy_4452*tmp_q_36; + const double tmp_q_38 = Dummy_4453*tmp_q_36; + const double tmp_q_39 = Dummy_4454*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4472*tmp_q_40; - const double tmp_q_42 = Dummy_4473*tmp_q_40; - const double tmp_q_43 = Dummy_4474*tmp_q_40; - const double tmp_q_44 = Dummy_4469*tmp_q_0; + const double tmp_q_41 = Dummy_4455*tmp_q_40; + const double tmp_q_42 = Dummy_4456*tmp_q_40; + const double tmp_q_43 = Dummy_4457*tmp_q_40; + const double tmp_q_44 = Dummy_4452*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4472*tmp_q_2; + const double tmp_q_46 = Dummy_4455*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4470*tmp_q_0; + const double tmp_q_49 = Dummy_4453*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4473*tmp_q_2; + const double tmp_q_51 = Dummy_4456*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4471*tmp_q_0; + const double tmp_q_54 = Dummy_4454*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4474*tmp_q_2; + const double tmp_q_56 = Dummy_4457*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4466*tmp_q_0; + const double tmp_q_59 = Dummy_4449*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4472*tmp_q_1; + const double tmp_q_61 = Dummy_4455*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4467*tmp_q_0; + const double tmp_q_64 = Dummy_4450*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4473*tmp_q_1; + const double tmp_q_66 = Dummy_4456*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4468*tmp_q_0; + const double tmp_q_69 = Dummy_4451*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4474*tmp_q_1; + const double tmp_q_71 = Dummy_4457*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4466*tmp_q_2; + const double tmp_q_74 = Dummy_4449*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4469*tmp_q_1; + const double tmp_q_76 = Dummy_4452*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4467*tmp_q_2; + const double tmp_q_79 = Dummy_4450*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4470*tmp_q_1; + const double tmp_q_81 = Dummy_4453*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4468*tmp_q_2; + const double tmp_q_84 = Dummy_4451*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4471*tmp_q_1; + const double tmp_q_86 = Dummy_4454*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4472*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4473*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4474*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4455*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4456*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4457*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4469*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4470*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4471*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4452*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4453*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4454*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4466*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4467*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4468*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4449*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4450*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4451*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -1026,12 +1026,12 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4472*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4473*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4474*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4469*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4470*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4471*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4455*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4456*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4457*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4452*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4453*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4454*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -1042,7 +1042,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4466*Dummy_4466)*tmp_q_103 + (Dummy_4467*Dummy_4467)*tmp_q_103 + (Dummy_4468*Dummy_4468)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4449*Dummy_4449)*tmp_q_103 + (Dummy_4450*Dummy_4450)*tmp_q_103 + (Dummy_4451*Dummy_4451)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -1051,7 +1051,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4469*Dummy_4469)*tmp_q_107 + (Dummy_4470*Dummy_4470)*tmp_q_107 + (Dummy_4471*Dummy_4471)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4452*Dummy_4452)*tmp_q_107 + (Dummy_4453*Dummy_4453)*tmp_q_107 + (Dummy_4454*Dummy_4454)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -1059,7 +1059,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4472*Dummy_4472)*tmp_q_108 + (Dummy_4473*Dummy_4473)*tmp_q_108 + (Dummy_4474*Dummy_4474)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4455*Dummy_4455)*tmp_q_108 + (Dummy_4456*Dummy_4456)*tmp_q_108 + (Dummy_4457*Dummy_4457)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -1086,7 +1086,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4467*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4468*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4466*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4450*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4451*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4449*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -1291,7 +1291,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge std::vector< uint_t > _data_rowIdx( 10 ); std::vector< uint_t > _data_colIdx( 10 ); - std::vector< double > _data_mat( 100 ); + std::vector< real_t > _data_mat( 100 ); _data_rowIdx[0] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -1318,106 +1318,106 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_0_4; - _data_mat[5] = elMat_0_5; - _data_mat[6] = elMat_0_6; - _data_mat[7] = elMat_0_7; - _data_mat[8] = elMat_0_8; - _data_mat[9] = elMat_0_9; - _data_mat[10] = elMat_1_0; - _data_mat[11] = elMat_1_1; - _data_mat[12] = elMat_1_2; - _data_mat[13] = elMat_1_3; - _data_mat[14] = elMat_1_4; - _data_mat[15] = elMat_1_5; - _data_mat[16] = elMat_1_6; - _data_mat[17] = elMat_1_7; - _data_mat[18] = elMat_1_8; - _data_mat[19] = elMat_1_9; - _data_mat[20] = elMat_2_0; - _data_mat[21] = elMat_2_1; - _data_mat[22] = elMat_2_2; - _data_mat[23] = elMat_2_3; - _data_mat[24] = elMat_2_4; - _data_mat[25] = elMat_2_5; - _data_mat[26] = elMat_2_6; - _data_mat[27] = elMat_2_7; - _data_mat[28] = elMat_2_8; - _data_mat[29] = elMat_2_9; - _data_mat[30] = elMat_3_0; - _data_mat[31] = elMat_3_1; - _data_mat[32] = elMat_3_2; - _data_mat[33] = elMat_3_3; - _data_mat[34] = elMat_3_4; - _data_mat[35] = elMat_3_5; - _data_mat[36] = elMat_3_6; - _data_mat[37] = elMat_3_7; - _data_mat[38] = elMat_3_8; - _data_mat[39] = elMat_3_9; - _data_mat[40] = elMat_4_0; - _data_mat[41] = elMat_4_1; - _data_mat[42] = elMat_4_2; - _data_mat[43] = elMat_4_3; - _data_mat[44] = elMat_4_4; - _data_mat[45] = elMat_4_5; - _data_mat[46] = elMat_4_6; - _data_mat[47] = elMat_4_7; - _data_mat[48] = elMat_4_8; - _data_mat[49] = elMat_4_9; - _data_mat[50] = elMat_5_0; - _data_mat[51] = elMat_5_1; - _data_mat[52] = elMat_5_2; - _data_mat[53] = elMat_5_3; - _data_mat[54] = elMat_5_4; - _data_mat[55] = elMat_5_5; - _data_mat[56] = elMat_5_6; - _data_mat[57] = elMat_5_7; - _data_mat[58] = elMat_5_8; - _data_mat[59] = elMat_5_9; - _data_mat[60] = elMat_6_0; - _data_mat[61] = elMat_6_1; - _data_mat[62] = elMat_6_2; - _data_mat[63] = elMat_6_3; - _data_mat[64] = elMat_6_4; - _data_mat[65] = elMat_6_5; - _data_mat[66] = elMat_6_6; - _data_mat[67] = elMat_6_7; - _data_mat[68] = elMat_6_8; - _data_mat[69] = elMat_6_9; - _data_mat[70] = elMat_7_0; - _data_mat[71] = elMat_7_1; - _data_mat[72] = elMat_7_2; - _data_mat[73] = elMat_7_3; - _data_mat[74] = elMat_7_4; - _data_mat[75] = elMat_7_5; - _data_mat[76] = elMat_7_6; - _data_mat[77] = elMat_7_7; - _data_mat[78] = elMat_7_8; - _data_mat[79] = elMat_7_9; - _data_mat[80] = elMat_8_0; - _data_mat[81] = elMat_8_1; - _data_mat[82] = elMat_8_2; - _data_mat[83] = elMat_8_3; - _data_mat[84] = elMat_8_4; - _data_mat[85] = elMat_8_5; - _data_mat[86] = elMat_8_6; - _data_mat[87] = elMat_8_7; - _data_mat[88] = elMat_8_8; - _data_mat[89] = elMat_8_9; - _data_mat[90] = elMat_9_0; - _data_mat[91] = elMat_9_1; - _data_mat[92] = elMat_9_2; - _data_mat[93] = elMat_9_3; - _data_mat[94] = elMat_9_4; - _data_mat[95] = elMat_9_5; - _data_mat[96] = elMat_9_6; - _data_mat[97] = elMat_9_7; - _data_mat[98] = elMat_9_8; - _data_mat[99] = elMat_9_9; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_0_4)); + _data_mat[5] = ((real_t)(elMat_0_5)); + _data_mat[6] = ((real_t)(elMat_0_6)); + _data_mat[7] = ((real_t)(elMat_0_7)); + _data_mat[8] = ((real_t)(elMat_0_8)); + _data_mat[9] = ((real_t)(elMat_0_9)); + _data_mat[10] = ((real_t)(elMat_1_0)); + _data_mat[11] = ((real_t)(elMat_1_1)); + _data_mat[12] = ((real_t)(elMat_1_2)); + _data_mat[13] = ((real_t)(elMat_1_3)); + _data_mat[14] = ((real_t)(elMat_1_4)); + _data_mat[15] = ((real_t)(elMat_1_5)); + _data_mat[16] = ((real_t)(elMat_1_6)); + _data_mat[17] = ((real_t)(elMat_1_7)); + _data_mat[18] = ((real_t)(elMat_1_8)); + _data_mat[19] = ((real_t)(elMat_1_9)); + _data_mat[20] = ((real_t)(elMat_2_0)); + _data_mat[21] = ((real_t)(elMat_2_1)); + _data_mat[22] = ((real_t)(elMat_2_2)); + _data_mat[23] = ((real_t)(elMat_2_3)); + _data_mat[24] = ((real_t)(elMat_2_4)); + _data_mat[25] = ((real_t)(elMat_2_5)); + _data_mat[26] = ((real_t)(elMat_2_6)); + _data_mat[27] = ((real_t)(elMat_2_7)); + _data_mat[28] = ((real_t)(elMat_2_8)); + _data_mat[29] = ((real_t)(elMat_2_9)); + _data_mat[30] = ((real_t)(elMat_3_0)); + _data_mat[31] = ((real_t)(elMat_3_1)); + _data_mat[32] = ((real_t)(elMat_3_2)); + _data_mat[33] = ((real_t)(elMat_3_3)); + _data_mat[34] = ((real_t)(elMat_3_4)); + _data_mat[35] = ((real_t)(elMat_3_5)); + _data_mat[36] = ((real_t)(elMat_3_6)); + _data_mat[37] = ((real_t)(elMat_3_7)); + _data_mat[38] = ((real_t)(elMat_3_8)); + _data_mat[39] = ((real_t)(elMat_3_9)); + _data_mat[40] = ((real_t)(elMat_4_0)); + _data_mat[41] = ((real_t)(elMat_4_1)); + _data_mat[42] = ((real_t)(elMat_4_2)); + _data_mat[43] = ((real_t)(elMat_4_3)); + _data_mat[44] = ((real_t)(elMat_4_4)); + _data_mat[45] = ((real_t)(elMat_4_5)); + _data_mat[46] = ((real_t)(elMat_4_6)); + _data_mat[47] = ((real_t)(elMat_4_7)); + _data_mat[48] = ((real_t)(elMat_4_8)); + _data_mat[49] = ((real_t)(elMat_4_9)); + _data_mat[50] = ((real_t)(elMat_5_0)); + _data_mat[51] = ((real_t)(elMat_5_1)); + _data_mat[52] = ((real_t)(elMat_5_2)); + _data_mat[53] = ((real_t)(elMat_5_3)); + _data_mat[54] = ((real_t)(elMat_5_4)); + _data_mat[55] = ((real_t)(elMat_5_5)); + _data_mat[56] = ((real_t)(elMat_5_6)); + _data_mat[57] = ((real_t)(elMat_5_7)); + _data_mat[58] = ((real_t)(elMat_5_8)); + _data_mat[59] = ((real_t)(elMat_5_9)); + _data_mat[60] = ((real_t)(elMat_6_0)); + _data_mat[61] = ((real_t)(elMat_6_1)); + _data_mat[62] = ((real_t)(elMat_6_2)); + _data_mat[63] = ((real_t)(elMat_6_3)); + _data_mat[64] = ((real_t)(elMat_6_4)); + _data_mat[65] = ((real_t)(elMat_6_5)); + _data_mat[66] = ((real_t)(elMat_6_6)); + _data_mat[67] = ((real_t)(elMat_6_7)); + _data_mat[68] = ((real_t)(elMat_6_8)); + _data_mat[69] = ((real_t)(elMat_6_9)); + _data_mat[70] = ((real_t)(elMat_7_0)); + _data_mat[71] = ((real_t)(elMat_7_1)); + _data_mat[72] = ((real_t)(elMat_7_2)); + _data_mat[73] = ((real_t)(elMat_7_3)); + _data_mat[74] = ((real_t)(elMat_7_4)); + _data_mat[75] = ((real_t)(elMat_7_5)); + _data_mat[76] = ((real_t)(elMat_7_6)); + _data_mat[77] = ((real_t)(elMat_7_7)); + _data_mat[78] = ((real_t)(elMat_7_8)); + _data_mat[79] = ((real_t)(elMat_7_9)); + _data_mat[80] = ((real_t)(elMat_8_0)); + _data_mat[81] = ((real_t)(elMat_8_1)); + _data_mat[82] = ((real_t)(elMat_8_2)); + _data_mat[83] = ((real_t)(elMat_8_3)); + _data_mat[84] = ((real_t)(elMat_8_4)); + _data_mat[85] = ((real_t)(elMat_8_5)); + _data_mat[86] = ((real_t)(elMat_8_6)); + _data_mat[87] = ((real_t)(elMat_8_7)); + _data_mat[88] = ((real_t)(elMat_8_8)); + _data_mat[89] = ((real_t)(elMat_8_9)); + _data_mat[90] = ((real_t)(elMat_9_0)); + _data_mat[91] = ((real_t)(elMat_9_1)); + _data_mat[92] = ((real_t)(elMat_9_2)); + _data_mat[93] = ((real_t)(elMat_9_3)); + _data_mat[94] = ((real_t)(elMat_9_4)); + _data_mat[95] = ((real_t)(elMat_9_5)); + _data_mat[96] = ((real_t)(elMat_9_6)); + _data_mat[97] = ((real_t)(elMat_9_7)); + _data_mat[98] = ((real_t)(elMat_9_8)); + _data_mat[99] = ((real_t)(elMat_9_9)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -1427,15 +1427,15 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -1498,9 +1498,9 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4497*tmp_q_4; - const double tmp_q_6 = Dummy_4500*tmp_q_4; - const double tmp_q_7 = Dummy_4503*tmp_q_4; + const double tmp_q_5 = Dummy_4480*tmp_q_4; + const double tmp_q_6 = Dummy_4483*tmp_q_4; + const double tmp_q_7 = Dummy_4486*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -1513,88 +1513,88 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4498*tmp_q_4; - const double tmp_q_21 = Dummy_4501*tmp_q_4; - const double tmp_q_22 = Dummy_4504*tmp_q_4; + const double tmp_q_20 = Dummy_4481*tmp_q_4; + const double tmp_q_21 = Dummy_4484*tmp_q_4; + const double tmp_q_22 = Dummy_4487*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4499*tmp_q_4; - const double tmp_q_25 = Dummy_4502*tmp_q_4; - const double tmp_q_26 = Dummy_4505*tmp_q_4; + const double tmp_q_24 = Dummy_4482*tmp_q_4; + const double tmp_q_25 = Dummy_4485*tmp_q_4; + const double tmp_q_26 = Dummy_4488*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4506*_data_q_w[q]; + const double tmp_q_28 = Dummy_4489*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4497*tmp_q_29; + const double tmp_q_30 = Dummy_4480*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4498*tmp_q_29; + const double tmp_q_32 = Dummy_4481*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4499*tmp_q_29; + const double tmp_q_34 = Dummy_4482*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4500*tmp_q_36; - const double tmp_q_38 = Dummy_4501*tmp_q_36; - const double tmp_q_39 = Dummy_4502*tmp_q_36; + const double tmp_q_37 = Dummy_4483*tmp_q_36; + const double tmp_q_38 = Dummy_4484*tmp_q_36; + const double tmp_q_39 = Dummy_4485*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4503*tmp_q_40; - const double tmp_q_42 = Dummy_4504*tmp_q_40; - const double tmp_q_43 = Dummy_4505*tmp_q_40; - const double tmp_q_44 = Dummy_4500*tmp_q_0; + const double tmp_q_41 = Dummy_4486*tmp_q_40; + const double tmp_q_42 = Dummy_4487*tmp_q_40; + const double tmp_q_43 = Dummy_4488*tmp_q_40; + const double tmp_q_44 = Dummy_4483*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4503*tmp_q_2; + const double tmp_q_46 = Dummy_4486*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4501*tmp_q_0; + const double tmp_q_49 = Dummy_4484*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4504*tmp_q_2; + const double tmp_q_51 = Dummy_4487*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4502*tmp_q_0; + const double tmp_q_54 = Dummy_4485*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4505*tmp_q_2; + const double tmp_q_56 = Dummy_4488*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4497*tmp_q_0; + const double tmp_q_59 = Dummy_4480*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4503*tmp_q_1; + const double tmp_q_61 = Dummy_4486*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4498*tmp_q_0; + const double tmp_q_64 = Dummy_4481*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4504*tmp_q_1; + const double tmp_q_66 = Dummy_4487*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4499*tmp_q_0; + const double tmp_q_69 = Dummy_4482*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4505*tmp_q_1; + const double tmp_q_71 = Dummy_4488*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4497*tmp_q_2; + const double tmp_q_74 = Dummy_4480*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4500*tmp_q_1; + const double tmp_q_76 = Dummy_4483*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4498*tmp_q_2; + const double tmp_q_79 = Dummy_4481*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4501*tmp_q_1; + const double tmp_q_81 = Dummy_4484*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4499*tmp_q_2; + const double tmp_q_84 = Dummy_4482*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4502*tmp_q_1; + const double tmp_q_86 = Dummy_4485*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4503*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4504*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4505*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4486*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4487*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4488*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4500*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4501*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4502*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4483*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4484*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4485*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4497*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4498*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4499*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4480*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4481*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4482*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -1611,12 +1611,12 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4503*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4504*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4505*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4500*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4501*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4502*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4486*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4487*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4488*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4483*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4484*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4485*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -1627,7 +1627,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4497*Dummy_4497)*tmp_q_103 + (Dummy_4498*Dummy_4498)*tmp_q_103 + (Dummy_4499*Dummy_4499)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4480*Dummy_4480)*tmp_q_103 + (Dummy_4481*Dummy_4481)*tmp_q_103 + (Dummy_4482*Dummy_4482)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -1636,7 +1636,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4500*Dummy_4500)*tmp_q_107 + (Dummy_4501*Dummy_4501)*tmp_q_107 + (Dummy_4502*Dummy_4502)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4483*Dummy_4483)*tmp_q_107 + (Dummy_4484*Dummy_4484)*tmp_q_107 + (Dummy_4485*Dummy_4485)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -1644,7 +1644,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4503*Dummy_4503)*tmp_q_108 + (Dummy_4504*Dummy_4504)*tmp_q_108 + (Dummy_4505*Dummy_4505)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4486*Dummy_4486)*tmp_q_108 + (Dummy_4487*Dummy_4487)*tmp_q_108 + (Dummy_4488*Dummy_4488)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -1671,7 +1671,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4498*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4499*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4497*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4481*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4482*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4480*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -1876,7 +1876,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge std::vector< uint_t > _data_rowIdx( 10 ); std::vector< uint_t > _data_colIdx( 10 ); - std::vector< double > _data_mat( 100 ); + std::vector< real_t > _data_mat( 100 ); _data_rowIdx[0] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); @@ -1903,106 +1903,106 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_0_4; - _data_mat[5] = elMat_0_5; - _data_mat[6] = elMat_0_6; - _data_mat[7] = elMat_0_7; - _data_mat[8] = elMat_0_8; - _data_mat[9] = elMat_0_9; - _data_mat[10] = elMat_1_0; - _data_mat[11] = elMat_1_1; - _data_mat[12] = elMat_1_2; - _data_mat[13] = elMat_1_3; - _data_mat[14] = elMat_1_4; - _data_mat[15] = elMat_1_5; - _data_mat[16] = elMat_1_6; - _data_mat[17] = elMat_1_7; - _data_mat[18] = elMat_1_8; - _data_mat[19] = elMat_1_9; - _data_mat[20] = elMat_2_0; - _data_mat[21] = elMat_2_1; - _data_mat[22] = elMat_2_2; - _data_mat[23] = elMat_2_3; - _data_mat[24] = elMat_2_4; - _data_mat[25] = elMat_2_5; - _data_mat[26] = elMat_2_6; - _data_mat[27] = elMat_2_7; - _data_mat[28] = elMat_2_8; - _data_mat[29] = elMat_2_9; - _data_mat[30] = elMat_3_0; - _data_mat[31] = elMat_3_1; - _data_mat[32] = elMat_3_2; - _data_mat[33] = elMat_3_3; - _data_mat[34] = elMat_3_4; - _data_mat[35] = elMat_3_5; - _data_mat[36] = elMat_3_6; - _data_mat[37] = elMat_3_7; - _data_mat[38] = elMat_3_8; - _data_mat[39] = elMat_3_9; - _data_mat[40] = elMat_4_0; - _data_mat[41] = elMat_4_1; - _data_mat[42] = elMat_4_2; - _data_mat[43] = elMat_4_3; - _data_mat[44] = elMat_4_4; - _data_mat[45] = elMat_4_5; - _data_mat[46] = elMat_4_6; - _data_mat[47] = elMat_4_7; - _data_mat[48] = elMat_4_8; - _data_mat[49] = elMat_4_9; - _data_mat[50] = elMat_5_0; - _data_mat[51] = elMat_5_1; - _data_mat[52] = elMat_5_2; - _data_mat[53] = elMat_5_3; - _data_mat[54] = elMat_5_4; - _data_mat[55] = elMat_5_5; - _data_mat[56] = elMat_5_6; - _data_mat[57] = elMat_5_7; - _data_mat[58] = elMat_5_8; - _data_mat[59] = elMat_5_9; - _data_mat[60] = elMat_6_0; - _data_mat[61] = elMat_6_1; - _data_mat[62] = elMat_6_2; - _data_mat[63] = elMat_6_3; - _data_mat[64] = elMat_6_4; - _data_mat[65] = elMat_6_5; - _data_mat[66] = elMat_6_6; - _data_mat[67] = elMat_6_7; - _data_mat[68] = elMat_6_8; - _data_mat[69] = elMat_6_9; - _data_mat[70] = elMat_7_0; - _data_mat[71] = elMat_7_1; - _data_mat[72] = elMat_7_2; - _data_mat[73] = elMat_7_3; - _data_mat[74] = elMat_7_4; - _data_mat[75] = elMat_7_5; - _data_mat[76] = elMat_7_6; - _data_mat[77] = elMat_7_7; - _data_mat[78] = elMat_7_8; - _data_mat[79] = elMat_7_9; - _data_mat[80] = elMat_8_0; - _data_mat[81] = elMat_8_1; - _data_mat[82] = elMat_8_2; - _data_mat[83] = elMat_8_3; - _data_mat[84] = elMat_8_4; - _data_mat[85] = elMat_8_5; - _data_mat[86] = elMat_8_6; - _data_mat[87] = elMat_8_7; - _data_mat[88] = elMat_8_8; - _data_mat[89] = elMat_8_9; - _data_mat[90] = elMat_9_0; - _data_mat[91] = elMat_9_1; - _data_mat[92] = elMat_9_2; - _data_mat[93] = elMat_9_3; - _data_mat[94] = elMat_9_4; - _data_mat[95] = elMat_9_5; - _data_mat[96] = elMat_9_6; - _data_mat[97] = elMat_9_7; - _data_mat[98] = elMat_9_8; - _data_mat[99] = elMat_9_9; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_0_4)); + _data_mat[5] = ((real_t)(elMat_0_5)); + _data_mat[6] = ((real_t)(elMat_0_6)); + _data_mat[7] = ((real_t)(elMat_0_7)); + _data_mat[8] = ((real_t)(elMat_0_8)); + _data_mat[9] = ((real_t)(elMat_0_9)); + _data_mat[10] = ((real_t)(elMat_1_0)); + _data_mat[11] = ((real_t)(elMat_1_1)); + _data_mat[12] = ((real_t)(elMat_1_2)); + _data_mat[13] = ((real_t)(elMat_1_3)); + _data_mat[14] = ((real_t)(elMat_1_4)); + _data_mat[15] = ((real_t)(elMat_1_5)); + _data_mat[16] = ((real_t)(elMat_1_6)); + _data_mat[17] = ((real_t)(elMat_1_7)); + _data_mat[18] = ((real_t)(elMat_1_8)); + _data_mat[19] = ((real_t)(elMat_1_9)); + _data_mat[20] = ((real_t)(elMat_2_0)); + _data_mat[21] = ((real_t)(elMat_2_1)); + _data_mat[22] = ((real_t)(elMat_2_2)); + _data_mat[23] = ((real_t)(elMat_2_3)); + _data_mat[24] = ((real_t)(elMat_2_4)); + _data_mat[25] = ((real_t)(elMat_2_5)); + _data_mat[26] = ((real_t)(elMat_2_6)); + _data_mat[27] = ((real_t)(elMat_2_7)); + _data_mat[28] = ((real_t)(elMat_2_8)); + _data_mat[29] = ((real_t)(elMat_2_9)); + _data_mat[30] = ((real_t)(elMat_3_0)); + _data_mat[31] = ((real_t)(elMat_3_1)); + _data_mat[32] = ((real_t)(elMat_3_2)); + _data_mat[33] = ((real_t)(elMat_3_3)); + _data_mat[34] = ((real_t)(elMat_3_4)); + _data_mat[35] = ((real_t)(elMat_3_5)); + _data_mat[36] = ((real_t)(elMat_3_6)); + _data_mat[37] = ((real_t)(elMat_3_7)); + _data_mat[38] = ((real_t)(elMat_3_8)); + _data_mat[39] = ((real_t)(elMat_3_9)); + _data_mat[40] = ((real_t)(elMat_4_0)); + _data_mat[41] = ((real_t)(elMat_4_1)); + _data_mat[42] = ((real_t)(elMat_4_2)); + _data_mat[43] = ((real_t)(elMat_4_3)); + _data_mat[44] = ((real_t)(elMat_4_4)); + _data_mat[45] = ((real_t)(elMat_4_5)); + _data_mat[46] = ((real_t)(elMat_4_6)); + _data_mat[47] = ((real_t)(elMat_4_7)); + _data_mat[48] = ((real_t)(elMat_4_8)); + _data_mat[49] = ((real_t)(elMat_4_9)); + _data_mat[50] = ((real_t)(elMat_5_0)); + _data_mat[51] = ((real_t)(elMat_5_1)); + _data_mat[52] = ((real_t)(elMat_5_2)); + _data_mat[53] = ((real_t)(elMat_5_3)); + _data_mat[54] = ((real_t)(elMat_5_4)); + _data_mat[55] = ((real_t)(elMat_5_5)); + _data_mat[56] = ((real_t)(elMat_5_6)); + _data_mat[57] = ((real_t)(elMat_5_7)); + _data_mat[58] = ((real_t)(elMat_5_8)); + _data_mat[59] = ((real_t)(elMat_5_9)); + _data_mat[60] = ((real_t)(elMat_6_0)); + _data_mat[61] = ((real_t)(elMat_6_1)); + _data_mat[62] = ((real_t)(elMat_6_2)); + _data_mat[63] = ((real_t)(elMat_6_3)); + _data_mat[64] = ((real_t)(elMat_6_4)); + _data_mat[65] = ((real_t)(elMat_6_5)); + _data_mat[66] = ((real_t)(elMat_6_6)); + _data_mat[67] = ((real_t)(elMat_6_7)); + _data_mat[68] = ((real_t)(elMat_6_8)); + _data_mat[69] = ((real_t)(elMat_6_9)); + _data_mat[70] = ((real_t)(elMat_7_0)); + _data_mat[71] = ((real_t)(elMat_7_1)); + _data_mat[72] = ((real_t)(elMat_7_2)); + _data_mat[73] = ((real_t)(elMat_7_3)); + _data_mat[74] = ((real_t)(elMat_7_4)); + _data_mat[75] = ((real_t)(elMat_7_5)); + _data_mat[76] = ((real_t)(elMat_7_6)); + _data_mat[77] = ((real_t)(elMat_7_7)); + _data_mat[78] = ((real_t)(elMat_7_8)); + _data_mat[79] = ((real_t)(elMat_7_9)); + _data_mat[80] = ((real_t)(elMat_8_0)); + _data_mat[81] = ((real_t)(elMat_8_1)); + _data_mat[82] = ((real_t)(elMat_8_2)); + _data_mat[83] = ((real_t)(elMat_8_3)); + _data_mat[84] = ((real_t)(elMat_8_4)); + _data_mat[85] = ((real_t)(elMat_8_5)); + _data_mat[86] = ((real_t)(elMat_8_6)); + _data_mat[87] = ((real_t)(elMat_8_7)); + _data_mat[88] = ((real_t)(elMat_8_8)); + _data_mat[89] = ((real_t)(elMat_8_9)); + _data_mat[90] = ((real_t)(elMat_9_0)); + _data_mat[91] = ((real_t)(elMat_9_1)); + _data_mat[92] = ((real_t)(elMat_9_2)); + _data_mat[93] = ((real_t)(elMat_9_3)); + _data_mat[94] = ((real_t)(elMat_9_4)); + _data_mat[95] = ((real_t)(elMat_9_5)); + _data_mat[96] = ((real_t)(elMat_9_6)); + _data_mat[97] = ((real_t)(elMat_9_7)); + _data_mat[98] = ((real_t)(elMat_9_8)); + _data_mat[99] = ((real_t)(elMat_9_9)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -2012,15 +2012,15 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 2*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -2083,9 +2083,9 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4528*tmp_q_4; - const double tmp_q_6 = Dummy_4531*tmp_q_4; - const double tmp_q_7 = Dummy_4534*tmp_q_4; + const double tmp_q_5 = Dummy_4511*tmp_q_4; + const double tmp_q_6 = Dummy_4514*tmp_q_4; + const double tmp_q_7 = Dummy_4517*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -2098,88 +2098,88 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4529*tmp_q_4; - const double tmp_q_21 = Dummy_4532*tmp_q_4; - const double tmp_q_22 = Dummy_4535*tmp_q_4; + const double tmp_q_20 = Dummy_4512*tmp_q_4; + const double tmp_q_21 = Dummy_4515*tmp_q_4; + const double tmp_q_22 = Dummy_4518*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4530*tmp_q_4; - const double tmp_q_25 = Dummy_4533*tmp_q_4; - const double tmp_q_26 = Dummy_4536*tmp_q_4; + const double tmp_q_24 = Dummy_4513*tmp_q_4; + const double tmp_q_25 = Dummy_4516*tmp_q_4; + const double tmp_q_26 = Dummy_4519*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4537*_data_q_w[q]; + const double tmp_q_28 = Dummy_4520*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4528*tmp_q_29; + const double tmp_q_30 = Dummy_4511*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4529*tmp_q_29; + const double tmp_q_32 = Dummy_4512*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4530*tmp_q_29; + const double tmp_q_34 = Dummy_4513*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4531*tmp_q_36; - const double tmp_q_38 = Dummy_4532*tmp_q_36; - const double tmp_q_39 = Dummy_4533*tmp_q_36; + const double tmp_q_37 = Dummy_4514*tmp_q_36; + const double tmp_q_38 = Dummy_4515*tmp_q_36; + const double tmp_q_39 = Dummy_4516*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4534*tmp_q_40; - const double tmp_q_42 = Dummy_4535*tmp_q_40; - const double tmp_q_43 = Dummy_4536*tmp_q_40; - const double tmp_q_44 = Dummy_4531*tmp_q_0; + const double tmp_q_41 = Dummy_4517*tmp_q_40; + const double tmp_q_42 = Dummy_4518*tmp_q_40; + const double tmp_q_43 = Dummy_4519*tmp_q_40; + const double tmp_q_44 = Dummy_4514*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4534*tmp_q_2; + const double tmp_q_46 = Dummy_4517*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4532*tmp_q_0; + const double tmp_q_49 = Dummy_4515*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4535*tmp_q_2; + const double tmp_q_51 = Dummy_4518*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4533*tmp_q_0; + const double tmp_q_54 = Dummy_4516*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4536*tmp_q_2; + const double tmp_q_56 = Dummy_4519*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4528*tmp_q_0; + const double tmp_q_59 = Dummy_4511*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4534*tmp_q_1; + const double tmp_q_61 = Dummy_4517*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4529*tmp_q_0; + const double tmp_q_64 = Dummy_4512*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4535*tmp_q_1; + const double tmp_q_66 = Dummy_4518*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4530*tmp_q_0; + const double tmp_q_69 = Dummy_4513*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4536*tmp_q_1; + const double tmp_q_71 = Dummy_4519*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4528*tmp_q_2; + const double tmp_q_74 = Dummy_4511*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4531*tmp_q_1; + const double tmp_q_76 = Dummy_4514*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4529*tmp_q_2; + const double tmp_q_79 = Dummy_4512*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4532*tmp_q_1; + const double tmp_q_81 = Dummy_4515*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4530*tmp_q_2; + const double tmp_q_84 = Dummy_4513*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4533*tmp_q_1; + const double tmp_q_86 = Dummy_4516*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4534*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4535*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4536*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4517*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4518*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4519*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4531*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4532*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4533*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4514*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4515*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4516*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4528*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4529*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4530*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4511*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4512*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4513*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -2196,12 +2196,12 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4534*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4535*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4536*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4531*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4532*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4533*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4517*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4518*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4519*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4514*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4515*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4516*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -2212,7 +2212,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4528*Dummy_4528)*tmp_q_103 + (Dummy_4529*Dummy_4529)*tmp_q_103 + (Dummy_4530*Dummy_4530)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4511*Dummy_4511)*tmp_q_103 + (Dummy_4512*Dummy_4512)*tmp_q_103 + (Dummy_4513*Dummy_4513)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -2221,7 +2221,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4531*Dummy_4531)*tmp_q_107 + (Dummy_4532*Dummy_4532)*tmp_q_107 + (Dummy_4533*Dummy_4533)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4514*Dummy_4514)*tmp_q_107 + (Dummy_4515*Dummy_4515)*tmp_q_107 + (Dummy_4516*Dummy_4516)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -2229,7 +2229,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4534*Dummy_4534)*tmp_q_108 + (Dummy_4535*Dummy_4535)*tmp_q_108 + (Dummy_4536*Dummy_4536)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4517*Dummy_4517)*tmp_q_108 + (Dummy_4518*Dummy_4518)*tmp_q_108 + (Dummy_4519*Dummy_4519)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -2256,7 +2256,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4529*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4530*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4528*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4512*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4513*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4511*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -2461,7 +2461,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge std::vector< uint_t > _data_rowIdx( 10 ); std::vector< uint_t > _data_colIdx( 10 ); - std::vector< double > _data_mat( 100 ); + std::vector< real_t > _data_mat( 100 ); _data_rowIdx[0] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))])); @@ -2488,106 +2488,106 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_0_4; - _data_mat[5] = elMat_0_5; - _data_mat[6] = elMat_0_6; - _data_mat[7] = elMat_0_7; - _data_mat[8] = elMat_0_8; - _data_mat[9] = elMat_0_9; - _data_mat[10] = elMat_1_0; - _data_mat[11] = elMat_1_1; - _data_mat[12] = elMat_1_2; - _data_mat[13] = elMat_1_3; - _data_mat[14] = elMat_1_4; - _data_mat[15] = elMat_1_5; - _data_mat[16] = elMat_1_6; - _data_mat[17] = elMat_1_7; - _data_mat[18] = elMat_1_8; - _data_mat[19] = elMat_1_9; - _data_mat[20] = elMat_2_0; - _data_mat[21] = elMat_2_1; - _data_mat[22] = elMat_2_2; - _data_mat[23] = elMat_2_3; - _data_mat[24] = elMat_2_4; - _data_mat[25] = elMat_2_5; - _data_mat[26] = elMat_2_6; - _data_mat[27] = elMat_2_7; - _data_mat[28] = elMat_2_8; - _data_mat[29] = elMat_2_9; - _data_mat[30] = elMat_3_0; - _data_mat[31] = elMat_3_1; - _data_mat[32] = elMat_3_2; - _data_mat[33] = elMat_3_3; - _data_mat[34] = elMat_3_4; - _data_mat[35] = elMat_3_5; - _data_mat[36] = elMat_3_6; - _data_mat[37] = elMat_3_7; - _data_mat[38] = elMat_3_8; - _data_mat[39] = elMat_3_9; - _data_mat[40] = elMat_4_0; - _data_mat[41] = elMat_4_1; - _data_mat[42] = elMat_4_2; - _data_mat[43] = elMat_4_3; - _data_mat[44] = elMat_4_4; - _data_mat[45] = elMat_4_5; - _data_mat[46] = elMat_4_6; - _data_mat[47] = elMat_4_7; - _data_mat[48] = elMat_4_8; - _data_mat[49] = elMat_4_9; - _data_mat[50] = elMat_5_0; - _data_mat[51] = elMat_5_1; - _data_mat[52] = elMat_5_2; - _data_mat[53] = elMat_5_3; - _data_mat[54] = elMat_5_4; - _data_mat[55] = elMat_5_5; - _data_mat[56] = elMat_5_6; - _data_mat[57] = elMat_5_7; - _data_mat[58] = elMat_5_8; - _data_mat[59] = elMat_5_9; - _data_mat[60] = elMat_6_0; - _data_mat[61] = elMat_6_1; - _data_mat[62] = elMat_6_2; - _data_mat[63] = elMat_6_3; - _data_mat[64] = elMat_6_4; - _data_mat[65] = elMat_6_5; - _data_mat[66] = elMat_6_6; - _data_mat[67] = elMat_6_7; - _data_mat[68] = elMat_6_8; - _data_mat[69] = elMat_6_9; - _data_mat[70] = elMat_7_0; - _data_mat[71] = elMat_7_1; - _data_mat[72] = elMat_7_2; - _data_mat[73] = elMat_7_3; - _data_mat[74] = elMat_7_4; - _data_mat[75] = elMat_7_5; - _data_mat[76] = elMat_7_6; - _data_mat[77] = elMat_7_7; - _data_mat[78] = elMat_7_8; - _data_mat[79] = elMat_7_9; - _data_mat[80] = elMat_8_0; - _data_mat[81] = elMat_8_1; - _data_mat[82] = elMat_8_2; - _data_mat[83] = elMat_8_3; - _data_mat[84] = elMat_8_4; - _data_mat[85] = elMat_8_5; - _data_mat[86] = elMat_8_6; - _data_mat[87] = elMat_8_7; - _data_mat[88] = elMat_8_8; - _data_mat[89] = elMat_8_9; - _data_mat[90] = elMat_9_0; - _data_mat[91] = elMat_9_1; - _data_mat[92] = elMat_9_2; - _data_mat[93] = elMat_9_3; - _data_mat[94] = elMat_9_4; - _data_mat[95] = elMat_9_5; - _data_mat[96] = elMat_9_6; - _data_mat[97] = elMat_9_7; - _data_mat[98] = elMat_9_8; - _data_mat[99] = elMat_9_9; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_0_4)); + _data_mat[5] = ((real_t)(elMat_0_5)); + _data_mat[6] = ((real_t)(elMat_0_6)); + _data_mat[7] = ((real_t)(elMat_0_7)); + _data_mat[8] = ((real_t)(elMat_0_8)); + _data_mat[9] = ((real_t)(elMat_0_9)); + _data_mat[10] = ((real_t)(elMat_1_0)); + _data_mat[11] = ((real_t)(elMat_1_1)); + _data_mat[12] = ((real_t)(elMat_1_2)); + _data_mat[13] = ((real_t)(elMat_1_3)); + _data_mat[14] = ((real_t)(elMat_1_4)); + _data_mat[15] = ((real_t)(elMat_1_5)); + _data_mat[16] = ((real_t)(elMat_1_6)); + _data_mat[17] = ((real_t)(elMat_1_7)); + _data_mat[18] = ((real_t)(elMat_1_8)); + _data_mat[19] = ((real_t)(elMat_1_9)); + _data_mat[20] = ((real_t)(elMat_2_0)); + _data_mat[21] = ((real_t)(elMat_2_1)); + _data_mat[22] = ((real_t)(elMat_2_2)); + _data_mat[23] = ((real_t)(elMat_2_3)); + _data_mat[24] = ((real_t)(elMat_2_4)); + _data_mat[25] = ((real_t)(elMat_2_5)); + _data_mat[26] = ((real_t)(elMat_2_6)); + _data_mat[27] = ((real_t)(elMat_2_7)); + _data_mat[28] = ((real_t)(elMat_2_8)); + _data_mat[29] = ((real_t)(elMat_2_9)); + _data_mat[30] = ((real_t)(elMat_3_0)); + _data_mat[31] = ((real_t)(elMat_3_1)); + _data_mat[32] = ((real_t)(elMat_3_2)); + _data_mat[33] = ((real_t)(elMat_3_3)); + _data_mat[34] = ((real_t)(elMat_3_4)); + _data_mat[35] = ((real_t)(elMat_3_5)); + _data_mat[36] = ((real_t)(elMat_3_6)); + _data_mat[37] = ((real_t)(elMat_3_7)); + _data_mat[38] = ((real_t)(elMat_3_8)); + _data_mat[39] = ((real_t)(elMat_3_9)); + _data_mat[40] = ((real_t)(elMat_4_0)); + _data_mat[41] = ((real_t)(elMat_4_1)); + _data_mat[42] = ((real_t)(elMat_4_2)); + _data_mat[43] = ((real_t)(elMat_4_3)); + _data_mat[44] = ((real_t)(elMat_4_4)); + _data_mat[45] = ((real_t)(elMat_4_5)); + _data_mat[46] = ((real_t)(elMat_4_6)); + _data_mat[47] = ((real_t)(elMat_4_7)); + _data_mat[48] = ((real_t)(elMat_4_8)); + _data_mat[49] = ((real_t)(elMat_4_9)); + _data_mat[50] = ((real_t)(elMat_5_0)); + _data_mat[51] = ((real_t)(elMat_5_1)); + _data_mat[52] = ((real_t)(elMat_5_2)); + _data_mat[53] = ((real_t)(elMat_5_3)); + _data_mat[54] = ((real_t)(elMat_5_4)); + _data_mat[55] = ((real_t)(elMat_5_5)); + _data_mat[56] = ((real_t)(elMat_5_6)); + _data_mat[57] = ((real_t)(elMat_5_7)); + _data_mat[58] = ((real_t)(elMat_5_8)); + _data_mat[59] = ((real_t)(elMat_5_9)); + _data_mat[60] = ((real_t)(elMat_6_0)); + _data_mat[61] = ((real_t)(elMat_6_1)); + _data_mat[62] = ((real_t)(elMat_6_2)); + _data_mat[63] = ((real_t)(elMat_6_3)); + _data_mat[64] = ((real_t)(elMat_6_4)); + _data_mat[65] = ((real_t)(elMat_6_5)); + _data_mat[66] = ((real_t)(elMat_6_6)); + _data_mat[67] = ((real_t)(elMat_6_7)); + _data_mat[68] = ((real_t)(elMat_6_8)); + _data_mat[69] = ((real_t)(elMat_6_9)); + _data_mat[70] = ((real_t)(elMat_7_0)); + _data_mat[71] = ((real_t)(elMat_7_1)); + _data_mat[72] = ((real_t)(elMat_7_2)); + _data_mat[73] = ((real_t)(elMat_7_3)); + _data_mat[74] = ((real_t)(elMat_7_4)); + _data_mat[75] = ((real_t)(elMat_7_5)); + _data_mat[76] = ((real_t)(elMat_7_6)); + _data_mat[77] = ((real_t)(elMat_7_7)); + _data_mat[78] = ((real_t)(elMat_7_8)); + _data_mat[79] = ((real_t)(elMat_7_9)); + _data_mat[80] = ((real_t)(elMat_8_0)); + _data_mat[81] = ((real_t)(elMat_8_1)); + _data_mat[82] = ((real_t)(elMat_8_2)); + _data_mat[83] = ((real_t)(elMat_8_3)); + _data_mat[84] = ((real_t)(elMat_8_4)); + _data_mat[85] = ((real_t)(elMat_8_5)); + _data_mat[86] = ((real_t)(elMat_8_6)); + _data_mat[87] = ((real_t)(elMat_8_7)); + _data_mat[88] = ((real_t)(elMat_8_8)); + _data_mat[89] = ((real_t)(elMat_8_9)); + _data_mat[90] = ((real_t)(elMat_9_0)); + _data_mat[91] = ((real_t)(elMat_9_1)); + _data_mat[92] = ((real_t)(elMat_9_2)); + _data_mat[93] = ((real_t)(elMat_9_3)); + _data_mat[94] = ((real_t)(elMat_9_4)); + _data_mat[95] = ((real_t)(elMat_9_5)); + _data_mat[96] = ((real_t)(elMat_9_6)); + _data_mat[97] = ((real_t)(elMat_9_7)); + _data_mat[98] = ((real_t)(elMat_9_8)); + _data_mat[99] = ((real_t)(elMat_9_9)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -2597,15 +2597,15 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_9 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_0 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_5 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -2668,9 +2668,9 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4559*tmp_q_4; - const double tmp_q_6 = Dummy_4562*tmp_q_4; - const double tmp_q_7 = Dummy_4565*tmp_q_4; + const double tmp_q_5 = Dummy_4542*tmp_q_4; + const double tmp_q_6 = Dummy_4545*tmp_q_4; + const double tmp_q_7 = Dummy_4548*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -2683,88 +2683,88 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4560*tmp_q_4; - const double tmp_q_21 = Dummy_4563*tmp_q_4; - const double tmp_q_22 = Dummy_4566*tmp_q_4; + const double tmp_q_20 = Dummy_4543*tmp_q_4; + const double tmp_q_21 = Dummy_4546*tmp_q_4; + const double tmp_q_22 = Dummy_4549*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4561*tmp_q_4; - const double tmp_q_25 = Dummy_4564*tmp_q_4; - const double tmp_q_26 = Dummy_4567*tmp_q_4; + const double tmp_q_24 = Dummy_4544*tmp_q_4; + const double tmp_q_25 = Dummy_4547*tmp_q_4; + const double tmp_q_26 = Dummy_4550*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4568*_data_q_w[q]; + const double tmp_q_28 = Dummy_4551*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4559*tmp_q_29; + const double tmp_q_30 = Dummy_4542*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4560*tmp_q_29; + const double tmp_q_32 = Dummy_4543*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4561*tmp_q_29; + const double tmp_q_34 = Dummy_4544*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4562*tmp_q_36; - const double tmp_q_38 = Dummy_4563*tmp_q_36; - const double tmp_q_39 = Dummy_4564*tmp_q_36; + const double tmp_q_37 = Dummy_4545*tmp_q_36; + const double tmp_q_38 = Dummy_4546*tmp_q_36; + const double tmp_q_39 = Dummy_4547*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4565*tmp_q_40; - const double tmp_q_42 = Dummy_4566*tmp_q_40; - const double tmp_q_43 = Dummy_4567*tmp_q_40; - const double tmp_q_44 = Dummy_4562*tmp_q_0; + const double tmp_q_41 = Dummy_4548*tmp_q_40; + const double tmp_q_42 = Dummy_4549*tmp_q_40; + const double tmp_q_43 = Dummy_4550*tmp_q_40; + const double tmp_q_44 = Dummy_4545*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4565*tmp_q_2; + const double tmp_q_46 = Dummy_4548*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4563*tmp_q_0; + const double tmp_q_49 = Dummy_4546*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4566*tmp_q_2; + const double tmp_q_51 = Dummy_4549*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4564*tmp_q_0; + const double tmp_q_54 = Dummy_4547*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4567*tmp_q_2; + const double tmp_q_56 = Dummy_4550*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4559*tmp_q_0; + const double tmp_q_59 = Dummy_4542*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4565*tmp_q_1; + const double tmp_q_61 = Dummy_4548*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4560*tmp_q_0; + const double tmp_q_64 = Dummy_4543*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4566*tmp_q_1; + const double tmp_q_66 = Dummy_4549*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4561*tmp_q_0; + const double tmp_q_69 = Dummy_4544*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4567*tmp_q_1; + const double tmp_q_71 = Dummy_4550*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4559*tmp_q_2; + const double tmp_q_74 = Dummy_4542*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4562*tmp_q_1; + const double tmp_q_76 = Dummy_4545*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4560*tmp_q_2; + const double tmp_q_79 = Dummy_4543*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4563*tmp_q_1; + const double tmp_q_81 = Dummy_4546*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4561*tmp_q_2; + const double tmp_q_84 = Dummy_4544*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4564*tmp_q_1; + const double tmp_q_86 = Dummy_4547*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4565*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4566*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4567*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4548*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4549*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4550*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4562*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4563*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4564*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4545*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4546*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4547*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4559*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4560*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4561*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4542*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4543*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4544*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -2781,12 +2781,12 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4565*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4566*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4567*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4562*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4563*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4564*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4548*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4549*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4550*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4545*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4546*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4547*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -2797,7 +2797,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4559*Dummy_4559)*tmp_q_103 + (Dummy_4560*Dummy_4560)*tmp_q_103 + (Dummy_4561*Dummy_4561)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4542*Dummy_4542)*tmp_q_103 + (Dummy_4543*Dummy_4543)*tmp_q_103 + (Dummy_4544*Dummy_4544)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -2806,7 +2806,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4562*Dummy_4562)*tmp_q_107 + (Dummy_4563*Dummy_4563)*tmp_q_107 + (Dummy_4564*Dummy_4564)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4545*Dummy_4545)*tmp_q_107 + (Dummy_4546*Dummy_4546)*tmp_q_107 + (Dummy_4547*Dummy_4547)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -2814,7 +2814,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4565*Dummy_4565)*tmp_q_108 + (Dummy_4566*Dummy_4566)*tmp_q_108 + (Dummy_4567*Dummy_4567)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4548*Dummy_4548)*tmp_q_108 + (Dummy_4549*Dummy_4549)*tmp_q_108 + (Dummy_4550*Dummy_4550)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -2841,7 +2841,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4560*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4561*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4559*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4543*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4544*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4542*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -3046,7 +3046,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge std::vector< uint_t > _data_rowIdx( 10 ); std::vector< uint_t > _data_colIdx( 10 ); - std::vector< double > _data_mat( 100 ); + std::vector< real_t > _data_mat( 100 ); _data_rowIdx[0] = ((uint64_t)(_data_dstVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 2) - ((ctr_1*(ctr_1 + 1)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); _data_rowIdx[1] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); @@ -3073,106 +3073,106 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_0_4; - _data_mat[5] = elMat_0_5; - _data_mat[6] = elMat_0_6; - _data_mat[7] = elMat_0_7; - _data_mat[8] = elMat_0_8; - _data_mat[9] = elMat_0_9; - _data_mat[10] = elMat_1_0; - _data_mat[11] = elMat_1_1; - _data_mat[12] = elMat_1_2; - _data_mat[13] = elMat_1_3; - _data_mat[14] = elMat_1_4; - _data_mat[15] = elMat_1_5; - _data_mat[16] = elMat_1_6; - _data_mat[17] = elMat_1_7; - _data_mat[18] = elMat_1_8; - _data_mat[19] = elMat_1_9; - _data_mat[20] = elMat_2_0; - _data_mat[21] = elMat_2_1; - _data_mat[22] = elMat_2_2; - _data_mat[23] = elMat_2_3; - _data_mat[24] = elMat_2_4; - _data_mat[25] = elMat_2_5; - _data_mat[26] = elMat_2_6; - _data_mat[27] = elMat_2_7; - _data_mat[28] = elMat_2_8; - _data_mat[29] = elMat_2_9; - _data_mat[30] = elMat_3_0; - _data_mat[31] = elMat_3_1; - _data_mat[32] = elMat_3_2; - _data_mat[33] = elMat_3_3; - _data_mat[34] = elMat_3_4; - _data_mat[35] = elMat_3_5; - _data_mat[36] = elMat_3_6; - _data_mat[37] = elMat_3_7; - _data_mat[38] = elMat_3_8; - _data_mat[39] = elMat_3_9; - _data_mat[40] = elMat_4_0; - _data_mat[41] = elMat_4_1; - _data_mat[42] = elMat_4_2; - _data_mat[43] = elMat_4_3; - _data_mat[44] = elMat_4_4; - _data_mat[45] = elMat_4_5; - _data_mat[46] = elMat_4_6; - _data_mat[47] = elMat_4_7; - _data_mat[48] = elMat_4_8; - _data_mat[49] = elMat_4_9; - _data_mat[50] = elMat_5_0; - _data_mat[51] = elMat_5_1; - _data_mat[52] = elMat_5_2; - _data_mat[53] = elMat_5_3; - _data_mat[54] = elMat_5_4; - _data_mat[55] = elMat_5_5; - _data_mat[56] = elMat_5_6; - _data_mat[57] = elMat_5_7; - _data_mat[58] = elMat_5_8; - _data_mat[59] = elMat_5_9; - _data_mat[60] = elMat_6_0; - _data_mat[61] = elMat_6_1; - _data_mat[62] = elMat_6_2; - _data_mat[63] = elMat_6_3; - _data_mat[64] = elMat_6_4; - _data_mat[65] = elMat_6_5; - _data_mat[66] = elMat_6_6; - _data_mat[67] = elMat_6_7; - _data_mat[68] = elMat_6_8; - _data_mat[69] = elMat_6_9; - _data_mat[70] = elMat_7_0; - _data_mat[71] = elMat_7_1; - _data_mat[72] = elMat_7_2; - _data_mat[73] = elMat_7_3; - _data_mat[74] = elMat_7_4; - _data_mat[75] = elMat_7_5; - _data_mat[76] = elMat_7_6; - _data_mat[77] = elMat_7_7; - _data_mat[78] = elMat_7_8; - _data_mat[79] = elMat_7_9; - _data_mat[80] = elMat_8_0; - _data_mat[81] = elMat_8_1; - _data_mat[82] = elMat_8_2; - _data_mat[83] = elMat_8_3; - _data_mat[84] = elMat_8_4; - _data_mat[85] = elMat_8_5; - _data_mat[86] = elMat_8_6; - _data_mat[87] = elMat_8_7; - _data_mat[88] = elMat_8_8; - _data_mat[89] = elMat_8_9; - _data_mat[90] = elMat_9_0; - _data_mat[91] = elMat_9_1; - _data_mat[92] = elMat_9_2; - _data_mat[93] = elMat_9_3; - _data_mat[94] = elMat_9_4; - _data_mat[95] = elMat_9_5; - _data_mat[96] = elMat_9_6; - _data_mat[97] = elMat_9_7; - _data_mat[98] = elMat_9_8; - _data_mat[99] = elMat_9_9; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_0_4)); + _data_mat[5] = ((real_t)(elMat_0_5)); + _data_mat[6] = ((real_t)(elMat_0_6)); + _data_mat[7] = ((real_t)(elMat_0_7)); + _data_mat[8] = ((real_t)(elMat_0_8)); + _data_mat[9] = ((real_t)(elMat_0_9)); + _data_mat[10] = ((real_t)(elMat_1_0)); + _data_mat[11] = ((real_t)(elMat_1_1)); + _data_mat[12] = ((real_t)(elMat_1_2)); + _data_mat[13] = ((real_t)(elMat_1_3)); + _data_mat[14] = ((real_t)(elMat_1_4)); + _data_mat[15] = ((real_t)(elMat_1_5)); + _data_mat[16] = ((real_t)(elMat_1_6)); + _data_mat[17] = ((real_t)(elMat_1_7)); + _data_mat[18] = ((real_t)(elMat_1_8)); + _data_mat[19] = ((real_t)(elMat_1_9)); + _data_mat[20] = ((real_t)(elMat_2_0)); + _data_mat[21] = ((real_t)(elMat_2_1)); + _data_mat[22] = ((real_t)(elMat_2_2)); + _data_mat[23] = ((real_t)(elMat_2_3)); + _data_mat[24] = ((real_t)(elMat_2_4)); + _data_mat[25] = ((real_t)(elMat_2_5)); + _data_mat[26] = ((real_t)(elMat_2_6)); + _data_mat[27] = ((real_t)(elMat_2_7)); + _data_mat[28] = ((real_t)(elMat_2_8)); + _data_mat[29] = ((real_t)(elMat_2_9)); + _data_mat[30] = ((real_t)(elMat_3_0)); + _data_mat[31] = ((real_t)(elMat_3_1)); + _data_mat[32] = ((real_t)(elMat_3_2)); + _data_mat[33] = ((real_t)(elMat_3_3)); + _data_mat[34] = ((real_t)(elMat_3_4)); + _data_mat[35] = ((real_t)(elMat_3_5)); + _data_mat[36] = ((real_t)(elMat_3_6)); + _data_mat[37] = ((real_t)(elMat_3_7)); + _data_mat[38] = ((real_t)(elMat_3_8)); + _data_mat[39] = ((real_t)(elMat_3_9)); + _data_mat[40] = ((real_t)(elMat_4_0)); + _data_mat[41] = ((real_t)(elMat_4_1)); + _data_mat[42] = ((real_t)(elMat_4_2)); + _data_mat[43] = ((real_t)(elMat_4_3)); + _data_mat[44] = ((real_t)(elMat_4_4)); + _data_mat[45] = ((real_t)(elMat_4_5)); + _data_mat[46] = ((real_t)(elMat_4_6)); + _data_mat[47] = ((real_t)(elMat_4_7)); + _data_mat[48] = ((real_t)(elMat_4_8)); + _data_mat[49] = ((real_t)(elMat_4_9)); + _data_mat[50] = ((real_t)(elMat_5_0)); + _data_mat[51] = ((real_t)(elMat_5_1)); + _data_mat[52] = ((real_t)(elMat_5_2)); + _data_mat[53] = ((real_t)(elMat_5_3)); + _data_mat[54] = ((real_t)(elMat_5_4)); + _data_mat[55] = ((real_t)(elMat_5_5)); + _data_mat[56] = ((real_t)(elMat_5_6)); + _data_mat[57] = ((real_t)(elMat_5_7)); + _data_mat[58] = ((real_t)(elMat_5_8)); + _data_mat[59] = ((real_t)(elMat_5_9)); + _data_mat[60] = ((real_t)(elMat_6_0)); + _data_mat[61] = ((real_t)(elMat_6_1)); + _data_mat[62] = ((real_t)(elMat_6_2)); + _data_mat[63] = ((real_t)(elMat_6_3)); + _data_mat[64] = ((real_t)(elMat_6_4)); + _data_mat[65] = ((real_t)(elMat_6_5)); + _data_mat[66] = ((real_t)(elMat_6_6)); + _data_mat[67] = ((real_t)(elMat_6_7)); + _data_mat[68] = ((real_t)(elMat_6_8)); + _data_mat[69] = ((real_t)(elMat_6_9)); + _data_mat[70] = ((real_t)(elMat_7_0)); + _data_mat[71] = ((real_t)(elMat_7_1)); + _data_mat[72] = ((real_t)(elMat_7_2)); + _data_mat[73] = ((real_t)(elMat_7_3)); + _data_mat[74] = ((real_t)(elMat_7_4)); + _data_mat[75] = ((real_t)(elMat_7_5)); + _data_mat[76] = ((real_t)(elMat_7_6)); + _data_mat[77] = ((real_t)(elMat_7_7)); + _data_mat[78] = ((real_t)(elMat_7_8)); + _data_mat[79] = ((real_t)(elMat_7_9)); + _data_mat[80] = ((real_t)(elMat_8_0)); + _data_mat[81] = ((real_t)(elMat_8_1)); + _data_mat[82] = ((real_t)(elMat_8_2)); + _data_mat[83] = ((real_t)(elMat_8_3)); + _data_mat[84] = ((real_t)(elMat_8_4)); + _data_mat[85] = ((real_t)(elMat_8_5)); + _data_mat[86] = ((real_t)(elMat_8_6)); + _data_mat[87] = ((real_t)(elMat_8_7)); + _data_mat[88] = ((real_t)(elMat_8_8)); + _data_mat[89] = ((real_t)(elMat_8_9)); + _data_mat[90] = ((real_t)(elMat_9_0)); + _data_mat[91] = ((real_t)(elMat_9_1)); + _data_mat[92] = ((real_t)(elMat_9_2)); + _data_mat[93] = ((real_t)(elMat_9_3)); + _data_mat[94] = ((real_t)(elMat_9_4)); + _data_mat[95] = ((real_t)(elMat_9_5)); + _data_mat[96] = ((real_t)(elMat_9_6)); + _data_mat[97] = ((real_t)(elMat_9_7)); + _data_mat[98] = ((real_t)(elMat_9_8)); + _data_mat[99] = ((real_t)(elMat_9_9)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat ); @@ -3182,15 +3182,15 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge for (int64_t ctr_0 = 0; ctr_0 < -ctr_1 - ctr_2 + micro_edges_per_macro_edge - 1; ctr_0 += 1) { const double k_dof_4 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + 4*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; - const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_1 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1]; - const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_7 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 3*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; const double k_dof_6 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + 1]; + const double k_dof_9 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; + const double k_dof_2 = _data_kVertex[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge + 1) - ((ctr_1*(ctr_1 + 1)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) + 1]; const double k_dof_8 = _data_kEdge[ctr_0 + ctr_1*(-ctr_2 + micro_edges_per_macro_edge) - ((ctr_1*(ctr_1 + 1)) / (2)) + ((micro_edges_per_macro_edge*(micro_edges_per_macro_edge - 1)*(micro_edges_per_macro_edge + 1)) / (6)) + 6*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge - 1)*(-ctr_2 + micro_edges_per_macro_edge + 1)) / (6))]; + const double k_dof_3 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6))]; const double k_dof_0 = _data_kVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))]; - const double k_dof_5 = _data_kEdge[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 1) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + 5*((micro_edges_per_macro_edge*(micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge)*(-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)) / (6))]; double q_acc_0_0 = 0.0; double q_acc_0_1 = 0.0; double q_acc_0_2 = 0.0; @@ -3253,9 +3253,9 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_2 = 4.0*_data_q_p_1[q]; const double tmp_q_3 = tmp_q_1 + tmp_q_2; const double tmp_q_4 = tmp_q_0 + tmp_q_3 - 3.0; - const double tmp_q_5 = Dummy_4590*tmp_q_4; - const double tmp_q_6 = Dummy_4593*tmp_q_4; - const double tmp_q_7 = Dummy_4596*tmp_q_4; + const double tmp_q_5 = Dummy_4573*tmp_q_4; + const double tmp_q_6 = Dummy_4576*tmp_q_4; + const double tmp_q_7 = Dummy_4579*tmp_q_4; const double tmp_q_8 = tmp_q_5 + tmp_q_6 + tmp_q_7; const double tmp_q_9 = tmp_q_2*_data_q_p_2[q]; const double tmp_q_10 = tmp_q_1*_data_q_p_2[q]; @@ -3268,88 +3268,88 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_17 = tmp_q_16*2.0; const double tmp_q_18 = tmp_q_10 + tmp_q_11; const double tmp_q_19 = k_dof_0*(tmp_q_13 + tmp_q_15 + tmp_q_17 + tmp_q_18 + tmp_q_9 - 3.0*_data_q_p_0[q] - 3.0*_data_q_p_1[q] - 3.0*_data_q_p_2[q] + 1.0) + k_dof_1*(tmp_q_13 - _data_q_p_0[q]) + k_dof_2*(tmp_q_15 - _data_q_p_1[q]) + k_dof_3*(tmp_q_17 - _data_q_p_2[q]) + k_dof_4*tmp_q_9 + k_dof_5*tmp_q_10 + k_dof_6*tmp_q_11 + k_dof_7*(tmp_q_0 - tmp_q_10 + tmp_q_16*-4.0 - tmp_q_9) + k_dof_8*(-tmp_q_11 + tmp_q_14*-4.0 + tmp_q_2 - tmp_q_9) + k_dof_9*(tmp_q_1 + tmp_q_12*-4.0 - tmp_q_18); - const double tmp_q_20 = Dummy_4591*tmp_q_4; - const double tmp_q_21 = Dummy_4594*tmp_q_4; - const double tmp_q_22 = Dummy_4597*tmp_q_4; + const double tmp_q_20 = Dummy_4574*tmp_q_4; + const double tmp_q_21 = Dummy_4577*tmp_q_4; + const double tmp_q_22 = Dummy_4580*tmp_q_4; const double tmp_q_23 = tmp_q_20 + tmp_q_21 + tmp_q_22; - const double tmp_q_24 = Dummy_4592*tmp_q_4; - const double tmp_q_25 = Dummy_4595*tmp_q_4; - const double tmp_q_26 = Dummy_4598*tmp_q_4; + const double tmp_q_24 = Dummy_4575*tmp_q_4; + const double tmp_q_25 = Dummy_4578*tmp_q_4; + const double tmp_q_26 = Dummy_4581*tmp_q_4; const double tmp_q_27 = tmp_q_24 + tmp_q_25 + tmp_q_26; - const double tmp_q_28 = Dummy_4599*_data_q_w[q]; + const double tmp_q_28 = Dummy_4582*_data_q_w[q]; const double tmp_q_29 = tmp_q_1 - 1.0; - const double tmp_q_30 = Dummy_4590*tmp_q_29; + const double tmp_q_30 = Dummy_4573*tmp_q_29; const double tmp_q_31 = tmp_q_19*tmp_q_8; - const double tmp_q_32 = Dummy_4591*tmp_q_29; + const double tmp_q_32 = Dummy_4574*tmp_q_29; const double tmp_q_33 = tmp_q_19*tmp_q_23; - const double tmp_q_34 = Dummy_4592*tmp_q_29; + const double tmp_q_34 = Dummy_4575*tmp_q_29; const double tmp_q_35 = tmp_q_19*tmp_q_27; const double tmp_q_36 = tmp_q_2 - 1.0; - const double tmp_q_37 = Dummy_4593*tmp_q_36; - const double tmp_q_38 = Dummy_4594*tmp_q_36; - const double tmp_q_39 = Dummy_4595*tmp_q_36; + const double tmp_q_37 = Dummy_4576*tmp_q_36; + const double tmp_q_38 = Dummy_4577*tmp_q_36; + const double tmp_q_39 = Dummy_4578*tmp_q_36; const double tmp_q_40 = tmp_q_0 - 1.0; - const double tmp_q_41 = Dummy_4596*tmp_q_40; - const double tmp_q_42 = Dummy_4597*tmp_q_40; - const double tmp_q_43 = Dummy_4598*tmp_q_40; - const double tmp_q_44 = Dummy_4593*tmp_q_0; + const double tmp_q_41 = Dummy_4579*tmp_q_40; + const double tmp_q_42 = Dummy_4580*tmp_q_40; + const double tmp_q_43 = Dummy_4581*tmp_q_40; + const double tmp_q_44 = Dummy_4576*tmp_q_0; const double tmp_q_45 = tmp_q_19*tmp_q_44; - const double tmp_q_46 = Dummy_4596*tmp_q_2; + const double tmp_q_46 = Dummy_4579*tmp_q_2; const double tmp_q_47 = tmp_q_19*tmp_q_46; const double tmp_q_48 = tmp_q_45 + tmp_q_47; - const double tmp_q_49 = Dummy_4594*tmp_q_0; + const double tmp_q_49 = Dummy_4577*tmp_q_0; const double tmp_q_50 = tmp_q_19*tmp_q_49; - const double tmp_q_51 = Dummy_4597*tmp_q_2; + const double tmp_q_51 = Dummy_4580*tmp_q_2; const double tmp_q_52 = tmp_q_19*tmp_q_51; const double tmp_q_53 = tmp_q_50 + tmp_q_52; - const double tmp_q_54 = Dummy_4595*tmp_q_0; + const double tmp_q_54 = Dummy_4578*tmp_q_0; const double tmp_q_55 = tmp_q_19*tmp_q_54; - const double tmp_q_56 = Dummy_4598*tmp_q_2; + const double tmp_q_56 = Dummy_4581*tmp_q_2; const double tmp_q_57 = tmp_q_19*tmp_q_56; const double tmp_q_58 = tmp_q_55 + tmp_q_57; - const double tmp_q_59 = Dummy_4590*tmp_q_0; + const double tmp_q_59 = Dummy_4573*tmp_q_0; const double tmp_q_60 = tmp_q_19*tmp_q_59; - const double tmp_q_61 = Dummy_4596*tmp_q_1; + const double tmp_q_61 = Dummy_4579*tmp_q_1; const double tmp_q_62 = tmp_q_19*tmp_q_61; const double tmp_q_63 = tmp_q_60 + tmp_q_62; - const double tmp_q_64 = Dummy_4591*tmp_q_0; + const double tmp_q_64 = Dummy_4574*tmp_q_0; const double tmp_q_65 = tmp_q_19*tmp_q_64; - const double tmp_q_66 = Dummy_4597*tmp_q_1; + const double tmp_q_66 = Dummy_4580*tmp_q_1; const double tmp_q_67 = tmp_q_19*tmp_q_66; const double tmp_q_68 = tmp_q_65 + tmp_q_67; - const double tmp_q_69 = Dummy_4592*tmp_q_0; + const double tmp_q_69 = Dummy_4575*tmp_q_0; const double tmp_q_70 = tmp_q_19*tmp_q_69; - const double tmp_q_71 = Dummy_4598*tmp_q_1; + const double tmp_q_71 = Dummy_4581*tmp_q_1; const double tmp_q_72 = tmp_q_19*tmp_q_71; const double tmp_q_73 = tmp_q_70 + tmp_q_72; - const double tmp_q_74 = Dummy_4590*tmp_q_2; + const double tmp_q_74 = Dummy_4573*tmp_q_2; const double tmp_q_75 = tmp_q_19*tmp_q_74; - const double tmp_q_76 = Dummy_4593*tmp_q_1; + const double tmp_q_76 = Dummy_4576*tmp_q_1; const double tmp_q_77 = tmp_q_19*tmp_q_76; const double tmp_q_78 = tmp_q_75 + tmp_q_77; - const double tmp_q_79 = Dummy_4591*tmp_q_2; + const double tmp_q_79 = Dummy_4574*tmp_q_2; const double tmp_q_80 = tmp_q_19*tmp_q_79; - const double tmp_q_81 = Dummy_4594*tmp_q_1; + const double tmp_q_81 = Dummy_4577*tmp_q_1; const double tmp_q_82 = tmp_q_19*tmp_q_81; const double tmp_q_83 = tmp_q_80 + tmp_q_82; - const double tmp_q_84 = Dummy_4592*tmp_q_2; + const double tmp_q_84 = Dummy_4575*tmp_q_2; const double tmp_q_85 = tmp_q_19*tmp_q_84; - const double tmp_q_86 = Dummy_4595*tmp_q_1; + const double tmp_q_86 = Dummy_4578*tmp_q_1; const double tmp_q_87 = tmp_q_19*tmp_q_86; const double tmp_q_88 = tmp_q_85 + tmp_q_87; const double tmp_q_89 = -tmp_q_3 - 8.0*_data_q_p_2[q] + 4.0; - const double tmp_q_90 = Dummy_4596*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; - const double tmp_q_91 = Dummy_4597*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; - const double tmp_q_92 = Dummy_4598*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; + const double tmp_q_90 = Dummy_4579*tmp_q_19*tmp_q_89 - tmp_q_45 - tmp_q_60; + const double tmp_q_91 = Dummy_4580*tmp_q_19*tmp_q_89 - tmp_q_50 - tmp_q_65; + const double tmp_q_92 = Dummy_4581*tmp_q_19*tmp_q_89 - tmp_q_55 - tmp_q_70; const double tmp_q_93 = tmp_q_0 - 4.0; const double tmp_q_94 = -tmp_q_1 - tmp_q_93 - 8.0*_data_q_p_1[q]; - const double tmp_q_95 = Dummy_4593*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; - const double tmp_q_96 = Dummy_4594*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; - const double tmp_q_97 = Dummy_4595*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; + const double tmp_q_95 = Dummy_4576*tmp_q_19*tmp_q_94 - tmp_q_47 - tmp_q_75; + const double tmp_q_96 = Dummy_4577*tmp_q_19*tmp_q_94 - tmp_q_52 - tmp_q_80; + const double tmp_q_97 = Dummy_4578*tmp_q_19*tmp_q_94 - tmp_q_57 - tmp_q_85; const double tmp_q_98 = -tmp_q_2 - tmp_q_93 - 8.0*_data_q_p_0[q]; - const double tmp_q_99 = Dummy_4590*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; - const double tmp_q_100 = Dummy_4591*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; - const double tmp_q_101 = Dummy_4592*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; + const double tmp_q_99 = Dummy_4573*tmp_q_19*tmp_q_98 - tmp_q_62 - tmp_q_77; + const double tmp_q_100 = Dummy_4574*tmp_q_19*tmp_q_98 - tmp_q_67 - tmp_q_82; + const double tmp_q_101 = Dummy_4575*tmp_q_19*tmp_q_98 - tmp_q_72 - tmp_q_87; const double tmp_q_102 = tmp_q_19*16.0; const double tmp_q_103 = tmp_q_102*((-0.25 + _data_q_p_0[q])*(-0.25 + _data_q_p_0[q])); const double tmp_q_104 = tmp_q_19*tmp_q_30; @@ -3366,12 +3366,12 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double tmp_q_115 = tmp_q_74 + tmp_q_76; const double tmp_q_116 = tmp_q_79 + tmp_q_81; const double tmp_q_117 = tmp_q_84 + tmp_q_86; - const double tmp_q_118 = Dummy_4596*tmp_q_89 - tmp_q_44 - tmp_q_59; - const double tmp_q_119 = Dummy_4597*tmp_q_89 - tmp_q_49 - tmp_q_64; - const double tmp_q_120 = Dummy_4598*tmp_q_89 - tmp_q_54 - tmp_q_69; - const double tmp_q_121 = Dummy_4593*tmp_q_94 - tmp_q_46 - tmp_q_74; - const double tmp_q_122 = Dummy_4594*tmp_q_94 - tmp_q_51 - tmp_q_79; - const double tmp_q_123 = Dummy_4595*tmp_q_94 - tmp_q_56 - tmp_q_84; + const double tmp_q_118 = Dummy_4579*tmp_q_89 - tmp_q_44 - tmp_q_59; + const double tmp_q_119 = Dummy_4580*tmp_q_89 - tmp_q_49 - tmp_q_64; + const double tmp_q_120 = Dummy_4581*tmp_q_89 - tmp_q_54 - tmp_q_69; + const double tmp_q_121 = Dummy_4576*tmp_q_94 - tmp_q_46 - tmp_q_74; + const double tmp_q_122 = Dummy_4577*tmp_q_94 - tmp_q_51 - tmp_q_79; + const double tmp_q_123 = Dummy_4578*tmp_q_94 - tmp_q_56 - tmp_q_84; const double res_tmp_0_0 = tmp_q_28*(tmp_q_23*(tmp_q_19*tmp_q_20 + tmp_q_19*tmp_q_21 + tmp_q_19*tmp_q_22) + tmp_q_27*(tmp_q_19*tmp_q_24 + tmp_q_19*tmp_q_25 + tmp_q_19*tmp_q_26) + tmp_q_8*(tmp_q_19*tmp_q_5 + tmp_q_19*tmp_q_6 + tmp_q_19*tmp_q_7)); const double res_tmp_0_1 = tmp_q_28*(tmp_q_30*tmp_q_31 + tmp_q_32*tmp_q_33 + tmp_q_34*tmp_q_35); const double res_tmp_0_2 = tmp_q_28*(tmp_q_31*tmp_q_37 + tmp_q_33*tmp_q_38 + tmp_q_35*tmp_q_39); @@ -3382,7 +3382,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_0_7 = tmp_q_28*(tmp_q_23*tmp_q_91 + tmp_q_27*tmp_q_92 + tmp_q_8*tmp_q_90); const double res_tmp_0_8 = tmp_q_28*(tmp_q_23*tmp_q_96 + tmp_q_27*tmp_q_97 + tmp_q_8*tmp_q_95); const double res_tmp_0_9 = tmp_q_28*(tmp_q_100*tmp_q_23 + tmp_q_101*tmp_q_27 + tmp_q_8*tmp_q_99); - const double res_tmp_1_1 = tmp_q_28*((Dummy_4590*Dummy_4590)*tmp_q_103 + (Dummy_4591*Dummy_4591)*tmp_q_103 + (Dummy_4592*Dummy_4592)*tmp_q_103); + const double res_tmp_1_1 = tmp_q_28*((Dummy_4573*Dummy_4573)*tmp_q_103 + (Dummy_4574*Dummy_4574)*tmp_q_103 + (Dummy_4575*Dummy_4575)*tmp_q_103); const double res_tmp_1_2 = tmp_q_28*(tmp_q_104*tmp_q_37 + tmp_q_105*tmp_q_38 + tmp_q_106*tmp_q_39); const double res_tmp_1_3 = tmp_q_28*(tmp_q_104*tmp_q_41 + tmp_q_105*tmp_q_42 + tmp_q_106*tmp_q_43); const double res_tmp_1_4 = tmp_q_28*(tmp_q_30*tmp_q_48 + tmp_q_32*tmp_q_53 + tmp_q_34*tmp_q_58); @@ -3391,7 +3391,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_1_7 = tmp_q_28*(tmp_q_30*tmp_q_90 + tmp_q_32*tmp_q_91 + tmp_q_34*tmp_q_92); const double res_tmp_1_8 = tmp_q_28*(tmp_q_30*tmp_q_95 + tmp_q_32*tmp_q_96 + tmp_q_34*tmp_q_97); const double res_tmp_1_9 = tmp_q_28*(tmp_q_100*tmp_q_32 + tmp_q_101*tmp_q_34 + tmp_q_30*tmp_q_99); - const double res_tmp_2_2 = tmp_q_28*((Dummy_4593*Dummy_4593)*tmp_q_107 + (Dummy_4594*Dummy_4594)*tmp_q_107 + (Dummy_4595*Dummy_4595)*tmp_q_107); + const double res_tmp_2_2 = tmp_q_28*((Dummy_4576*Dummy_4576)*tmp_q_107 + (Dummy_4577*Dummy_4577)*tmp_q_107 + (Dummy_4578*Dummy_4578)*tmp_q_107); const double res_tmp_2_3 = tmp_q_28*(tmp_q_19*tmp_q_37*tmp_q_41 + tmp_q_19*tmp_q_38*tmp_q_42 + tmp_q_19*tmp_q_39*tmp_q_43); const double res_tmp_2_4 = tmp_q_28*(tmp_q_37*tmp_q_48 + tmp_q_38*tmp_q_53 + tmp_q_39*tmp_q_58); const double res_tmp_2_5 = tmp_q_28*(tmp_q_37*tmp_q_63 + tmp_q_38*tmp_q_68 + tmp_q_39*tmp_q_73); @@ -3399,7 +3399,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_2_7 = tmp_q_28*(tmp_q_37*tmp_q_90 + tmp_q_38*tmp_q_91 + tmp_q_39*tmp_q_92); const double res_tmp_2_8 = tmp_q_28*(tmp_q_37*tmp_q_95 + tmp_q_38*tmp_q_96 + tmp_q_39*tmp_q_97); const double res_tmp_2_9 = tmp_q_28*(tmp_q_100*tmp_q_38 + tmp_q_101*tmp_q_39 + tmp_q_37*tmp_q_99); - const double res_tmp_3_3 = tmp_q_28*((Dummy_4596*Dummy_4596)*tmp_q_108 + (Dummy_4597*Dummy_4597)*tmp_q_108 + (Dummy_4598*Dummy_4598)*tmp_q_108); + const double res_tmp_3_3 = tmp_q_28*((Dummy_4579*Dummy_4579)*tmp_q_108 + (Dummy_4580*Dummy_4580)*tmp_q_108 + (Dummy_4581*Dummy_4581)*tmp_q_108); const double res_tmp_3_4 = tmp_q_28*(tmp_q_41*tmp_q_48 + tmp_q_42*tmp_q_53 + tmp_q_43*tmp_q_58); const double res_tmp_3_5 = tmp_q_28*(tmp_q_41*tmp_q_63 + tmp_q_42*tmp_q_68 + tmp_q_43*tmp_q_73); const double res_tmp_3_6 = tmp_q_28*(tmp_q_41*tmp_q_78 + tmp_q_42*tmp_q_83 + tmp_q_43*tmp_q_88); @@ -3426,7 +3426,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge const double res_tmp_7_9 = tmp_q_28*(tmp_q_100*tmp_q_119 + tmp_q_101*tmp_q_120 + tmp_q_118*tmp_q_99); const double res_tmp_8_8 = tmp_q_28*(tmp_q_121*tmp_q_95 + tmp_q_122*tmp_q_96 + tmp_q_123*tmp_q_97); const double res_tmp_8_9 = tmp_q_28*(tmp_q_100*tmp_q_122 + tmp_q_101*tmp_q_123 + tmp_q_121*tmp_q_99); - const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4591*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4592*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4590*tmp_q_98 - tmp_q_61 - tmp_q_76)); + const double res_tmp_9_9 = tmp_q_28*(tmp_q_100*(Dummy_4574*tmp_q_98 - tmp_q_66 - tmp_q_81) + tmp_q_101*(Dummy_4575*tmp_q_98 - tmp_q_71 - tmp_q_86) + tmp_q_99*(Dummy_4573*tmp_q_98 - tmp_q_61 - tmp_q_76)); q_acc_0_0 = q_acc_0_0 + res_tmp_0_0; q_acc_0_1 = q_acc_0_1 + res_tmp_0_1; q_acc_0_2 = q_acc_0_2 + res_tmp_0_2; @@ -3631,7 +3631,7 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge std::vector< uint_t > _data_rowIdx( 10 ); std::vector< uint_t > _data_colIdx( 10 ); - std::vector< double > _data_mat( 100 ); + std::vector< real_t > _data_mat( 100 ); _data_rowIdx[0] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6))])); _data_rowIdx[1] = ((uint64_t)(_data_dstVertex[ctr_0 + (ctr_1 + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2) - (((ctr_1 + 1)*(ctr_1 + 2)) / (2)) + (((micro_edges_per_macro_edge + 1)*(micro_edges_per_macro_edge + 2)*(micro_edges_per_macro_edge + 3)) / (6)) - (((-ctr_2 + micro_edges_per_macro_edge + 1)*(-ctr_2 + micro_edges_per_macro_edge + 2)*(-ctr_2 + micro_edges_per_macro_edge + 3)) / (6)) + 1])); @@ -3658,106 +3658,106 @@ void P2ElementwiseDivKGrad::toMatrix_macro_3D( int64_t * RESTRICT _data_dstEdge - _data_mat[0] = elMat_0_0; - _data_mat[1] = elMat_0_1; - _data_mat[2] = elMat_0_2; - _data_mat[3] = elMat_0_3; - _data_mat[4] = elMat_0_4; - _data_mat[5] = elMat_0_5; - _data_mat[6] = elMat_0_6; - _data_mat[7] = elMat_0_7; - _data_mat[8] = elMat_0_8; - _data_mat[9] = elMat_0_9; - _data_mat[10] = elMat_1_0; - _data_mat[11] = elMat_1_1; - _data_mat[12] = elMat_1_2; - _data_mat[13] = elMat_1_3; - _data_mat[14] = elMat_1_4; - _data_mat[15] = elMat_1_5; - _data_mat[16] = elMat_1_6; - _data_mat[17] = elMat_1_7; - _data_mat[18] = elMat_1_8; - _data_mat[19] = elMat_1_9; - _data_mat[20] = elMat_2_0; - _data_mat[21] = elMat_2_1; - _data_mat[22] = elMat_2_2; - _data_mat[23] = elMat_2_3; - _data_mat[24] = elMat_2_4; - _data_mat[25] = elMat_2_5; - _data_mat[26] = elMat_2_6; - _data_mat[27] = elMat_2_7; - _data_mat[28] = elMat_2_8; - _data_mat[29] = elMat_2_9; - _data_mat[30] = elMat_3_0; - _data_mat[31] = elMat_3_1; - _data_mat[32] = elMat_3_2; - _data_mat[33] = elMat_3_3; - _data_mat[34] = elMat_3_4; - _data_mat[35] = elMat_3_5; - _data_mat[36] = elMat_3_6; - _data_mat[37] = elMat_3_7; - _data_mat[38] = elMat_3_8; - _data_mat[39] = elMat_3_9; - _data_mat[40] = elMat_4_0; - _data_mat[41] = elMat_4_1; - _data_mat[42] = elMat_4_2; - _data_mat[43] = elMat_4_3; - _data_mat[44] = elMat_4_4; - _data_mat[45] = elMat_4_5; - _data_mat[46] = elMat_4_6; - _data_mat[47] = elMat_4_7; - _data_mat[48] = elMat_4_8; - _data_mat[49] = elMat_4_9; - _data_mat[50] = elMat_5_0; - _data_mat[51] = elMat_5_1; - _data_mat[52] = elMat_5_2; - _data_mat[53] = elMat_5_3; - _data_mat[54] = elMat_5_4; - _data_mat[55] = elMat_5_5; - _data_mat[56] = elMat_5_6; - _data_mat[57] = elMat_5_7; - _data_mat[58] = elMat_5_8; - _data_mat[59] = elMat_5_9; - _data_mat[60] = elMat_6_0; - _data_mat[61] = elMat_6_1; - _data_mat[62] = elMat_6_2; - _data_mat[63] = elMat_6_3; - _data_mat[64] = elMat_6_4; - _data_mat[65] = elMat_6_5; - _data_mat[66] = elMat_6_6; - _data_mat[67] = elMat_6_7; - _data_mat[68] = elMat_6_8; - _data_mat[69] = elMat_6_9; - _data_mat[70] = elMat_7_0; - _data_mat[71] = elMat_7_1; - _data_mat[72] = elMat_7_2; - _data_mat[73] = elMat_7_3; - _data_mat[74] = elMat_7_4; - _data_mat[75] = elMat_7_5; - _data_mat[76] = elMat_7_6; - _data_mat[77] = elMat_7_7; - _data_mat[78] = elMat_7_8; - _data_mat[79] = elMat_7_9; - _data_mat[80] = elMat_8_0; - _data_mat[81] = elMat_8_1; - _data_mat[82] = elMat_8_2; - _data_mat[83] = elMat_8_3; - _data_mat[84] = elMat_8_4; - _data_mat[85] = elMat_8_5; - _data_mat[86] = elMat_8_6; - _data_mat[87] = elMat_8_7; - _data_mat[88] = elMat_8_8; - _data_mat[89] = elMat_8_9; - _data_mat[90] = elMat_9_0; - _data_mat[91] = elMat_9_1; - _data_mat[92] = elMat_9_2; - _data_mat[93] = elMat_9_3; - _data_mat[94] = elMat_9_4; - _data_mat[95] = elMat_9_5; - _data_mat[96] = elMat_9_6; - _data_mat[97] = elMat_9_7; - _data_mat[98] = elMat_9_8; - _data_mat[99] = elMat_9_9; + _data_mat[0] = ((real_t)(elMat_0_0)); + _data_mat[1] = ((real_t)(elMat_0_1)); + _data_mat[2] = ((real_t)(elMat_0_2)); + _data_mat[3] = ((real_t)(elMat_0_3)); + _data_mat[4] = ((real_t)(elMat_0_4)); + _data_mat[5] = ((real_t)(elMat_0_5)); + _data_mat[6] = ((real_t)(elMat_0_6)); + _data_mat[7] = ((real_t)(elMat_0_7)); + _data_mat[8] = ((real_t)(elMat_0_8)); + _data_mat[9] = ((real_t)(elMat_0_9)); + _data_mat[10] = ((real_t)(elMat_1_0)); + _data_mat[11] = ((real_t)(elMat_1_1)); + _data_mat[12] = ((real_t)(elMat_1_2)); + _data_mat[13] = ((real_t)(elMat_1_3)); + _data_mat[14] = ((real_t)(elMat_1_4)); + _data_mat[15] = ((real_t)(elMat_1_5)); + _data_mat[16] = ((real_t)(elMat_1_6)); + _data_mat[17] = ((real_t)(elMat_1_7)); + _data_mat[18] = ((real_t)(elMat_1_8)); + _data_mat[19] = ((real_t)(elMat_1_9)); + _data_mat[20] = ((real_t)(elMat_2_0)); + _data_mat[21] = ((real_t)(elMat_2_1)); + _data_mat[22] = ((real_t)(elMat_2_2)); + _data_mat[23] = ((real_t)(elMat_2_3)); + _data_mat[24] = ((real_t)(elMat_2_4)); + _data_mat[25] = ((real_t)(elMat_2_5)); + _data_mat[26] = ((real_t)(elMat_2_6)); + _data_mat[27] = ((real_t)(elMat_2_7)); + _data_mat[28] = ((real_t)(elMat_2_8)); + _data_mat[29] = ((real_t)(elMat_2_9)); + _data_mat[30] = ((real_t)(elMat_3_0)); + _data_mat[31] = ((real_t)(elMat_3_1)); + _data_mat[32] = ((real_t)(elMat_3_2)); + _data_mat[33] = ((real_t)(elMat_3_3)); + _data_mat[34] = ((real_t)(elMat_3_4)); + _data_mat[35] = ((real_t)(elMat_3_5)); + _data_mat[36] = ((real_t)(elMat_3_6)); + _data_mat[37] = ((real_t)(elMat_3_7)); + _data_mat[38] = ((real_t)(elMat_3_8)); + _data_mat[39] = ((real_t)(elMat_3_9)); + _data_mat[40] = ((real_t)(elMat_4_0)); + _data_mat[41] = ((real_t)(elMat_4_1)); + _data_mat[42] = ((real_t)(elMat_4_2)); + _data_mat[43] = ((real_t)(elMat_4_3)); + _data_mat[44] = ((real_t)(elMat_4_4)); + _data_mat[45] = ((real_t)(elMat_4_5)); + _data_mat[46] = ((real_t)(elMat_4_6)); + _data_mat[47] = ((real_t)(elMat_4_7)); + _data_mat[48] = ((real_t)(elMat_4_8)); + _data_mat[49] = ((real_t)(elMat_4_9)); + _data_mat[50] = ((real_t)(elMat_5_0)); + _data_mat[51] = ((real_t)(elMat_5_1)); + _data_mat[52] = ((real_t)(elMat_5_2)); + _data_mat[53] = ((real_t)(elMat_5_3)); + _data_mat[54] = ((real_t)(elMat_5_4)); + _data_mat[55] = ((real_t)(elMat_5_5)); + _data_mat[56] = ((real_t)(elMat_5_6)); + _data_mat[57] = ((real_t)(elMat_5_7)); + _data_mat[58] = ((real_t)(elMat_5_8)); + _data_mat[59] = ((real_t)(elMat_5_9)); + _data_mat[60] = ((real_t)(elMat_6_0)); + _data_mat[61] = ((real_t)(elMat_6_1)); + _data_mat[62] = ((real_t)(elMat_6_2)); + _data_mat[63] = ((real_t)(elMat_6_3)); + _data_mat[64] = ((real_t)(elMat_6_4)); + _data_mat[65] = ((real_t)(elMat_6_5)); + _data_mat[66] = ((real_t)(elMat_6_6)); + _data_mat[67] = ((real_t)(elMat_6_7)); + _data_mat[68] = ((real_t)(elMat_6_8)); + _data_mat[69] = ((real_t)(elMat_6_9)); + _data_mat[70] = ((real_t)(elMat_7_0)); + _data_mat[71] = ((real_t)(elMat_7_1)); + _data_mat[72] = ((real_t)(elMat_7_2)); + _data_mat[73] = ((real_t)(elMat_7_3)); + _data_mat[74] = ((real_t)(elMat_7_4)); + _data_mat[75] = ((real_t)(elMat_7_5)); + _data_mat[76] = ((real_t)(elMat_7_6)); + _data_mat[77] = ((real_t)(elMat_7_7)); + _data_mat[78] = ((real_t)(elMat_7_8)); + _data_mat[79] = ((real_t)(elMat_7_9)); + _data_mat[80] = ((real_t)(elMat_8_0)); + _data_mat[81] = ((real_t)(elMat_8_1)); + _data_mat[82] = ((real_t)(elMat_8_2)); + _data_mat[83] = ((real_t)(elMat_8_3)); + _data_mat[84] = ((real_t)(elMat_8_4)); + _data_mat[85] = ((real_t)(elMat_8_5)); + _data_mat[86] = ((real_t)(elMat_8_6)); + _data_mat[87] = ((real_t)(elMat_8_7)); + _data_mat[88] = ((real_t)(elMat_8_8)); + _data_mat[89] = ((real_t)(elMat_8_9)); + _data_mat[90] = ((real_t)(elMat_9_0)); + _data_mat[91] = ((real_t)(elMat_9_1)); + _data_mat[92] = ((real_t)(elMat_9_2)); + _data_mat[93] = ((real_t)(elMat_9_3)); + _data_mat[94] = ((real_t)(elMat_9_4)); + _data_mat[95] = ((real_t)(elMat_9_5)); + _data_mat[96] = ((real_t)(elMat_9_6)); + _data_mat[97] = ((real_t)(elMat_9_7)); + _data_mat[98] = ((real_t)(elMat_9_8)); + _data_mat[99] = ((real_t)(elMat_9_9)); mat->addValues( _data_rowIdx, _data_colIdx, _data_mat );