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_ |
Definition at line 51 of file SundanceSpatialDerivSpecifier.hpp.
SpatialDerivSpecifier::SpatialDerivSpecifier | ( | ) |
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::Legendre::refEval(), Sundance::Lagrange::refEval(), Sundance::Fourier::refEval(), Sundance::EdgeLocalizedBasis::refEval(), Sundance::CubicHermite::refEval(), Sundance::Bubble::refEval(), and Sundance::Bernstein::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::Legendre::refEval(), Sundance::Lagrange::refEval(), Sundance::Fourier::refEval(), Sundance::EdgeLocalizedBasis::refEval(), Sundance::CubicHermite::refEval(), Sundance::Bubble::refEval(), and Sundance::Bernstein::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::RaviartThomas::refEval(), Sundance::Legendre::refEval(), Sundance::Lagrange::refEval(), Sundance::Fourier::refEval(), Sundance::EdgeLocalizedBasis::refEval(), Sundance::CubicHermite::refEval(), Sundance::Bubble::refEval(), Sundance::Bernstein::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().