1#ifndef VIENNA_RNA_PACKAGE_TWO_D_FOLD_H
2#define VIENNA_RNA_PACKAGE_TWO_D_FOLD_H
4#ifdef VRNA_WARN_DEPRECATED
6# define DEPRECATED(func, msg) func __attribute__ ((deprecated("", msg)))
7# elif defined(__GNUC__)
8# define DEPRECATED(func, msg) func __attribute__ ((deprecated(msg)))
10# define DEPRECATED(func, msg) func
13# define DEPRECATED(func, msg) func
119#ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
121#define TwoDfold_solution vrna_sol_TwoD_t
151 short *reference_pt1;
152 short *reference_pt2;
155 unsigned int seq_length;
174 int **l_min_values_m;
175 int **l_max_values_m;
179 int **l_min_values_m1;
180 int **l_max_values_m1;
181 int *k_min_values_m1;
182 int *k_max_values_m1;
184 int **l_min_values_f;
185 int **l_max_values_f;
189 int **l_min_values_f3;
190 int **l_max_values_f3;
191 int *k_min_values_f3;
192 int *k_max_values_f3;
194 int **l_min_values_m2;
195 int **l_max_values_m2;
196 int *k_min_values_m2;
197 int *k_max_values_m2;
199 int *l_min_values_fc;
200 int *l_max_values_fc;
204 int *l_min_values_fcH;
205 int *l_max_values_fcH;
206 int k_min_values_fcH;
207 int k_max_values_fcH;
209 int *l_min_values_fcI;
210 int *l_max_values_fcI;
211 int k_min_values_fcI;
212 int k_max_values_fcI;
214 int *l_min_values_fcM;
215 int *l_max_values_fcM;
216 int k_min_values_fcM;
217 int k_max_values_fcM;
233 unsigned long ***N_F5;
234 unsigned long ***N_C;
235 unsigned long ***N_M;
236 unsigned long ***N_M1;
262 const char *structure1,
263 const char *structure2,
265 "Use the new API and corresponding functions vrna_fold_compound_TwoD(), etc. instead");
279 "Use the new API and vrna_fold_compound_free() instead");
306DEPRECATED(TwoDfold_solution *
310 "Use the new API and vrna_mfe_TwoD() instead");
336 "Use the new API and vrna_backtrack5_TwoD() instead");
341DEPRECATED(TwoDfold_solution **TwoDfold(
TwoDfold_vars *our_variables,
344 "Use the new API and vrna_mfe_TwoD() instead");
Various data structures and pre-processor macros.
The Basic Fold Compound API.
The datastructure that contains temperature scaled energy parameters.
Definition: basic.h:57
The most basic data structure required by many functions throughout the RNAlib.
Definition: fold_compound.h:148
unsigned int maxD2
Maximum allowed base pair distance to second reference.
Definition: 2Dfold.h:137
int * my_iindx
Index for moving in quadratic distancy dimensions.
Definition: 2Dfold.h:143
unsigned int * mm2
Maximum matching matrix, reference struct 2 disallowed.
Definition: 2Dfold.h:141
char * sequence
The input sequence
Definition: 2Dfold.h:134
unsigned int * referenceBPs1
Matrix containing number of basepairs of reference structure1 in interval [i,j].
Definition: 2Dfold.h:147
unsigned int maxD1
Maximum allowed base pair distance to first reference.
Definition: 2Dfold.h:136
vrna_param_t * P
Precomputed energy parameters and model details.
Definition: 2Dfold.h:131
float en
Free energy in kcal/mol.
Definition: 2Dfold.h:56
unsigned int * mm1
Maximum matching matrix, reference struct 1 disallowed.
Definition: 2Dfold.h:140
unsigned int * referenceBPs2
Matrix containing number of basepairs of reference structure2 in interval [i,j].
Definition: 2Dfold.h:148
int l
Distance to second reference.
Definition: 2Dfold.h:55
short * S1
The input sequences in numeric form.
Definition: 2Dfold.h:135
int k
Distance to first reference.
Definition: 2Dfold.h:54
char * s
MFE representative structure in dot-bracket notation.
Definition: 2Dfold.h:57
int do_backtrack
Flag whether to do backtracing of the structure(s) or not.
Definition: 2Dfold.h:132
char * ptype
Precomputed array of pair types.
Definition: 2Dfold.h:133
unsigned int * bpdist
Matrix containing base pair distance of reference structure 1 and 2 on interval [i,...
Definition: 2Dfold.h:149
void destroy_TwoDfold_variables(TwoDfold_vars *our_variables)
Destroy a TwoDfold_vars datastructure without memory loss.
vrna_sol_TwoD_t * vrna_mfe_TwoD(vrna_fold_compound_t *vc, int distance1, int distance2)
Compute MFE's and representative for distance partitioning.
vrna_sol_TwoD_t * TwoDfoldList(TwoDfold_vars *vars, int distance1, int distance2)
Compute MFE's and representative for distance partitioning.
struct vrna_sol_TwoD_t vrna_sol_TwoD_t
Solution element returned from vrna_mfe_TwoD()
char * vrna_backtrack5_TwoD(vrna_fold_compound_t *vc, int k, int l, unsigned int j)
Backtrack a minimum free energy structure from a 5' section of specified length.
char * TwoDfold_backtrack_f5(unsigned int j, int k, int l, TwoDfold_vars *vars)
Backtrack a minimum free energy structure from a 5' section of specified length.
TwoDfold_vars * get_TwoDfold_variables(const char *seq, const char *structure1, const char *structure2, int circ)
Get a structure of type TwoDfold_vars prefilled with current global settings.
struct TwoDfold_vars TwoDfold_vars
Variables compound for 2Dfold MFE folding.
Variables compound for 2Dfold MFE folding.
Definition: 2Dfold.h:130
Solution element returned from vrna_mfe_TwoD()
Definition: 2Dfold.h:53
int circ
backward compatibility variable.. this does not effect anything
Functions to deal with sets of energy parameters.