RNAEVAL(1)

πŸ“¦
version 2.7.0 Β· 5 versions
, in ubuntu resolute, ubuntu stonking

πŸŽ€ RNAEVAL(1) Β· User Commands Β· part 1 of 2 πŸŽ€

✨ NAME ✨

RNAeval - manual page for RNAeval 2.7.0 πŸ’–

✨ SYNOPSIS ✨

RNAeval [OPTIONS] [<input0>] [<input1>]...

✨ DESCRIPTION ✨

RNAeval 2.7.0 πŸ¦‹

okay so RNAeval figures out the free energy of a (consensus) secondary structure for (an alignment of) RNA sequence(s) 🧬✨

It evaluates how much energy a particular (consensus) secondary structure has for an (an alignment of) RNA molecule(s) πŸ’… The energy unit is kcal/mol, and for multiple sequence alignments (--msa option) plus their consensus structures, there's an extra covariance pseudo-energy term in the mix 🌈 The program keeps reading new sequences and structures until it hits a line with just the single character @, or until it reaches end of file 🫢 And if the input sequence or structure has the separator character &, RNAeval calculates the energy of co-folding two RNA strands, with the & marking where one strand ends and the other begins πŸ”₯

  • -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 and print out the energy contribution of each loop in the structure 🌸

(default=off)

This also lowers the log level so even INFO messages get passed through πŸ™ˆ

🧚 I/O Options

Command line options for input and output (pre-)processing πŸ’…

  • -i, --infile=filename β€” Read a file instead of reading from stdin πŸ“„

By default, RNAeval reads input from stdin or from the file(s) that follow the RNAeval command. With this parameter you can name the input files it should read from. Any extra files you pass to RNAeval still get processed too, so nothing gets left out πŸ’œ

  • -a, --msa β€” Input is a multiple sequence alignment in Stockholm 1.0 format πŸ“

(default=off)

Use this flag to tell RNAeval the input is a multiple sequence alignment (MSA) instead of single sequence(s). Only STOCKHOLM format lets you specify a consensus structure, which is why it's the only supported MSA format for now! 😭

  • --mis β€” Output the "most informative sequence" instead of the simple consensus 🌈

For each column of the alignment, it outputs the set of nucleotides with a frequency greater than average, written in IUPAC notation ✨

(default=off)

  • -j, --jobs[=number] β€” Split batch input into jobs and process them in parallel using multiple threads πŸ”₯

A value of 0 means use as many parallel threads as there are computation cores available πŸ‘‘

(default=0)

By default, input gets processed in a serial fashion, one sequence at a time. With this switch you can start the computation for many input sequences in parallel instead. RNAeval creates as many parallel computation slots as you specify and hands the input sequences from the input file(s) out to the free slots. Heads up: this bumps up memory use, since input alignments have to stay in memory until an empty compute slot opens up, 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 (--jobs flag) is turned on, the order input gets processed in depends on the host machine's job scheduler. So any output to stdout or to files from this program will most likely NOT match the order of the input data set. By default, RNAeval uses a specialized data structure to keep results in input order, but that comes with a memory trade-off, since all output has to be held in memory until consecutive, ordered chunks are available. Set this flag and RNAeval stops buffering individual results and prints them as soon as they're computed πŸƒβ€β™€οΈ

  • --noconv β€” Don't automatically swap nucleotide "T" for "U" 🧬

(default=off)

  • --auto-id β€” Automatically generate an ID for each sequence πŸͺ„

(default=off)

By default, RNAeval tries to determine an ID from the input sequence data, as long as the input file format allows it. Sequence IDs are usually written in the FASTA header of input sequences. If this flag is on, RNAeval ignores any IDs it pulled from the input and generates one for each sequence instead. That generated ID is a prefix plus an increasing number. This flag can also be used to add a FASTA header to the output, even when the input doesn't have one πŸŽ€

  • --id-prefix=STRING β€” Prefix for automatically generated IDs (as used in output file names) 🌸

(default=sequence)

If you set this parameter, each sequence gets prefixed with the string you provide. Note: setting this parameter implies --auto-id πŸ’–

  • --id-delim=CHAR β€” Change the delimiter between the prefix and the increasing number in automatically generated IDs (as used in output file names) πŸ“

(default=_)

This parameter lets you swap out the default _ delimiter 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)

Automatically 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 sets the width to whatever you need. Allowed numbers are in the range [1:18]. This option implies --auto-id ✨

  • --id-start=LONG β€” Specify the first number in automatically generated IDs 🌟

(default=1)

When sequence IDs are generated automatically, they get an increasing number, usually starting at 1. This parameter lets you pick the starting number. Note: negative numbers are NOT allowed πŸ™…β€β™€οΈ Note: setting this parameter means ignoring any IDs pulled from the input data, which means it activates the --auto-id flag πŸ’…

  • --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. This setting lets you pick the log level threshold, and higher values mean fewer messages. Log-level 5 turns off ALL messages, even errors and other critical stuff 🀫

  • --log-file[=filename] β€” Print log messages to a file instead of stderr πŸ“

(default=RNAeval.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 algorithmic details that should be included in the calculations 🧠

  • -c, --circ β€” Assume a circular (instead of linear) RNA molecule πŸ”„

(default=off)

  • -g, --gquad β€” Incorporate G-Quadruplex formation into the structure prediction algorithm πŸ’Ž

(default=off)

πŸ’œ Structure Constraints

Command line options to interact with the structure constraints feature of this program 🫧

  • --shape=filename β€” Use SHAPE reactivity data to guide structure predictions πŸ¦‹
  • --shapeMethod=method β€” Select the SHAPE reactivity data incorporation strategy 🌸

(default=D)

These methods convert SHAPE reactivities into pseudo energy contributions:

  • D β€” Convert using the linear equation from Deigan et al 2009 πŸ“

Derived pseudo energy terms get applied to every nucleotide involved in a stacked pair. This method is recognized by a capital D in the provided parameter, so --shapeMethod="D" is the default setting. The slope m and intercept b can be changed from their defaults if needed. Otherwise m=1.8 and b=-0.6. To change them, for example to m=1.9 and b=-0.7, use a parameter string like --shapeMethod="Dm1.9b-0.7". You can also give just one of the two, like --shapeMethod="Dm1.9" or --shapeMethod="Db-0.7" 🫢

  • Z β€” Convert SHAPE reactivities to pseudo energies according to Zarringhalam et al 2012 πŸŽ€

SHAPE reactivities get converted to pairing probabilities using a linear mapping. Any deviation from the observed pairing probabilities gets penalized during the folding recursion. You can change how big those penalties are by adjusting the factor beta, for example --shapeMethod="Zb0.8" πŸ”₯

  • W β€” Apply a given vector of perturbation energies to unpaired nucleotides according to Washietl et al 2012 🌊

Perturbation vectors can be calculated using RNApvmin 🧚

  • --shapeConversion=method β€” Select the method for SHAPE reactivity conversion πŸ”

(default=O)

This parameter is super useful when you're dealing with the SHAPE incorporation from Zarringhalam et al. These methods convert SHAPE reactivities into the probability that a certain nucleotide is unpaired:

  • M β€” Use linear mapping according to Zarringhalam et al πŸ—ΊοΈ
  • C β€” Use a cutoff approach to split nucleotides into paired and unpaired, for example C0.25 πŸͺ“
  • S β€” Skip the normalizing step, since the input data already represents probabilities of being unpaired rather than raw reactivity values πŸ™Œ
  • L β€” Use a linear model to convert the reactivity into a probability of being unpaired, for example Ls0.68i0.2 for a slope of 0.68 and an intercept of 0.2 πŸ“ˆ
  • O β€” Use a linear model to convert the log of the reactivity into a probability of being unpaired, for example Os1.6i-2.29 for a slope of 1.6 and an intercept of -2.29 πŸŒ™

Okay bestie, this part is where the options get extra spicy πŸŒΆοΈπŸ’… Let's go!

  • -T, --temp=DOUBLE β€” this one rescales the energy parameters to a temperature of temp C 🌑️✨ The default is 37C. (default=37.0)
  • -P, --paramFile=paramfile β€” read energy parameters from paramfile instead of using the default parameter set πŸ“‚πŸ’–
    • Different sets of energy parameters for RNA and DNA should come with your distribution 🧬 For the file format, check the RNAlib documentation πŸ“–
    • The placeholder file name DNA lets you load DNA parameters without having to specify an actual input file 🫢
  • -4, --noTetra β€” don't include the special tabulated stabilizing energies for tri-, tetra- and hexaloop hairpins πŸ™…β€β™€οΈ (default=off)
    • Mostly for testing πŸ§ͺ
  • --salt=DOUBLE β€” set the salt concentration in molar (M) πŸ§‚ The default is 1.021M πŸ’œ

🧚 Model Details 🧚

Tweak the energy model and pairing rules even more with these parameters, bestie πŸ’…

  • -d, --dangles=INT β€” this is how you decide what happens to "dangling end" energies for bases sitting next to helices in free ends and multi-loops 🧩 (default=2)
    • With -d1, only unpaired bases can take part in at most one dangling end
    • With -d2, that check gets skipped, and dangling energies get added for bases next to a helix on both sides anyway πŸ”₯ This is the default for mfe and partition function folding
    • -d0 ignores dangling ends altogether (mostly for debugging) πŸ›
    • With -d3, mfe folding allows coaxial stacking of adjacent helices in multi-loops 🌈 At the moment, the implementation will not allow coaxial stacking of the two enclosed pairs in a loop of degree 3 πŸ™ˆ
  • --nsp=STRING β€” allow other pairs on top of the usual AU,GC,and GU pairs πŸ¦‹
    • The argument is a comma separated list of extra allowed pairs πŸ’Œ If the first character is a -, then AB implies that both AB and BA are allowed pairs, so --nsp="-GA" lets GA and AG pair up πŸ‘―
    • Nonstandard pairs get a stacking energy of 0 ✨
  • --energyModel=INT β€” set the energy model πŸ§ͺ
    • This is a rarely used option for folding sequences from the artificial ABCD... alphabet, where A pairs with B, C with D, and so on πŸ”€
    • Use the energy parameters for GC pairs with --energyModel 1 or for AU pairs with --energyModel 2 πŸ’–
  • --logML β€” recalculate the energies of structures using a logarithmic energy function for multi-loops before output πŸ“‰ (default=off)
    • This option does not affect structure generation, only the energies that get printed πŸ–¨οΈ
    • Since logML lowers energies somewhat, some structures may be missing πŸ‘€
  • --cfactor=DOUBLE β€” set the weight of the covariance term in the energy function βš–οΈ (default=1.0)
  • --nfactor=DOUBLE β€” set the penalty for non-compatible sequences in the covariance term of the energy function 🚫 (default=1.0)
  • -R, --ribosum_file=ribosumfile β€” use the specified Ribosum Matrix instead of the normal energy model 🧬
    • Matrices should be 6x6, and the order of the terms is 'AU', 'CG', 'GC', 'GU', 'UA', 'UG' πŸ“
  • -r, --ribosum_scoring β€” use the ribosum scoring matrix πŸ’… (default=off)
    • The matrix gets chosen based on the minimal and maximal pairwise identities of the sequences in the file 🧠
  • --old β€” use the old energy evaluation, which treats gaps as characters πŸ•°οΈ (default=off)
  • --helical-rise=FLOAT β€” set the helical rise of the helix in units of Angstrom πŸ“ (default=2.8)
⚠️ Use with caution! This value gets re-set automatically to 3.4 if DNA parameters are loaded via -P DNA and no further value is provided. πŸ’€
  • --backbone-length=FLOAT β€” set the average backbone length for looped regions in units of Angstrom πŸͺ’ (default=6.0)
⚠️ Use with caution! This value gets re-set automatically to 6.76 if DNA parameters are loaded via -P DNA and no further value is provided. 😭

✨ REFERENCES ✨

If you use this program in your work, you might want to cite these papers, 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 these two cuties 🧬

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 πŸ’œ


✨ AUTHOR ✨

Ivo L Hofacker, Peter F Stadler, Ronny Lorenz πŸ‘‘πŸ«Ά


✨ REPORTING BUGS ✨

If in doubt, our program is right and nature is at fault πŸ™ˆ Comments should be sent to rna@tbi.univie.ac.at πŸ’Œ


That's the whole page, bestie! πŸ¦‹ This is RNAeval 2.7.0 from February 2026, and you're officially an RNAeval expert now πŸŽ€πŸ’–

πŸ“¦ where this page comes from