Public Member Functions | |
| PolygonQuadrature (const QuadratureFamily &quad) | |
| virtual | ~PolygonQuadrature () |
| virtual XMLObject | toXML () const |
| virtual std::string | description () const |
Handleable interface | |
| const QuadratureFamily & | quad_ |
| static int | nrMaxLinePerCell_ = 5 |
| static void | setNrMaxLinePerCell (int maxNrLine) |
| static int | getNrMaxLinePerCell () |
| virtual void | getLineRule (Array< Point > &quadPoints, Array< double > &quadWeights) const |
Quadrature special for the polygon curve integration
. There we need for each line segment inside one cell a line integral. So for one cell we might need several line quadrature points, and this class gives us per cell(line) a constant number of quadrature points for a line, so we can integrate along the curve exactly. (each line segment exactly inside one cell)
As an input we need a quadrature class, and the points of that quadrature rule for a line will be used for each line segment of the polygon inside one cell (2D).
Definition at line 64 of file SundancePolygonQuadrature.hpp.
| PolygonQuadrature::PolygonQuadrature | ( | const QuadratureFamily & | quad | ) |
Definition at line 49 of file SundancePolygonQuadrature.cpp.
| virtual Sundance::PolygonQuadrature::~PolygonQuadrature | ( | ) | [inline, virtual] |
Definition at line 71 of file SundancePolygonQuadrature.hpp.
| virtual std::string Sundance::PolygonQuadrature::description | ( | ) | const [inline, virtual] |
Describable interface
Reimplemented from Sundance::QuadratureFamilyStub.
Definition at line 78 of file SundancePolygonQuadrature.hpp.
References Sundance::QuadratureFamilyStub::order(), and Sundance::toString().
| void PolygonQuadrature::getLineRule | ( | Array< Point > & | quadPoints, |
| Array< double > & | quadWeights | ||
| ) | const [protected, virtual] |
for polygon curve integrals only this method should be used
Reimplemented from Sundance::QuadratureFamilyBase.
Definition at line 64 of file SundancePolygonQuadrature.cpp.
References Sundance::QuadratureFamily::getPoints(), Sundance::LineCell, nrMaxLinePerCell_, and quad_.
| static int Sundance::PolygonQuadrature::getNrMaxLinePerCell | ( | ) | [inline, static] |
return the maximal number of line segments inside one cell
Definition at line 92 of file SundancePolygonQuadrature.hpp.
References nrMaxLinePerCell_.
Referenced by Sundance::CurveIntegralCalc::getCurveQuadPoints_polygon().
| static void Sundance::PolygonQuadrature::setNrMaxLinePerCell | ( | int | maxNrLine | ) | [inline, static] |
method for the user to change this value too much line nr is an overhead too less will cause error thrown in the code
| maxNrLine |
Definition at line 89 of file SundancePolygonQuadrature.hpp.
References nrMaxLinePerCell_.
| XMLObject PolygonQuadrature::toXML | ( | ) | const [virtual] |
Reimplemented from Sundance::QuadratureFamilyStub.
Definition at line 55 of file SundancePolygonQuadrature.cpp.
References Sundance::QuadratureFamilyStub::order(), and Teuchos::toString().
int PolygonQuadrature::nrMaxLinePerCell_ = 5 [static, private] |
maximum number of lines inside a cell, the default value is 6 but this can be changed by the user
Definition at line 107 of file SundancePolygonQuadrature.hpp.
Referenced by getLineRule(), getNrMaxLinePerCell(), and setNrMaxLinePerCell().
const QuadratureFamily& Sundance::PolygonQuadrature::quad_ [private] |
The quadrature which will be used for the polygon lines integration
Definition at line 103 of file SundancePolygonQuadrature.hpp.
Referenced by getLineRule().