51   template <
typename SpT, 
typename PT, 
typename WT>
 
   56     INTREPID2_TEST_FOR_EXCEPTION( degree < 0 ||
 
   58                                   ">>> ERROR (CubatureDirectLineGaussJacobi20): No cubature rule implemented for the desired polynomial degree.");
 
   60     typedef Kokkos::DynRankView<PT,Kokkos::LayoutRight,Kokkos::HostSpace> pointViewHostType;
 
   61     typedef Kokkos::DynRankView<WT,Kokkos::LayoutRight,Kokkos::HostSpace> weightViewHostType;
 
   71       auto points = Kokkos::create_mirror_view(
typename SpT::memory_space(), points_host);
 
   73       Kokkos::deep_copy(points,points_host);
 
   76       this->
cubatureData_.
points_ = Kokkos::DynRankView<PT,SpT>(
"CubatureDirectLineGaussJacobi20::cubatureData_::points_",
 
   88       this->
cubatureData_.
weights_ = Kokkos::DynRankView<WT,SpT>(
"CubatureDirectLineGaussJacobi20::cubatureData_::weights_",
 
   91       Kokkos::deep_copy(Kokkos::subdynrankview(this->
cubatureData_.
weights_, Kokkos::ALL()) , Kokkos::subdynrankview(weights, Kokkos::ALL()));
 
  109   template<
typename SpT, 
typename PT, 
typename WT>
 
  112   cubatureDataStatic_[cubatureDataStaticSize] = {
 
  118       {2.66666666666666666666666666}
 
  123       {2.66666666666666666666666666}
 
  127       {{-7.549703546891172e-1, 0.0, 0.0},
 
  128        {8.830368802245062e-2, 0.0, 0.0}},
 
  130        8.062870566386037e-01}
 
  134       {{-7.549703546891172e-1, 0.0, 0.0},
 
  135        {8.830368802245062e-2, 0.0, 0.0}},
 
  137        8.062870566386037e-01}
 
  141       {{-8.540119518537008e-01, 0.0, 0.0},
 
  142        {-3.059924679232963e-01, 0.0, 0.0},
 
  143        { 4.100044197769969e-01, 0.0, 0.0}},
 
  144       {1.257090888519093e+00,
 
  145        1.169970154078928e+00,
 
  146        2.396056240686456e-01}
 
  150       {{-8.540119518537008e-01, 0.0, 0.0},
 
  151        {-3.059924679232963e-01, 0.0, 0.0},
 
  152        { 4.100044197769969e-01, 0.0, 0.0}},
 
  153       {1.257090888519093e+00,
 
  154        1.169970154078928e+00,
 
  155        2.396056240686456e-01}
 
  159       {{-9.029989011060054e-01, 0.0, 0.0},
 
  160        {-5.227985248962754e-01, 0.0, 0.0},
 
  161        {3.409459020873505e-02, 0.0, 0.0},
 
  162        {5.917028357935457e-01, 0.0, 0.0}},
 
  163       {8.871073248902235e-01,
 
  164        1.147670318393715e+00,
 
  165        5.490710973833849e-01,
 
  166        8.281792599934450e-02}
 
  170       {{-9.029989011060054e-01, 0.0, 0.0},
 
  171        {-5.227985248962754e-01, 0.0, 0.0},
 
  172        {3.409459020873505e-02, 0.0, 0.0},
 
  173        {5.917028357935457e-01, 0.0, 0.0}},
 
  174       {8.871073248902235e-01,
 
  175        1.147670318393715e+00,
 
  176        5.490710973833849e-01,
 
  177        8.281792599934450e-02}
 
  181       {{-9.308421201635699e-01, 0.0, 0.0},
 
  182        {-6.530393584566085e-01, 0.0, 0.0},
 
  183        {-2.202272258689614e-01, 0.0, 0.0},
 
  184        {2.686669452617736e-01, 0.0, 0.0},
 
  185        {7.021084258940329e-01, 0.0, 0.0}},
 
  186       {6.541182742861678e-01,
 
  187        1.009591695199292e+00,
 
  188        7.136012897727201e-01,
 
  189        2.564448057836956e-01,
 
  190        3.291060162479211e-02}
 
  194       {{-9.308421201635699e-01, 0.0, 0.0},
 
  195        {-6.530393584566085e-01, 0.0, 0.0},
 
  196        {-2.202272258689614e-01, 0.0, 0.0},
 
  197        {2.686669452617736e-01, 0.0, 0.0},
 
  198        {7.021084258940329e-01, 0.0, 0.0}},
 
  199       {6.541182742861678e-01,
 
  200        1.009591695199292e+00,
 
  201        7.136012897727201e-01,
 
  202        2.564448057836956e-01,
 
  203        3.291060162479211e-02}
 
  207       {{-9.481908898126656e-01, 0.0, 0.0},
 
  208        {-7.368721166840297e-01, 0.0, 0.0},
 
  209        {-3.951261639542174e-01, 0.0, 0.0},
 
  210        {1.807282632950432e-02, 0.0, 0.0},
 
  211        {4.313622546234276e-01, 0.0, 0.0},
 
  212        {7.736112323551237e-01, 0.0, 0.0}},
 
  213       {5.003096218126469e-01,
 
  214        8.590119978942462e-01,
 
  215        7.566174939883307e-01,
 
  216        4.103165690369299e-01,
 
  217        1.257623774795603e-01,
 
  218        1.464860645495425e-02}
 
  222       {{-9.481908898126656e-01, 0.0, 0.0},
 
  223        {-7.368721166840297e-01, 0.0, 0.0},
 
  224        {-3.951261639542174e-01, 0.0, 0.0},
 
  225        {1.807282632950432e-02, 0.0, 0.0},
 
  226        {4.313622546234276e-01, 0.0, 0.0},
 
  227        {7.736112323551237e-01, 0.0, 0.0}},
 
  228       {5.003096218126469e-01,
 
  229        8.590119978942462e-01,
 
  230        7.566174939883307e-01,
 
  231        4.103165690369299e-01,
 
  232        1.257623774795603e-01,
 
  233        1.464860645495425e-02}
 
Kokkos::DynRankView< pointValueType, ExecSpaceType > points_
Array with the (X,Y,Z) coordinates of the cubature points. 
static constexpr ordinal_type MaxDimension
The maximum ambient space dimension. 
Defines GaussJacobi20 integration rules on a line used for Pyramid only. 
ordinal_type numPoints_
Number of cubature points stored in the template. 
CubatureData cubatureData_
Cubature data on device. 
static const CubatureDataStatic cubatureDataStatic_[cubatureDataStaticSize]
Complete set of data defining line Gauss(-Legendre) rules. 
static constexpr ordinal_type MaxCubatureDegreePyr
The maximum degree of the polynomial that can be integrated exactly by a direct pyramid rule...
ordinal_type degree_
The degree of polynomials that are integrated exactly by this cubature rule. 
CubatureDirectLineGaussJacobi20(const ordinal_type degree=0)
Constructor. 
Defines direct cubature (integration) rules in Intrepid. 
Cubature data is defined on the host space and is static. 
ordinal_type numPoints_
Number of cubature points stored in the template. 
Kokkos::DynRankView< weightValueType, ExecSpaceType > weights_
Array with the associated cubature weights.