RNAlib-2.2.7
perturbation_fold.h
Go to the documentation of this file.
1 #ifndef VIENNA_RNA_PACKAGE_PERTURBATION_FOLD_H
2 #define VIENNA_RNA_PACKAGE_PERTURBATION_FOLD_H
3 
4 #include "data_structures.h"
5 
24 #define VRNA_OBJECTIVE_FUNCTION_QUADRATIC 0
25 
33 #define VRNA_OBJECTIVE_FUNCTION_ABSOLUTE 1
34 
40 #define VRNA_MINIMIZER_DEFAULT 0
41 
49 #define VRNA_MINIMIZER_CONJUGATE_FR 1
50 
58 #define VRNA_MINIMIZER_CONJUGATE_PR 2
59 
67 #define VRNA_MINIMIZER_VECTOR_BFGS 3
68 
76 #define VRNA_MINIMIZER_VECTOR_BFGS2 4
77 
85 #define VRNA_MINIMIZER_STEEPEST_DESCENT 5
86 
96 typedef void (*progress_callback)(int iteration, double score, double *epsilon);
97 
138  const double *q_prob_unpaired,
139  int objective_function,
140  double sigma_squared,
141  double tau_squared,
142  int algorithm,
143  int sample_size,
144  double *epsilon,
145  double initialStepSize,
146  double minStepSize,
147  double minImprovement,
148  double minimizerTolerance,
149  progress_callback callback);
150 
151 #endif
The most basic data structure required by many functions throughout the RNAlib.
Definition: data_structures.h:390
void vrna_sc_minimize_pertubation(vrna_fold_compound_t *vc, const double *q_prob_unpaired, int objective_function, double sigma_squared, double tau_squared, int algorithm, int sample_size, double *epsilon, double initialStepSize, double minStepSize, double minImprovement, double minimizerTolerance, progress_callback callback)
Find a vector of perturbation energies that minimizes the discripancies between predicted and observe...
void(* progress_callback)(int iteration, double score, double *epsilon)
Callback for following the progress of the minimization process.
Definition: perturbation_fold.h:96