1 #ifndef VIENNA_RNA_PACKAGE_PART_FUNC_H 2 #define VIENNA_RNA_PACKAGE_PART_FUNC_H 11 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY 30 #ifdef VRNA_WARN_DEPRECATED 31 # if defined(__clang__) 32 # define DEPRECATED(func, msg) func __attribute__ ((deprecated("", msg))) 33 # elif defined(__GNUC__) 34 # define DEPRECATED(func, msg) func __attribute__ ((deprecated(msg))) 36 # define DEPRECATED(func, msg) func 39 # define DEPRECATED(func, msg) func 345 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY 413 "Use the new API and vrna_pf() instead");
454 DEPRECATED(
float pf_fold(
const char *sequence,
456 "Use vrna_pf_fold() or vrna_pf() instead");
486 "Use vrna_pf_circfold() or vrna_pf() instead");
499 DEPRECATED(
char *
pbacktrack(
char *sequence),
"Use vrna_pbacktrack() instead");
507 int length),
"Use vrna_pbacktrack5() instead");
524 DEPRECATED(
char *
pbacktrack_circ(
char *sequence),
"Use vrna_pbacktrack() instead");
544 DEPRECATED(
void free_pf_arrays(
void),
"This function is obsolete");
569 "Use the new API with vrna_fold_compound_t instead");
589 "Use the new API with vrna_fold_compound_t instead");
615 "Use the new API with vrna_fold_compound_t instead");
624 "Use the new API with vrna_fold_compound_t instead");
639 "Use vrna_mean_bp_distance() or vrna_mean_bp_distance_pr() instead");
660 "Use vrna_mean_bp_distance() or vrna_mean_bp_distance_pr() instead");
679 DEPRECATED(
void init_pf_fold(
int length),
"This function is obsolete");
685 DEPRECATED(
char *
centroid(
int length,
687 "Use vrna_centroid() instead");
695 "Use vrna_centroid() instead");
703 "Use vrna_mean_bp_distance() or vrna_mean_bp_distance_pr() instead");
729 DEPRECATED(
void assign_plist_gquad_from_pr(
vrna_ep_t **pl,
732 "Use vrna_plist_from_probs() instead");
float vrna_pf_circalifold(const char **sequences, char *structure, vrna_ep_t **pl)
Compute Partition function (and base pair probabilities) for an alignment of circular RNA sequences ...
vrna_ep_t * stackProb(double cutoff)
Get the probability of stacks.
int get_pf_arrays(short **S_p, short **S1_p, char **ptype_p, FLT_OR_DBL **qb_p, FLT_OR_DBL **qm_p, FLT_OR_DBL **q1k_p, FLT_OR_DBL **qln_p)
Get the pointers to (almost) all relavant computation arrays used in partition function computation...
char * pbacktrack(char *sequence)
Sample a secondary structure from the Boltzmann ensemble according its probability.
float pf_fold(const char *sequence, char *structure)
Compute the partition function of an RNA sequence.
int vrna_pf_float_precision(void)
Find out whether partition function computations are using single precision floating points...
char * get_centroid_struct_gquad_pr(int length, double *dist)
void update_pf_params(int length)
Recalculate energy parameters.
double FAB
all states with DuplexInit correction
Definition: part_func.h:100
float pf_fold_par(const char *sequence, char *structure, vrna_exp_param_t *parameters, int calculate_bppm, int is_constrained, int is_circular)
Compute the partition function for a given RNA sequence.
float vrna_pf_fold(const char *sequence, char *structure, vrna_ep_t **pl)
Compute Partition function (and base pair probabilities) for an RNA sequence using a comparative met...
double FLT_OR_DBL
Typename for floating point number in partition function computations.
Definition: basic.h:43
The most basic data structure required by many functions throughout the RNAlib.
Definition: fold_compound.h:132
float pf_circ_fold(const char *sequence, char *structure)
Compute the partition function of a circular RNA sequence.
double FB
monomer B
Definition: part_func.h:103
Equilibrium Probability implementations.
vrna_dimer_pf_t vrna_pf_co_fold(const char *seq, char *structure, vrna_ep_t **pl)
Calculate partition function and base pair probabilities of nucleic acid/nucleic acid dimers...
double mean_bp_distance(int length)
Get the mean base pair distance of the last partition function computation.
double expHairpinEnergy(int u, int type, short si1, short sj1, const char *string)
vrna_dimer_pf_t vrna_pf_dimer(vrna_fold_compound_t *vc, char *structure)
Calculate partition function and base pair probabilities of nucleic acid/nucleic acid dimers...
void init_pf_fold(int length)
Allocate space for pf_fold()
Data structure returned by vrna_pf_dimer()
Definition: part_func.h:97
Various data structures and pre-processor macros.
double get_subseq_F(int i, int j)
Get the free energy of a subsequence from the q[] array.
float vrna_pf_circfold(const char *sequence, char *structure, vrna_ep_t **pl)
Compute Partition function (and base pair probabilities) for a circular RNA sequences using a compar...
char * centroid(int length, double *dist)
The data structure that contains temperature scaled Boltzmann weights of the energy parameters...
Definition: basic.h:103
char * pbacktrack_circ(char *sequence)
Sample a secondary structure of a circular RNA from the Boltzmann ensemble according its probability...
Boltzmann Sampling of secondary structures from the ensemble.
char * pbacktrack5(char *sequence, int length)
Sample a sub-structure from the Boltzmann ensemble according its probability.
float vrna_pf_alifold(const char **sequences, char *structure, vrna_ep_t **pl)
Compute Partition function (and base pair probabilities) for an RNA sequence alignment using a compa...
double mean_bp_distance_pr(int length, FLT_OR_DBL *pr)
Get the mean base pair distance in the thermodynamic ensemble.
double FA
monomer A
Definition: part_func.h:102
int st_back
Flag indicating that auxilary arrays are needed throughout the computations. This is essential for st...
void free_pf_arrays(void)
Free arrays for the partition function recursions.
void update_pf_params_par(int length, vrna_exp_param_t *parameters)
Recalculate energy parameters.
FLT_OR_DBL * pr
A pointer to the base pair probability matrix.
Functions to deal with sets of energy parameters.
FLT_OR_DBL * export_bppm(void)
Get a pointer to the base pair probability array.
Various utility- and helper-functions for secondary structure parsing, converting, etc.
The Basic Fold Compound API.
double expLoopEnergy(int u1, int u2, int type, int type2, short si1, short sj1, short sp1, short sq1)
double mean_bp_dist(int length)
Data structure representing a single entry of an element probability list (e.g. list of pair probabil...
Definition: structures.h:453
double F0AB
Null model without DuplexInit.
Definition: part_func.h:99
float vrna_pf(vrna_fold_compound_t *vc, char *structure)
Compute the partition function for a given RNA sequence, or sequence alignment.
Centroid structure computation.
double FcAB
true hybrid states only
Definition: part_func.h:101