RNAlib-2.0.1
H/part_func.h
Go to the documentation of this file.
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 
00025 extern  int st_back;
00026 
00027 /*
00028 #################################################
00029 # PARTITION FUNCTION COMPUTATION                #
00030 #################################################
00031 */
00032 
00059 float   pf_fold(const char *sequence,
00060                 char *structure);
00061 
00071 float   pf_circ_fold( const char *sequence,
00072                       char *structure);
00073 
00080 char    *pbacktrack(char *sequence);
00081 
00089 char    *pbacktrack_circ(char *sequence);
00090 
00094 void  free_pf_arrays(void);
00095 
00102 void  update_pf_params(int length);
00103 
00113 FLT_OR_DBL  *export_bppm(void);
00114 
00115 /*
00116 #################################################
00117 # OTHER PARTITION FUNCTION RELATED DECLARATIONS #
00118 #################################################
00119 */
00120 
00138 void  assign_plist_from_pr( plist **pl,
00139                             FLT_OR_DBL *probs,
00140                             int length,
00141                             double cutoff);
00142 
00155 int get_pf_arrays(short **S_p,
00156                   short **S1_p,
00157                   char **ptype_p,
00158                   FLT_OR_DBL **qb_p,
00159                   FLT_OR_DBL **qm_p,
00160                   FLT_OR_DBL **q1k_p,
00161                   FLT_OR_DBL **qln_p);
00162 
00178 char  *get_centroid_struct_pl(int length,
00179                               double *dist,
00180                               plist *pl);
00181 
00197 char  *get_centroid_struct_pr(int length,
00198                               double *dist,
00199                               FLT_OR_DBL *pr);
00200 
00209 double  mean_bp_distance(int length);
00210 
00226 double  mean_bp_distance_pr(int length,
00227                             FLT_OR_DBL *pr);
00228 
00232 void  bppm_to_structure(char *structure,
00233                         FLT_OR_DBL *pr,
00234                         unsigned int length);
00235 
00236 plist *stackProb(double cutoff);
00237 
00241 char    bppm_symbol(const float *x);
00242 
00243 
00244 /*
00245 #################################################
00246 # DEPRECATED FUNCTIONS                          #
00247 #################################################
00248 */
00249 
00255 DEPRECATED(void init_pf_fold(int length));
00256 
00261 DEPRECATED(char *centroid(int length,
00262                           double *dist));     /* mean pair distance of ensemble */
00263 
00269 DEPRECATED(double mean_bp_dist(int length));
00270 
00274 DEPRECATED(double expLoopEnergy(int u1,
00275                                 int u2,
00276                                 int type,
00277                                 int type2,
00278                                 short si1,
00279                                 short sj1,
00280                                 short sp1,
00281                                 short sq1));
00282 
00286 DEPRECATED(double expHairpinEnergy( int u,
00287                                     int type,
00288                                     short si1,
00289                                     short sj1,
00290                                     const char *string));
00291 
00292 #endif