
Public Member Functions | |
| SparsitySuperset (const Set< MultipleDeriv > &C, const Set< MultipleDeriv > &V) | |
| void | print (std::ostream &os) const | 
| void | print (std::ostream &os, const Array< RCP< EvalVector > > &vecResults, const Array< double > &constantResults) const | 
| std::string | toString () const | 
| DerivSet | derivSet () const | 
Access to information about individual derivatives  | |
| bool | containsDeriv (const MultipleDeriv &d) const | 
| int | getIndex (const MultipleDeriv &d) const | 
| const MultipleDeriv & | deriv (int i) const | 
| const DerivState & | state (int i) const | 
| int | numDerivs () const | 
| int | numConstantDerivs () const | 
| int | numVectorDerivs () const | 
| int | maxOrder () const | 
| bool | isConstant (int i) const | 
| bool | isSpatialDeriv (int i) const | 
| const MultiIndex & | multiIndex (int i) const | 
Private Member Functions | |
| void | addDeriv (const MultipleDeriv &d, const DerivState &state) | 
| void | addDeriv (const Deriv &d, const DerivState &state) | 
Private Attributes | |
| int | maxOrder_ | 
| Sundance::Map< MultipleDeriv, int > | derivToIndexMap_ | 
| Array< MultipleDeriv > | derivs_ | 
| Array< DerivState > | states_ | 
| Array< MultiIndex > | multiIndex_ | 
| int | numConstantDerivs_ | 
| int | numVectorDerivs_ | 
Definition at line 68 of file SundanceSparsitySuperset.hpp.
| SparsitySuperset::SparsitySuperset | ( | const Set< MultipleDeriv > & | C, | |
| const Set< MultipleDeriv > & | V | |||
| ) | 
Create a sparsity set
Definition at line 49 of file SundanceSparsitySuperset.cpp.
References addDeriv(), Sundance::Set< Key, Compare >::begin(), Sundance::ConstantDeriv, Sundance::Set< Key, Compare >::end(), and Sundance::VectorDeriv.
| void SparsitySuperset::addDeriv | ( | const Deriv & | d, | |
| const DerivState & | state | |||
| ) |  [private] | 
        
Add a derivative to the set. Called by the subset's addDeriv() method.
Definition at line 112 of file SundanceSparsitySuperset.cpp.
References addDeriv(), and Sundance::MultiSet< Key >::put().
| void SparsitySuperset::addDeriv | ( | const MultipleDeriv & | d, | |
| const DerivState & | state | |||
| ) |  [private] | 
        
Add a derivative to the set. Called by the subset's addDeriv() method.
Definition at line 72 of file SundanceSparsitySuperset.cpp.
References Sundance::ConstantDeriv, containsDeriv(), derivs_, derivToIndexMap_, getIndex(), Playa::max(), maxOrder_, multiIndex_, numConstantDerivs_, numVectorDerivs_, Sundance::MultipleDeriv::order(), Sundance::Map< Key, Value, Compare >::put(), and states_.
Referenced by addDeriv(), and SparsitySuperset().
| bool SparsitySuperset::containsDeriv | ( | const MultipleDeriv & | d | ) | const | 
Detect whether a given derivative exists in this set
Definition at line 122 of file SundanceSparsitySuperset.cpp.
References Sundance::Map< Key, Value, Compare >::containsKey(), and derivToIndexMap_.
Referenced by addDeriv(), and getIndex().
| const MultipleDeriv& Sundance::SparsitySuperset::deriv | ( | int | i | ) |  const [inline] | 
        
Return the results stored at index i
Definition at line 87 of file SundanceSparsitySuperset.hpp.
References derivs_.
Referenced by derivSet(), Sundance::EvalVectorArray::print(), Sundance::UserDefOpCommonEvaluator::UserDefOpCommonEvaluator(), and Sundance::UserDefOpEvaluator::UserDefOpEvaluator().
| DerivSet SparsitySuperset::derivSet | ( | ) | const | 
Definition at line 229 of file SundanceSparsitySuperset.cpp.
References deriv(), numDerivs(), Sundance::Set< Key, Compare >::put(), state(), and Sundance::ZeroDeriv.
| int SparsitySuperset::getIndex | ( | const MultipleDeriv & | d | ) | const | 
Find the index at which the results for the given functional derivative are stored in the results array
Definition at line 127 of file SundanceSparsitySuperset.cpp.
References containsDeriv(), derivToIndexMap_, and Sundance::Map< Key, Value, Compare >::get().
Referenced by addDeriv().
| bool Sundance::SparsitySuperset::isConstant | ( | int | i | ) |  const [inline] | 
        
Indicate whether the specified derivative is spatially constant at this node
Definition at line 111 of file SundanceSparsitySuperset.hpp.
References Sundance::ConstantDeriv, and states_.
| bool Sundance::SparsitySuperset::isSpatialDeriv | ( | int | i | ) |  const [inline] | 
        
Indicate whether the specified multiple derivative contains at least one order of spatial differentiation
Definition at line 115 of file SundanceSparsitySuperset.hpp.
References multiIndex_.
| int Sundance::SparsitySuperset::maxOrder | ( | ) |  const [inline] | 
        
| const MultiIndex& Sundance::SparsitySuperset::multiIndex | ( | int | i | ) |  const [inline] | 
        
Return the spatial multi index for the i-th derivative
Definition at line 121 of file SundanceSparsitySuperset.hpp.
References multiIndex_.
| int Sundance::SparsitySuperset::numConstantDerivs | ( | ) |  const [inline] | 
        
| int Sundance::SparsitySuperset::numDerivs | ( | ) |  const [inline] | 
        
Definition at line 95 of file SundanceSparsitySuperset.hpp.
References derivs_.
Referenced by derivSet(), Sundance::EvalVectorArray::print(), Sundance::UserDefOpCommonEvaluator::UserDefOpCommonEvaluator(), and Sundance::UserDefOpEvaluator::UserDefOpEvaluator().
| int Sundance::SparsitySuperset::numVectorDerivs | ( | ) |  const [inline] | 
        
| void SparsitySuperset::print | ( | std::ostream & | os, | |
| const Array< RCP< EvalVector > > & | vecResults, | |||
| const Array< double > & | constantResults | |||
| ) | const | 
Definition at line 135 of file SundanceSparsitySuperset.cpp.
References Sundance::ConstantDeriv, derivs_, states_, Sundance::VectorDeriv, and Sundance::ZeroDeriv.
| void SparsitySuperset::print | ( | std::ostream & | os | ) | const | 
Definition at line 186 of file SundanceSparsitySuperset.cpp.
References Sundance::ConstantDeriv, derivs_, states_, Sundance::VectorDeriv, and Sundance::ZeroDeriv.
Referenced by toString().
| const DerivState& Sundance::SparsitySuperset::state | ( | int | i | ) |  const [inline] | 
        
Return the constancy state of deriv i
Definition at line 91 of file SundanceSparsitySuperset.hpp.
References states_.
Referenced by derivSet(), Sundance::UserDefOpCommonEvaluator::UserDefOpCommonEvaluator(), and Sundance::UserDefOpEvaluator::UserDefOpEvaluator().
| string SparsitySuperset::toString | ( | ) | const | 
Array<MultipleDeriv> Sundance::SparsitySuperset::derivs_ [private]           | 
        
The list of functional derivatives whose values are stored in this results set
Definition at line 159 of file SundanceSparsitySuperset.hpp.
Referenced by addDeriv(), deriv(), numDerivs(), and print().
Sundance::Map<MultipleDeriv, int> Sundance::SparsitySuperset::derivToIndexMap_ [private]           | 
        
Map from deriv to position of the derivative's value in the results array
Definition at line 155 of file SundanceSparsitySuperset.hpp.
Referenced by addDeriv(), containsDeriv(), and getIndex().
int Sundance::SparsitySuperset::maxOrder_ [private]           | 
        
Definition at line 151 of file SundanceSparsitySuperset.hpp.
Referenced by addDeriv(), and maxOrder().
Array<MultiIndex> Sundance::SparsitySuperset::multiIndex_ [private]           | 
        
Multiindices
Definition at line 165 of file SundanceSparsitySuperset.hpp.
Referenced by addDeriv(), isSpatialDeriv(), and multiIndex().
int Sundance::SparsitySuperset::numConstantDerivs_ [private]           | 
        
Definition at line 168 of file SundanceSparsitySuperset.hpp.
Referenced by addDeriv(), and numConstantDerivs().
int Sundance::SparsitySuperset::numVectorDerivs_ [private]           | 
        
Definition at line 171 of file SundanceSparsitySuperset.hpp.
Referenced by addDeriv(), and numVectorDerivs().
Array<DerivState> Sundance::SparsitySuperset::states_ [private]           | 
        
The state of each derivative at this node in the expression
Definition at line 162 of file SundanceSparsitySuperset.hpp.
Referenced by addDeriv(), isConstant(), print(), and state().