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()

dp_mat_apurva ( graph &  pg)
inline

Constructors

◆ ~dp_mat_apurva()

~dp_mat_apurva ( )
inline

Destructor

Member Function Documentation

◆ calc_arcs_out()

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()

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()

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()

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()

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

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

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

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

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

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

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.