FAQs
This page collects answers to common questions that come up while installing, running, and interpreting SEISMIC-RNA.
Installation and external tools
Why does seismic fold fail with a DATAPATH error?
The RNAstructure backend needs the DATAPATH environment variable to
point at its data_tables/ directory (parameter files, free-energy
tables, etc.).
SEISMIC-RNA can usually guess the correct value of DATAPATH, without need
for setting DATAPATH manually, if RNAstructure was installed using Conda or
Mamba or was downloaded from the RNAstructure website.
Run seismic datapath to see what SEISMIC-RNA guesses.
If it does not guess DATAPATH correctly, then set it manually before running
seismic fold or seismic wf --fold:
export DATAPATH=/whatever/your/path/is/to/RNAstructure/data_tables
Add the line to your shell rc file (~/.bashrc, ~/.zshrc) to make
it persistent.
See Install for the full RNAstructure setup, and
seismic fold for backend selection.
Why does seismic draw print “Skip draw if RNARTISTCORE is not installed”?
seismic draw shells out to RNArtistCore to render structures as
SVG.
If the RNARTISTCORE environment variable does not point to a working
install, the draw step is skipped with a warning rather than failing the
whole pipeline.
Install RNArtistCore and set:
export RNARTISTCORE=/path/to/rnartistcore
See Install and seismic draw.
Which optional dependencies do I actually need?
Bowtie 2 and samtools — required for seismic align.
samtools — required for seismic idmut.
RNAstructure (with
DATAPATH) — required for the default--fold-backend rnastructureand for--pseudoknots(ShapeKnots).ViennaRNA — required for
--fold-backend viennarna.RNArtistCore (with
RNARTISTCORE) — required for seismic draw.
If a backend / tool is not installed, the corresponding step fails with a clear message — earlier steps still work.
Renamed commands and options (v0.25.0)
In v0.25.0 several commands and options were renamed for clarity. A summary is in CHANGELOG.md; seismic migrate migrates older output directories automatically.
- Commands
Old name
New name
seismic relateseismic idmutseismic maskseismic filter- Options
Old option
New option
--fold-table--fold-table-region--fold-full--fold-full-region--quantile--fold-quantile(fold) +--graph-quantile(graph)--mismatch-tolerence--mismatch-tolerance--index-tolerence--index-tolerance--mask-*(reads)--drop-*--mask-gu--mask-a/c/g/u(per-base)--pooled(seismic pool)positional pool-name argument
--joined(seismic join)positional region-name argument
Run seismic migrate out -o out_new to migrate older output directory
trees to the v0.25.0 layout.
See seismic migrate.
Probes and probe-specific defaults
What does --probe do?
--probe {DMS|SHAPE|ETC|none} declares which chemical probe was used,
and switches on probe-appropriate defaults across the pipeline:
Filter masks the bases that are unreactive to that probe by default (DMS: G + U; ETC: A + C; SHAPE / none: no mask).
Filter picks
--mut-collisions(dropfor DMS;mergefor SHAPE/ETC).Fold picks
--fold-backend(RNAstructure for DMS, ViennaRNA for SHAPE/ETC/none) and--fold-energy-method(corderofor DMS,eddyfor SHAPE/ETC/none).Sim turns on
--min-mut-gap-weightsfor DMS and--injected-mut-probsfor SHAPE/ETC by default.
Override any of these explicitly to use a non-default combination.
When should I set --probe none?
For untreated control samples — that is, sequencing reads from RNA that was not exposed to a chemical probe. This disables base-specific masking and selects the appropriate folding defaults.
Performance and parallelism
How do I make seismic wf run faster?
Parallelize. Use
--num-cpus N(whereNis the number of CPUs to use). See Parallelize Tasks.Tune ``–batch-size``. Smaller batches use less memory per worker but produce more files. See seismic idmut.
Disable indel ambiguity. If your data has few indels, pass
--no-ambindelto skip the ambiguous-indel enumeration. See seismic idmut.
How do I limit memory usage?
Reduce --batch-size and/or --num-cpus.
Monitor memory with top (Linux/macOS) or Activity Monitor (macOS) during a
run; if memory pressure is high, halve --batch-size and try again.
Output and interpretation
Where do my output files go?
Under --out-dir (default ./out), organized as
{out}/{sample}/{step}/{ref}/....
Each step also writes a JSON report file (e.g. idmut-report.json,
filter-report.json) that records the settings used and summarizes
the results.
See Report Formats.
Why is my output empty / why were all my reads filtered out?
The Filter step drops reads that fail any of its criteria.
Open the filter report (filter-report.json) to see how many reads
each criterion dropped.
Common causes:
--min-fcov-readset too high (drops reads that do not cover the full region).--probeset incorrectly (wrong default base masking).--mut-collisions dropdropping reads with closely-spaced mutations.The IDmut step itself produced empty batches because the alignment maps had too few reads (see seismic idmut).
I ran seismic wf but got no structures / no clustered output / no JSON.
The Fold, Cluster, Draw, and Export steps are off by default in
seismic wf.
Turn them on explicitly:
Cluster:
-k N(or--max-clusters N)Fold:
--foldDraw:
--drawExport:
--export
See seismic wf.
How do I re-run only one step?
Run the step’s command directly on the upstream outputs, e.g.
seismic filter out/sampleA/idmut/refX/idmut-report.json --probe DMS
seismic wf will also skip any step whose outputs already exist;
pass --force to overwrite.
Troubleshooting and support
How do I see what SEISMIC-RNA is actually doing?
Use -v / -vv / -vvv / -vvvv to increase log verbosity,
and -q / -qq / -qqq / -qqqq to decrease it.
All messages are also written to a log file regardless of verbosity.
See Log Messages.
I found a bug. Where do I report it?
See Bugs and Requests.
I have a question that’s not answered here.
Open a GitHub issue (see Bugs and Requests) or check the Tutorials for worked examples.