RNAlib-2.5.1
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
22
25
28
31
33typedef struct vrna_sect_s vrna_sect_t;
34
36
37typedef struct vrna_color_s vrna_color_t;
38
40#ifdef USE_FLOAT_PF
41typedef float FLT_OR_DBL;
42#else
43typedef 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
55typedef struct vrna_basepair_s PAIR;
56
61typedef struct vrna_elem_prob_s plist;
66typedef struct vrna_cpair_s cpair;
67
72typedef struct vrna_sect_s sect;
73
78typedef struct vrna_bp_stack_s bondT;
79
80#endif
81
84#include <ViennaRNA/model.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
113 int i, j, mfe;
114 float p, hue, sat;
115 int type;
116};
117
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
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
158typedef struct pu_contrib {
159 double **H;
160 double **I;
161 double **M;
162 double **E;
163 int length;
164 int w;
166
170typedef 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
186typedef struct pu_out {
187 int len;
188 int u_vals;
190 char **header;
191 double **u_values;
193
197typedef struct constrain {
198 int *indx;
199 char *ptype;
201
202/*
203 * ############################################################
204 * RNAduplex data structures
205 * ############################################################
206 */
207
211typedef 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
239typedef struct node {
240 int k;
241 int energy;
242 struct node *next;
244
248typedef 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
277typedef 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
328
329
330#endif
331
337#endif
Energy parameter constants.
Functions to deal with standard dynamic programming (DP) matrices.
The Basic Fold Compound API.
Implementations for the RNA folding grammar.
int l
j<l in shorter seq
Definition: basic.h:179
double ** M
multi loops
Definition: basic.h:161
double * Pi
probabilities of interaction
Definition: basic.h:171
int len
sequence length
Definition: basic.h:187
int length
length of the input sequence
Definition: basic.h:163
double ** u_values
(the -u values * [-c "SHIME"]) * seq len
Definition: basic.h:191
int w
longest unpaired region
Definition: basic.h:164
double Gikjl_wo
Gikjl without contributions for prob_unpaired.
Definition: basic.h:175
double * Gi
free energies of interaction
Definition: basic.h:172
int k
k<i in longer seq
Definition: basic.h:177
int contribs
[-c "SHIME"]
Definition: basic.h:189
int j
j<l in shorter seq
Definition: basic.h:178
int u_vals
number of different -u values
Definition: basic.h:188
double ** I
interior loops
Definition: basic.h:160
int i
k<i in longer seq
Definition: basic.h:176
double ** H
hairpin loops
Definition: basic.h:159
char ** header
header line
Definition: basic.h:190
int length
length of longer sequence
Definition: basic.h:180
double ** E
exterior loop
Definition: basic.h:162
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
void vrna_C11_features(void)
Dummy symbol to check whether the library was build using C11/C++11 features.
struct interact interact
interaction data structure for RNAup
double FLT_OR_DBL
Typename for floating point number in partition function computations.
Definition: basic.h:43
struct node folden
Data structure for RNAsnoop (fold energy list)
struct constrain constrain
constraints for cofolding
struct pu_contrib pu_contrib
contributions to p_u
struct dupVar dupVar
Data structure used in RNApkplex.
struct pu_out pu_out
Collection of all free_energy of beeing unpaired values for output.
constraints for cofolding
Definition: basic.h:197
Data structure used in RNApkplex.
Definition: basic.h:277
Data structure for RNAduplex.
Definition: basic.h:211
interaction data structure for RNAup
Definition: basic.h:170
Data structure for RNAsnoop (fold energy list)
Definition: basic.h:239
contributions to p_u
Definition: basic.h:158
Collection of all free_energy of beeing unpaired values for output.
Definition: basic.h:186
Data structure for RNAsnoop.
Definition: basic.h:248
Base pair data structure used in subopt.c.
Definition: basic.h:104
Base pair stack element.
Definition: basic.h:143
Definition: basic.h:118
this datastructure is used as input parameter in functions of PS_dot.c
Definition: basic.h:112
Definition: basic.h:124
Stack of partial structures for backtracking.
Definition: basic.h:134
Data structure representing a single entry of an element probability list (e.g. list of pair probabil...
Definition: structures.h:482
Functions and data structures for handling of secondary structure hard constraints.
The model details data structure and its corresponding modifiers.
Functions to deal with sets of energy parameters.
Functions and data structures for secondary structure soft constraints.
This module provides interfaces that deal with additional structured domains in the folding grammar.
Functions to modify unstructured domains, e.g. to incorporate ligands binding to unpaired stretches.
Various utility- and helper-functions for secondary structure parsing, converting,...