RNAfbinv ReadMe

Table of Contents

Overview

RNAfbinv is an interactive java application that performs RNA sequence design, constrained to yield a specific RNA shape and physical attributes. It is an extension of the RNAexinv inverse folding program that considers not only the secondary structure, the mutational robustness and the minimum free energy but also a motif constraint on the target RNA shape and a nucleotide constraint on the output sequence. The sequences that are generated may not fully conform to the given RNA secondary structure, but the nucleotide constraint and motif constraint are enforced, and the sequences strictly conform to the RNA shape of the given secondary structure and thereby take into consideration the recommended values of thermodynamic stability and mutational robustness that are provided. The rationale behind the additional constraints is that the generated sequences should not only fold into a desired structure with constrained physical attributes, but should also preserve a motif in the RNA shape marked as important by users as well as allow the users to assume control of a sub-sequence of nucleotides in the generated sequence.

Downloading

You can download the package from : http://www.cs.bgu.ac.il/~RNAexinv/RNAfbinv

UP

The Package Content

1. RNAexinv - this program performs all the calculations that are explained in the manuscript. The input to this program is the dot-bracket representation of the desired structure, the desired free energy in kcal/mol, the desired neutrality value, the motif constraint and the nucleotide constraint. The output of the program is the designed sequence. The package contains the executable and the source code that can be compiled by the "make" command.

2. RNAshapiro - this program receives a dot-bracket representation of the desired structure and outputs the Shapiro representation of the structure. The package contains the executable and the source code that can be compiled by the "make" command.

3. Java code - this is a GUI that provides the interface for input parameters, running the RNAexinv program, and displaying the results in a table of designed sequences with the possibility to examine the drawings of the predicted secondary structures.

Programs taken from the Vienna RNA package and used in the RNAfbinv GUI:

1. RNAfold - predicts the minimum free energy secondary structures and base pairing probabilities; RNAeval predicts the minimum free energy in kcal/mol.
2. RNAplot - draws the secondary structure of the RNA given a sequence, and the dot-bracket representation of the secondary structure.
3. RNAdistance - compares secondary structures.

UP

Preparation and Compilation

RNAfbinv is currently available on a Linux platform (Ubuntu, OpenSuse, and Fedora were checked), Windows and Mac OS (OS X 10.8 was checked). All preparations and compilations that will be mentioned should be performed on a Linux, Windows or Mac OS platform with Java and "GNU CC" compiler installed. RNAfbinvGUI has all its components already compiled and may be used without any compilations as described in the "How to Run the Program" part, but it has some components written in C that in architectures other than the ones available for download may not work. In such a case, the Vienna RNA package should be downloaded from the web at http://www.tbi.univie.ac.at/~ivo/RNA/ and compiled. After the compilation finishes, files: "RNAplot", "RNAfold" and "RNAdistance" should be copied from Vienna RNA to the "RNAfbinvGUI\bin" directory. All files that are already in this directory should be overwritten. In order to compile RNAexinv, please go to the RNAfbinvGUI\RNAfbinv directory and run the make all command. Copy the created "RNAexinv" and "RNAshapiro" executable to the RNAfbinvGUI\bin directory.
In Windows platform, compilation can be done using cygwin environment. For more information click here.

Make sure that all files in the "RNAfbinvGUI\bin" directory are in an executable mode. If not, change their mode by typing the command:

  >chmod 700 file_name

where file_name is each file from the \bin directory. At this point, the RNAfbinvGUI utility can be used as described in the "How to Run the Program" part.

The java part of the application should be compiled, from RNAfbinvGUI\src, in the following way:

> javac *.java
> jar cfm RNAfbinvGUI.jar Manifest.txt *.class

UP

Requirements

RNAfbinv is currently available on a Linux platform (Ubuntu, OpenSuse, and Fedora were checked), Windows and Mac OS (OS X 10.8 was checked). For using this program, one needs to have "Java VM" installed on the computer.

For more information about downloading and installing Java click here.
Please make sure that the directory that contains the program and all subdirectories have the correct Read/Write permissions for all users working with this program.

The application assumes that ghostscript is installed on the machine and configured to be in the path. For more information about downloading and installing ghostscript click here.

UP

How to Run the Program

Before running the program make sure that all the preparations are done.
Open a Unix shell, and go to the directory that contains the program (e.g. RNAfbinvGUI\).
The GUI for the program can be started in the following way:

>java -jar RNAfbinvGUI.jar

The input screen that appears after running the command is shown in the following figure:

The screen that appears when pressing the "Fragment" button is shown in the following figure:

After pressing the "Process" button the following window will appear:

After pressing the "Result" button the following window will appear. These results are obtained from the same dot-bracket representation and parameters as appear in the two input screens of the GUI.

The input dot-bracket representation and the input parameters are available at the top of the window, as well as the Shapiro representation of the same desired structure.
The rest of the window contains the successfully found sequences of 20 design trials, ranked by their dot-bracket tree-edit distance relative to the wild-type predicted structure. Pressing on the button below each sequence will open the page with the information on this sequence.

For example, pressing on the button below a sequence will open the following window:

UP

End of ReadMe