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


Public Member Functions | |
| DaeStructuralIndexReduction (ADFun< CG< Base >> &fun, const std::vector< DaeVarInfo > &varInfo, const std::vector< std::string > &eqName) | |
| BipartiteGraph< Base > & | getGraph () |
| const BipartiteGraph< Base > & | getGraph () const |
| void | setPreserveNames (bool p) |
| bool | isPreserveNames () const |
| size_t | getStructuralIndex () const |
| ADFun< CG< Base > > & | getOriginalModel () const |
| virtual std::unique_ptr< ADFun< CG< Base > > > | reduceIndex (std::vector< DaeVarInfo > &newVarInfo, std::vector< DaeEquationInfo > &equationInfo)=0 |
| 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 Attributes | |
| BipartiteGraph< Base > | graph_ |
| ADFun< CG< Base > > *const | fun_ |
| Verbosity | verbosity_ |
| std::ostream * | log_ |
Base class for algorithms that perform automatic structural index reduction of implicit DAEs using graphs.
Definition at line 29 of file dae_structural_index_reduction.hpp.
|
inline |
Creates a new algorithm for structural index reduction of DAE systems.
| 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) |
Definition at line 46 of file dae_structural_index_reduction.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.
|
inline |
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.
|
inline |
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.
|
pure virtualinherited |
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 |
Implemented in CppAD::cg::DummyDerivatives< Base >, CppAD::cg::SoaresSecchi< Base >, and CppAD::cg::Pantelides< Base >.
Referenced by CppAD::cg::DaeIndexReduction< Base >::getOriginalModel(), and CppAD::cg::DummyDerivatives< Base >::reduceIndex().
|
inline |
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().