MicroModelicaCCompiler
4.5.3
|
Namespaces | |
EQUATION | |
EVENT | |
FUNCTION_PRINTER | |
INDEX | |
MATRIX | |
RANGE | |
STATEMENT | |
Functions | |
Expression | getUseExp (Variable variable, DepData dep_data) |
bool | findDep (DepsMap deps, DepData dep_data, bool multiple_nodes) |
bool | findAlgDep (PrintedDeps printed_deps, int id, SB::Set range, SB::Deps::LMapExp use_map, SB::Deps::LMapExp eq_use_map) |
bool | checkAlgRecursiveDeps (Equation eq, AlgDepsMap alg_deps, AlgDepsMap deps) |
string | addAlgDeps (Equation eq, SB::Deps::LMapExp eq_use, AlgDepsMap alg_deps, AlgDepsMap deps, PrintedDeps &printed_deps, bool comes_from_rec) |
void | insertAlg (AlgDepsMap &map, int id, DefAlgDepsUse new_dep) |
bool | checkEventRange (Index index, Range range) |
vector< string > | getVariables (Index index, Range range) |
string | addAlgDeps (Equation eq, SB::Deps::LMapExp eq_use, std::map< int, AlgDeps > der_deps, std::map< int, AlgDeps > alg_deps, PrintedDeps &printed_deps, bool comes_from_rec=false) |
template<typename N > | |
Option< Range > | getUseRange (Util::Variable variable, DepData dep_data, N node, bool event=false, bool path_recursive_deps=false) |
Option< Range > | getUseRange (Util::Variable variable, DepData dep_data) |
std::ostream & | operator<< (std::ostream &out, const Equation &e) |
EquationPrinter * | getPrinter (Equation eq) |
EquationTable | zeroCrossingTable (EventTable events) |
Helper function to to generate a equation table for zero crossing equations. More... | |
std::ostream & | operator<< (std::ostream &out, const Expression &s) |
std::ostream & | operator<< (std::ostream &out, const ExternalFunction &e) |
std::ostream & | operator<< (std::ostream &out, const CompiledFunction &cf) |
ostream & | operator<< (std::ostream &out, const Input &i) |
std::ostream & | operator<< (std::ostream &out, const Index &i) |
std::ostream & | operator<< (std::ostream &out, const Range &r) |
std::ostream & | operator<< (std::ostream &out, const Statement &s) |
typedef set<DefAlgDepsUse, CompDef> MicroModelica::IR::AlgDeps |
Definition at line 136 of file compute_deps.hpp.
typedef std::map<int, AlgDeps> MicroModelica::IR::AlgDepsMap |
Definition at line 138 of file compute_deps.hpp.
using MicroModelica::IR::AnnotationType = typedef boost::variant<ModelAnnotation, FunctionAnnotation> |
Definition at line 280 of file annotation.hpp.
typedef Class* MicroModelica::IR::ClassPtr |
typedef boost::variant<Function, Package, Model> MicroModelica::IR::ClassType |
typedef ModelTable< std::string, CompiledFunction > MicroModelica::IR::CompiledFunctionTable |
Definition at line 117 of file helpers.hpp.
typedef ModelTable< std::string, CompiledPackage > MicroModelica::IR::CompiledPackageTable |
Definition at line 141 of file helpers.hpp.
typedef list<DepData> MicroModelica::IR::DepsData |
Definition at line 157 of file compute_deps.hpp.
typedef std::map<std::string, DepsData> MicroModelica::IR::DepsMap |
Definition at line 159 of file compute_deps.hpp.
typedef ModelMatrix<Deps::DOSBGraphBuilder, Deps::EQModelMatrixBuilder, MATRIX::EQMatrixConfig, IR::EquationTable, IR::Equation> MicroModelica::IR::DOMatrix |
Definition at line 95 of file model_matrix.hpp.
typedef std::map<EquationDefOrder, Equation> MicroModelica::IR::EquationOrderMap |
Definition at line 167 of file equation.hpp.
typedef ModelTable< int, Equation > MicroModelica::IR::EquationTable |
Definition at line 169 of file equation.hpp.
typedef ModelTable<int, Event> MicroModelica::IR::EventTable |
typedef list<Expression> MicroModelica::IR::ExpressionList |
Definition at line 95 of file expression.hpp.
Definition at line 85 of file helpers.hpp.
typedef ModelTable< std::string, Function > MicroModelica::IR::FunctionTable |
typedef ModelMatrix<Deps::HDGraphBuilder, Deps::EVModelMatrixBuilder, MATRIX::EVMatrixConfig, IR::EventTable, IR::Event> MicroModelica::IR::HDMatrix |
Definition at line 103 of file model_matrix.hpp.
typedef ModelMatrix<Deps::HHGraphBuilder, Deps::EVModelMatrixBuilder, MATRIX::EVMatrixConfig, IR::EventTable, IR::Event> MicroModelica::IR::HHMatrix |
Definition at line 109 of file model_matrix.hpp.
typedef ModelMatrix<Deps::HZGraphBuilder, Deps::EVModelMatrixBuilder, MATRIX::EVMatrixConfig, IR::EventTable, IR::Event> MicroModelica::IR::HZMatrix |
Definition at line 105 of file model_matrix.hpp.
typedef ModelMatrix<Deps::HZSTGraphBuilder, Deps::EVModelMatrixBuilder, MATRIX::EVMatrixConfig, IR::EventTable, IR::Event> MicroModelica::IR::HZSTMatrix |
Definition at line 107 of file model_matrix.hpp.
typedef ModelTable<std::string, Index> MicroModelica::IR::IndexTable |
typedef ModelTable<int, Input> MicroModelica::IR::InputTable |
Definition at line 195 of file helpers.hpp.
typedef ModelMatrix<Deps::DSCGraphBuilder, Deps::EVModelMatrixBuilder, MATRIX::EVMatrixConfig, IR::EventTable, IR::Event> MicroModelica::IR::LHSDSCMatrix |
Definition at line 97 of file model_matrix.hpp.
typedef ModelMatrix<Deps::LHSStGraphBuilder, Deps::EVModelMatrixBuilder, MATRIX::EVMatrixConfig, IR::EventTable, IR::Event> MicroModelica::IR::LHSSTMatrix |
Definition at line 99 of file model_matrix.hpp.
typedef std::map<int, std::list<Equation> > MicroModelica::IR::OrderedEquations |
Definition at line 165 of file equation.hpp.
typedef QSSModel<Deps::SOSBGraphBuilder> MicroModelica::IR::OutputModelGen |
Definition at line 122 of file qss_model.hpp.
typedef list<PrintedDep> MicroModelica::IR::PrintedDeps |
Definition at line 147 of file compute_deps.hpp.
typedef QSSModel<Deps::SDSBGraphBuilder> MicroModelica::IR::QSSModelGen |
Definition at line 118 of file qss_model.hpp.
typedef ModelTable<std::string, RangeDefinition> MicroModelica::IR::RangeDefinitionTable |
typedef ModelMatrix<Deps::RHSStGraphBuilder, Deps::EVModelMatrixBuilder, MATRIX::EVMatrixConfig, IR::EventTable, IR::Event> MicroModelica::IR::RHSSTMatrix |
Definition at line 101 of file model_matrix.hpp.
typedef ModelMatrix<Deps::SDSBGraphBuilder, Deps::EQModelMatrixBuilder, MATRIX::EQMatrixConfig, IR::EquationTable, IR::Equation> MicroModelica::IR::SDMatrix |
Definition at line 89 of file model_matrix.hpp.
typedef ModelMatrix<Deps::SOSBGraphBuilder, Deps::EQModelMatrixBuilder, MATRIX::EQMatrixConfig, IR::EquationTable, IR::Equation> MicroModelica::IR::SOMatrix |
Definition at line 93 of file model_matrix.hpp.
typedef ModelTable<int, Statement> MicroModelica::IR::StatementTable |
Definition at line 98 of file statement.hpp.
typedef ModelMatrix<Deps::SZSBGraphBuilder, Deps::EQModelMatrixBuilder, MATRIX::EQMatrixConfig, IR::EquationTable, IR::Equation> MicroModelica::IR::SZMatrix |
Definition at line 91 of file model_matrix.hpp.
typedef vector<int> MicroModelica::IR::Usage |
typedef QSSModel<Deps::SZSBGraphBuilder> MicroModelica::IR::ZCModelGen |
Definition at line 120 of file qss_model.hpp.
|
strong |
Enumerator | |
---|---|
DT_Fixed | |
DT_Asynchronous |
Definition at line 88 of file annotation.hpp.
|
strong |
Enumerator | |
---|---|
RandomSeed | |
CVODEMaxOrder | |
XOutput |
Definition at line 119 of file annotation.hpp.
|
strong |
Enumerator | |
---|---|
QSS | |
CQSS | |
LIQSS | |
QSS2 | |
LIQSS2 | |
LIQSS_BDF | |
QSS3 | |
LIQSS3 | |
QSS4 | |
DASSL | |
DOPRI | |
CVODE_BDF | |
CVODE_AM | |
IDA | |
mLIQSS | |
mLIQSS2 |
Definition at line 69 of file annotation.hpp.
string MicroModelica::IR::addAlgDeps | ( | Equation | eq, |
SB::Deps::LMapExp | eq_use, | ||
AlgDepsMap | alg_deps, | ||
AlgDepsMap | deps, | ||
PrintedDeps & | printed_deps, | ||
bool | comes_from_rec | ||
) |
Definition at line 123 of file compute_deps.cpp.
Referenced by MicroModelica::IR::QSSModelDepsGenerator::postProcess().
string MicroModelica::IR::addAlgDeps | ( | Equation | eq, |
SB::Deps::LMapExp | eq_use, | ||
std::map< int, AlgDeps > | der_deps, | ||
std::map< int, AlgDeps > | alg_deps, | ||
PrintedDeps & | printed_deps, | ||
bool | comes_from_rec = false |
||
) |
bool MicroModelica::IR::checkAlgRecursiveDeps | ( | Equation | eq, |
AlgDepsMap | alg_deps, | ||
AlgDepsMap | deps | ||
) |
Definition at line 105 of file compute_deps.cpp.
Referenced by findAlgDep(), and MicroModelica::IR::QSSModelDepsGenerator::postProcess().
Definition at line 194 of file compute_deps.cpp.
bool MicroModelica::IR::findAlgDep | ( | PrintedDeps | printed_deps, |
int | id, | ||
SB::Set | range, | ||
SB::Deps::LMapExp | use_map, | ||
SB::Deps::LMapExp | eq_use_map | ||
) |
Definition at line 91 of file compute_deps.cpp.
References checkAlgRecursiveDeps().
Definition at line 65 of file compute_deps.cpp.
Referenced by MicroModelica::IR::QSSModelDepsGenerator::visitF(), and MicroModelica::IR::ModelMatrixGenerator< NT, N, Config >::visitF().
EquationPrinter * MicroModelica::IR::getPrinter | ( | Equation | eq | ) |
Definition at line 64 of file equation_printer.cpp.
Referenced by MicroModelica::IR::Equation::index().
Expression MicroModelica::IR::getUseExp | ( | Variable | variable, |
DepData | dep_data | ||
) |
Definition at line 48 of file compute_deps.cpp.
References MicroModelica::IR::DepData::id, and MicroModelica::IR::DepData::var_dep.
Referenced by MicroModelica::IR::QSSModelDepsGenerator::postProcess().
Option<Range> MicroModelica::IR::getUseRange | ( | Util::Variable | variable, |
DepData | dep_data | ||
) |
Option<Range> MicroModelica::IR::getUseRange | ( | Util::Variable | variable, |
DepData | dep_data, | ||
N | node, | ||
bool | event = false , |
||
bool | path_recursive_deps = false |
||
) |
If the variable is recursive, return the entire variable range.
If a range of variables affects one equation, generate a range with variable size and offsets, the same is done if the opposite condition is met, return the range of the equations.
Definition at line 173 of file compute_deps.hpp.
Referenced by MicroModelica::IR::QSSModelDepsGenerator::postProcess().
Definition at line 213 of file compute_deps.cpp.
void MicroModelica::IR::insertAlg | ( | AlgDepsMap & | map, |
int | id, | ||
DefAlgDepsUse | new_dep | ||
) |
Definition at line 187 of file compute_deps.cpp.
Referenced by MicroModelica::IR::QSSModelDepsGenerator::visitF().
std::ostream& MicroModelica::IR::operator<< | ( | std::ostream & | out, |
const CompiledFunction & | cf | ||
) |
Definition at line 94 of file helpers.cpp.
std::ostream& MicroModelica::IR::operator<< | ( | std::ostream & | out, |
const Equation & | e | ||
) |
Definition at line 185 of file equation.cpp.
References MicroModelica::IR::Equation::_rhs, MicroModelica::IR::Expression::expression(), and MicroModelica::IR::Equation::isValid().
std::ostream& MicroModelica::IR::operator<< | ( | std::ostream & | out, |
const Expression & | s | ||
) |
Definition at line 178 of file expression.cpp.
std::ostream& MicroModelica::IR::operator<< | ( | std::ostream & | out, |
const ExternalFunction & | e | ||
) |
Definition at line 61 of file helpers.cpp.
std::ostream& MicroModelica::IR::operator<< | ( | std::ostream & | out, |
const Index & | i | ||
) |
Definition at line 240 of file index.cpp.
References MicroModelica::IR::Expression::isEmpty().
ostream& MicroModelica::IR::operator<< | ( | std::ostream & | out, |
const Input & | i | ||
) |
Definition at line 500 of file helpers.cpp.
std::ostream& MicroModelica::IR::operator<< | ( | std::ostream & | out, |
const Range & | r | ||
) |
std::ostream& MicroModelica::IR::operator<< | ( | std::ostream & | out, |
const Statement & | s | ||
) |
Definition at line 297 of file statement.cpp.
EquationTable MicroModelica::IR::zeroCrossingTable | ( | EventTable | events | ) |