RNAlib-2.1.9h
fold.h
Go to the documentation of this file.
1#ifndef __VIENNA_RNA_PACKAGE_FOLD_H__
2#define __VIENNA_RNA_PACKAGE_FOLD_H__
3
4#include "data_structures.h"
5
6#ifdef __GNUC__
7#define DEPRECATED(func) func __attribute__ ((deprecated))
8#else
9#define DEPRECATED(func) func
10#endif
11
61extern int logML;
62
64extern int uniq_ML;
65
67extern int cut_point;
68
73extern int eos_debug;
74
75
119float fold_par( const char *sequence,
120 char *structure,
121 paramT *parameters,
122 int is_constrained,
123 int is_circular);
124
143float fold( const char *sequence,
144 char *structure);
145
164float circfold( const char *sequence,
165 char *structure);
166
167
195float energy_of_structure(const char *string,
196 const char *structure,
197 int verbosity_level);
198
214float energy_of_struct_par( const char *string,
215 const char *structure,
216 paramT *parameters,
217 int verbosity_level);
218
237float energy_of_circ_structure( const char *string,
238 const char *structure,
239 int verbosity_level);
240
256float energy_of_circ_struct_par(const char *string,
257 const char *structure,
258 paramT *parameters,
259 int verbosity_level);
260
261
262float energy_of_gquad_structure(const char *string,
263 const char *structure,
264 int verbosity_level);
265
266float energy_of_gquad_struct_par( const char *string,
267 const char *structure,
268 paramT *parameters,
269 int verbosity_level);
270
291int energy_of_structure_pt( const char *string,
292 short *ptable,
293 short *s,
294 short *s1,
295 int verbosity_level);
296
314int energy_of_struct_pt_par(const char *string,
315 short *ptable,
316 short *s,
317 short *s1,
318 paramT *parameters,
319 int verbosity_level);
320
327void free_arrays(void);
328
329
335void parenthesis_structure(char *structure,
336 bondT *bp,
337 int length);
338
345void parenthesis_zuker( char *structure,
346 bondT *bp,
347 int length);
348
349void letter_structure(char *structure,
350 bondT *bp,
351 int length);
352
353
360
366void update_fold_params_par(paramT *parameters);
367
373char *backtrack_fold_from_pair(char *sequence,
374 int i,
375 int j);
376
390float energy_of_move( const char *string,
391 const char *structure,
392 int m1,
393 int m2);
394
395
411int energy_of_move_pt(short *pt,
412 short *s,
413 short *s1,
414 int m1,
415 int m2);
416
426int loop_energy(short *ptable,
427 short *s,
428 short *s1,
429 int i);
430
436void export_fold_arrays(int **f5_p,
437 int **c_p,
438 int **fML_p,
439 int **fM1_p,
440 int **indx_p,
441 char **ptype_p);
442
448void export_fold_arrays_par(int **f5_p,
449 int **c_p,
450 int **fML_p,
451 int **fM1_p,
452 int **indx_p,
453 char **ptype_p,
454 paramT **P_p);
455
461void export_circfold_arrays(int *Fc_p,
462 int *FcH_p,
463 int *FcI_p,
464 int *FcM_p,
465 int **fM2_p,
466 int **f5_p,
467 int **c_p,
468 int **fML_p,
469 int **fM1_p,
470 int **indx_p,
471 char **ptype_p);
472
478void export_circfold_arrays_par(int *Fc_p,
479 int *FcH_p,
480 int *FcI_p,
481 int *FcM_p,
482 int **fM2_p,
483 int **f5_p,
484 int **c_p,
485 int **fML_p,
486 int **fM1_p,
487 int **indx_p,
488 char **ptype_p,
489 paramT **P_p);
490
491
510 const char *struc,
511 float pr);
512
513/* finally moved the loop energy function declarations to this header... */
514/* BUT: The functions only exist for backward compatibility reasons! */
515/* You better include "loop_energies.h" and call the functions: */
516/* E_Hairpin() and E_IntLoop() which are (almost) threadsafe as they get */
517/* a pointer to the energy parameter datastructure as additional argument */
518
523DEPRECATED(int LoopEnergy(int n1,
524 int n2,
525 int type,
526 int type_2,
527 int si1,
528 int sj1,
529 int sp1,
530 int sq1));
531
536DEPRECATED(int HairpinE(int size,
537 int type,
538 int si1,
539 int sj1,
540 const char *string));
541
547DEPRECATED(void initialize_fold(int length));
548
563DEPRECATED(float energy_of_struct(const char *string,
564 const char *structure));
565
582DEPRECATED(int energy_of_struct_pt( const char *string,
583 short *ptable,
584 short *s,
585 short *s1));
586
601DEPRECATED(float energy_of_circ_struct( const char *string,
602 const char *structure));
603
604#endif
All datastructures and typedefs shared among the Vienna RNA Package can be found here.
int LoopEnergy(int n1, int n2, int type, int type_2, int si1, int sj1, int sp1, int sq1)
int energy_of_struct_pt(const char *string, short *ptable, short *s, short *s1)
void parenthesis_zuker(char *structure, bondT *bp, int length)
Create a dot-backet/parenthesis structure from backtracking stack obtained by zuker suboptimal calcul...
int energy_of_move_pt(short *pt, short *s, short *s1, int m1, int m2)
Calculate energy of a move (closing or opening of a base pair)
int loop_energy(short *ptable, short *s, short *s1, int i)
Calculate energy of a loop.
float energy_of_move(const char *string, const char *structure, int m1, int m2)
Calculate energy of a move (closing or opening of a base pair)
float energy_of_circ_struct(const char *string, const char *structure)
int uniq_ML
do ML decomposition uniquely (for subopt)
int logML
if nonzero use logarithmic ML energy in energy_of_struct
void parenthesis_structure(char *structure, bondT *bp, int length)
Create a dot-backet/parenthesis structure from backtracking stack.
int HairpinE(int size, int type, int si1, int sj1, const char *string)
int cut_point
set to first pos of second seq for cofolding
float energy_of_struct(const char *string, const char *structure)
void initialize_fold(int length)
void assign_plist_from_db(plist **pl, const char *struc, float pr)
Create a plist from a dot-bracket string.
double * pr
A pointer to the base pair probability matrix.
int eos_debug
verbose info from energy_of_struct
float energy_of_circ_struct_par(const char *string, const char *structure, paramT *parameters, int verbosity_level)
Calculate the free energy of an already folded circular RNA.
int energy_of_structure_pt(const char *string, short *ptable, short *s, short *s1, int verbosity_level)
Calculate the free energy of an already folded RNA.
float energy_of_struct_par(const char *string, const char *structure, paramT *parameters, int verbosity_level)
Calculate the free energy of an already folded RNA.
int energy_of_struct_pt_par(const char *string, short *ptable, short *s, short *s1, paramT *parameters, int verbosity_level)
Calculate the free energy of an already folded RNA.
float energy_of_circ_structure(const char *string, const char *structure, int verbosity_level)
Calculate the free energy of an already folded circular RNA.
float energy_of_structure(const char *string, const char *structure, int verbosity_level)
Calculate the free energy of an already folded RNA using global model detail settings.
void free_arrays(void)
Free arrays for mfe folding.
void update_fold_params(void)
Recalculate energy parameters.
float circfold(const char *sequence, char *structure)
Compute minimum free energy and an appropriate secondary structure of a circular RNA sequence.
float fold(const char *sequence, char *structure)
Compute minimum free energy and an appropriate secondary structure of an RNA sequence.
float fold_par(const char *sequence, char *structure, paramT *parameters, int is_constrained, int is_circular)
Compute minimum free energy and an appropriate secondary structure of an RNA sequence.
Base pair.
Definition data_structures.h:84
The datastructure that contains temperature scaled energy parameters.
Definition data_structures.h:122
this datastructure is used as input parameter in functions of PS_dot.h and others
Definition data_structures.h:48