Public Member Functions | |
| SpatialDerivSpecifier () | |
| SpatialDerivSpecifier (const MultiIndex &mi) | |
| SpatialDerivSpecifier (const SpatialDerivType &type, int order=0) | |
| const MultiIndex & | mi () const |
| bool | isDivergence () const |
| bool | isPartial () const |
| bool | isNormal () const |
| bool | isIdentity () const |
| int | normalDerivOrder () const |
| int | derivOrder () const |
| std::string | toString () const |
| bool | operator< (const SpatialDerivSpecifier &other) const |
| SpatialDerivSpecifier | derivWrtMultiIndex (const MultiIndex &mi) const |
Private Attributes | |
| MultiIndex | mi_ |
| int | normalDerivOrder_ |
This class is a compact description of type of spatial derivative acting on an operative function: partial derivative, divergence, or normal derivative.
Definition at line 51 of file SundanceSpatialDerivSpecifier.hpp.
Empty ctor creates an identity operator (zeroth order partial derivative)
Definition at line 38 of file SundanceSpatialDerivSpecifier.cpp.
Referenced by derivWrtMultiIndex().
| SpatialDerivSpecifier::SpatialDerivSpecifier | ( | const MultiIndex & | mi | ) |
Create a spatial derivative
Definition at line 43 of file SundanceSpatialDerivSpecifier.cpp.
| SpatialDerivSpecifier::SpatialDerivSpecifier | ( | const SpatialDerivType & | type, |
| int | order = 0 |
||
| ) |
Create a derivative of a specified type and order.
Definition at line 48 of file SundanceSpatialDerivSpecifier.cpp.
References Sundance::EnumTypeField< SpatialDerivType >::assertNotType(), Sundance::DivSDT, and Sundance::PartialSDT.
| int SpatialDerivSpecifier::derivOrder | ( | ) | const |
Return the order of differentiation
Definition at line 97 of file SundanceSpatialDerivSpecifier.cpp.
References isDivergence(), isNormal(), isPartial(), mi_, normalDerivOrder_, and Sundance::MultiIndex::order().
Referenced by Sundance::Deriv::derivAlgSpec().
| SpatialDerivSpecifier SpatialDerivSpecifier::derivWrtMultiIndex | ( | const MultiIndex & | mi | ) | const |
Create a new derivative that increments my multiindex by the input multiindex
Definition at line 127 of file SundanceSpatialDerivSpecifier.cpp.
References isIdentity(), isPartial(), mi_, Sundance::MultiIndex::order(), and SpatialDerivSpecifier().
Referenced by Sundance::Deriv::derivWrtMultiIndex().
| bool SpatialDerivSpecifier::isDivergence | ( | ) | const |
Return true if I am a divergence
Definition at line 69 of file SundanceSpatialDerivSpecifier.cpp.
References Sundance::DivSDT, and Sundance::EnumTypeField< SpatialDerivType >::isType().
Referenced by Sundance::Deriv::checkConsistencyOfOperations(), Sundance::Deriv::derivAlgSpec(), derivOrder(), Sundance::Deriv::derivWrtMultiIndex(), and Sundance::DiffOp::requestMultiIndexAtEvalPoint().
| bool SpatialDerivSpecifier::isIdentity | ( | ) | const |
Return true if I am an identity operator
Definition at line 84 of file SundanceSpatialDerivSpecifier.cpp.
References Sundance::IdentitySDT, isNormal(), isPartial(), Sundance::EnumTypeField< SpatialDerivType >::isType(), mi(), normalDerivOrder(), and Sundance::MultiIndex::order().
Referenced by Sundance::Deriv::canBeDifferentiated(), derivWrtMultiIndex(), Sundance::DiffOpEvaluator::DiffOpEvaluator(), Sundance::Lagrange::refEval(), Sundance::Fourier::refEval(), Sundance::EdgeLocalizedBasis::refEval(), Sundance::Bernstein::refEval(), Sundance::Bubble::refEval(), Sundance::CubicHermite::refEval(), and Sundance::Legendre::refEval().
| bool SpatialDerivSpecifier::isNormal | ( | ) | const |
Return true if I am a normal derivative
Definition at line 74 of file SundanceSpatialDerivSpecifier.cpp.
References Sundance::EnumTypeField< SpatialDerivType >::isType(), and Sundance::NormalSDT.
Referenced by Sundance::Deriv::checkConsistencyOfOperations(), Sundance::Deriv::derivAlgSpec(), derivOrder(), isIdentity(), operator<(), and Sundance::DiffOp::requestMultiIndexAtEvalPoint().
| bool SpatialDerivSpecifier::isPartial | ( | ) | const |
Return true if I am a partial derivative in a coordinate direction
Definition at line 79 of file SundanceSpatialDerivSpecifier.cpp.
References Sundance::EnumTypeField< SpatialDerivType >::isType(), and Sundance::PartialSDT.
Referenced by Sundance::Deriv::canBeDifferentiated(), Sundance::Deriv::checkConsistencyOfOperations(), Sundance::Deriv::derivAlgSpec(), derivOrder(), derivWrtMultiIndex(), Sundance::DiffOpEvaluator::DiffOpEvaluator(), isIdentity(), operator<(), Sundance::EdgeLocalizedBasis::refEval(), Sundance::Lagrange::refEval(), Sundance::CubicHermite::refEval(), Sundance::Bernstein::refEval(), Sundance::Bubble::refEval(), Sundance::Fourier::refEval(), and Sundance::Legendre::refEval().
| const MultiIndex & SpatialDerivSpecifier::mi | ( | ) | const |
Return the multiindex of a spatial partial derivative
Definition at line 62 of file SundanceSpatialDerivSpecifier.cpp.
References Sundance::EnumTypeField< SpatialDerivType >::assertNotType(), Sundance::DivSDT, mi_, and Sundance::NormalSDT.
Referenced by Sundance::applyTx(), Sundance::DiffOpEvaluator::backedDerivs(), Sundance::Deriv::derivAlgSpec(), Sundance::DiffOpEvaluator::DiffOpEvaluator(), Sundance::GrouperBase::extractWeakForm(), isIdentity(), operator<(), Sundance::Bubble::refEval(), Sundance::CubicHermite::refEval(), Sundance::EdgeLocalizedBasis::refEval(), Sundance::Fourier::refEval(), Sundance::Bernstein::refEval(), Sundance::Legendre::refEval(), Sundance::Lagrange::refEval(), Sundance::RaviartThomas::refEval(), Sundance::DiffOp::requestMultiIndexAtEvalPoint(), and Sundance::Deriv::toString().
| int SpatialDerivSpecifier::normalDerivOrder | ( | ) | const |
Return the order of differentiation in the normal direction
Definition at line 91 of file SundanceSpatialDerivSpecifier.cpp.
References Sundance::EnumTypeField< SpatialDerivType >::assertType(), normalDerivOrder_, and Sundance::NormalSDT.
Referenced by isIdentity(), and operator<().
| bool SpatialDerivSpecifier::operator< | ( | const SpatialDerivSpecifier & | other | ) | const |
Comparison operator for use in sorted containers
Definition at line 115 of file SundanceSpatialDerivSpecifier.cpp.
References isNormal(), isPartial(), mi(), normalDerivOrder(), Sundance::EnumTypeField< T >::type(), and Sundance::EnumTypeField< SpatialDerivType >::type().
| std::string SpatialDerivSpecifier::toString | ( | ) | const |
Write me to a std::string
Definition at line 106 of file SundanceSpatialDerivSpecifier.cpp.
Referenced by Sundance::BasisFamily::refEval().
Definition at line 96 of file SundanceSpatialDerivSpecifier.hpp.
Referenced by derivOrder(), derivWrtMultiIndex(), and mi().
int Sundance::SpatialDerivSpecifier::normalDerivOrder_ [private] |
Definition at line 98 of file SundanceSpatialDerivSpecifier.hpp.
Referenced by derivOrder(), and normalDerivOrder().