|
CppADCodeGen
HEAD
A C++ Algorithmic Differentiation Package with Source Code Generation
|


Public Member Functions | |
| Pantelides (ADFun< CG< Base > > &fun, const std::vector< DaeVarInfo > &varInfo, const std::vector< std::string > &eqName, const std::vector< Base > &x) | |
| Pantelides (const Pantelides &p)=delete | |
| Pantelides & | operator= (const Pantelides &p)=delete |
| AugmentPath< Base > & | getAugmentPath () const |
| void | setAugmentPath (AugmentPath< Base > &a) const |
| std::unique_ptr< ADFun< CG< Base > > > | reduceIndex (std::vector< DaeVarInfo > &newVarInfo, std::vector< DaeEquationInfo > &equationInfo) override |
| BipartiteGraph< Base > & | getGraph () |
| const BipartiteGraph< Base > & | getGraph () const |
| void | setPreserveNames (bool p) |
| bool | isPreserveNames () const |
| size_t | getStructuralIndex () const |
| ADFun< CG< Base > > & | getOriginalModel () const |
| std::ostream & | log () const |
| void | setLog (std::ostream &out) |
| void | setVerbosity (Verbosity verbosity) |
| Verbosity | getVerbosity () const |
Protected Types | |
| using | CGBase = CppAD::cg::CG< Base > |
| using | ADCG = CppAD::AD< CGBase > |
Protected Member Functions | |
| void | detectSubset2Dif () |
Protected Attributes | |
| std::vector< Base > | x_ |
| bool | reduced_ |
| AugmentPathDepthLookahead< Base > | defaultAugmentPath_ |
| AugmentPath< Base > * | augmentPath_ |
| BipartiteGraph< Base > | graph_ |
| ADFun< CG< Base > > *const | fun_ |
| Verbosity | verbosity_ |
| std::ostream * | log_ |
Pantelides DAE index reduction algorithm
Definition at line 29 of file pantelides.hpp.
|
inline |
Creates the DAE index reduction algorithm that implements the Pantelides method.
| fun | The original model (potentially high index) |
| varInfo | The DAE system variable information (in the same order as in the tape) |
| eqName | Equation names (it can be an empty vector) |
| x | Typical variable values (used to avoid NaNs in CppAD checks) |
Definition at line 54 of file pantelides.hpp.
|
inlineprotected |
delete all V-nodes with A!=0 and their incident edges from the graph
Definition at line 110 of file pantelides.hpp.
|
inlineinherited |
Provides the original model with a representation of an implicit DAE (potentially high index).
Definition at line 55 of file dae_index_reduction.hpp.
|
inlineinherited |
Provides the structural index which is typically a good approximation of the differentiation index. It can only be called after reduceIndex().
| CGException |
Definition at line 90 of file dae_structural_index_reduction.hpp.
|
inlineinherited |
Whether or not original names saved by using CppAD::PrintFor(0, "", val, name) should be kept by also adding PrintFor operations in the reduced model.
Definition at line 78 of file dae_structural_index_reduction.hpp.
|
inlineoverridevirtual |
Performs the DAE index reduction and creates a new reduced index model.
| newVarInfo | Variable related information of the reduced index model |
| equationInfo | Equation related information of the reduced index model |
Implements CppAD::cg::DaeIndexReduction< Base >.
Definition at line 79 of file pantelides.hpp.
|
inlineinherited |
Defines whether or not original names saved by using CppAD::PrintFor(0, "", val, name) should be kept by also adding PrintFor operations in the reduced model.
Definition at line 69 of file dae_structural_index_reduction.hpp.
|
protectedinherited |
The original model representing an implicit DAE system
Definition at line 36 of file dae_index_reduction.hpp.
Referenced by CppAD::cg::DaeIndexReduction< Base >::getOriginalModel().