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

Public Member Functions

 Vnode (size_t index, int tapeIndex, const std::string &name)
 
 Vnode (size_t index, size_t tapeIndex, Vnode< Base > *derivativeOf, const std::string &name="")
 
virtual const std::string & name () const
 
size_t tapeIndex () const
 
void setTapeIndex (size_t tapeIndex)
 
std::vector< Enode< Base > * > & equations ()
 
const std::vector< Enode< Base > * > & equations () const
 
Vnode< Base > * derivative () const
 
Vnode< Base > * antiDerivative () const
 
Vnode< Base > * originalVariable ()
 
Vnode< Base > * originalVariable (size_t origVarSize)
 
bool isDeleted () const
 
void makeParameter (std::ostream &out=std::cout, Verbosity verbosity=Verbosity::None)
 
bool isParameter () const
 
void deleteNode (std::ostream &out=std::cout, Verbosity verbosity=Verbosity::None)
 
Enode< Base > * assignmentEquation () const
 
void setAssignmentEquation (Enode< Base > &i, std::ostream &out=std::cout, Verbosity verbosity=Verbosity::None)
 
virtual std::string nodeType ()
 
void setDerivative (Vnode< Base > *div)
 
unsigned int order () const
 
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 Member Functions

void addEquation (Enode< Base > *i)
 

Protected Attributes

bool deleted_
 
bool parameter_
 
std::vector< Enode< Base > * > enodes_
 
Enode< Base > * assign_
 
Vnode< Base > * derivative_
 
Vnode< Base > *const antiDerivative_
 
size_t tapeIndex_
 
std::string name_
 
size_t index_
 
bool colored_
 

Static Protected Attributes

static const std::string TYPE = "Variable"
 

Friends

class Enode< Base >
 

Detailed Description

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

Variable nodes

Definition at line 75 of file bipartite_nodes.hpp.

Member Function Documentation

◆ antiDerivative()

◆ derivative()

Member Data Documentation

◆ antiDerivative_

template<class Base>
Vnode<Base>* const CppAD::cg::Vnode< Base >::antiDerivative_
protected

the variable which was differentiated to create this one

Definition at line 246 of file bipartite_nodes.hpp.

◆ derivative_

template<class Base>
Vnode<Base>* CppAD::cg::Vnode< Base >::derivative_
protected

the time derivative variable of this variable (A in Pantelides algorithm)

Definition at line 242 of file bipartite_nodes.hpp.

◆ enodes_

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

Equations that use this variable. A vector is used instead of a set to ensure reproducibility.

Definition at line 233 of file bipartite_nodes.hpp.

◆ name_

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

name

Definition at line 254 of file bipartite_nodes.hpp.

◆ parameter_

template<class Base>
bool CppAD::cg::Vnode< Base >::parameter_
protected

Whether or not this variable is time dependent

Definition at line 228 of file bipartite_nodes.hpp.

◆ tapeIndex_

template<class Base>
size_t CppAD::cg::Vnode< Base >::tapeIndex_
protected

The index in the tape

Definition at line 250 of file bipartite_nodes.hpp.


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