RNAMULTIFOLD(1)
๐ RNAMULTIFOLD(1) ๐
User Commands, bestie, this is the RNAMULTIFOLD(1) page and it's giving main character energy ๐
โจ NAME โจ
RNAmultifold - manual page for RNAmultifold 2.7.0 ๐ธ
โจ SYNOPSIS โจ
RNAmultifold [OPTION]... [FILE]...
โจ DESCRIPTION โจ
RNAmultifold 2.7.0 ๐
Compute secondary structures of multiple interacting RNAs ๐งฌ
okay so RNAmultifold works a lot like RNAfold, but the slay part is that you can give it multiple RNA sequences and they're allowed to form connected components together ๐ฆ Input gets read from stdin in the usual format, so each line is one sequence, EXCEPT lines starting with >, which hold the name of the next sequence(s). If you have multiple strands, you concatenate them with the & character as the separator ๐ซถ
RNAmultifold can compute the MFE, the partition function, the matching ensemble free energy, and base pairing probabilities. These get computed for a particular arrangement (concatenation) of sequences, for the full ensemble of the complex of input RNAs, or for all complexes the input sequences can form up to a specified number of interacting sequences ๐ฅ
The output is a PostScript "dot plot" file containing the pair probabilities. For the deets, check the RNAfold man page โจ The program keeps reading new sequences until it hits a line with just the single character @, or until it reaches an end of file condition ๐
-h, --help โ Print help and exit ๐
--detailed-help โ Print help, including all details and hidden options, and exit ๐
--full-help โ Print help, including hidden options, and exit ๐ง
-V, --version โ Print version and exit ๐
-v, --verbose โ Be verbose ๐ฃ (default: off). This lowers the log level setting so even INFO messages get passed through ๐
๐ I/O Options
Command line options for input and output (pre-)processing ๐
-j,--jobs[=number]โ Split batch input into jobs and start processing in parallel using multiple threads ๐งต A value of0means use as many parallel threads as computation cores are available (default:0). By default, input is processed serially, one sequence pair at a time. With this switch, you can start the computation for many sequence pairs in parallel instead. RNAmultifold creates as many parallel computation slots as you specify and assigns the input sequences from the input file(s) to the available slots. Heads up though: this increases memory consumption, since input alignments have to be kept in memory until an empty compute slot is free, and each running job needs its own dynamic programming matrices ๐--unorderedโ Don't try to keep the output in order with the input while parallel processing is happening ๐ (default: off). When parallel input processing (--jobsflag) is on, the order that input gets processed in depends on the host machine's job scheduler. So any output to stdout or to files made by this program probably won't match the order of the input data set. RNAmultifold's default is to use a specialized data structure to keep results in order with the input anyway. The trade-off is memory, since all output has to be held in memory until consecutive, ordered chunks of output are ready. Set this flag and RNAmultifold stops buffering individual results and prints them as soon as they've been computed โก--noconvโ Don't automatically substitute nucleotide "T" with "U" ๐ โโ๏ธ (default: off).--auto-idโ Automatically generate an ID for each sequence (default: off). By default, RNAmultifold grabs an ID from the input sequence data if the input file format allows it. Sequence IDs usually live in the FASTA header of the input sequences. With this flag on, RNAmultifold ignores any IDs from the input and generates one for each sequence instead. Each generated ID is a prefix plus an increasing number. You can also use this flag to add a FASTA header to the output, even if the input doesn't have one ๐--id-prefix=STRINGโ Prefix for automatically generated IDs (as used in output file names) (default:sequence). Each sequence gets prefixed with the string you give. So the output files follow this naming scheme:prefix_xxxx_ss.ps(secondary structure plot),prefix_xxxx_dp.ps(dot-plot),prefix_xxxx_dp2.ps(stack probabilities), etc., wherexxxxis the sequence number ๐ Note: setting this parameter implies--auto-id.--id-delim=CHARโ Change the delimiter between the prefix and the increasing number for automatically generated IDs (as used in output file names) (default:_). This is how you swap out the default "_" between the prefix string and the increasing number ๐ฉท--id-digits=INTโ Specify how many digits the counter has in automatically generated alignment IDs (default:4). Generated alignment IDs get an increasing number starting at 1. That number is always left-padded with leading zeros so it takes up a fixed width. This parameter lets you set that width to whatever you need. Numbers in the range[1:18]are allowed. This option implies--auto-id๐ข--id-start=LONGโ Specify the first number in automatically generated IDs (default:1). Generated sequence IDs usually start at 1, but this parameter lets you pick the starting number to match your needs. Note: negative numbers are not allowed. Note: setting this parameter means any IDs from the input data get ignored, so it turns on the--auto-idflag ๐--filename-delim=CHARโ Change the delimiting character used in sanitized filenames (default:ID-delimiter). This parameter swaps the character used when sanitizing filenames, which means replacing invalid characters. The default delimiter ALWAYS is the first character of the "ID delimiter" you pass in with the--id-delimoption. If the delimiter is a whitespace character or empty, invalid characters get removed outright instead of substituted. Right now these characters count as illegal in filenames: backslash\, slash/, question mark?, percent sign%, asterisk*, colon:, pipe symbol|, double quote", and triangle brackets<and>๐ซ--filename-fullโ Use the full FASTA header to create filenames (default: off). This deactivates the default behavior of limiting output filenames to the first word of the sequence ID ๐งพ Say your input has the FASTA header>NM_0001 Homo Sapiens some gene. Usually the output files get the prefixNM_0001with none of the extra FASTA header data, so you'd get something likeNM_0001_ss.psfor secondary structure plots. With this flag set, nothing gets truncated, so the output filenames take the full FASTA header as their prefix. Just know that invalid characters (like whitespace) still get swapped for a delimiting character or removed entirely. See the--filename-delimoption for more on that ๐ซ--log-level=levelโ Set the log level threshold (default:2). By default, log messages are filtered so only warnings (level 2) or errors (level 3) get printed. Higher values mean fewer messages. Log level 5 turns off ALL messages, even errors and other critical info ๐คซ--log-file[=filename]โ Print log messages to a file instead of stderr (default:RNAmultifold.log) ๐--log-timeโ Include a time stamp in log messages (default: off) โฐ--log-callโ Include the file and line of the log calling function (default: off) ๐
๐งฎ Algorithms
Select additional algorithms to include in the calculations ๐ง The Minimum free energy (MFE) and a structure representative are calculated in any case, no matter what ๐
-p,--partfunc[=INT]โ Calculate the partition function and base pairing probability matrix in addition to the MFE structure (default:1). The default is calculating only the MFE structure ๐ซง On top of the MFE structure, the program prints a coarse representation of the pair probabilities in a pseudo bracket notation, followed by the ensemble free energy. Heads up: unless you also specify-d2or-d0, the partition function and MFE calculations use a slightly different energy model. See the discussion of dangling end options below ๐ An extra value passed to this option changes how the partition function gets calculated. If you want the partition function but NOT the pair probabilities, use the-p0option and save about 50% in runtime โก This prints the ensemble free energydG=-kT ln(Z).-a,--all_pf[=INT]โ Compute the partition function and free energies not just for the complex formed by the input sequences (the "ABC... multimer"), but also for all complexes formed by the input sequences up to the number of input sequences, e.g. AAA, AAB, ABB, BBB, etc. (default:1) ๐ธ The output contains the free energies for each of these species. Using-aautomatically switches on the-poption ๐-c,--concentrationsโ On top of everything under the-aoption, read in initial monomer concentrations and compute the expected equilibrium concentrations of all possible species (A, B, AA, BB, AB, etc.) (default: off) ๐งช
Okay so the -c bit: start concentrations get read from stdin (unless you're using -f) in [mol/l] โจ, and the equilibrium concentrations come out relative to the sum of the inputs. You can throw in an arbitrary number of initial concentrations, one tuple per line ๐
-f,--concfile=filenameโ point this at a file with the starting concentrations for your input sequences ๐ The table can have as many lines as you want, each with several numbers separated by whitespace (the concentrations of input sequences A, B, C, and so on). Using this option automatically switches on-c(and therefore-aand-p), see above ๐ฅ--absolute-concentrationsโ report absolute concentrations instead of relative ones (default=off) ๐งฎ--betaScale=DOUBLEโ scales the Boltzmann factors (default=1.) ๐ก๏ธ This lets you scale the thermodynamic temperature inside the Boltzmann factors separately from the temperature of each individual loop energy contribution. The Boltzmann factors then becomeexp(- dG/(kT*betaScale)), wherekis the Boltzmann constant,dGis the free energy contribution of the state, andTis the absolute temperature.-S,--pfScale=DOUBLEโ in the partition function calculation,scale*mfegets used as an estimate for the ensemble free energy, which keeps things from overflowing ๐ซง (default=1.07) The default is 1.07, and useful values are 1.0 to 1.2. It's occasionally needed for long sequences ๐--bppmThreshold=cutoffโ sets the threshold/cutoff for which base pair probabilities show up in the PostScript output ๐จ๏ธ (default=1e-5) By default, only pairs with a probability above1e-5get drawn as squares in the dot plot. Changing the threshold lets you dial that data up or down ๐-g,--gquadโ brings G-quadruplex formation into the structure prediction algorithm ๐ (default=off) Heads up: only intramolecular G-quadruplexes are considered โจ
๐ Structure Constraints
Command line options for playing with this program's structure constraints feature ๐
--maxBPspan=INTโ sets the maximum base pair span (default=-1) ๐--commands=filenameโ reads extra commands from a file ๐ Commands cover hard and soft constraints, plus structure motifs in hairpin and internal loops that need to be treated differently. You can also set commands for unstructured and structured domains ๐งฉ
๐ก๏ธ Energy Parameters
You can adapt energy parameter sets or load them from your own input files ๐
-T,--temp=DOUBLEโ rescales the energy parameters to a temperature oftempC (default=37.0) The default is 37C ๐ฅถ๐ฅ-P,--paramFile=paramfileโ reads energy parameters fromparamfileinstead of the default parameter set ๐ You should get separate parameter sets for RNA and DNA with your distribution. Check the RNAlib documentation for the file format details. The placeholder file nameDNAlets you load DNA parameters without actually specifying an input file ๐งฌ-4,--noTetraโ skips the special tabulated stabilizing energies for tri-, tetra-, and hexaloop hairpins (default=off) > Mostly for testing ๐--salt=DOUBLEโ sets the salt concentration in molar (M). The default is 1.021M ๐ง
๐งฌ Model Details
Tweak the energy model and pairing rules with these parameters too ๐
-d,--dangles=INTโ controls how "dangling end" energies get treated for bases next to helices at free ends and in multi-loops (default=2) With-d1, only unpaired bases can participate in at most one dangling end. With-d2, that check gets skipped, and dangling energies are added for bases adjacent to a helix on both sides no matter what. This is the default for mfe and partition function folding (-p).-d0ignores dangling ends altogether (mostly for debugging) ๐ With-d3, mfe folding allows coaxial stacking of adjacent helices in multi-loops. Right now the implementation won't allow coaxial stacking of the two enclosed pairs in a loop of degree 3, and it only works for mfe folding ๐งฑ
Heads up: with-d1and-d3, only the MFE computations use this setting. The partition function uses the-d2setting, so dangling ends get treated differently across the two ๐
--noLPโ produces structures without lonely pairs (helices of length 1) (default=off) For partition function folding, this only disallows pairs that can only occur isolated. Other pairs may still pop up now and then as helices of length 1 ๐ซ--noGUโ no GU pairs allowed (default=off) ๐ซ--noClosingGUโ no GU pairs at the ends of helices (default=off) ๐ซ--nsp=STRINGโ lets other pairs join the usual AU, GC, and GU pairs ๐ The argument is a comma separated list of the extra allowed pairs. If the first character is a-, then AB implies that AB and BA are both allowed pairs. For example,--nsp="-GA"will allow GA and AG pairs. Nonstandard pairs get a stacking energy of 0 โจ--energyModel=INTโ sets the energy model (rarely used) ๐ธ This one folds sequences from the artificialABCD...alphabet, where A pairs with B, C with D, and so on. Use the energy parameters for GC (--energyModel 1) or AU (--energyModel 2) pairs ๐ฌ--helical-rise=FLOATโ sets the helical rise of the helix in Angstrom units (default=2.8) ๐
Use with caution! This value gets reset automatically to3.4if DNA parameters are loaded via-P DNAand you don't provide a further value ๐ฌ
--backbone-length=FLOATโ sets the average backbone length for looped regions in Angstrom units (default=6.0) ๐ฆด
Use with caution! This value gets reset automatically to6.76if DNA parameters are loaded via-P DNAand you don't provide a further value ๐ฌ
๐ REFERENCES
If you use this program in your work, you might want to cite these bestie ๐ซถ
- R. Lorenz, S.H. Bernhart, C. Hoener zu Siederdissen, H. Tafer, C. Flamm, P.F. Stadler and I.L. Hofacker (2011), "ViennaRNA Package 2.0", Algorithms for Molecular Biology: 6:26 ๐ธ
- I.L. Hofacker, W. Fontana, P.F. Stadler, S. Bonhoeffer, M. Tacker, P. Schuster (1994), "Fast Folding and Comparison of RNA Secondary Structures", Monatshefte f. Chemie: 125, pp 167-188 ๐ฆ
- R. Lorenz, I.L. Hofacker, P.F. Stadler (2016), "RNA folding with hard and soft constraints", Algorithms for Molecular Biology 11:1 pp 1-13 โญ
The energy parameters are taken from:
- D.H. Mathews, M.D. Disney, D. Matthew, J.L. Childs, S.J. Schroeder, J. Susan, M. Zuker, D.H. Turner (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, D.H. Mathews (2009), "NNDB: The nearest neighbor parameter database for predicting stability of nucleic acid secondary structure", Nucleic Acids Research: 38, pp 280-282 ๐
๐ REPORTING BUGS
If in doubt our program is right, nature is at fault ๐ Comments should be sent to rna@tbi.univie.ac.at, and be nice about it ๐
That's the whole page, bestie ๐ง๐ You've officially been folded: RNAmultifold 2.7.0, February 2026 โจ๐
๐ฆ where this page comes from
- ubuntu resolute: vienna-rna 2.7.0+dfsg-2 ยท non-free
- ubuntu stonking: vienna-rna 2.7.0+dfsg-2 ยท non-free
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms