Intrepid
|
Template for the cubature rules used by Intrepid. Cubature template consists of cubature points and cubature weights. Intrepid provides a collection of cubature templates for most standard cell topologies. The templates are defined in reference coordinates using a standard reference cell for each canonical cell type. Cubature points are always specified by a triple of (X,Y,Z) coordinates even if the cell dimension is less than 3. The unused dimensions should be padded by zeroes. More...
#include <Intrepid_Types.hpp>
Public Attributes | |
int | numPoints_ |
Number of cubature points stored in the template. | |
double | points_ [INTREPID_MAX_INTEGRATION_POINTS][INTREPID_MAX_DIMENSION] |
Array with the (X,Y,Z) coordinates of the cubature points. | |
double | weights_ [INTREPID_MAX_INTEGRATION_POINTS] |
Array with the associated cubature weights. | |
Template for the cubature rules used by Intrepid. Cubature template consists of cubature points and cubature weights. Intrepid provides a collection of cubature templates for most standard cell topologies. The templates are defined in reference coordinates using a standard reference cell for each canonical cell type. Cubature points are always specified by a triple of (X,Y,Z) coordinates even if the cell dimension is less than 3. The unused dimensions should be padded by zeroes.
For example, a set of Gauss rules on [-1,1] looks as the following array of CubatureTemplate structs:
cubature_rule[4] = { // Collection of Gauss rules on [-1,1] { 1, ----> number of points in the rule {{0.0,0.0,0.0}}, ----> X,Y,Z coordinates of the cubature points {0.5} ----> the cubature weight }, { 2, {{-sqrt(1.0/3.0),0.0,0.0}, {+sqrt(1.0/3.0),0.0,0.0}}, {1.0,1.0} }, { 3, {{-sqrt(3.0/5.0),0.0,0.0}, {0.0,0.0,0.0}, {+sqrt(3.0/5.0),0.0,0.0}}, {5.0/9.0, 8.0/9.0,5.0/9.0} }, { 4, {{-sqrt((3.0+4.0*sqrt(0.3))/7.0),0.0,0.0}, {-sqrt((3.0-4.0*sqrt(0.3))/7.0),0.0,0.0}, {+sqrt((3.0-4.0*sqrt(0.3))/7.0),0.0,0.0}, {+sqrt((3.0+4.0*sqrt(0.3))/7.0),0.0,0.0}}, // {0.5-sqrt(10.0/3.0)/12.0, 0.5+sqrt(10.0/3.0)/12.0, 0.5+sqrt(10.0/3.0)/12.0, 0.5-sqrt(10.0/3.0)/12.0} } }; // end Gauss
Also see data member documentation.
Definition at line 506 of file Intrepid_Types.hpp.