Detailed Description
DP border structure
Definition at line 73 of file dpborderinterns.h.
#include <dpborderinterns.h>
Public Member Functions | |
STP_Vectype (DPBLEVEL *) borderlevels | |
STP_Vectype (int) bordernodes | |
STP_Vectype (int) prevbordernodes | |
STP_Vectype (int) global_partstarts | |
STP_Vectype (SCIP_Real) global_partcosts | |
STP_Vectype (int) global_predparts | |
STP_Vectype (SCIP_Bool) global_partsUseExt | |
Data Fields | |
DPBHASHMAP | hashmap |
DPBSEQUENCE * | dpbsequence |
SCIP_Bool * | nodes_isBorder |
int * | nodes_outdeg |
int * | bordercharmap |
SCIP_Real * | borderchardists |
DPB_Ptype * | global_partitions |
SCIP_Real | global_obj |
int | global_npartitions |
int | global_partcap |
int | global_optposition |
int | ntermsvisited |
int | nterms |
int | nnodes |
DPB_Ptype | extborderchar |
Member Function Documentation
◆ STP_Vectype() [1/7]
dynamic_programming_border::STP_Vectype | ( | DPBLEVEL * | ) |
data for each border
◆ STP_Vectype() [2/7]
dynamic_programming_border::STP_Vectype | ( | int | ) |
current border nodes
◆ STP_Vectype() [3/7]
dynamic_programming_border::STP_Vectype | ( | int | ) |
nodes that are in previous but not current border
◆ STP_Vectype() [4/7]
dynamic_programming_border::STP_Vectype | ( | int | ) |
CSR like starts of partitions in array "global_partitions"
◆ STP_Vectype() [5/7]
dynamic_programming_border::STP_Vectype | ( | SCIP_Real | ) |
costs of each partition
◆ STP_Vectype() [6/7]
dynamic_programming_border::STP_Vectype | ( | int | ) |
predecessor partitions; of size global_npartitions
◆ STP_Vectype() [7/7]
dynamic_programming_border::STP_Vectype | ( | SCIP_Bool | ) |
partition uses extension node?
Field Documentation
◆ hashmap
DPBHASHMAP dynamic_programming_border::hashmap |
hash map
Definition at line 75 of file dpborderinterns.h.
Referenced by addLevel(), dpborder_free(), dpborder_init(), dpborder_partGetIdxNew(), dpborder_partGetIdxNewExclusive(), dpborder_solve(), initSolve(), and partitionTryRealloc().
◆ dpbsequence
DPBSEQUENCE* dynamic_programming_border::dpbsequence |
ordering of nodes
Definition at line 76 of file dpborderinterns.h.
Referenced by addLevel(), addLevelFirst(), dpborder_coreComputeOrderingSimple(), dpborder_coreSolve(), dpborder_coreUpdateOrdering(), dpborder_dpbsequenceFree(), dpborder_dpbsequenceInit(), dpborder_free(), dpborder_init(), dpborder_probePotential(), dpborder_solve(), dpborderInitHelper(), and initSolve().
◆ nodes_isBorder
SCIP_Bool* dynamic_programming_border::nodes_isBorder |
marks whether node is in current border
Definition at line 78 of file dpborderinterns.h.
Referenced by addLevelFirst(), borderBuildCharDists(), borderBuildCharMap(), dpborder_free(), dpborder_init(), dpborderInitHelper(), and updateBorder().
◆ nodes_outdeg
int* dynamic_programming_border::nodes_outdeg |
degree w.r.t. not yet visited nodes
Definition at line 79 of file dpborderinterns.h.
Referenced by borderBuildCharMap(), dpborder_free(), dpborder_init(), dpborderInitHelper(), and updateBorder().
◆ bordercharmap
int* dynamic_programming_border::bordercharmap |
maps last border chars to current border chars
Definition at line 80 of file dpborderinterns.h.
Referenced by borderBuildCharMap(), dpborder_free(), dpborder_init(), dpborder_partGetIdxNew(), dpborder_partGetIdxNewExclusive(), and dpborderInitHelper().
◆ borderchardists
SCIP_Real* dynamic_programming_border::borderchardists |
distance for last border nodes (chars) to extension nodes
Definition at line 81 of file dpborderinterns.h.
Referenced by borderBuildCharDists(), dpborder_free(), dpborder_init(), dpborder_partGetConnectionCost(), dpborderInitHelper(), and STP_Vectype().
◆ global_partitions
DPB_Ptype* dynamic_programming_border::global_partitions |
partitions
Definition at line 84 of file dpborderinterns.h.
Referenced by addLevelFirst(), dpborder_free(), dpborder_init(), dpborder_markSolNodes(), dpborder_partGetIdxNew(), dpborder_partGetIdxNewExclusive(), dpborder_partglobalGetCard(), initSolve(), partitionIsIncluded(), partitionTryRealloc(), and updateFromPartition().
◆ global_obj
SCIP_Real dynamic_programming_border::global_obj |
objective
Definition at line 89 of file dpborderinterns.h.
Referenced by dpborder_coreSolve(), dpborder_init(), dpborder_solve(), and updateFromPartition().
◆ global_npartitions
int dynamic_programming_border::global_npartitions |
number of global partitions
Definition at line 90 of file dpborderinterns.h.
Referenced by addLevel(), addLevelFirst(), dpborder_coreSolve(), dpborder_init(), dpborder_partGetIdxNew(), dpborder_partGetIdxNewExclusive(), partitionGetRangeGlobal(), partitionIsIncluded(), partitionTryRealloc(), and updateBorder().
◆ global_partcap
int dynamic_programming_border::global_partcap |
capacity of array global_partitions
Definition at line 91 of file dpborderinterns.h.
Referenced by dpborder_init(), dpborder_partGetIdxNew(), initSolve(), and partitionTryRealloc().
◆ global_optposition
int dynamic_programming_border::global_optposition |
index of best solution partition
Definition at line 92 of file dpborderinterns.h.
Referenced by dpborder_coreSolve(), dpborder_init(), dpborder_markSolNodes(), and updateFromPartition().
◆ ntermsvisited
int dynamic_programming_border::ntermsvisited |
number of already visited nodes
Definition at line 93 of file dpborderinterns.h.
Referenced by addLevel(), addLevelFirst(), dpborder_coreSolve(), dpborder_init(), initSolve(), and updateFromPartition().
◆ nterms
int dynamic_programming_border::nterms |
number of terminals
Definition at line 94 of file dpborderinterns.h.
Referenced by dpborder_init(), initSolve(), and updateFromPartition().
◆ nnodes
int dynamic_programming_border::nnodes |
number of nodes of underlying graph
Definition at line 95 of file dpborderinterns.h.
Referenced by borderBuildCharMap(), dpborder_init(), dpborder_markSolNodes(), dpborderInitHelper(), and updateBorder().
◆ extborderchar
DPB_Ptype dynamic_programming_border::extborderchar |
-1 if extnode is not contained!
Definition at line 96 of file dpborderinterns.h.
Referenced by dpborder_partGetIdxNew(), and updateBorder().