RNA Framework v2.7.0 released
This new version solves a potentially severe (although very rare) bug and introduces a new tool:
- Transcript IDs containing a slashes (”/”) are now handled by automatically converting slash characters to underscores (”_”). Many thanks to Dr. Artem Babaian for reporting this issue.
- After some work, we are proud to finally introduce the first version of rf-mutate. This tool has the unique ability to design mutations aimed at disrupting target structure motifs, and/or compensatory mutations aimed at rescuing the wild-type structure. Noticeably, this is (to our knowledge) the only tool that allows designing RNA structure mutants by preserving the underlying amino acid sequence (in case of motifs falling within ORFs).
We originally created this tool to disrupt target motifs within Influenza A virus (IAV) mRNAs (PMID: 31053845), by preserving the encoded protein sequence and avoiding the introduction of rare codons.
rf-mutate needs:
One or more structure files (dot-bracket or CT format)
A motif file (containing the list of target motifs to disrupt, mandatory)
An ORF file (containing details on whether and where an ORF resides within the target transcripts, optional)
If an ORF file is not provided, rf-mutate is also able to automatically identify the longest ORF.
In the following example (the relevant dot-bracket file can be retrieved from here), we show how rf-mutate works on a key motif we have previously identified in segment 4 (HA) of IAV. This motif is located between positions 1606-1669 of the HA mRNA. In the motif file must be indicated either the start coordinate of the motif (the first base-paired residue of the opening helix), or the dot-bracket representation of the motif itself (then rf-mutate will automatically identify the coordinates of the motif):
HA_4;1606 or HA_4;(((((((.........((((((((..........))))))))...............)))))))
As this is a protein-coding transcript, rf-mutate needs to be instructed on where does the ORF start. This can be done by either providing an ORF file, or by letting rf-mutate automatically look for the longest ORF. If an ORF file is provided, this can either contain the start-end coordinates of the ORF, or the amino acid sequence. In the latter case, both the full sequence or only a portion of it can be provided. rf-mutate will then automatically extend it up to the closest in-frame STOP codon (both upstream and downstream):
HA_4;32-1732 or HA_4;32 or HA_4;IYSTVASS
Given a number of mutations to operate, rf-mutate will try to different combinations of synonymous codons (or bases in the case of non-coding regions), evaluating the resulting mutants based on the base-pair distance between the mutant and wild-type structures and on the free energy difference between the two structures. Designed mutant/rescue pairs are then ranked in such a way that the average probability of formation of the wild-type base-pairs is minimized in the mutant ensemble and maximized in the rescue ensemble. The result is an XML file (for each target motif):
<?xml version="1.0" encoding="UTF-8"?> <motif energy="-24.30" frame="9-74" id="seg4" position="11-74"> <result n="0"> <mutant codons="6,20" ddG="8.40" distance="51" energy="-15.90" probability="0.00"> <sequence>AUGGGGAUCUAUCAGAUUCUCGCGAUCUAC UCAACUGUCGCCAGUUCACUGGUGCUUUUGGUUUCC </sequence> <structure>..((((((((...)))))))).........((((....((((((....))))))...)))).....</structure> </mutant> <rescue codons="2,14" ddG="8.90" distance="6" energy="-15.40" probability="0.81"> <sequence>AUGGGGACCUAUCAGAUUCUCGCGAUCUAC UCAACUGUCGCCUCUUCACUGGUGCUUUUGGUUUCC </sequence> <structure>..(((((((((((((......(((((..........))))).......)))))).....)))))))</structure> </rescue> </result> </motif>
For additional details, please refer to the documentation.














