#include <model.h>
Classes | |
struct | __docompare_nodes |
struct | __docompare_variables |
class | detect_0chain_visitor |
struct | detect_0chain_visitor_st |
class | lincoeff_visitor |
struct | lincoeff_visitor_ret |
struct | lincoeff_visitor_st |
class | simplify_visitor_0 |
class | simplify_visitor_m |
class | sort_constraints |
Public Types | |
typedef dag< expression_node > ::walker | walker |
typedef dag< expression_node > ::const_walker | const_walker |
typedef std::vector< walker > ::iterator | ref_iterator |
typedef std::vector< walker > ::const_iterator | const_ref_iterator |
typedef _Base::children_iterator | children_iterator |
typedef _Base::parents_iterator | parents_iterator |
typedef _Base::children_const_iterator | children_const_iterator |
typedef _Base::parents_const_iterator | parents_const_iterator |
typedef _Base::erased_part | erased_part |
typedef _SequenceCtr< void *, _PtrAlloc > | container_type |
typedef _DG_iterator< _Tp, _Tp &, _Tp *, container_type, children_iterator, children_const_iterator > | iterator |
typedef _DG_iterator< _Tp, const _Tp &, const _Tp *, container_type, children_iterator, children_const_iterator > | const_iterator |
typedef std::reverse_iterator < const_iterator > | const_reverse_iterator |
typedef std::reverse_iterator < iterator > | reverse_iterator |
typedef std::pair< walker, walker > | edge |
typedef std::pair< edge, bool > | enhanced_edge |
typedef _Tp | value_type |
typedef _Node | node_type |
typedef value_type * | pointer |
typedef const value_type * | const_pointer |
typedef value_type & | reference |
typedef const value_type & | const_reference |
typedef size_t | size_type |
typedef ptrdiff_t | difference_type |
Public Member Functions | |
model (model_gid *__id=NULL, bool clone=false) | |
model (model_gid *__id, const erased_part &_ep, bool clone=false) | |
model (int __num_of_vars) | |
model (const model &__m) | |
model (model_gid *__id, const model &__m) | |
model (std::istream &inp, bool do_simplify=true, vdbl::database *_db=NULL, vdbl::userid _uid=vdbl::userid(), std::vector< annotation > *_la=NULL, std::string mname=std::string(), bool continue_on_errors=false) | |
model (const char *name, bool do_simplify=true, vdbl::database *_db=NULL, vdbl::userid _uid=vdbl::userid(), std::vector< annotation > *_la=NULL, bool continue_on_errors=false) | |
~model () | |
int | next_num () |
int | next_variable_num () |
int | next_constraint_num () |
void | detach_gid () |
void | compress_numbers () |
void | renumber_variables () |
void | renumber_constraints () |
void | prepare_kill () |
bool | micro_simplify () |
bool | basic_simplify () |
void | arrange_constraints () |
void | detect_0chain () |
bool | simplify_thin () |
void | set_counters () |
void | clr_sky_ground_link () |
void | write (std::ostream &__o=std::cout) const |
void | check_counters (bool reset) const |
ref_iterator | ghost_begin () |
const_ref_iterator | ghost_begin () const |
ref_iterator | ghost_end () |
const_ref_iterator | ghost_end () const |
walker | store_node (const walker &_w) |
walker | store_variable (const walker &_w) |
walker | store_ghost (const walker &_w) |
walker | store_constraint (const walker &_w) |
void | free_node_num (unsigned int _nnum) |
void | free_var_num (int _vnum) |
void | free_const_num (const walker &_w, unsigned int _cnum) |
void | free_all () |
void | free_nodes_on_destroy () |
void | keep_nodes_on_destroy () |
void | new_variables (int _new_num_of_vars) |
bool | is_empty (const walker &_w) const |
walker | empty_reference () const |
bool | get_linear_coeffs (const const_walker &expr, linalg::sparse_vector< double > &coeffs, double &constant, const std::vector< interval > &_ranges) |
bool | get_linear_coeffs (const const_walker &expr, linalg::sparse_vector< double > &coeffs, double &constant) |
bool | check_acyclicity (const walker &__parent, const walker &__child) |
void | clear () |
walker | between (const walker &__parent, const children_iterator &__cit, const walker &__child, const parents_iterator &__pit, const _Tp &__x) |
walker | between (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children, const _Tp &__x) |
walker | between (const walker &__parent, const children_iterator &__cit, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
walker | between (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const parents_iterator &__pit, const _Tp &__x) |
walker | split (const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it, const _Tp &__x) |
void | split (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children, const _Tp &__x) |
walker | split (const walker &__parent, const children_iterator &__ch_it, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
walker | split (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const parents_iterator &__pr_it, const _Tp &__x) |
walker | between_back (const walker &__parent, const walker &__child, const _Tp &__x) |
walker | between_back (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
walker | between_back (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
walker | split_back (const walker &__parent, const walker &__child, const _Tp &__x) |
walker | split_back (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
walker | split_back (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
walker | between_front (const walker &__parent, const walker &__child, const _Tp &__x) |
walker | between_front (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
walker | between_front (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
walker | split_front (const walker &__parent, const walker &__child, const _Tp &__x) |
walker | split_front (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
walker | split_front (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
void | insert_subgraph (_Self &__subgraph, const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it) |
void | insert_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
void | insert_subgraph (_Self &__subgraph, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
void | insert_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
void | insert_subgraph (_Self &__subgraph, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
void | insert_back_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child) |
void | insert_front_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child) |
void | add_edge (const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it) |
void | add_edge (const edge &__edge, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
void | add_edge (const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
void | add_edge (const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
void | add_edge_back (const walker &__parent, const walker &__child) |
void | add_edge_front (const walker &__parent, const walker &__child) |
allocator_type | get_allocator () const |
walker | ground () |
const_walker | ground () const |
walker | sky () |
const_walker | sky () const |
children_iterator | root_begin () |
children_const_iterator | root_begin () const |
children_iterator | root_end () |
children_const_iterator | root_end () const |
parents_iterator | leaf_begin () |
parents_const_iterator | leaf_begin () const |
parents_iterator | leaf_end () |
parents_const_iterator | leaf_end () const |
bool | empty () const |
size_type | size () const |
size_type | max_size () const |
void | swap (_Self &__x) |
walker | insert_node_in_graph (_Node *__n, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_node_in_graph (_Node *__node, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_node_in_graph (_Node *__node, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_node_in_graph (_Node *__node, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
walker | insert_node_in_graph (_Node *__n, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_node_in_graph (_Node *__node, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_node_in_graph (_Node *__node, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_node_in_graph (_Node *__node, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
walker | insert_in_graph (const _Tp &__x, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_in_graph (const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_in_graph (const _Tp &__x, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_in_graph (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_in_graph (const _Tp &__x, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_in_graph (const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_in_graph (const _Tp &__x, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
walker | insert_in_graph (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
walker | insert_in_graph (const _Tp &__x, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_in_graph (const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
walker | insert_in_graph (const _Tp &__x, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_in_graph (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
walker | insert_in_graph (const _Tp &__x, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_in_graph (const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
walker | insert_in_graph (const _Tp &__x, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
walker | insert_in_graph (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
void | replace_edge_to_child (const walker &__parent, const walker &__child_old, const walker &__child_new) |
void | replace_edge_to_child (const walker &__parent, const walker &__child_old, const walker &__child_new) |
void | replace_edge_to_parent (const walker &__parent_old, const walker &__parent_new, const walker &__child) |
void | replace_edge_to_parent (const walker &__parent_old, const walker &__parent_new, const walker &__child) |
void | remove_edge (const edge &__edge) |
void | remove_edge (const walker &__parent, const walker &__child) |
void | remove_edge (const walker &__parent, const walker &__child) |
void | remove_edge_and_deattach (const walker &__parent, const walker &__child) |
void | remove_edge_and_deattach (const walker &__parent, const walker &__child) |
void | sort_child_edges (walker __position, children_iterator first, children_iterator last, Compare comp) |
void | sort_child_edges (walker __position, Compare comp) |
void | sort_child_edges (walker __position, children_iterator first, children_iterator last, Compare comp) |
void | sort_child_edges (walker __position, Compare comp) |
void | sort_parent_edges (walker __position, parents_iterator first, parents_iterator last, Compare comp) |
void | sort_parent_edges (walker __position, Compare comp) |
void | sort_parent_edges (walker __position, parents_iterator first, parents_iterator last, Compare comp) |
void | sort_parent_edges (walker __position, Compare comp) |
walker | insert_node (_Node *_node, const walker &__position, const container_insert_arg &__It) |
walker | insert_node (const _Tp &__x, const walker &__position, const container_insert_arg &__It) |
walker | insert_node (const walker &__position, const container_insert_arg &__It) |
walker | insert_node (_Node *_node, const walker &__position, const container_insert_arg &__It) |
walker | insert_node (const _Tp &__x, const walker &__position, const container_insert_arg &__It) |
walker | insert_node (const walker &__position, const container_insert_arg &__It) |
walker | insert_node_before (_Node *_node, const walker &__position, const container_insert_arg &__It) |
void | insert_node_before (const _Tp &__x, const walker &__position, const container_insert_arg &__It) |
void | insert_node_before (const walker &__position, const container_insert_arg &__It) |
walker | insert_node_before (_Node *_node, const walker &__position, const container_insert_arg &__It) |
void | insert_node_before (const _Tp &__x, const walker &__position, const container_insert_arg &__It) |
void | insert_node_before (const walker &__position, const container_insert_arg &__It) |
void | merge (const walker &__position, const walker &__second, bool merge_parent_edges=true, bool merge_child_edges=true) |
void | merge (const walker &__position, const walker &__second, bool merge_parent_edges=true, bool merge_child_edges=true) |
void | erase (const walker &__position) |
void | erase (const walker &__position) |
void | partial_erase_to_parent (const walker &__position, const walker &__parent, unsigned int idx) |
void | partial_erase_to_parent (const walker &__position, const walker &__parent, unsigned int idx) |
void | clear_erased_part (erased_part &_ep) |
void | clear_erased_part (erased_part &_ep) |
erased_part | erase_maximal_subgraph (const walker &__position) |
erased_part | erase_maximal_subgraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_maximal_subgraph (const walker &__position) |
erased_part | erase_maximal_subgraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_minimal_subgraph (const walker &__position) |
erased_part | erase_minimal_subgraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_minimal_subgraph (const walker &__position) |
erased_part | erase_minimal_subgraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_maximal_pregraph (const walker &__position) |
erased_part | erase_maximal_pregraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_maximal_pregraph (const walker &__position) |
erased_part | erase_maximal_pregraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_minimal_pregraph (const walker &__position) |
erased_part | erase_minimal_pregraph (const __SequenceCtr< walker, _Allocator > &__positions) |
erased_part | erase_minimal_pregraph (const walker &__position) |
erased_part | erase_minimal_pregraph (const __SequenceCtr< walker, _Allocator > &__positions) |
bool | erase_child (const walker &__position, const children_iterator &__It) |
bool | erase_child (const walker &__position, const children_iterator &__It) |
bool | erase_parent (const walker &__position, const parents_iterator &__It) |
bool | erase_parent (const walker &__position, const parents_iterator &__It) |
Methods for model access | |
These methods can be used for accessing important information of a model and the nodes, variables, constraints,... | |
unsigned int | number_of_variables () const |
unsigned int | number_of_nodes () const |
unsigned int | number_of_constraints () const |
unsigned int | number_of_managed_nodes () const |
unsigned int | number_of_managed_variables () const |
unsigned int | number_of_managed_constraints () const |
const walker & | var (unsigned int i) const |
const walker & | node (unsigned int i) const |
const walker & | constraint (unsigned int i) const |
model_gid * | gid_data () const |
void | remove_node (const walker &_w, unsigned int _nnum) |
void | remove_node (const walker &_w) |
void | remove_node (unsigned int __node_num) |
Model construction methods | |
walker | ghost (unsigned int _nnum) |
walker | constant (double _constant) |
walker | constant (const std::vector< double > &_constant) |
walker | variable (unsigned int _vnum) |
walker | binary (const walker &_op1, const walker &_op2, int expr_type, double _coeff1=1.0, double _coeff2=1.0) |
walker | binary (const walker &_op1, const walker &_op2, int expr_type, const basic_alltype &_params, double _coeff1=1.0, double _coeff2=1.0) |
walker | unary (const walker &_op1, int expr_type, double _coeff=1.0) |
walker | unary (const walker &_op1, int expr_type, const basic_alltype &_params, double _coeff=1.0) |
walker | nary (const std::vector< walker > &_op, int expr_type, const std::vector< double > &_coeffs=std::vector< double >()) |
walker | nary (const std::vector< walker > &_op, int expr_type, const basic_alltype &_params, const std::vector< double > &_coeffs=std::vector< double >()) |
walker | vnary (int expr_type,...) |
walker | vxnary (const basic_alltype &_params, int expr_type,...) |
Methods for retrieving modeling information | |
These methods return names of variables and constants and other data which is irrelevant for the solution process but necessary for user interaction. | |
const std::string | model_name () const |
const std::string | var_name (unsigned int n) const |
const std::string | const_name (unsigned int n) const |
const std::string | obj_name () const |
double | obj_adj () const |
double | obj_mult () const |
size_t | n_fixed_vars () const |
std::pair< const std::string, double > | fixed_var (unsigned int n) const |
size_t | n_unused_vars () const |
const std::string & | unused_var (unsigned int n) const |
size_t | n_unused_constrs () const |
const std::string & | unused_constr (unsigned int n) const |
const std::map< int, std::vector< double > > & | trace_points () const |
const std::map< int, std::vector< double > > & | optima () const |
bool | get_const_num (unsigned int node_num, unsigned int &const_num) const |
Public Attributes | |
linalg::matrix< double > | lin |
std::vector< linalg::matrix < double > > | matd |
std::vector< linalg::matrix < interval > > | mati |
int | ocoeff |
walker | objective |
std::vector< walker > | constraints |
bool | has_read_errors |
Protected Types | |
typedef _Base::allocator_type | allocator_type |
Protected Member Functions | |
_Node * | _C_create_node (const _Tp &__x) |
_Node * | _C_create_node () |
void | _C_destroy_node (_Node *__p) |
void | clear_graph (_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_node) |
void | clear_graph (_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_node) |
_DG_node< _Tp, _SequenceCtr < void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator > * | _C_get_node () |
void | _C_put_node (_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *__p) |
void | _C_put_node (_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *__p) |
void | clear_children () |
void | clear_parents () |
void | add_all_children (_Output_Iterator fi, _DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_parent) |
void | add_all_children (_Output_Iterator fi, _DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_parent) |
void | add_all_parents (_Output_Iterator fi, _DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_child) |
void | add_all_parents (_Output_Iterator fi, _DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_child) |
Protected Attributes | |
_DG_node< _Tp, _SequenceCtr < void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator > * | _C_ground |
_DG_node< _Tp, _SequenceCtr < void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator > * | _C_sky |
int | _C_mark |
Friends | |
class | dag_delta |
class | dag_undelta |
dag<expression_node>
, so the optimization problem is stored in form of a DAG of nodes of type expression_node. Models are internally represented by a hierarchy of classes: model_iddata, model_gid, model.
Definition at line 55 of file model.h.
typedef _Base::allocator_type dag< class, _SequenceCtr, class, class >::allocator_type [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef _Base::children_const_iterator dag< class, _SequenceCtr, class, class >::children_const_iterator [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef _Base::children_iterator dag< class, _SequenceCtr, class, class >::children_iterator [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef _DG_iterator< _Tp, const _Tp &, const _Tp *, container_type, children_iterator, children_const_iterator > dag< class, _SequenceCtr, class, class >::const_iterator [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef const value_type * dag< class, _SequenceCtr, class, class >::const_pointer [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef std::vector<walker>::const_iterator coco::model::const_ref_iterator |
typedef const value_type & dag< class, _SequenceCtr, class, class >::const_reference [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef std::reverse_iterator< const_iterator > dag< class, _SequenceCtr, class, class >::const_reverse_iterator [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Const walker (generalized const pointer) to the DAG.
Reimplemented from dag< expression_node >.
typedef _SequenceCtr< void *, _PtrAlloc > dag< class, _SequenceCtr, class, class >::container_type [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef ptrdiff_t dag< class, _SequenceCtr, class, class >::difference_type [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef std::pair< edge, bool > dag< class, _SequenceCtr, class, class >::enhanced_edge [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef _Base::erased_part dag< class, _SequenceCtr, class, class >::erased_part [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef _DG_iterator< _Tp, _Tp &, _Tp *, container_type, children_iterator, children_const_iterator > dag< class, _SequenceCtr, class, class >::iterator [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef _Base::parents_const_iterator dag< class, _SequenceCtr, class, class >::parents_const_iterator [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef _Base::parents_iterator dag< class, _SequenceCtr, class, class >::parents_iterator [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef value_type * dag< class, _SequenceCtr, class, class >::pointer [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef std::vector<walker>::iterator coco::model::ref_iterator |
typedef value_type & dag< class, _SequenceCtr, class, class >::reference [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef std::reverse_iterator< iterator > dag< class, _SequenceCtr, class, class >::reverse_iterator [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef _Tp dag< class, _SequenceCtr, class, class >::value_type [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
typedef dag<expression_node>::walker coco::model::walker |
Walker (generalized pointer) to the DAG.
Reimplemented from dag< expression_node >.
coco::model::model | ( | model_gid * | __id = NULL , |
|
bool | clone = false | |||
) | [inline] |
coco::model::model | ( | model_gid * | __id, | |
const erased_part & | _ep, | |||
bool | clone = false | |||
) |
coco::model::model | ( | int | __num_of_vars | ) | [inline] |
coco::model::model | ( | const model & | __m | ) | [inline] |
coco::model::model | ( | std::istream & | inp, | |
bool | do_simplify = true , |
|||
vdbl::database * | _db = NULL , |
|||
vdbl::userid | _uid = vdbl::userid() , |
|||
std::vector< annotation > * | _la = NULL , |
|||
std::string | mname = std::string() , |
|||
bool | continue_on_errors = false | |||
) |
This constructor reads a model in .dag format from istream
inp
and builds the internal structure. The parameter do_simplify
determines, whether the simplifier is invoked after reading. The parameters _db
, _uid
, and _la
can be used to initialize the search database and the model annotations. The parameter mname
can be used to initialize the model name. If continue_on_errors
is true
, the constructor does not throw an I/O exception.
coco::model::model | ( | const char * | name, | |
bool | do_simplify = true , |
|||
vdbl::database * | _db = NULL , |
|||
vdbl::userid | _uid = vdbl::userid() , |
|||
std::vector< annotation > * | _la = NULL , |
|||
bool | continue_on_errors = false | |||
) |
This constructor reads a model in .dag format from file
name
and builds the internal structure. The parameter do_simplify
determines, whether the simplifier is invoked after reading. The parameters _db
, _uid
, and _la
can be used to initialize the search database and the model annotations. If continue_on_errors
is true
, the constructor does not throw an I/O exception.
_Node * dag< class, _SequenceCtr, class, class >::_C_create_node | ( | ) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
_Node * dag< class, _SequenceCtr, class, class >::_C_create_node | ( | const _Tp & | __x | ) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::_C_destroy_node | ( | _Node * | __p | ) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > * dag< class, _SequenceCtr, class, class >::_C_get_node | ( | ) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void _DG_base< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _Alloc >::_C_put_node | ( | _DG_node< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator > * | __p | ) | [protected, inherited] |
void dag< class, _SequenceCtr, class, class >::_C_put_node | ( | _DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > * | __p | ) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void _DG_base< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _Alloc >::add_all_children | ( | _Output_Iterator | fi, | |
_DG_node< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator > * | _parent | |||
) | [protected, inherited] |
void dag< class, _SequenceCtr, class, class >::add_all_children | ( | _Output_Iterator | fi, | |
_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > * | _parent | |||
) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void _DG_base< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _Alloc >::add_all_parents | ( | _Output_Iterator | fi, | |
_DG_node< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator > * | _child | |||
) | [protected, inherited] |
void dag< class, _SequenceCtr, class, class >::add_all_parents | ( | _Output_Iterator | fi, | |
_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > * | _child | |||
) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::add_edge | ( | const walker & | __parent, | |
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::add_edge | ( | const walker & | __parent, | |
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::add_edge | ( | const edge & | __edge, | |
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::add_edge | ( | const walker & | __parent, | |
const children_iterator & | __ch_it, | |||
const walker & | __child, | |||
const parents_iterator & | __pa_it | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::add_edge_back | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::add_edge_front | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void coco::model::arrange_constraints | ( | ) | [inline] |
bool coco::model::basic_simplify | ( | ) |
walker dag< class, _SequenceCtr, class, class >::between | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const parents_iterator & | __pit, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between | ( | const walker & | __parent, | |
const children_iterator & | __cit, | |||
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between | ( | const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |
const __SequenceCtr2< walker, _Allocator2 > & | __children, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between | ( | const walker & | __parent, | |
const children_iterator & | __cit, | |||
const walker & | __child, | |||
const parents_iterator & | __pit, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between_back | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between_back | ( | const walker & | __parent, | |
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between_back | ( | const walker & | __parent, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between_front | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between_front | ( | const walker & | __parent, | |
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::between_front | ( | const walker & | __parent, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
model::walker coco::model::binary | ( | const walker & | _op1, | |
const walker & | _op2, | |||
int | expr_type, | |||
const basic_alltype & | _params, | |||
double | _coeff1 = 1.0 , |
|||
double | _coeff2 = 1.0 | |||
) | [inline] |
model::walker coco::model::binary | ( | const walker & | _op1, | |
const walker & | _op2, | |||
int | expr_type, | |||
double | _coeff1 = 1.0 , |
|||
double | _coeff2 = 1.0 | |||
) | [inline] |
bool dag< class, _SequenceCtr, class, class >::check_acyclicity | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inherited] |
void coco::model::check_counters | ( | bool | reset | ) | const |
void dag< class, _SequenceCtr, class, class >::clear | ( | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::clear_children | ( | ) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::clear_erased_part | ( | erased_part & | _ep | ) | [inherited] |
void dag< class, _SequenceCtr, class, class >::clear_erased_part | ( | erased_part & | _ep | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void _DG_base< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _Alloc >::clear_graph | ( | _DG_node< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator > * | _node | ) | [protected, inherited] |
void dag< class, _SequenceCtr, class, class >::clear_graph | ( | _DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > * | _node | ) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::clear_parents | ( | ) | [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void coco::model::clr_sky_ground_link | ( | ) | [inline] |
void coco::model::compress_numbers | ( | ) | [inline] |
If this method is called, the nodes, variables, and constraints are renumbered to fill gaps (unused numbers). To keep the model hierarchy consistent, all numbers in all models in the same model_iddata are changed.
const std::string coco::model::const_name | ( | unsigned int | n | ) | const [inline] |
model::walker coco::model::constant | ( | const std::vector< double > & | _constant | ) | [inline] |
model::walker coco::model::constant | ( | double | _constant | ) | [inline] |
const model::walker & coco::model::constraint | ( | unsigned int | i | ) | const [inline] |
void coco::model::detach_gid | ( | ) | [inline] |
void coco::model::detect_0chain | ( | ) |
bool dag< class, _SequenceCtr, class, class >::empty | ( | ) | const [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
model::walker coco::model::empty_reference | ( | ) | const [inline] |
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase | ( | const walker & | __position | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
bool __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_child | ( | const walker & | __position, | |
const children_iterator & | __It | |||
) | [inherited] |
bool dag< class, _SequenceCtr, class, class >::erase_child | ( | const walker & | __position, | |
const children_iterator & | __It | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
erased_part __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_maximal_pregraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inherited] |
erased_part __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_maximal_pregraph | ( | const walker & | __position | ) | [inherited] |
erased_part dag< class, _SequenceCtr, class, class >::erase_maximal_pregraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
erased_part dag< class, _SequenceCtr, class, class >::erase_maximal_pregraph | ( | const walker & | __position | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
erased_part __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_maximal_subgraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inherited] |
erased_part __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_maximal_subgraph | ( | const walker & | __position | ) | [inherited] |
erased_part dag< class, _SequenceCtr, class, class >::erase_maximal_subgraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
erased_part dag< class, _SequenceCtr, class, class >::erase_maximal_subgraph | ( | const walker & | __position | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
erased_part __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_minimal_pregraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inherited] |
erased_part __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_minimal_pregraph | ( | const walker & | __position | ) | [inherited] |
erased_part dag< class, _SequenceCtr, class, class >::erase_minimal_pregraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
erased_part dag< class, _SequenceCtr, class, class >::erase_minimal_pregraph | ( | const walker & | __position | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
erased_part __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_minimal_subgraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inherited] |
erased_part __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_minimal_subgraph | ( | const walker & | __position | ) | [inherited] |
erased_part dag< class, _SequenceCtr, class, class >::erase_minimal_subgraph | ( | const __SequenceCtr< walker, _Allocator > & | __positions | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
erased_part dag< class, _SequenceCtr, class, class >::erase_minimal_subgraph | ( | const walker & | __position | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
bool __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::erase_parent | ( | const walker & | __position, | |
const parents_iterator & | __It | |||
) | [inherited] |
bool dag< class, _SequenceCtr, class, class >::erase_parent | ( | const walker & | __position, | |
const parents_iterator & | __It | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
std::pair< const std::string, double > coco::model::fixed_var | ( | unsigned int | n | ) | const [inline] |
void coco::model::free_all | ( | ) | [inline] |
void coco::model::free_const_num | ( | const walker & | _w, | |
unsigned int | _cnum | |||
) | [inline] |
void coco::model::free_node_num | ( | unsigned int | _nnum | ) | [inline] |
void coco::model::free_nodes_on_destroy | ( | ) | [inline] |
void coco::model::free_var_num | ( | int | _vnum | ) | [inline] |
allocator_type dag< class, _SequenceCtr, class, class >::get_allocator | ( | ) | const [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
bool coco::model::get_const_num | ( | unsigned int | node_num, | |
unsigned int & | const_num | |||
) | const [inline] |
bool coco::model::get_linear_coeffs | ( | const const_walker & | expr, | |
linalg::sparse_vector< double > & | coeffs, | |||
double & | constant | |||
) | [inline] |
bool coco::model::get_linear_coeffs | ( | const const_walker & | expr, | |
linalg::sparse_vector< double > & | coeffs, | |||
double & | constant, | |||
const std::vector< interval > & | _ranges | |||
) | [inline] |
A call to this method retrieves the coefficients (coeffs
) and the constant (constant
) of the linear function, whose result node is expr
. It returns true
, if the expression was indeed linear and false
otherwise. The retrieval of the coefficients is to be performed in the feasible set determined by the node ranges _ranges
.
model::walker coco::model::ghost | ( | unsigned int | _nnum | ) | [inline] |
const_ref_iterator coco::model::ghost_begin | ( | ) | const [inline] |
ref_iterator coco::model::ghost_begin | ( | ) | [inline] |
const_ref_iterator coco::model::ghost_end | ( | ) | const [inline] |
ref_iterator coco::model::ghost_end | ( | ) | [inline] |
model_gid* coco::model::gid_data | ( | ) | const [inline] |
const_walker dag< class, _SequenceCtr, class, class >::ground | ( | ) | const [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::insert_back_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const walker & | __child | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::insert_front_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const walker & | __child | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_in_graph | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_in_graph | ( | const _Tp & | __x, | |
const __SequenceCtr< walker, _Allocator > & | __parents, | |||
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_in_graph | ( | const walker & | __parent, | |
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_in_graph | ( | const _Tp & | __x, | |
const walker & | __parent, | |||
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_in_graph | ( | const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_in_graph | ( | const _Tp & | __x, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_in_graph | ( | const walker & | __parent, | |
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_in_graph | ( | const _Tp & | __x, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
walker dag< class, _SequenceCtr, class, class >::insert_in_graph | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_in_graph | ( | const _Tp & | __x, | |
const __SequenceCtr< walker, _Allocator > & | __parents, | |||
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_in_graph | ( | const walker & | __parent, | |
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_in_graph | ( | const _Tp & | __x, | |
const walker & | __parent, | |||
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_in_graph | ( | const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_in_graph | ( | const _Tp & | __x, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_in_graph | ( | const walker & | __parent, | |
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_in_graph | ( | const _Tp & | __x, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node | ( | const walker & | __position, | |
const container_insert_arg & | __It | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node | ( | const _Tp & | __x, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node | ( | _Node * | _node, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inherited] |
walker dag< class, _SequenceCtr, class, class >::insert_node | ( | const walker & | __position, | |
const container_insert_arg & | __It | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_node | ( | const _Tp & | __x, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_node | ( | _Node * | _node, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node_before | ( | const walker & | __position, | |
const container_insert_arg & | __It | |||
) | [inherited] |
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node_before | ( | const _Tp & | __x, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node_before | ( | _Node * | _node, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::insert_node_before | ( | const walker & | __position, | |
const container_insert_arg & | __It | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::insert_node_before | ( | const _Tp & | __x, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_node_before | ( | _Node * | _node, | |
const walker & | __position, | |||
const container_insert_arg & | __It | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node_in_graph | ( | _Node * | __node, | |
const __SequenceCtr< walker, _Allocator > & | __parents, | |||
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node_in_graph | ( | _Node * | __node, | |
const walker & | __parent, | |||
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node_in_graph | ( | _Node * | __node, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inherited] |
walker __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_node_in_graph | ( | _Node * | __n, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
walker dag< class, _SequenceCtr, class, class >::insert_node_in_graph | ( | _Node * | __node, | |
const __SequenceCtr< walker, _Allocator > & | __parents, | |||
const walker & | __child, | |||
const container_insert_arg & | __cref | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_node_in_graph | ( | _Node * | __node, | |
const walker & | __parent, | |||
const container_insert_arg & | __pref, | |||
const __SequenceCtr< walker, _Allocator > & | __children | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_node_in_graph | ( | _Node * | __node, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::insert_node_in_graph | ( | _Node * | __n, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_subgraph | ( | _Self & | __subgraph, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inherited] |
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::insert_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::insert_subgraph | ( | _Self & | __subgraph, | |
const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |||
const __SequenceCtr2< walker, _Allocator2 > & | __children | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::insert_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const walker & | __child, | |||
const container_insert_arg & | __Itc, | |||
const container_insert_arg & | __Itp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::insert_subgraph | ( | _Self & | __subgraph, | |
const walker & | __parent, | |||
const children_iterator & | __ch_it, | |||
const walker & | __child, | |||
const parents_iterator & | __pa_it | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
bool coco::model::is_empty | ( | const walker & | _w | ) | const [inline] |
void coco::model::keep_nodes_on_destroy | ( | ) | [inline] |
parents_const_iterator dag< class, _SequenceCtr, class, class >::leaf_begin | ( | ) | const [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
parents_iterator dag< class, _SequenceCtr, class, class >::leaf_begin | ( | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
parents_const_iterator dag< class, _SequenceCtr, class, class >::leaf_end | ( | ) | const [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
parents_iterator dag< class, _SequenceCtr, class, class >::leaf_end | ( | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::merge | ( | const walker & | __position, | |
const walker & | __second, | |||
bool | merge_parent_edges = true , |
|||
bool | merge_child_edges = true | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::merge | ( | const walker & | __position, | |
const walker & | __second, | |||
bool | merge_parent_edges = true , |
|||
bool | merge_child_edges = true | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
bool coco::model::micro_simplify | ( | ) |
const std::string coco::model::model_name | ( | ) | const [inline] |
size_t coco::model::n_fixed_vars | ( | ) | const [inline] |
size_t coco::model::n_unused_constrs | ( | ) | const [inline] |
size_t coco::model::n_unused_vars | ( | ) | const [inline] |
model::walker coco::model::nary | ( | const std::vector< walker > & | _op, | |
int | expr_type, | |||
const basic_alltype & | _params, | |||
const std::vector< double > & | _coeffs = std::vector<double>() | |||
) | [inline] |
model::walker coco::model::nary | ( | const std::vector< walker > & | _op, | |
int | expr_type, | |||
const std::vector< double > & | _coeffs = std::vector<double>() | |||
) | [inline] |
void coco::model::new_variables | ( | int | _new_num_of_vars | ) | [inline] |
This method sets the number of variables in the model to _new_num_of_vars
and communicates the change to all models below the same model_iddata.
int coco::model::next_constraint_num | ( | ) | [inline] |
int coco::model::next_num | ( | ) | [inline] |
int coco::model::next_variable_num | ( | ) | [inline] |
const model::walker & coco::model::node | ( | unsigned int | i | ) | const [inline] |
unsigned int coco::model::number_of_constraints | ( | ) | const [inline] |
The number_of_constraints method returns the number of constraints across all models governed by the same model_iddata.
unsigned int coco::model::number_of_managed_constraints | ( | ) | const [inline] |
unsigned int coco::model::number_of_managed_nodes | ( | ) | const [inline] |
unsigned int coco::model::number_of_managed_variables | ( | ) | const [inline] |
unsigned int coco::model::number_of_nodes | ( | ) | const [inline] |
The number_of_nodes method returns the number of nodes across all models governed by the same model_iddata.
unsigned int coco::model::number_of_variables | ( | ) | const [inline] |
The number_of_variables method returns the number of variables across all models governed by the same model_iddata.
double coco::model::obj_adj | ( | ) | const [inline] |
double coco::model::obj_mult | ( | ) | const [inline] |
const std::string coco::model::obj_name | ( | ) | const [inline] |
const std::map< int, std::vector< double > > & coco::model::optima | ( | ) | const [inline] |
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::partial_erase_to_parent | ( | const walker & | __position, | |
const walker & | __parent, | |||
unsigned int | idx | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::partial_erase_to_parent | ( | const walker & | __position, | |
const walker & | __parent, | |||
unsigned int | idx | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void coco::model::prepare_kill | ( | ) | [inline] |
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::remove_edge | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::remove_edge | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::remove_edge_and_deattach | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::remove_edge_and_deattach | ( | const walker & | __parent, | |
const walker & | __child | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void coco::model::remove_node | ( | unsigned int | __node_num | ) | [inline] |
void coco::model::remove_node | ( | const walker & | _w | ) | [inline] |
void coco::model::remove_node | ( | const walker & | _w, | |
unsigned int | _nnum | |||
) |
void coco::model::renumber_constraints | ( | ) |
If this method is called, the constraints are renumbered to fill gaps (unused numbers). To keep the model hierarchy consistent, all numbers in all models in the same model_iddata are changed.
void coco::model::renumber_variables | ( | ) | [inline] |
If this method is called, the variables are renumbered to fill gaps (unused numbers). To keep the model hierarchy consistent, all numbers in all models in the same model_iddata are changed.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::replace_edge_to_child | ( | const walker & | __parent, | |
const walker & | __child_old, | |||
const walker & | __child_new | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::replace_edge_to_child | ( | const walker & | __parent, | |
const walker & | __child_old, | |||
const walker & | __child_new | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::replace_edge_to_parent | ( | const walker & | __parent_old, | |
const walker & | __parent_new, | |||
const walker & | __child | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::replace_edge_to_parent | ( | const walker & | __parent_old, | |
const walker & | __parent_new, | |||
const walker & | __child | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
children_const_iterator dag< class, _SequenceCtr, class, class >::root_begin | ( | ) | const [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
children_iterator dag< class, _SequenceCtr, class, class >::root_begin | ( | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
children_const_iterator dag< class, _SequenceCtr, class, class >::root_end | ( | ) | const [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
children_iterator dag< class, _SequenceCtr, class, class >::root_end | ( | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void coco::model::set_counters | ( | ) | [inline] |
This method initializes the n_parents
and n_children
members of all nodes.
bool coco::model::simplify_thin | ( | ) | [inline] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
const_walker dag< class, _SequenceCtr, class, class >::sky | ( | ) | const [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::sort_child_edges | ( | walker | __position, | |
Compare | comp | |||
) | [inherited] |
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::sort_child_edges | ( | walker | __position, | |
children_iterator | first, | |||
children_iterator | last, | |||
Compare | comp | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::sort_child_edges | ( | walker | __position, | |
Compare | comp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::sort_child_edges | ( | walker | __position, | |
children_iterator | first, | |||
children_iterator | last, | |||
Compare | comp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::sort_parent_edges | ( | walker | __position, | |
Compare | comp | |||
) | [inherited] |
void __DG< _Tp , _SequenceCtr< void *, _PtrAlloc > , _SequenceCtr< void *, _PtrAlloc >::iterator , _SequenceCtr< void *, _PtrAlloc >::const_iterator , _SequenceCtr< void *, _PtrAlloc >::iterator , _Alloc >::sort_parent_edges | ( | walker | __position, | |
parents_iterator | first, | |||
parents_iterator | last, | |||
Compare | comp | |||
) | [inherited] |
void dag< class, _SequenceCtr, class, class >::sort_parent_edges | ( | walker | __position, | |
Compare | comp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::sort_parent_edges | ( | walker | __position, | |
parents_iterator | first, | |||
parents_iterator | last, | |||
Compare | comp | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const parents_iterator & | __pr_it, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split | ( | const walker & | __parent, | |
const children_iterator & | __ch_it, | |||
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
void dag< class, _SequenceCtr, class, class >::split | ( | const __SequenceCtr1< walker, _Allocator1 > & | __parents, | |
const __SequenceCtr2< walker, _Allocator2 > & | __children, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split | ( | const walker & | __parent, | |
const children_iterator & | __ch_it, | |||
const walker & | __child, | |||
const parents_iterator & | __pa_it, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split_back | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split_back | ( | const walker & | __parent, | |
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split_back | ( | const walker & | __parent, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split_front | ( | const __SequenceCtr< walker, _Allocator > & | __parents, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split_front | ( | const walker & | __parent, | |
const __SequenceCtr< walker, _Allocator > & | __children, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
walker dag< class, _SequenceCtr, class, class >::split_front | ( | const walker & | __parent, | |
const walker & | __child, | |||
const _Tp & | __x | |||
) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
model::walker coco::model::store_constraint | ( | const walker & | _w | ) | [inline] |
model::walker coco::model::store_ghost | ( | const walker & | _w | ) | [inline] |
model::walker coco::model::store_node | ( | const walker & | _w | ) | [inline] |
model::walker coco::model::store_variable | ( | const walker & | _w | ) | [inline] |
void dag< class, _SequenceCtr, class, class >::swap | ( | _Self & | __x | ) | [inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
const std::map< int, std::vector< double > > & coco::model::trace_points | ( | ) | const [inline] |
model::walker coco::model::unary | ( | const walker & | _op1, | |
int | expr_type, | |||
const basic_alltype & | _params, | |||
double | _coeff = 1.0 | |||
) | [inline] |
model::walker coco::model::unary | ( | const walker & | _op1, | |
int | expr_type, | |||
double | _coeff = 1.0 | |||
) | [inline] |
const std::string & coco::model::unused_constr | ( | unsigned int | n | ) | const [inline] |
const std::string & coco::model::unused_var | ( | unsigned int | n | ) | const [inline] |
const model::walker & coco::model::var | ( | unsigned int | i | ) | const [inline] |
const std::string coco::model::var_name | ( | unsigned int | n | ) | const [inline] |
model::walker coco::model::variable | ( | unsigned int | _vnum | ) |
model::walker coco::model::vnary | ( | int | expr_type, | |
... | ||||
) |
model::walker coco::model::vxnary | ( | const basic_alltype & | _params, | |
int | expr_type, | |||
... | ||||
) |
This method constructs a new n-ary operation with expression type expr_type
and additional expression parameters _params
. The operands and multiplicative constants are specified as the additional parameters and need to be of type walker
followed by a double, and so on. The final double (in case it is 1.0) can be left out.
void coco::model::write | ( | std::ostream & | __o = std::cout |
) | const |
friend class dag_undelta [friend] |
_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > * dag< class, _SequenceCtr, class, class >::_C_ground [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > * dag< class, _SequenceCtr, class, class >::_C_sky [protected, inherited] |
Reimplemented from dgraph< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >.
std::vector<walker> coco::model::constraints |
linalg::matrix<double> coco::model::lin |
std::vector<linalg::matrix<double> > coco::model::matd |
std::vector<linalg::matrix<interval> > coco::model::mati |