00001 #ifndef __VIENNA_RNA_PACKAGE_PART_FUNC_H__
00002 #define __VIENNA_RNA_PACKAGE_PART_FUNC_H__
00003
00004 #include "data_structures.h"
00005
00006 #ifdef __GNUC__
00007 #define DEPRECATED(func) func __attribute__ ((deprecated))
00008 #else
00009 #define DEPRECATED(func) func
00010 #endif
00011
00012
00031 extern int st_back;
00032
00033
00034
00035
00036
00037
00038
00070 float pf_fold_par( const char *sequence,
00071 char *structure,
00072 pf_paramT *parameters,
00073 int calculate_bppm,
00074 int is_constrained,
00075 int is_circular);
00076
00104 float pf_fold(const char *sequence,
00105 char *structure);
00106
00116 float pf_circ_fold( const char *sequence,
00117 char *structure);
00118
00131 char *pbacktrack(char *sequence);
00132
00145 char *pbacktrack_circ(char *sequence);
00146
00159 void free_pf_arrays(void);
00160
00167 void update_pf_params(int length);
00168
00169 void update_pf_params_par(int length, pf_paramT *parameters);
00170
00183 FLT_OR_DBL *export_bppm(void);
00184
00185
00186
00187
00188
00189
00190
00208 void assign_plist_from_pr( plist **pl,
00209 FLT_OR_DBL *probs,
00210 int length,
00211 double cutoff);
00212
00229 int get_pf_arrays(short **S_p,
00230 short **S1_p,
00231 char **ptype_p,
00232 FLT_OR_DBL **qb_p,
00233 FLT_OR_DBL **qm_p,
00234 FLT_OR_DBL **q1k_p,
00235 FLT_OR_DBL **qln_p);
00236
00240 double get_subseq_F(int i, int j);
00241
00257 char *get_centroid_struct_pl(int length,
00258 double *dist,
00259 plist *pl);
00260
00276 char *get_centroid_struct_pr(int length,
00277 double *dist,
00278 FLT_OR_DBL *pr);
00279
00290 double mean_bp_distance(int length);
00291
00307 double mean_bp_distance_pr(int length,
00308 FLT_OR_DBL *pr);
00309
00313 void bppm_to_structure(char *structure,
00314 FLT_OR_DBL *pr,
00315 unsigned int length);
00316
00317 plist *stackProb(double cutoff);
00318
00322 char bppm_symbol(const float *x);
00323
00324
00325
00326
00327
00328
00329
00330
00336 DEPRECATED(void init_pf_fold(int length));
00337
00342 DEPRECATED(char *centroid(int length,
00343 double *dist));
00344
00350 DEPRECATED(double mean_bp_dist(int length));
00351
00355 DEPRECATED(double expLoopEnergy(int u1,
00356 int u2,
00357 int type,
00358 int type2,
00359 short si1,
00360 short sj1,
00361 short sp1,
00362 short sq1));
00363
00367 DEPRECATED(double expHairpinEnergy( int u,
00368 int type,
00369 short si1,
00370 short sj1,
00371 const char *string));
00372
00373 #endif