|
IFEM
90A354
|
Evaluation of Lagrange basis functions. More...
Functions | |
| bool | computeBasis (RealArray &val, int p1, double x1, int p2=0, double x2=0.0, int p3=0, double x3=0.0) |
| Evaluates a 1D, 2D or 3D Lagrangian basis at a given point. More... | |
| bool | computeBasis (RealArray &val, Matrix &derval, int p1, double x1, int p2=0, double x2=0.0, int p3=0, double x3=0.0) |
| Evaluates a 1D, 2D or 3D Lagrangian basis at a given point. More... | |
| bool | computeBasis (RealArray &val, Matrix *derval, const RealArray &p1, double x1, const RealArray &p2={}, double x2=0.0, const RealArray &p3={}, double x3=0.0) |
| Evaluates a 1D, 2D or 3D Lagrangian basis at a given point. More... | |
Evaluation of Lagrange basis functions.
| bool Lagrange::computeBasis | ( | RealArray & | val, |
| int | p1, | ||
| double | x1, | ||
| int | p2 = 0, |
||
| double | x2 = 0.0, |
||
| int | p3 = 0, |
||
| double | x3 = 0.0 |
||
| ) |
Evaluates a 1D, 2D or 3D Lagrangian basis at a given point.
| [out] | val | Values of all basis functions |
| [in] | p1 | Polynomial degree in first parameter direction |
| [in] | x1 | Natural coordinate in first parameter direction |
| [in] | p2 | Polynomial degree in second parameter direction |
| [in] | x2 | Natural coordinate in second parameter direction |
| [in] | p3 | Polynomial degree in third parameter direction |
| [in] | x3 | Natural coordinate in third parameter direction |
If p2 is zero, a 1D basis is assumed. Otherwise, if p3 is zero, a 2D basis is assumed. If p1, p2, and p3 all are non-zero, a 3D basis is assumed.
Referenced by ASMs2DLag::BasisFunctionCache::calculateAll(), ASMs2DmxLag::BasisFunctionCache::calculateAll(), ASMs3DLag::BasisFunctionCache::calculateAll(), ASMs3DmxLag::BasisFunctionCache::calculateAll(), ASMs2DLag::BasisFunctionCache::calculatePt(), ASMs2DmxLag::BasisFunctionCache::calculatePt(), ASMs3DLag::BasisFunctionCache::calculatePt(), ASMs3DmxLag::BasisFunctionCache::calculatePt(), computeBasis(), ASMs3DLag::evalSolPt(), ASMs2DLag::evalSolPt(), ASMs2DmxLag::evalSolution(), ASMs3DmxLag::evalSolution(), ASMs1DLag::evalSolution(), ASMs2Dmx::evalSolution(), ASMs3Dmx::evalSolution(), ASMs2DLag::evalSolution(), ASMs3DLag::evalSolution(), ASMs2Dmx::evalSolutionPiola(), LagrangeFields2D::gradFE(), LagrangeFields3D::gradFE(), LagrangeField3D::gradFE(), LagrangeField2D::gradFE(), initMPC4flat(), ASMs1DLag::integrate(), ASMs1DSpec::integrate(), ASMs2DLag::integrate(), ASMs2DmxLag::integrate(), ASMs3DLag::integrate(), ASMs3DmxLag::integrate(), ASMs3DLag::integrateEdge(), LagrangeField3D::valueFE(), LagrangeField2D::valueFE(), LagrangeFields2D::valueFE(), and LagrangeFields3D::valueFE().
| bool Lagrange::computeBasis | ( | RealArray & | val, |
| Matrix & | derval, | ||
| int | p1, | ||
| double | x1, | ||
| int | p2 = 0, |
||
| double | x2 = 0.0, |
||
| int | p3 = 0, |
||
| double | x3 = 0.0 |
||
| ) |
Evaluates a 1D, 2D or 3D Lagrangian basis at a given point.
| [out] | val | Values of all basis functions |
| [out] | derval | Derivatives of all basis functions |
| [in] | p1 | Polynomial degree in first parameter direction |
| [in] | x1 | Natural coordinate in first parameter direction |
| [in] | p2 | Polynomial degree in second parameter direction |
| [in] | x2 | Natural coordinate in second parameter direction |
| [in] | p3 | Polynomial degree in third parameter direction |
| [in] | x3 | Natural coordinate in third parameter direction |
If p2 is zero, a 1D basis is assumed. Otherwise, if p3 is zero, a 2D basis is assumed. If p1, p2, and p3 all are non-zero, a 3D basis is assumed.
References computeBasis().
| bool Lagrange::computeBasis | ( | RealArray & | val, |
| Matrix * | derval, | ||
| const RealArray & | p1, | ||
| double | x1, | ||
| const RealArray & | p2 = {}, |
||
| double | x2 = 0.0, |
||
| const RealArray & | p3 = {}, |
||
| double | x3 = 0.0 |
||
| ) |
Evaluates a 1D, 2D or 3D Lagrangian basis at a given point.
| [out] | val | Values of all basis functions |
| [out] | derval | Pointer to derivatives of all basis functions |
| [in] | p1 | Natural point coordinates in first parameter direction |
| [in] | x1 | Natural coordinate in first parameter direction |
| [in] | p2 | Natural point coordinates in second parameter direction |
| [in] | x2 | Natural coordinate in second parameter direction |
| [in] | p3 | Natural point coordinates in third parameter direction |
| [in] | x3 | Natural coordinate in third parameter direction |
If derval is a null pointer, the derivatives are not computed. If p2 is empty, a 1D basis is assumed. Otherwise, if p3 is empty, a 2D basis is assumed. If p1, p2, and p3 all are non-empty, a 3D basis is assumed.
References utl::matrix< T >::cols(), Lagrange1D::eval(), utl::matrix< T >::resize(), and utl::matrix< T >::rows().