CppADCodeGen  HEAD
A C++ Algorithmic Differentiation Package with Source Code Generation
CppAD::cg::Enode< Base > Class Template Reference
Inheritance diagram for CppAD::cg::Enode< Base >:
Inheritance graph
Collaboration diagram for CppAD::cg::Enode< Base >:
Collaboration graph

Public Member Functions

 Enode (size_t index, const std::string &name="")
 
 Enode (size_t index, Enode< Base > *differentiationOf)
 
const std::vector< Vnode< Base > * > & variables () const
 
const std::vector< Vnode< Base > * > & originalVariables () const
 
void addVariable (Vnode< Base > *j)
 
Vnode< Base > * assignmentVariable () const
 
void setAssigmentVariable (Vnode< Base > &j)
 
Enode< Base > * derivative () const
 
Enode< Base > * derivativeOf () const
 
Enode< Base > * originalEquation ()
 
void deleteNode (Vnode< Base > *j)
 
void setDerivative (Enode< Base > *difEq)
 
virtual const std::string & name () const
 
virtual std::string nodeType ()
 
void color (std::ostream &out=std::cout, Verbosity verbosity=Verbosity::None)
 
void uncolor ()
 
bool isColored () const
 
size_t index () const
 
void setIndex (size_t index)
 

Protected Attributes

std::vector< Vnode< Base > * > vnodes_orig_
 
std::vector< Vnode< Base > * > vnodes_
 
Enode< Base > * differentiation_
 
Enode< Base > * differentiationOf_
 
Vnode< Base > * assign_
 
std::string name_
 
size_t index_
 
bool colored_
 

Static Protected Attributes

static const std::string TYPE = "Equation"
 

Detailed Description

template<class Base>
class CppAD::cg::Enode< Base >

Equation nodes

Definition at line 81 of file bipartite_nodes.hpp.

Member Function Documentation

◆ derivative()

template<class Base>
Enode<Base>* CppAD::cg::Enode< Base >::derivative ( ) const
inline

Member Data Documentation

◆ differentiation_

template<class Base>
Enode<Base>* CppAD::cg::Enode< Base >::differentiation_
protected

the differentiated equation used to produce this one (B in Pantelides algorithm)

Definition at line 98 of file bipartite_nodes.hpp.

◆ differentiationOf_

template<class Base>
Enode<Base>* CppAD::cg::Enode< Base >::differentiationOf_
protected

Original equation which was differentiated

Definition at line 102 of file bipartite_nodes.hpp.

◆ name_

template<class Base>
std::string CppAD::cg::Enode< Base >::name_
protected

A name for the equation

Definition at line 110 of file bipartite_nodes.hpp.

◆ vnodes_

template<class Base>
std::vector<Vnode<Base>*> CppAD::cg::Enode< Base >::vnodes_
protected

Variables present in this equation which where not deleted. A vector is used instead of a set to ensure reproducibility.

Definition at line 93 of file bipartite_nodes.hpp.

◆ vnodes_orig_

template<class Base>
std::vector<Vnode<Base>*> CppAD::cg::Enode< Base >::vnodes_orig_
protected

Original variables present in this equation. A vector is used instead of a set to ensure reproducibility.

Definition at line 88 of file bipartite_nodes.hpp.


The documentation for this class was generated from the following file: