trj2fig¶
mlmm trj2fig reads the Hartree energies encoded in each frame’s comment line of an XYZ trajectory, converts them to kcal/mol or Hartree, optionally references all values to a chosen frame, and exports the resulting series as static/interactive figures and CSV tables. Supplying -q/--charge or -m/--multiplicity instead recomputes every frame with the selected MLIP backend. This recomputation is a direct MLIP frame rescore, not an ML/MM ONIOM energy. The figure uses bold ticks, consistent fonts, markers, and a smoothed spline curve (no title).
Examples¶
Default PNG, relative energy with respect to the first frame:
mlmm trj2fig -i traj.xyz
CSV + SVG with reference frame #5, reported in Hartree:
mlmm trj2fig -i traj.xyz -o energy.csv energy.svg -r 5 --unit hartree
Multiple outputs in one run with x-axis reversed:
mlmm trj2fig -i traj.xyz -o energy.png energy.html energy.pdf --reverse-x
Recompute every frame with an explicit backend configuration and write JSON provenance:
mlmm trj2fig -i traj.xyz -q 0 -m 1 -b uma --backend-model uma-s-1p2 \
--precision fp32 -o energy.png energy.csv --out-json
Workflow¶
Parse the XYZ trajectory. With neither
-q/--chargenor-m/--multiplicity, extract Hartree energies from each frame’s comment line. Supplying either option recomputes every frame with the selected backend; omitted recomputation values resolve to charge 0 and multiplicity 1.Normalize the reference specification:
init– frame0(or the last frame when--reverse-xis active).None/none/null– absolute energies (no referencing).Integer literal – the corresponding 0-based frame index.
Convert energies to either kcal/mol (default) or Hartree and, when a reference is active, subtract the reference value to produce delta-E.
Build the Plotly figure (bold ticks, spline interpolation, markers, no title) and export it to every requested extension.
Optionally emit a CSV table of the per-frame energies (see Outputs for the column layout).
Outputs¶
<output>.[png|jpg|jpeg|html|svg|pdf] # Plotly export for every requested extension (defaults to energy.png)
<output>.csv # Optional energy table when CSV is requested
result.json # Machine-readable result and energy provenance with --out-json
summary.json # Identical machine-readable mirror with --out-json
When no
-oor positional outputs are provided, a singleenergy.pngis written to the current directory.CSV exports include
frame,energy_hartree, and either a delta-E column (delta_kcal/delta_hartree) or an absolute column (energy_kcal/energy_hartreewhen no reference is applied).PNG uses Plotly’s PNG export with
scale=2for higher resolution.In comment mode, JSON records
energy_source: trajectory_commentand nullmlip_backend,mlip_model,mlip_precision,charge, andmultiplicity. Recomputed output recordsenergy_source: mlip_recomputedand the resolved values.With
--out-json,result.jsonandsummary.jsoncontain identical payloads.In that payload, consume the ordered
output_fileslist. The legacy basename-keyedfilesmap is retained for compatibility and cannot represent two outputs with the same basename in different directories.
CLI options¶
The full flag list is in the generated command reference; the table below covers the options that need explanation.
Option |
Description |
Default |
|---|---|---|
|
XYZ trajectory whose per-frame comment line stores energies. |
Required |
|
Repeatable output filenames; supports |
|
extra arguments |
Positional filenames listed after options; merged with the |
None |
|
Target unit for the plotted/exported values. |
|
|
Reference specification ( |
|
|
Total charge used for MLIP recomputation. Triggers recomputation when supplied. |
None |
|
Spin multiplicity (2S+1) used for MLIP recomputation. Triggers recomputation when supplied. |
None |
|
MLIP backend used only for recomputation. |
|
|
Model variant for the selected backend. |
Backend default |
|
Backend-neutral recomputation precision; values are case-insensitive. |
Backend default |
|
Write |
|
|
Reverse the x-axis so the last frame appears on the left (and |
|
See Also¶
Common Error Recipes — Symptom-first failure routing
Troubleshooting — Detailed troubleshooting guide
path-search — Recursive MEP search (produces XYZ trajectories suitable for trj2fig)
irc — IRC from TS (produces trajectories for energy profiling)
all — End-to-end workflow