Nucleotide Alphabets#
Functions to cope with various aspects related to the nucleotide sequence alphabet.
Defines
-
VRNA_SEQUENCE_RNA#
#include <ViennaRNA/sequences/sequence.h>
-
VRNA_SEQUENCE_DNA#
#include <ViennaRNA/sequences/sequence.h>
Typedefs
-
typedef struct vrna_sequence_s vrna_seq_t#
Typename for nucleotide sequence representation data structure vrna_sequence_s.
#include <ViennaRNA/sequences/sequence.h>
-
typedef struct vrna_alignment_s vrna_msa_t#
#include <ViennaRNA/sequences/sequence.h>
Enums
-
enum vrna_seq_type_e#
A enumerator used in vrna_sequence_s to distinguish different nucleotide sequences.
#include <ViennaRNA/sequences/sequence.h>
Values:
-
enumerator VRNA_SEQ_UNKNOWN#
Nucleotide sequence represents an Unkown type.
-
enumerator VRNA_SEQ_RNA#
Nucleotide sequence represents an RNA type.
-
enumerator VRNA_SEQ_DNA#
Nucleotide sequence represents a DNA type.
-
enumerator VRNA_SEQ_UNKNOWN#
Functions
-
unsigned int vrna_sequence_length_max(unsigned int options)#
#include <ViennaRNA/sequences/alphabet.h>
-
int vrna_nucleotide_IUPAC_identity(char a, char b)#
#include <ViennaRNA/sequences/alphabet.h>
-
void vrna_ptypes_prepare(vrna_fold_compound_t *fc, unsigned int options)#
#include <ViennaRNA/sequences/alphabet.h>
-
char *vrna_ptypes(const short *S, const vrna_md_t *md)#
Get an array of the numerical encoding for each possible base pair (i,j).
#include <ViennaRNA/sequences/alphabet.h>
See also
Note
This array is always indexed in column-wise order, in contrast to previously different indexing between mfe and pf variants!
-
short *vrna_seq_encode(const char *sequence, const vrna_md_t *md)#
Get a numerical representation of the nucleotide sequence.
#include <ViennaRNA/sequences/alphabet.h>
- Parameters:
sequence – The input sequence in upper-case letters
md – A pointer to a vrna_md_t data structure that specifies the conversion type
- Returns:
A list of integer encodings for each sequence letter (1-based). Position 0 denotes the length of the list
-
short *vrna_seq_encode_simple(const char *sequence, const vrna_md_t *md)#
Get a numerical representation of the nucleotide sequence (simple version).
#include <ViennaRNA/sequences/alphabet.h>
-
int vrna_nucleotide_encode(char c, const vrna_md_t *md)#
Encode a nucleotide character to numerical value.
#include <ViennaRNA/sequences/alphabet.h>
This function encodes a nucleotide character to its numerical representation as required by many functions in RNAlib.
See also
- Parameters:
c – The nucleotide character to encode
md – The model details that determine the kind of encoding
- Returns:
The encoded nucleotide
-
char vrna_nucleotide_decode(int enc, const vrna_md_t *md)#
Decode a numerical representation of a nucleotide back into nucleotide alphabet.
#include <ViennaRNA/sequences/alphabet.h>
This function decodes a numerical representation of a nucleotide character back into nucleotide alphabet
See also
- Parameters:
enc – The encoded nucleotide
md – The model details that determine the kind of decoding
- Returns:
The decoded nucleotide character
-
void vrna_aln_encode(const char *sequence, short **S_p, short **s5_p, short **s3_p, char **ss_p, unsigned int **as_p, const vrna_md_t *md)#
#include <ViennaRNA/sequences/alphabet.h>
-
unsigned int vrna_get_ptype_md(int i, int j, const vrna_md_t *md)#
#include <ViennaRNA/sequences/alphabet.h>
-
unsigned int vrna_get_ptype(int ij, char *ptype)#
#include <ViennaRNA/sequences/alphabet.h>
-
unsigned int vrna_get_ptype_window(int i, int j, char **ptype)#
#include <ViennaRNA/sequences/alphabet.h>
-
vrna_seq_t *vrna_sequence(const char *string, unsigned int options)#
#include <ViennaRNA/sequences/sequence.h>
-
int vrna_sequence_add(vrna_fold_compound_t *fc, const char *string, unsigned int options)#
#include <ViennaRNA/sequences/sequence.h>
-
int vrna_sequence_remove(vrna_fold_compound_t *fc, unsigned int i)#
#include <ViennaRNA/sequences/sequence.h>
-
void vrna_sequence_remove_all(vrna_fold_compound_t *fc)#
#include <ViennaRNA/sequences/sequence.h>
-
void vrna_sequence_prepare(vrna_fold_compound_t *fc)#
#include <ViennaRNA/sequences/sequence.h>
-
int vrna_sequence_order_update(vrna_fold_compound_t *fc, const unsigned int *order)#
#include <ViennaRNA/sequences/sequence.h>
-
size_t vrna_sequence_mutate_strand(vrna_fold_compound_t *fc, unsigned int strand, unsigned int *positions, char *nucleotidea, size_t nmods)#
#include <ViennaRNA/sequences/sequence.h>
-
size_t vrna_sequence_mutate(vrna_fold_compound_t *fc, const unsigned int *positions, const char *nucleotides, size_t nmut)#
#include <ViennaRNA/sequences/sequence.h>
-
int vrna_msa_add(vrna_fold_compound_t *fc, const char **alignment, const char **names, const unsigned char *orientation, const unsigned long long *start, const unsigned long long *genome_size, unsigned int options)#
#include <ViennaRNA/sequences/sequence.h>
-
struct vrna_sequence_s#
- #include <ViennaRNA/sequences/sequence.h>
Data structure representing a nucleotide sequence.
Public Members
-
vrna_seq_type_e type#
The type of sequence.
#include <ViennaRNA/sequences/sequence.h>
-
char *name#
#include <ViennaRNA/sequences/sequence.h>
-
char *string#
The string representation of the sequence.
#include <ViennaRNA/sequences/sequence.h>
-
short *encoding#
The integer representation of the sequence.
#include <ViennaRNA/sequences/sequence.h>
-
short *encoding5#
#include <ViennaRNA/sequences/sequence.h>
-
short *encoding3#
#include <ViennaRNA/sequences/sequence.h>
-
unsigned int length#
The length of the sequence.
#include <ViennaRNA/sequences/sequence.h>
-
vrna_seq_type_e type#
-
struct vrna_alignment_s#
Public Members
-
unsigned int n_seq#
#include <ViennaRNA/sequences/sequence.h>
-
vrna_seq_t *sequences#
#include <ViennaRNA/sequences/sequence.h>
-
char **gapfree_seq#
#include <ViennaRNA/sequences/sequence.h>
-
unsigned int *gapfree_size#
#include <ViennaRNA/sequences/sequence.h>
-
unsigned long long *genome_size#
#include <ViennaRNA/sequences/sequence.h>
-
unsigned long long *start#
#include <ViennaRNA/sequences/sequence.h>
-
unsigned char *orientation#
#include <ViennaRNA/sequences/sequence.h>
-
unsigned int **a2s#
#include <ViennaRNA/sequences/sequence.h>
-
unsigned int n_seq#
-
VRNA_SEQUENCE_RNA#