On this page:

Vienna RNAsubopt++

2004 Energy Parameters


Sliding Windows

Find and Combine

Licenses & Financial Support

RNA folding software

from the lab of Dr. Susan Schroeder

This page offers information about and downloads of software developed by the Schroeder lab's computational biochemistry team, including (currently) Jonathan Wesley Stone, Sam Bleckley, Ryan Liu, and (previously) Sean Lavelle and Ted Gibbons. The lab is supported by OU's Chemistry and Biochemistry and Microbiology and Plant Biology departments. Much of this software was useful in completing the work outlined in Ensemble of Secondary Structures for Encapsidated Satellite Tobacco Mosaic Virus RNA Consistent with Chemical Probing and Crystallography Constraints. The design, implementation, and performance of this software will be discussed in an upcoming paper. Due to the exponentially large nature of the output, we do not offer server access to these programs.

Vienna RNAsubopt++ [Download]

This is a modified version of the Vienna RNA Package, providing added functionality to RNAsubopt. Our modifications include:

To build, run:

./configure_cmd nompi && ./make_cmd

Or, to compile for parallel execution:

./configure_cmd mpi && ./make_cmd

The source code may be browsed at http://adenosine.chem.ou.edu:8000/pvienna/.

2004 Energy Parameters for Vienna RNA Suite [download]

Many of the thermodynamic parameters used by the Wuchty and Zuker algorithms have been adjusted in the past decade. We provide an updated parameter file, for use with Vienna's -P FILE commandline option. For more information on thermodynamic parameters, please visit the Turner lab thermodynamic database

Crumple [download]

Crumple is for full-funnel folding of RNA secondary structures.

Crumple's build system requires GNU make; building is as simple as running


To truly fold a full funnel, pipe crumple a sequence; no options are necessary:

echo "GCUCUAAAAGAGAG" | ./crumple

Crumple can also accept input from a file:

./crumple -i sequence.seq

Various filters are available to reduce the (admittedly expansive) output, including removing structures that contain lonely pairs, obeying the constraints of chemical modification and covariation data, and produceing specific numbers and types of helices. For more information about all of these options, read the usage message:

./crumple --help

Crumple can be run serially, on a single machine, or in parallel, using MPI. To compile for parallel execution, ensure that libMPI is available, and:

make mpi

Crumple's parallel implementation is well-tuned, and for problems that take more than a few minutes, you should experience linear speedup.

To better understand the way that crumple explores the space of possible secondary structures, try this online, interactive version.

Sliding Windows and Assembly [download]

Due to the excessive size of crumple's output, further restrictions are necessary to attack large problems. One possible restriction is to assume cotranscriptional folding has built a series of hairpins. By folding hairpins from all possible subsequences of a given length, and scoring the results based on symmetry, size, satisfaction of chemical modification, and similar constraints, solutions can be built based on more specific experimental data than generic thermodynamic perameters. Sliding windows requires RNAeval from the Vienna RNA package to be installed in a $PATH folder.

Sliding windows and assembly are used by composing a configuration file (example configurations are included) and running:

./sliding_windows sequence.conf

Runs usually take several minutes to several hours; be patient.

Steps to get started:

  1. Download the software.
  2. tar xvfz sliding_windows.tgz
  3. cd sliding_windows-rN
  4. make
  5. ./sliding_windows.sh sequence.conf

The best structure per window is in the "best" folder with files named by POSxLEN.lab, for example 83x24.lab for a structure 24 nt wide starting at position 83. The "structs" folder has the raw crumple output and will be quite large, while the "labeled" folder has the processed output from which the "best" are selected per window and length.

Examples of Viral RNA Ensembles Generated with Crumple, Sliding Windows, and Assembly


STMV Sequence

STMV Configuration File

STMV Secondary Structure Resulting from Assembly

STMV Ensemble

This is the configuration file necessary to generate the set of hairpins in Figure 4 of Ensemble of Secondary Structures for Encapsidated Satellite Tobacco Mosaic Virus RNA Consistent with Constraints from Chemical Probing and Crystallography. S.J. Schroeder et al. (2011)


MS2 Sequence

MS2 Configuration File

MS2 Secondary Structure Resulting from Assembly

MS2 Ensemble

This is the configuration file necessary to generate the set of hairpins in Figure 4 of Incorporating Global Features of RNA Motifs in Predictions for an Ensemble of Secondary Structures for Encapsidated MS2 Bacteriophage RNA. Bleckley et al. (2012)

Helix Find and Combine [download]

Helix Find and Combine are tools for creating pseudiknotted structures based on specific information about the number, size, completeness, and symmetry of component hairpins. Find finds all possible helices of a given description; combine attempts to use the output of find to create structures with a given number of component helices. Due to the scale of this problem as the number of helices increases, the time spent by combine quickly becomes extreme. Usage information can be found in the README the comes with this download.

Licensing and Financial Support

All software is offered under an MIT license unless otherwise noted.

This work was supported by NSFCAREER award #0844913 and grants from the Oklahoma Center for the Advancement of Science and Technology and the Pharmaceutical Research and Manufacturers of America Foundation.