Classes | |
| class | coco::prep_d_eval |
| Preparation Evaluator for derivatives. More... | |
| struct | coco::func_d_eval_type |
| Visitor data for func_d_eval. More... | |
| class | coco::func_d_eval |
| Forward function evaluation with preparation of derivative data. More... | |
| struct | coco::der_eval_type |
| Visitor data for der_eval. More... | |
| class | coco::der_eval |
| Backward gradient evaluation with prepared derivative data. More... | |
| struct | coco::der_cache |
| Cache data for der_eval. More... | |
| struct | coco::diffI_eval_type |
| Visitor data for diffI_eval. More... | |
| class | coco::diffI_eval |
| Forward function range evaluation. More... | |
| struct | coco::diffNumber_eval_type |
| Visitor data for diffNumber_eval. More... | |
| class | coco::diffNumber_eval |
| Forward function range evaluation. More... | |
| class | coco::variable_indicator |
| Bitmap class used to indicate variable occurrence. More... | |
| class | coco::_evaluator_base< _Tp, _NData, _Result, _Walker > |
| Base class of all evaluators. More... | |
| class | coco::evaluator_base< _Tp, _NData, _Result, _Walker > |
| Base class of all (non-caching) evaluators. More... | |
| class | coco::cached_evaluator_base< _Tp, _NData, _Result, _Walker > |
| Base class of all caching evaluators. More... | |
| class | coco::forward_evaluator_base< _Tp, _NData, _Result, _Walker > |
| Base class of all (non-caching) forward evaluators. More... | |
| class | coco::backward_evaluator_base< _Tp, _NData, _Result, _Walker > |
| Base class of all (non-caching) backward evaluators. More... | |
| class | coco::cached_forward_evaluator_base< _Tp, _NData, _Result, _Walker > |
| Base class of all (non-caching) forward evaluators. More... | |
| class | coco::cached_backward_evaluator_base< _Tp, _NData, _Result, _Walker > |
| Base class of all caching backward evaluators. More... | |
| struct | coco::func_eval_type |
| Visitor data for func_eval. More... | |
| class | coco::func_eval |
| Forward function evaluation. More... | |
| struct | coco::func_cache |
| Cache data for func_eval. More... | |
| class | coco::prep_id_eval |
| Preparation Evaluator for interval derivatives. More... | |
| struct | coco::func_id_eval_type |
| Visitor data for func_id_eval. More... | |
| class | coco::func_id_eval |
| Forward function range evaluation with preparation of interval derivative data. More... | |
| struct | coco::ider_eval_type |
| Visitor data for ider_eval. More... | |
| class | coco::ider_eval |
| Backward interval gradient evaluation with prepared interval derivative data. More... | |
| struct | coco::iderf_ret_type |
| Visitor data for iderf_eval return value. More... | |
| struct | coco::iderf_eval_type |
| Visitor data for iderf_eval. More... | |
| class | coco::iderf_eval |
| Forward function and derivative range evaluation. More... | |
| struct | coco::interval_eval_type |
| Visitor data for interval_eval. More... | |
| class | coco::interval_eval |
| Forward function range evaluation. More... | |
| struct | coco::Islope_eval_type |
| Visitor data for Islope_eval. More... | |
| class | coco::Islope_eval |
| Forward function range evaluation. More... | |
| struct | coco::func_islp_return_type |
| The return type of the func_islp_eval evaluator. More... | |
| class | coco::prep_islp_eval |
| Preparation Evaluator for first order slopes. More... | |
| struct | coco::func_islp_eval_type |
| Visitor data for func_id_eval. More... | |
| class | coco::func_islp_eval |
| Forward function range evaluation with preparation of first order slope data. More... | |
| struct | coco::islp_eval_type |
| Visitor data for islp_eval. More... | |
| class | coco::islp_eval |
| Backward first order slope evaluation with prepared first order slope data. More... | |
Functions | |
| template<class _Walker , class _Visitor > | |
| _Visitor::return_value | coco::recursive_short_cut_walk (_Walker __w, _Visitor __f) |
| Perform a recursive graph walk with possible caching and short-cuts. | |
| template<class _Walker , class _Visitor > | |
| _Visitor::return_value | coco::_recursive_short_cut_walk (_Walker __w, _Visitor __f) |
| Perform a recursive graph walk with possible caching and short-cuts (internal). | |
| template<class _Visitor , class _Walker > | |
| _Visitor::return_value | coco::evaluate (_Visitor __v, _Walker __start) |
| Evaluate an evaluator on a DAG. | |
Variables | |
| struct coco::der_cache * | coco::f_data |
| Cache data for der_eval. | |
| _Visitor::return_value coco::_recursive_short_cut_walk | ( | _Walker | __w, | |
| _Visitor | __f | |||
| ) | [inline] |
This internal function performs a recursive pre+post order walk starting at __w. At every node various methods of the visitor __f are called:
vinitis called before walking for every virtual node
vcollectis called after a child of a virtual node has finished
vvalueis called to compute the return value of a virtual node
preorderis called before the children are visited. The return value of this method determines the further graph walk:
| <0 | perform a short-cut (the short_cut_to method will be called), |
| 0 | don't visit the children, proceed with postorder, |
| >0 | continue with the walk by visiting the children. |
collectis called everytime a child has finished. The return value of this method determines the further graph walk:
| <0 | stop visiting children of this node, |
| 0 | continue with the graph walk downwards the next child, |
| >0 | skip the specified number of children. |
postorderis called after all children have been visited
valueis called to compute the return value for this node
short_cut_tois called to provide the target of the short cut if a short cut is signalled by preorder.
This function does not check for hitting the virtual ground node.
Definition at line 1079 of file evaluator.h.
| _Visitor::return_value coco::evaluate | ( | _Visitor | __v, | |
| _Walker | __start | |||
| ) | [inline] |
This function evaluates the evaluator __v on the graph, calculating the result for the node pointed at by __start.
Definition at line 1127 of file evaluator.h.
| _Visitor::return_value coco::recursive_short_cut_walk | ( | _Walker | __w, | |
| _Visitor | __f | |||
| ) | [inline] |
Perform a recursive pre+post order walk starting at __w. At every node various methods of the visitor __f are called:
vinitis called before walking for every virtual node
vcollectis called after a child of a virtual node has finished
vvalueis called to compute the return value of a virtual node
preorderis called before the children are visited. The return value of this method determines the further graph walk:
| <0 | perform a short-cut (the short_cut_to method will be called), |
| 0 | don't visit the children, proceed with postorder, |
| >0 | continue with the walk by visiting the children. |
collectis called everytime a child has finished. The return value of this method determines the further graph walk:
| <0 | stop visiting children of this node, |
| 0 | continue with the graph walk downwards the next child, |
| >0 | skip the specified number of children. |
postorderis called after all children have been visited
valueis called to compute the return value for this node
short_cut_tois called to provide the target of the short cut if a short cut is signalled by preorder.
Definition at line 989 of file evaluator.h.
| struct coco::der_cache* coco::f_data |
1.5.8