RNAlib-2.3.1
|
Modules | |
Parsing, converting, and comparing sequences | |
Parsing, converting, comparing secondary structures | |
Utilities for sequence alignments | |
Functions to Read/Write several File Formats for RNA Sequences, Structures, and Alignments | |
Functions dealing with file formats for RNA sequences, structures, and alignments. | |
Functions for Creating RNA Secondary Structures Plots, Dot-Plots, and More | |
Functions to convert between various units | |
Files | |
file | aln_util.h |
Various utility- and helper-functions for sequence alignments and comparative structure prediction. | |
file | alphabet.h |
Functions to process, convert, and generally handle different nucleotide and/or base pair alphabets. | |
file | combinatorics.h |
Various implementations that deal with combinatorial aspects of RNA/DNA folding. | |
file | string_utils.h |
General utility- and helper-functions for RNA sequence and structure strings used throughout the ViennaRNA Package. | |
file | structure_utils.h |
Various utility- and helper-functions for secondary structure parsing, converting, etc. | |
file | utils.h |
General utility- and helper-functions used throughout the ViennaRNA Package. | |
char * | vrna_ptypes (const short *S, vrna_md_t *md) |
Get an array of the numerical encoding for each possible base pair (i,j) More... | |
short * | vrna_seq_encode (const char *sequence, vrna_md_t *md) |
Get a numerical representation of the nucleotide sequence. | |
short * | vrna_seq_encode_simple (const char *sequence, vrna_md_t *md) |
Get a numerical representation of the nucleotide sequence (simple version) | |
int | vrna_nucleotide_encode (char c, vrna_md_t *md) |
Encode a nucleotide character to numerical value. More... | |
char | vrna_nucleotide_decode (int enc, vrna_md_t *md) |
Decode a numerical representation of a nucleotide back into nucleotide alphabet. More... | |
unsigned int ** | vrna_enumerate_necklaces (const unsigned int *type_counts) |
Enumerate all necklaces with fixed content. More... | |
void * | vrna_alloc (unsigned size) |
Allocate space safely. More... | |
void * | vrna_realloc (void *p, unsigned size) |
Reallocate space safely. More... | |
void | vrna_message_error (const char *format,...) |
Print an error message and die. More... | |
void | vrna_message_verror (const char *format, va_list args) |
Print an error message and die. More... | |
void | vrna_message_warning (const char *format,...) |
Print a warning message. More... | |
void | vrna_message_vwarning (const char *format, va_list args) |
Print a warning message. More... | |
void | vrna_message_info (FILE *fp, const char *format,...) |
Print an info message. More... | |
void | vrna_message_vinfo (FILE *fp, const char *format, va_list args) |
Print an info message. More... | |
void | vrna_init_rand (void) |
Initialize seed for random number generator. | |
double | vrna_urn (void) |
get a random number from [0..1] More... | |
int | vrna_int_urn (int from, int to) |
Generates a pseudo random integer in a specified range. More... | |
char * | vrna_time_stamp (void) |
Get a timestamp. More... | |
unsigned int | get_input_line (char **string, unsigned int options) |
void | vrna_message_input_seq_simple (void) |
Print a line to stdout that asks for an input sequence. More... | |
void | vrna_message_input_seq (const char *s) |
Print a line with a user defined string and a ruler to stdout. More... | |
int * | vrna_idx_row_wise (unsigned int length) |
Get an index mapper array (iindx) for accessing the energy matrices, e.g. in partition function related functions. More... | |
int * | vrna_idx_col_wise (unsigned int length) |
Get an index mapper array (indx) for accessing the energy matrices, e.g. in MFE related functions. More... | |
#define | VRNA_INPUT_ERROR 1U |
Output flag of get_input_line(): "An ERROR has occured, maybe EOF". | |
#define | VRNA_INPUT_QUIT 2U |
Output flag of get_input_line(): "the user requested quitting the program". | |
#define | VRNA_INPUT_MISC 4U |
Output flag of get_input_line(): "something was read". | |
#define | VRNA_INPUT_FASTA_HEADER 8U |
Input/Output flag of get_input_line(): if used as input option this tells get_input_line() that the data to be read should comply with the FASTA format. More... | |
#define | VRNA_INPUT_CONSTRAINT 32U |
Input flag for get_input_line(): Tell get_input_line() that we assume to read a structure constraint. More... | |
#define | VRNA_INPUT_NO_TRUNCATION 256U |
Input switch for get_input_line(): "do not trunkate the line by eliminating white spaces at end of line". | |
#define | VRNA_INPUT_NO_REST 512U |
Input switch for vrna_file_fasta_read_record(): "do fill rest array". | |
#define | VRNA_INPUT_NO_SPAN 1024U |
Input switch for vrna_file_fasta_read_record(): "never allow data to span more than one line". | |
#define | VRNA_INPUT_NOSKIP_BLANK_LINES 2048U |
Input switch for vrna_file_fasta_read_record(): "do not skip empty lines". | |
#define | VRNA_INPUT_BLANK_LINE 4096U |
Output flag for vrna_file_fasta_read_record(): "read an empty line". | |
#define | VRNA_INPUT_NOSKIP_COMMENTS 128U |
Input switch for get_input_line(): "do not skip comment lines". | |
#define | VRNA_INPUT_COMMENT 8192U |
Output flag for vrna_file_fasta_read_record(): "read a comment". | |
#define | MIN2(A, B) ((A) < (B) ? (A) : (B)) |
Get the minimum of two comparable values. | |
#define | MAX2(A, B) ((A) > (B) ? (A) : (B)) |
Get the maximum of two comparable values. | |
#define | MIN3(A, B, C) (MIN2( (MIN2((A),(B))) ,(C))) |
Get the minimum of three comparable values. | |
#define | MAX3(A, B, C) (MAX2( (MAX2((A),(B))) ,(C))) |
Get the maximum of three comparable values. | |
unsigned short | xsubi [3] |
Current 48 bit random number. More... | |
#define VRNA_INPUT_FASTA_HEADER 8U |
#include <ViennaRNA/utils.h>
Input/Output flag of get_input_line():
if used as input option this tells get_input_line() that the data to be read should comply with the FASTA format.
the function will return this flag if a fasta header was read
#define VRNA_INPUT_CONSTRAINT 32U |
#include <ViennaRNA/utils.h>
Input flag for get_input_line():
Tell get_input_line() that we assume to read a structure constraint.
unsigned int ** vrna_enumerate_necklaces | ( | const unsigned int * | type_counts | ) |
#include <ViennaRNA/combinatorics.h>
Enumerate all necklaces with fixed content.
This function implements A fast algorithm to generate necklaces with fixed content as published by Joe Sawada in 2003 [16].
The function receives a list of counts (the elements on the necklace) for each type of object within a necklace. The list starts at index 0 and ends with an entry that has a count of 0. The algorithm then enumerates all non-cyclic permutations of the content, returned as a list of necklaces. This list, again, is zero-terminated, i.e. the last entry of the list is a NULL
pointer.
type_counts | A 0-terminated list of entity counts |
char* vrna_ptypes | ( | const short * | S, |
vrna_md_t * | md | ||
) |
#include <ViennaRNA/alphabet.h>
Get an array of the numerical encoding for each possible base pair (i,j)
int vrna_nucleotide_encode | ( | char | c, |
vrna_md_t * | md | ||
) |
#include <ViennaRNA/alphabet.h>
Encode a nucleotide character to numerical value.
This function encodes a nucleotide character to its numerical representation as required by many functions in RNAlib.
c | The nucleotide character to encode |
md | The model details that determine the kind of encoding |
char vrna_nucleotide_decode | ( | int | enc, |
vrna_md_t * | md | ||
) |
#include <ViennaRNA/alphabet.h>
Decode a numerical representation of a nucleotide back into nucleotide alphabet.
This function decodes a numerical representation of a nucleotide character back into nucleotide alphabet
enc | The encoded nucleotide |
md | The model details that determine the kind of decoding |
void* vrna_alloc | ( | unsigned | size | ) |
#include <ViennaRNA/utils.h>
Allocate space safely.
size | The size of the memory to be allocated in bytes |
void* vrna_realloc | ( | void * | p, |
unsigned | size | ||
) |
#include <ViennaRNA/utils.h>
Reallocate space safely.
p | A pointer to the memory region to be reallocated |
size | The size of the memory to be allocated in bytes |
void vrna_message_error | ( | const char * | format, |
... | |||
) |
#include <ViennaRNA/utils.h>
Print an error message and die.
This function is a wrapper to fprintf(stderr, ...) that puts a capital ERROR: in front of the message and then exits the calling program.
format | The error message to be printed |
... | Optional arguments for the formatted message string |
void vrna_message_verror | ( | const char * | format, |
va_list | args | ||
) |
#include <ViennaRNA/utils.h>
Print an error message and die.
This function is a wrapper to vfprintf(stderr, ...) that puts a capital ERROR: in front of the message and then exits the calling program.
format | The error message to be printed |
args | The argument list for the formatted message string |
void vrna_message_warning | ( | const char * | format, |
... | |||
) |
#include <ViennaRNA/utils.h>
Print a warning message.
This function is a wrapper to fprintf(stderr, ...) that puts a capital WARNING: in front of the message.
format | The warning message to be printed |
... | Optional arguments for the formatted message string |
void vrna_message_vwarning | ( | const char * | format, |
va_list | args | ||
) |
#include <ViennaRNA/utils.h>
Print a warning message.
This function is a wrapper to fprintf(stderr, ...) that puts a capital WARNING: in front of the message.
format | The warning message to be printed |
args | The argument list for the formatted message string |
void vrna_message_info | ( | FILE * | fp, |
const char * | format, | ||
... | |||
) |
#include <ViennaRNA/utils.h>
Print an info message.
This function is a wrapper to fprintf(...).
fp | The file pointer where the message is printed to |
format | The warning message to be printed |
... | Optional arguments for the formatted message string |
void vrna_message_vinfo | ( | FILE * | fp, |
const char * | format, | ||
va_list | args | ||
) |
#include <ViennaRNA/utils.h>
Print an info message.
This function is a wrapper to fprintf(...).
fp | The file pointer where the message is printed to |
format | The info message to be printed |
args | The argument list for the formatted message string |
double vrna_urn | ( | void | ) |
#include <ViennaRNA/utils.h>
get a random number from [0..1]
int vrna_int_urn | ( | int | from, |
int | to | ||
) |
#include <ViennaRNA/utils.h>
Generates a pseudo random integer in a specified range.
from | The first number in range |
to | The last number in range |
char* vrna_time_stamp | ( | void | ) |
#include <ViennaRNA/utils.h>
Get a timestamp.
Returns a string containing the current date in the format
Fri Mar 19 21:10:57 1993
unsigned int get_input_line | ( | char ** | string, |
unsigned int | options | ||
) |
#include <ViennaRNA/utils.h>
Retrieve a line from 'stdin' savely while skipping comment characters and other features This function returns the type of input it has read if recognized. An option argument allows one to switch between different reading modes.
Currently available options are:
#VRNA_INPUT_NOPRINT_COMMENTS, VRNA_INPUT_NOSKIP_COMMENTS, #VRNA_INPUT_NOELIM_WS_SUFFIX
pass a collection of options as one value like this:
get_input_line(string, option_1 | option_2 | option_n)
If the function recognizes the type of input, it will report it in the return value. It also reports if a user defined 'quit' command (-sign on 'stdin') was given. Possible return values are:
VRNA_INPUT_FASTA_HEADER, VRNA_INPUT_ERROR, VRNA_INPUT_MISC, VRNA_INPUT_QUIT
string | A pointer to the character array that contains the line read |
options | A collection of options for switching the functions behavior |
void vrna_message_input_seq_simple | ( | void | ) |
#include <ViennaRNA/utils.h>
Print a line to stdout that asks for an input sequence.
There will also be a ruler (scale line) printed that helps orientation of the sequence positions
void vrna_message_input_seq | ( | const char * | s | ) |
#include <ViennaRNA/utils.h>
Print a line with a user defined string and a ruler to stdout.
(usually this is used to ask for user input) There will also be a ruler (scale line) printed that helps orientation of the sequence positions
s | A user defined string that will be printed to stdout |
int* vrna_idx_row_wise | ( | unsigned int | length | ) |
#include <ViennaRNA/utils.h>
Get an index mapper array (iindx) for accessing the energy matrices, e.g. in partition function related functions.
Access of a position "(i,j)" is then accomplished by using
(i,j) ~ iindx[i]-j
This function is necessary as most of the two-dimensional energy matrices are actually one-dimensional arrays throughout the ViennaRNA Package
Consult the implemented code to find out about the mapping formula ;)
length | The length of the RNA sequence |
int* vrna_idx_col_wise | ( | unsigned int | length | ) |
#include <ViennaRNA/utils.h>
Get an index mapper array (indx) for accessing the energy matrices, e.g. in MFE related functions.
Access of a position "(i,j)" is then accomplished by using
(i,j) ~ indx[j]+i
This function is necessary as most of the two-dimensional energy matrices are actually one-dimensional arrays throughout the ViennaRNAPackage
Consult the implemented code to find out about the mapping formula ;)
length | The length of the RNA sequence |
unsigned short xsubi[3] |
#include <ViennaRNA/utils.h>
Current 48 bit random number.
This variable is used by vrna_urn(). These should be set to some random number seeds before the first call to vrna_urn().