RNAlib-2.4.17
basic.h
Go to the documentation of this file.
1 #ifndef VIENNA_RNA_PACKAGE_DATA_STRUCTURES_H
2 #define VIENNA_RNA_PACKAGE_DATA_STRUCTURES_H
3 
18 /* below are several convenience typedef's we use throughout the ViennaRNA library */
19 
21 typedef struct vrna_basepair_s vrna_basepair_t;
22 
24 typedef struct vrna_elem_prob_s vrna_plist_t;
25 
27 typedef struct vrna_bp_stack_s vrna_bp_stack_t;
28 
30 typedef struct vrna_cpair_s vrna_cpair_t;
31 
33 typedef struct vrna_sect_s vrna_sect_t;
34 
35 typedef struct vrna_data_linear_s vrna_data_lin_t;
36 
37 typedef struct vrna_color_s vrna_color_t;
38 
40 #ifdef USE_FLOAT_PF
41 typedef float FLT_OR_DBL;
42 #else
43 typedef double FLT_OR_DBL;
44 #endif
45 
46 
47 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
48 
49 /* the following typedefs are for backward compatibility only */
50 
55 typedef struct vrna_basepair_s PAIR;
56 
61 typedef struct vrna_elem_prob_s plist;
66 typedef struct vrna_cpair_s cpair;
67 
72 typedef struct vrna_sect_s sect;
73 
78 typedef struct vrna_bp_stack_s bondT;
79 
80 #endif
81 
84 #include <ViennaRNA/model.h>
85 #include <ViennaRNA/params/basic.h>
86 #include <ViennaRNA/dp_matrices.h>
89 #include <ViennaRNA/grammar.h>
93 
94 /*
95  * ############################################################
96  * Here are the type definitions of various datastructures
97  * shared among the Vienna RNA Package
98  * ############################################################
99  */
100 
105  int i;
106  int j;
107 };
108 
112 struct vrna_cpair_s {
113  int i, j, mfe;
114  float p, hue, sat;
115  int type;
116 };
117 
118 struct vrna_color_s {
119  float hue;
120  float sat;
121  float bri;
122 };
123 
125  unsigned int position;
126  float value;
127  vrna_color_t color;
128 };
129 
130 
134 struct vrna_sect_s {
135  int i;
136  int j;
137  int ml;
138 };
139 
144  unsigned int i;
145  unsigned int j;
146 };
147 
148 
149 /*
150  * ############################################################
151  * RNAup data structures
152  * ############################################################
153  */
154 
158 typedef struct pu_contrib {
159  double **H;
160  double **I;
161  double **M;
162  double **E;
163  int length;
164  int w;
166 
170 typedef struct interact {
171  double *Pi;
172  double *Gi;
173  double Gikjl;
175  double Gikjl_wo;
176  int i;
177  int k;
178  int j;
179  int l;
180  int length;
182 
186 typedef struct pu_out {
187  int len;
188  int u_vals;
189  int contribs;
190  char **header;
191  double **u_values;
193 
197 typedef struct constrain {
198  int *indx;
199  char *ptype;
201 
202 /*
203  * ############################################################
204  * RNAduplex data structures
205  * ############################################################
206  */
207 
211 typedef struct {
212  int i;
213  int j;
214  int end;
215  char *structure;
216  double energy;
217  double energy_backtrack;
218  double opening_backtrack_x;
219  double opening_backtrack_y;
220  int offset;
221  double dG1;
222  double dG2;
223  double ddG;
224  int tb;
225  int te;
226  int qb;
227  int qe;
228 } duplexT;
229 
230 /*
231  * ############################################################
232  * RNAsnoop data structures
233  * ############################################################
234  */
235 
239 typedef struct node {
240  int k;
241  int energy;
242  struct node *next;
244 
248 typedef struct {
249  int i;
250  int j;
251  int u;
252  char *structure;
253  float energy;
254  float Duplex_El;
255  float Duplex_Er;
256  float Loop_E;
257  float Loop_D;
258  float pscd;
259  float psct;
260  float pscg;
261  float Duplex_Ol;
262  float Duplex_Or;
263  float Duplex_Ot;
264  float fullStemEnergy;
265 } snoopT;
266 
267 
268 /*
269  * ############################################################
270  * PKplex data structures
271  * ############################################################
272  */
273 
277 typedef struct dupVar {
278  int i;
279  int j;
280  int end;
281  char *pk_helix;
282  char *structure;
283  double energy;
284  int offset;
285  double dG1;
286  double dG2;
287  double ddG;
288  int tb;
289  int te;
290  int qb;
291  int qe;
292  int inactive;
293  int processed;
295 
326 #ifndef VRNA_DISABLE_C11_FEATURES
327 void vrna_C11_features(void);
328 
329 
330 #endif
331 
337 #endif
model.h
The model details data structure and its corresponding modifiers.
vrna_elem_prob_s
Data structure representing a single entry of an element probability list (e.g. list of pair probabil...
Definition: structures.h:453
hard.h
Functions and data structures for handling of secondary structure hard constraints.
dupVar
Data structure used in RNApkplex.
Definition: basic.h:277
vrna_data_linear_s
Definition: basic.h:124
grammar.h
Implementations for the RNA folding grammar.
vrna_basepair_s
Base pair data structure used in subopt.c.
Definition: basic.h:104
pu_out::u_vals
int u_vals
number of different -u values
Definition: basic.h:188
pu_out
struct pu_out pu_out
Collection of all free_energy of beeing unpaired values for output.
pu_out::contribs
int contribs
[-c "SHIME"]
Definition: basic.h:189
snoopT
Data structure for RNAsnoop.
Definition: basic.h:248
pu_out::header
char ** header
header line
Definition: basic.h:190
constrain
struct constrain constrain
constraints for cofolding
pu_out::u_values
double ** u_values
(the -u values * [-c "SHIME"]) * seq len
Definition: basic.h:191
pu_contrib
struct pu_contrib pu_contrib
contributions to p_u
dp_matrices.h
Functions to deal with standard dynamic programming (DP) matrices.
interact::length
int length
length of longer sequence
Definition: basic.h:180
vrna_cpair_s
this datastructure is used as input parameter in functions of PS_dot.c
Definition: basic.h:112
vrna_bp_stack_s
Base pair stack element.
Definition: basic.h:143
structured_domains.h
This module provides interfaces that deal with additional structured domains in the folding grammar.
soft.h
Functions and data structures for secondary structure soft constraints.
FLT_OR_DBL
double FLT_OR_DBL
Typename for floating point number in partition function computations.
Definition: basic.h:43
vrna_sect_s
Stack of partial structures for backtracking.
Definition: basic.h:134
interact::l
int l
j<l in shorter seq
Definition: basic.h:179
node
Data structure for RNAsnoop (fold energy list)
Definition: basic.h:239
pu_contrib::M
double ** M
multi loops
Definition: basic.h:161
pu_contrib::w
int w
longest unpaired region
Definition: basic.h:164
pu_contrib::H
double ** H
hairpin loops
Definition: basic.h:159
pu_contrib::E
double ** E
exterior loop
Definition: basic.h:162
interact
interaction data structure for RNAup
Definition: basic.h:170
interact::i
int i
k<i in longer seq
Definition: basic.h:176
pu_out::len
int len
sequence length
Definition: basic.h:187
unstructured_domains.h
Functions to modify unstructured domains, e.g. to incorporate ligands binding to unpaired stretches.
pu_contrib::I
double ** I
interior loops
Definition: basic.h:160
dupVar
struct dupVar dupVar
Data structure used in RNApkplex.
pu_contrib::length
int length
length of the input sequence
Definition: basic.h:163
vrna_C11_features
void vrna_C11_features(void)
Dummy symbol to check whether the library was build using C11/C++11 features.
pu_contrib
contributions to p_u
Definition: basic.h:158
constants.h
Energy parameter constants.
vrna_color_s
Definition: basic.h:118
duplexT
Data structure for RNAduplex.
Definition: basic.h:211
interact::Gikjl
double Gikjl
full free energy for interaction between [k,i] k<i in longer seq and [j,l] j<l in shorter seq
Definition: basic.h:173
interact::Gi
double * Gi
free energies of interaction
Definition: basic.h:172
fold_compound.h
The Basic Fold Compound API.
folden
struct node folden
Data structure for RNAsnoop (fold energy list)
interact::j
int j
j<l in shorter seq
Definition: basic.h:178
interact::k
int k
k<i in longer seq
Definition: basic.h:177
interact::Gikjl_wo
double Gikjl_wo
Gikjl without contributions for prob_unpaired.
Definition: basic.h:175
interact::Pi
double * Pi
probabilities of interaction
Definition: basic.h:171
pu_out
Collection of all free_energy of beeing unpaired values for output.
Definition: basic.h:186
constrain
constraints for cofolding
Definition: basic.h:197
basic.h
Functions to deal with sets of energy parameters.
interact
struct interact interact
interaction data structure for RNAup
structures.h
Various utility- and helper-functions for secondary structure parsing, converting,...