Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
dp_mat_apurva< graph, lambda_matrix > Class Template Reference

#include <dynamic_programming.h>

Public Member Functions

 dp_mat_apurva (graph &pg)
 ~dp_mat_apurva ()
void fill (lambda_matrix &lb_mat, vector< int > &lo, vector< int > &up)
float solve (vector< int > &sol, vector< int > &lo, vector< int > &up)
int get_arc_out (int col1, int row1, int ind)
float value_arcs_out (int nb_next_col, int nb_next_row, vector< int > &next_col, vector< int > &next_row, vector< float > &coef_lambda_edge)
void calc_arcs_out (int col1, int row1, lambda_matrix &lb_mat, vector< int > &lo, vector< int > &up)

Protected Attributes

vector< vector< vector< int > > > dp_arc_out_col
vector< vector< float > > dp_arc
vector< vector< int > > arc_from
vector< vector< float > > dp
vector< vector< float > > dp_score
vector< vector< int > > dp_from

Detailed Description

template<class graph, class lambda_matrix>
class dp_mat_apurva< graph, lambda_matrix >

DP_Mat_Apurva. Dynamic Programming used by the A_purva model for Contact Map Overlap Maximization Problem (CMO).

Constructor & Destructor Documentation

◆ dp_mat_apurva()

template<class graph, class lambda_matrix>
dp_mat_apurva ( graph & pg)
inline

Constructors

◆ ~dp_mat_apurva()

template<class graph, class lambda_matrix>
~dp_mat_apurva ( )
inline

Destructor

Member Function Documentation

◆ calc_arcs_out()

template<class graph, class lambda_matrix>
void calc_arcs_out ( int col1,
int row1,
lambda_matrix & lb_mat,
vector< int > & lo,
vector< int > & up )
inline

For a given node, find the best value of the best outgoing edges set, and fill dp_arc_out_col

◆ fill()

template<class graph, class lambda_matrix>
void fill ( lambda_matrix & lb_mat,
vector< int > & lo,
vector< int > & up )
inline

Methods Fill the dp_score table, ie compute for each node, the value of outgoing edges set.

◆ get_arc_out()

template<class graph, class lambda_matrix>
int get_arc_out ( int col1,
int row1,
int ind )
inline

For a given node N_{col1,row1} and a given next column (define by a next_col indice ind), return the chosen row2, corresponding to the activated edge E_{col1,row1,col2,row2}.

◆ solve()

template<class graph, class lambda_matrix>
float solve ( vector< int > & sol,
vector< int > & lo,
vector< int > & up )
inline

Find the node set having the best outgoing edges values

◆ value_arcs_out()

template<class graph, class lambda_matrix>
float value_arcs_out ( int nb_next_col,
int nb_next_row,
vector< int > & next_col,
vector< int > & next_row,
vector< float > & coef_lambda_edge )
inline

For a given node, find the best value of the best outgoing edges set.

Member Data Documentation

◆ arc_from

template<class graph, class lambda_matrix>
vector<vector<int> > arc_from
protected

2D table used to compute by dynamic programming the best set of outgoing edges. Contains moves made to obtain values in dp_arc.

◆ dp

template<class graph, class lambda_matrix>
vector<vector<float> > dp
protected

2D table used to compute by dynamic programming the best set of nodes. Contains values of path made in DP_score.

◆ dp_arc

template<class graph, class lambda_matrix>
vector<vector<float> > dp_arc
protected

2D table used to compute by dynamic programming the best set of outgoing edges. Contains values of outgoing edges sets

◆ dp_arc_out_col

template<class graph, class lambda_matrix>
vector<vector<vector<int > > > dp_arc_out_col
protected

For each node N_{col_row} and each next column, indicates chosen next row ie, gives all activated outgoing edge.

◆ dp_from

template<class graph, class lambda_matrix>
vector<vector<int> > dp_from
protected

2D table used to compute by dynamic programming the best set of nodes. Contain moves made to obtain values in dp_score.

◆ dp_score

template<class graph, class lambda_matrix>
vector<vector<float> > dp_score
protected

2D table used to compute by dynamic programming the best set of nodes. Contains score of each node, based on there coeficient and best outgoing edge value.