struct vrna_fc_s

#include <ViennaRNA/fold_compound.h>

Overview

The most basic data structure required by many functions throughout the RNAlib. More…

// fields

vrna_fc_type_e type
unsigned int length
int cutpoint
unsigned int* strand_number
unsigned int* strand_order
unsigned int* strand_start
unsigned int* strand_end
unsigned int strands
vrna_seq_t* nucleotides
vrna_hc_t* hc
vrna_mx_mfe_t* matrices
vrna_mx_pf_t* exp_matrices
vrna_param_t* params
vrna_exp_param_t* exp_params
int* iindx
int* jindx
vrna_callback_recursion_status* stat_cb
void* auxdata
vrna_callback_free_auxdata* free_auxdata
vrna_sd_t* domains_struc
vrna_ud_t* domains_up
vrna_gr_aux_t* aux_grammar
unsigned int maxD1
unsigned int maxD2
short* reference_pt1
short* reference_pt2
unsigned int* referenceBPs1
unsigned int* referenceBPs2
unsigned int* bpdist
unsigned int* mm1
unsigned int* mm2
int window_size
char** ptype_local
char* sequence
short* sequence_encoding
short* sequence_encoding2
char* ptype
char* ptype_pf_compat
vrna_sc_t* sc
char** sequences
unsigned int n_seq
char* cons_seq
short* S_cons
short** S
short** S5
short** S3
char** Ss
unsigned int** a2s
int* pscore
int** pscore_local
short* pscore_pf_compat
vrna_sc_t** scs
int oldAliEn

Detailed Documentation

The most basic data structure required by many functions throughout the RNAlib.

SWIG Wrapper Notes This data structure is wrapped as an object fold_compound with several related functions attached as methods.

A new fold_compound can be obtained by calling one of its constructors:

  • fold_compound(seq) Initialize with a single sequence, or two concatenated sequences separated by an ampersand character ‘&’ (for cofolding)
  • fold_compound(aln) Initialize with a sequence alignment aln stored as a list of sequences (with gap characters)

The resulting object has a list of attached methods which in most cases directly correspond to functions that mainly operate on the corresponding C data structure:

  • type() Get the type of the fold_compound (See vrna_fc_type_e )
  • length() Get the length of the sequence(s) or alignment stored within the fold_compound

Note

Please read the documentation of this data structure carefully! Some attributes are only available for specific types this data structure can adopt.

Warning

Reading/Writing from/to attributes that are not within the scope of the current type usually result in undefined behavior!

Fields

vrna_fc_type_e type
The type of the vrna_fold_compound_t .

Currently possible values are VRNA_FC_TYPE_SINGLE , and VRNA_FC_TYPE_COMPARATIVE

Warning

Do not edit this attribute, it will be automagically set by the corresponding get() methods for the vrna_fold_compound_t . The value specified in this attribute dictates the set of other attributes to use within this data structure.

unsigned int length
The length of the sequence (or sequence alignment)
int cutpoint
The position of the (cofold) cutpoint within the provided sequence. If there is no cutpoint, this field will be set to -1.
unsigned int* strand_number
The strand number a particular nucleotide is associated with.
vrna_hc_t* hc
The hard constraints data structure used for structure prediction.
vrna_mx_mfe_t* matrices
The MFE DP matrices.
vrna_mx_pf_t* exp_matrices
The PF DP matrices.
vrna_param_t* params
The precomputed free energy contributions for each type of loop.
vrna_exp_param_t* exp_params
The precomputed free energy contributions as Boltzmann factors.
int* iindx
DP matrix accessor.
int* jindx
DP matrix accessor.
vrna_callback_recursion_status* stat_cb
Recursion status callback (usually called just before, and after recursive computations in the library.
void* auxdata
A pointer to auxiliary, user-defined data.
vrna_callback_free_auxdata* free_auxdata
A callback to free auxiliary user data whenever the fold_compound itself is free’d.
vrna_sd_t* domains_struc
Additional structured domains.
vrna_ud_t* domains_up
Additional unstructured domains.
unsigned int maxD1
Maximum allowed base pair distance to first reference.
unsigned int maxD2
Maximum allowed base pair distance to second reference.
short* reference_pt1
A pairtable of the first reference structure.
short* reference_pt2
A pairtable of the second reference structure.
unsigned int* referenceBPs1
Matrix containing number of basepairs of reference structure1 in interval [i,j].
unsigned int* referenceBPs2
Matrix containing number of basepairs of reference structure2 in interval [i,j].
unsigned int* bpdist
Matrix containing base pair distance of reference structure 1 and 2 on interval [i,j].
unsigned int* mm1
Maximum matching matrix, reference struct 1 disallowed.
unsigned int* mm2
Maximum matching matrix, reference struct 2 disallowed.
int window_size
window size for local folding sliding window approach
char** ptype_local
Pair type array (for local folding)
char* sequence
The input sequence string.

Warning

Only available if

type==VRNA_FC_TYPE_SINGLE
short* sequence_encoding
Numerical encoding of the input sequence.

Warning

Only available if

type==VRNA_FC_TYPE_SINGLE

See also:

vrna_sequence_encode()

char* ptype
Pair type array.

Contains the numerical encoding of the pair type for each pair (i,j) used in MFE, Partition function and Evaluation computations.

Note

This array is always indexed via jindx, in contrast to previously different indexing between mfe and pf variants!

Warning

Only available if

type==VRNA_FC_TYPE_SINGLE
char* ptype_pf_compat
ptype array indexed via iindx

Deprecated This attribute will vanish in the future! It’s meant for backward compatibility only!

Warning

Only available if

type==VRNA_FC_TYPE_SINGLE
vrna_sc_t* sc
The soft constraints for usage in structure prediction and evaluation.

Warning

Only available if

type==VRNA_FC_TYPE_SINGLE
char** sequences
The aligned sequences.

Note

The end of the alignment is indicated by a NULL pointer in the second dimension

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
unsigned int n_seq
The number of sequences in the alignment.

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
char* cons_seq
The consensus sequence of the aligned sequences.

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
short* S_cons
Numerical encoding of the consensus sequence.

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
short** S
Numerical encoding of the sequences in the alignment.

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
short** S5
S5[s][i] holds next base 5’ of i in sequence s.

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
short** S3
Sl[s][i] holds next base 3’ of i in sequence s.

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
int* pscore
Precomputed array of pair types expressed as pairing scores.

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
int** pscore_local
Precomputed array of pair types expressed as pairing scores.

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
short* pscore_pf_compat
Precomputed array of pair types expressed as pairing scores indexed via iindx.

Deprecated This attribute will vanish in the future!

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE
vrna_sc_t** scs
A set of soft constraints (for each sequence in the alignment)

Warning

Only available if

type==VRNA_FC_TYPE_COMPARATIVE