The ViennaRNA Package consists of a few stand alone programs and a library that you can link your own programs with.
Together with this version we distribute the programs
- RNAlocmin, and
See the README files in the respective sub-directories.
The package allows you to
- predict minimum free energy secondary structures
- calculate the partition function for the ensemble of structures
- calculate suboptimal structures in a given energy range
- compute local structures in long sequences
- predict consensus secondary structures from a multiple sequence alignment
- predict melting curves
- search for sequences folding into a given structure
- compare two secondary structures
- predict hybridization structures of two RNA molecules
The package includes Perl5, Python 2, and Python 3 modules that give access to almost all functions of the C library from within the respective scripting languages.
There is also a set of programs for analyzing sequence and distance data using split decomposition, statistical geometry, and cluster methods. They are not maintained any more and not built by default.
The code very rarely uses static arrays, and all programs should work for sequences up to a length of 32,700 (if you have huge amounts of memory that is).
Please read the copyright notice in the file COPYING!
If you're a commercial user and find these programs useful, please consider supporting further developments with a donation.
The package should be easily portable. It is known to compile without modifications at least under SunOS 5.x, IRIX 5.x and 6.x, Linux, and MS Windows with the Cygwin environment. Other UNIX flavors should present no problems. You need a compiler that understands ANSI C. See the INSTALL file for details.
The following executable programs are provided:
RNA2DfoldCompute MFE structure, partition function and representative sample structures of k,l neighborhoods
RNAaliduplexPredict conserved RNA-RNA interactions between two alignments
RNAalifoldCalculate secondary structures for a set of aligned RNA sequences
RNAcofoldCalculate secondary structures of two RNAs with dimerization
RNAdistanceCalculate distances between RNA secondary structures
RNAduplexCompute the structure upon hybridization of two RNA strands
RNAevalEvaluate free energy of RNA sequences with given secondary structure
RNAfoldCalculate minimum free energy secondary structures and partition function of RNAs
RNAheatCalculate the specific heat (melting curve) of an RNA sequence
RNAinverseFind RNA sequences with given secondary structure (sequence design)
RNALalifoldCalculate locally stable secondary structures for a set of aligned RNAs
RNALfoldCalculate locally stable secondary structures of long RNAs
RNApalnRNA alignment based on sequence base pairing propensities
RNApdistCalculate distances between thermodynamic RNA secondary structures ensembles
RNAparconvConvert energy parameter files from ViennaRNA 1.8 to 2.0 format
RNAPKplexPredict RNA secondary structures including pseudoknots
RNAplexFind targets of a query RNA
RNAplfoldCalculate average pair probabilities for locally stable secondary structures
RNAplotDraw RNA Secondary Structures in PostScript, SVG, or GML
RNApvminCalculate a perturbation vector that minimizes discripancies between predicted and observed pairing probabilities
RNAsnoopFind targets of a query H/ACA snoRNA
RNAsuboptCalculate suboptimal secondary structures of RNAs
RNAupCalculate the thermodynamics of RNA-RNA interactions
AnalyseSeqsAnalyse sequence data
AnalyseDistsAnalyse distance matrices
A couple of useful utilities can be found in the src/Utils directory.
All executables read from stdin and write to stdout and use command line switches rather than menus to be easily usable in pipes.
For more detailed information see the man pages. Perl utilities contain POD documentation that can be read by typing e.g.
If you use our software package, you may want to cite
R. Lorenz et al. (2004), "ViennaRNA Package 2.0", Algorithms for Molecular Biology, 6:26
I.L. Hofacker (1994), "Fast folding and comparison of RNA secondary structures", Monatshefte fuer Chemie, Volume 125, Issue 2, pp 167-188
Note, that the individual executable programs state their own list of references in the corresponding man-pages.
Since version 2.0 the build-in energy parameters, also available as parameter file rna_turner2004.par, are taken from:
D.H. Mathews et al. (2004), "Incorporating chemical modification constraints into a dynamic programming algorithm for prediction of RNA secondary structure", Proc. Natl. Acad. Sci. USA: 101, pp 7287-7292
D.H. Turner et al. (2009), "NNDB: The nearest neighbor parameter database for predicting stability of nucleic acid secondary structure", Nucleic Acids Research: 38, pp 280-282.
For backward compatibility we also provide energy parameters from Turner et al. 1999 in the file rna_turner1999.par. Additionally, a set of trained RNA energy parameters from Andronescou et al. 2007, rna_andronescou2007.par and two sets of DNA parameters, dna_mathews1999.par and dna_mathews2004.par, are included in the package as well.
We need your feedback! Send your comments, suggestions, and questions to email@example.com
Ivo Hofacker, Spring 2006