Schrodinger Trajectory Utilities
This page documents all trajectory manipulation utilities available in Schrodinger 2025-3. These tools are used to process, analyze, and modify molecular dynamics trajectories generated by Desmond.
Overview
All utilities are located in /sw/schrodinger/2025-3/internal/bin/ and can be executed using the Schrodinger run command:
/sw/schrodinger/2025-3/run <script_name>.py [options]
Common trajectory formats:
- DTR format: Directory format, typically named jobname_trj
- XTC format: File format with .xtc extension, e.g., jobname.xtc
Common options across scripts:
- -s START:END:STEP or -slice-trj START:END:STEP: Slice trajectory using Python slice notation
- -asl ASL: ASL (Atom Specification Language) expression to select atoms
Trajectory Information and Inspection
trj_info.py
Prints general information about the model system and the trajectory.
Usage:
$SCHRODINGER/run trj_info.py test-out.cms -t test_trj
Arguments:
- cms: Input .cms file name
- -t TRJ, -trj TRJ: Input trajectory file or directory name
- -s START:END:STEP: Use sliced trajectory (optional)
Trajectory Manipulation
trj_center.py
Translates all atoms so that specified atoms stay in the center (origin) of the simulation box. By default, selected atoms are "solute" atoms. For membrane systems, translation is done only in x and y directions, with membrane centered along z axis.
Usage:
$SCHRODINGER/run trj_center.py input.cms output
Arguments:
- cms: Input .cms file name
- out: Output file basename
- -t TRJ: Input trajectory file or directory (optional)
- -s START:END:STEP: Slice trajectory (optional)
- -asl ASL: ASL expression to specify atoms to be centered (default: solute)
trj_align.py
Aligns the structure in the trajectory to a reference structure. By default, the reference is the first frame of the trajectory.
Usage:
$SCHRODINGER/run trj_align.py input.cms input_trj output
Arguments:
- cms: Input .cms file name
- trj: Input trajectory file or directory
- out: Output file basename
- -s START:END:STEP: Slice trajectory (optional)
- -ref-mae <file>: Reference structure file in .cms or .mae format (optional)
- -ref-frame frame-number: Frame to use as reference (default: 0, negative numbers count from end)
- -asl ASL: ASL expression for atoms to align (default: solute)
trj_unwrap.py
Performs "unwrapping" operations under periodic boundary conditions (PBC):
- Glue: Translates atoms so molecules stay on the same side of the box and solute molecules stay close
- Temporal: Translates atoms so positions in each frame are close to prior frame
Usage:
$SCHRODINGER/run trj_unwrap.py -glue -temporal -asl ligand test-out.cms test_trj unwrapped
Arguments:
- cms: Input .cms file name
- trj: Input trajectory file or directory
- out: Output file basename
- -s START:END:STEP: Slice trajectory (optional)
- -glue: Perform glue unwrapping operation
- -temporal: Perform temporal unwrapping operation
- -asl ASL: ASL expression for atoms to unwrap (default: solute)
trj_wrap.py
Alters atomic positions so all atoms are placed inside the simulation box.
Usage:
$SCHRODINGER/run trj_wrap.py -t test_trj test-out.cms wrapped
Arguments:
- cms: Input .cms file name
- out: Output file basename
- -t TRJ: Input trajectory file or directory (optional)
- -s START:END:STEP: Slice trajectory (optional)
trj_slice.py
Slices the trajectory and creates a new .cms file with the sliced trajectory.
Usage:
# Extract first 10 frames
$SCHRODINGER/run trj_slice.py jobname-out.cms jobname_trj -o output_basename -s :10
# Extract last 10 frames
$SCHRODINGER/run trj_slice.py jobname-out.cms jobname_trj -o output_basename -s=-10:
# Extract every other frame
$SCHRODINGER/run trj_slice.py jobname-out.cms jobname_trj -o output_basename -s ::2
Arguments:
- cms: Input .cms file name
- traj: Input trajectory path
- -output-trajectory-format {dtr,xtc}: Output format (default: dtr)
- -s START:END:STEP: Slice notation (required)
- -o OUT: Output basename (default: out)
trj_merge.py
Merges Desmond trajectories. Operates in two modes:
- Default mode: Preserves chemical time, frames sorted by time
- Concatenation mode: Overwrites chemical times with user input
Usage:
$SCHRODINGER/run trj_merge.py test-out.cms run1_trj run2_trj run3_trj
$SCHRODINGER/run trj_merge.py jobname-out.cms run1_trj run2.xtc run3_trj -o merged -concat 0 5
Arguments:
- cms: Input .cms file name
- traj [traj ...]: Input trajectory paths
- -output-trajectory-format {dtr,xtc}: Output format (default: dtr)
- -concat start_time time_interval: Enable concatenation mode with specified times (ps)
- -s START:END:STEP: Slice result (optional)
- -o OUT: Output basename (default: out)
trj_convert.py
Converts a trajectory to requested format. Can also reverse-convert sequence of MAE/CMS files into a trajectory.
Usage:
$SCHRODINGER/run trj_convert.py input.cms output
Arguments:
- cms: Input .cms file name
- out: Output file basename
- -t TRJ: Input trajectory (uses cms-associated trajectory if not specified)
- -output-trajectory-format {auto,dtr,xtc}: Output format (default: auto)
- -mae MAE: Comma-separated MAE/CMS files to convert to trajectory frames
trj_extract_subsystem.py
Extracts a subsystem and creates new .cms file and trajectory. Automatically expands atom selections to match ffio_ff blocks.
Usage:
$SCHRODINGER/run trj_extract_subsystem.py input.cms output
Arguments:
- cms: Input .cms file name
- out: Output file basename
- -t TRJ: Input trajectory (optional)
- -s START:END:STEP: Slice trajectory (optional)
- -asl ASL: ASL expression for subsystem (default: "not water")
- -whole: Fix molecules broken by periodic boundary
trj_parch.py
Edits trajectory by: 1. Aligning frames to reference structure 2. Removing solvent molecules beyond "dew point" region 3. For FEP systems, removing atoms from other endpoint
Usage:
$SCHRODINGER/run trj_parch.py -dew-asl "ligand" input.cms input_trj output
Water Droplet Size Table:
nWat: 50 100 200 300 400 500 600 700 800 900 1000
r(Å): 7.2 9.1 11.5 13.0 14.3 15.4 16.4 17.3 18.0 18.8 19.6
Arguments:
- cms: Input .cms file name
- trj: Input trajectory file or directory
- out: Output file basename
- -output-trajectory-format {auto,dtr,xtc}: Output format (default: auto)
- -s START:END:STEP: Slice trajectory (optional)
- -ref-mae <file>: Reference structure (default: input cms)
- -ref-asl <ASL>: ASL for reference atoms
- -align-asl <ASL>: ASL for alignment atoms (auto-selected if not specified)
- -center-only: Skip alignment, just center on -dew-asl selection
- -dew-asl <ASL>: ASL for atoms around which to retain solvent (required)
- -n <int>: Number of solvent molecules to keep (default: 200)
- -fep-lambda {0,1}: FEP lambda endpoint to keep
trj_rescue.py
Attempts to rescue corrupted Desmond trajectories where some frames are not saved correctly.
Usage:
$SCHRODINGER/run trj_rescue.py corrupt-out.cms corrupt_trj -o fixed
Arguments:
- cms: Input .cms file name
- trj: Input trajectory file or directory
- -transpose-box: Transpose simulation-box matrix (fixes GPU trajectories before 2018-4)
- -o OUT: Output basename (default: "out")
Analysis Tools
trj_cluster.py
Clusters trajectory frames based on RMSD on selected atoms. Uses either: - Centroid hierarchical clustering (with cutoff) - Affinity propagation clustering (without cutoff)
Reference:
Brendan J. Frey and Delbert Dueck, "Clustering by Passing Messages Between Data Points", Science Feb. 2007, Vol. 315, Issue 5814, pp. 972-976, DOI: 10.1126/science.1136800
Usage:
$SCHRODINGER/run trj_cluster.py -rmsd-asl "protein" input.cms input_trj output
Arguments:
- cms: Input .cms file name
- trj: Input trajectory file or directory
- out: Output file basename
- -s START:END:STEP: Slice trajectory (optional)
- -rmsd-asl RMSD_ASL: ASL for atoms to calculate RMSD (required)
- -fit-asl FIT_ASL: ASL for atoms to superimpose (default: same as rmsd-asl)
- -n N: Number of most populated clusters to write (default: 1)
- -split-trj: Save all cluster members as trajectory frames
- -cutoff CUTOFF: Threshold for centroid hierarchical clustering
- -rmsd-mat-data: Save RMSD matrix as .csv and plot as .png
Job Control Options:
- -HOST <hostname>: Run remotely
- -WAIT: Wait for completion
- -LOCAL: Keep files in current directory
- -D, -DEBUG: Show job control details
- -NOJOBID: Run directly without job control
- -JOBNAME JOBNAME: Explicit job name
trj_essential_dynamics.py
Performs protein essential dynamics analysis (principal component analysis of C-alpha atoms). Generates mode vectors as atom properties and artificial motion trajectories.
Reference:
Amadei A, Linssen AB, Berendsen HJ, "Essential Dynamics of Proteins.", Proteins, 17(4):412-25, 1993. DOI: 10.1002/prot.340170408
Usage:
$SCHRODINGER/run trj_essential_dynamics.py jobname-out.cms jobname_trj out
Arguments:
- cms: Input .cms file name
- trj: Input trajectory file or directory
- out: Output file basename
- -s START:END:STEP: Slice trajectory (optional)
- -nmodes <int>: Number of modes to calculate (default: 10)
- -asl <ASL>: ASL for protein C-alpha atoms (default: "protein or nucleic_acids")
- -projection: Write per-frame conformational deviations to CSV
- -cross-correlation: Write cross-correlation matrix plot and data
- -pca-nframes <int>: Frames in generated PCA trajectory (default: 20)
- -pca-scale <float>: Amplification scaling for visualization (default: 10.0)
trj_occupancy.py
Calculates 3D occupancy histogram of selected atoms. Trajectory is aligned to reference, then histogram is calculated. Output is in CNS/X-PLOR map format for Maestro visualization.
Maestro import: Workspace Menu → Surfaces → Import
Usage:
$SCHRODINGER/run trj_occupancy.py input.cms input_trj output
Arguments:
- cms: Input .cms file name
- trj: Input trajectory file or directory
- out: Output file basename
- -s START:END:STEP: Slice trajectory (optional)
- -ref-mae <file>: Reference structure (optional)
- -ref-frame frame-number: Reference frame (default: 0)
- -fit-asl ASL: ASL for alignment atoms (default: "solute", must be static)
- -map-asl ASL: ASL for histogram calculation (default: "solute", must be static)
- -grid-spacing VAL: Grid spacing in Angstroms (default: 1.0)
- -grid-length VAL: Grid length in Angstroms (default: 15.0)
trj_clustering.py
Clustering of frames from Unbiased MD Simulation Trajectory using various methods:
- contacts: AffinityPropagation on frames with conserved protein-ligand interactions
- last: Last N frames from trajectory
- native: AffinityPropagation on frames with ligand RMSD within specified range
- standard: AffinityPropagation on full trajectory
Usage:
$SCHRODINGER/run trj_clustering.py simulation.tgz -ligand_asl "ligand"
Arguments:
- tgz_file: TGZ file containing .cms file and trajectory directory
- -ligand_asl LIGAND_ASL: ASL to define ligand (required)
- -cluster_methods: Methods to use (default: contacts, last, standard)
- Options: contacts, last, native, standard
- -interaction_cutoff: Fraction of frames for conserved interactions (default: 0.6, range: 0.0-1.0)
- -num_reps NUM_REPS: Number of representative frames to write (default: 10)
- -md_input_mae: Structure for alignment (optional)
- -jobname JOBNAME: Base name for outputs
Job Control Options:
- -HOST <hostname>: Run remotely
- -WAIT: Wait for completion
- -D: Show job control details
- -NOJOBID: Run directly without job control
- -NJOBS: Divide into subjobs
- -SUBHOST: Subjob hosts
- -RETRIES: Retry failed subjobs (default: 2)
- -NOLAUNCH: Setup inputs without running
Specialized Tools
trj_polygrow.py
Generates 'polygrow' cms/trajectory from Desmond λ-Dynamics workflow files (Constant pH and Protein Scanning). Output contains coordinates for all states (multiple sidechains per C-alpha).
Usage:
$SCHRODINGER/run trj_polygrow.py input.cms input_trj output
Arguments:
- cms: Input .cms file name
- trj: Input trajectory file or directory
- out: Output file basename
- -s START:END:STEP: Slice trajectory (optional)
- -solute-only: Skip water and ions, write only solute
Custom Trajectory Utilities (XLence Cluster)
IMPORTANT: The utilities in this section are custom-developed tools specifically created for the XLence cluster. These are NOT official Schrödinger utilities and are not supported by Schrödinger, LLC.
These tools are located in /sw/schrodinger/schrodinger_utils/scripts/ and can be executed using the same Schrodinger run command:
/sw/schrodinger/2025-3/run <script_name>.py [options]
trj_act.py
Align, Center and Translate atoms within a simulation box using ASL expressions. Useful for creating visualizations with specific centering/alignment, especially for membrane systems.
Usage:
$SCHRODINGER/run trj_act.py input.cms output -t trajectory_trj -e "protein:center:0,1" -e "membrane:center:2" -off "::0.5"
Example visualization - protein interacting with membrane:
|||||||||||||||||||
ooooooooooooooooooo
~protein~
oooooooooooooooooooo
||||||||||||||||||||
Arguments:
- cms: Input cms file
- out: Output basename
- -t T: Input trajectory directory
- -e E: Expression in form ASL:MODE[:OPTS]
- ASL: atom selection expression
- MODE: center or align
- OPTS:
- For center: comma-separated dimensions (X=0, Y=1, Z=2), default: 0,1,2
- For align: frame index for reference or path to reference structure, default: 0
- Multiple expressions executed sequentially
- Magic keywords: 'uliano', 'boomer', 'default', 'magic', 'fai tu' → uses "a.pt CA:align"
- -off OFF: Translate by fractions of box axes fa:fb:fc
- Example: -off "::0.5" shifts upward by half the Z-axis
Examples:
- -e "protein:center:0,1" - center protein on XY plane
- -e "membrane:center:2" - center membrane on Z axis
- -e "protein and a.pt CA:align:100" - align protein C-alpha using frame 100 as reference
trj_boxinfo.py
Extracts simulation box information from CMS file to CSV format.
Usage:
$SCHRODINGER/run trj_boxinfo.py input.cms output.csv
Arguments:
- in_cms: Path to input cms file
- out_csv: Path to output csv file
trj_conv.py
Converts Desmond trajectory and topology from cms/dtr format to pdb/xtc format.
Usage:
$SCHRODINGER/run trj_conv.py input.cms -t trajectory_trj -o output -s ::10
Arguments:
- cms: Topology file
- -t T: Trajectory directory
- -o O: Output base name
- -s START:END:STEP: Slice trajectory
trj_ene.py
Calculates energy properties from MD simulation, including Coulomb, vdW, bond, angle, torsion, and total energies.
Usage:
$SCHRODINGER/run trj_ene.py md-out.cms md-out.cfg enegrp \
-e 'interprot:c.n A:c.n B:Coulomb,vdW' \
-e 'solv:solvent::Total' \
-e 'solvprot:solvent:protein:Coulomb,vdW' \
-e 'prot:protein::Total'
Energy Types: - Coulomb = pair_elec + nonbonded_elec + far_exclusion - vdW = pair_vdw + nonbonded_vdw - Bond, Angle, Torsion, Total - Note: improper dihedral energy included in Total
Arguments:
- cms: Input cms file (-out.cms)
- cfg: Simulation -out.cfg file
- out: Output file(s) basename
- -t T: Trajectory directory
- -p P: Plot data
- -s S: Slice trajectory START:END:STEP
- -e E: Expression NAME:ASL1:[ASL2]:TYPE(s)
- NAME: arbitrary name for calculation
- ASL1, ASL2: atom selections
- TYPE(s): single or comma-separated energy types
trj_fcluster.py
Performs RMSD-based clustering using hierarchical clustering methods.
Usage:
$SCHRODINGER/run trj_fcluster.py input.cms output -rmsd "a.pt CA" -fit "protein" -n 5 -s
Arguments:
- cms: Cms input file
- out: Output base name
- -rmsd RMSD: ASL for RMSD calculation (required)
- -fit FIT: ASL for fitting
- -n N: Max number of clusters
- -s: Split trajectory into sub-trajectories for each cluster
- -tree: View cluster dendrogram and exit
- -save SAVE: Store distance matrix to file
- -restore RESTORE: Load distance matrix from file
trj_flow.py
Status: Work in progress (WIP)
Analyzes flow and movement patterns in trajectories.
Usage:
$SCHRODINGER/run trj_flow.py input.cms output -t trajectory_trj -site_asl "Ca within 6 ligand" -obj_asl "water and a.e O"
Arguments:
- FILE: Input topology file
- name: Base name for output
- -t trajectory: Trajectory directory
- -j N: Number of processes (default: 1)
- -site_asl ASL: Atom selection (default: Ca within 6Å from ligand)
- -scope_asl ASL: Atom selection (default: Ca)
- -obj_asl ASL: Atom selection (default: water Oxygen)
- -s START:END:STEP: Slice trajectory
- -smooth [N,S,O]: Smooth positions using FITPACK splines (default: 10,0,2)
- -save [FILE]: Store paths data
- -load FILE: Load paths data
- -clust E,M: DBSCAN clustering parameters eps,min_samples (default: 1,5)
trj_gcluster.py
Performs RMSD-based clustering using the GROMOS algorithm.
Usage:
$SCHRODINGER/run trj_gcluster.py input.cms output -rmsd_asl "a.pt CA" -t 2.5 -n 10 -split_trj
Arguments:
- cms: Cms input file
- output: Output base name
- -rmsd_asl RMSD_ASL: ASL for RMSD calculation
- -fit_asl FIT_ASL: ASL for fitting
- -t T: RMSD threshold defining clusters (Angstroms)
- -n N: Max number of clusters returned
- -w WRITE_MATRIX: Store distance matrix to file
- -l LOAD_MATRIX: Load distance matrix from file
- -s SLICE: Slice trajectory START:END:STEP
- -split_trj: Save cluster frames in trajectories
- -m {closest,largest}: Criterion to assign frames to medoids (default: closest)
trj_interactions.py
Calculates all nonbonded interactions within or between specified atoms, including hydrogen bonds, salt bridges, pi-pi interactions, and more.
Usage:
$SCHRODINGER/run trj_interactions.py input.cms output -t trajectory_trj -g1 "protein" -g2 "ligand" -b hb,sb,pipi -r
Interaction Types: - hb: Hydrogen bonds - sb: Salt bridges - pipi: Pi-pi interactions - catpi: Cation-pi interactions - hpho: Hydrophobic (optional) - wb: Water bridges (optional)
Arguments:
- cms: Input cms file
- out: Output base filename (extensions added automatically)
- -t T: Trajectory directory
- -g1 ASL: Define group 1
- -g2 ASL: Define group 2 (if omitted, interactions within g1)
- -p, --plot: Plot bond number over time
- -rkey RKEY: Comma-separated indexes to slice residue key
- -r: Filter results at residue level (alias for -rkey 0,3[,0,3])
- -b B: Comma-separated interaction types (default: hb,sb,pipi,catpi)
- -th N: Only report bonds with existence % above N
- -s START:END:STEP: Slice trajectory
trj_log.py
Logs Desmond trajectories with optional continuous monitoring.
Usage:
$SCHRODINGER/run trj_log.py simulation.log -f
Arguments:
- logfile: Input log file
- -f: Continuous logging mode
trj_measure.py
Measures distances, angles, dihedrals, or XYZ positions across trajectory.
Usage:
$SCHRODINGER/run trj_measure.py input.cms output -trj trajectory_trj \
-e "a.n 10:a.n 20:distance" \
-e "a.n 5:a.n 10:a.n 15:angle" \
-e "a.n 1:a.n 2:a.n 3:a.n 4:dihedral"
Measurement Modes: - distance: 2 ASL tokens - angle: 3 ASL tokens - dihedral: 4 or 6 ASL tokens - xyz: N tokens (outputs positions only)
Arguments:
- cms: Input cms file
- out: Output basename
- -trj TRJ: Input trajectory directory
- -e E: Expression ASL_1[:ASL_N]:MODE
- Multiple ASL expressions separated by :
- If ASL selects >1 atom, center of mass is used
- Multiple expressions can be provided
trj_periodic_shortest_distance.py
Computes shortest distance between two groups of atoms accounting for orthorhombic periodic boundary conditions.
Usage:
$SCHRODINGER/run trj_periodic_shortest_distance.py input.cms output -t trajectory_trj -g1 "protein" -g2 "ligand" -periodic -p
Arguments:
- cms: Cms input file
- FILE: Output basename
- -t T: Trajectory directory
- -g1 ASL: Define first group of atoms (required)
- -g2 ASL: Define second group of atoms (defaults to g1)
- -periodic: Enable PBCs
- -p: Create plot
- -s S: Slice trajectory START:END:STEP
- -noself: Do not compute distances within same cell (useful for periodic images)
trj_query.py
Query various MD trajectory parameters.
Usage:
$SCHRODINGER/run trj_query.py trajectory_trj -fat 1000
$SCHRODINGER/run trj_query.py trajectory_trj -tof 50
$SCHRODINGER/run trj_query.py trajectory_trj -tt
Arguments:
- trj: Trajectory directory
- -fat TIME: Query nearest frame to time TIME (ps)
- -tof FRAME: Query time (ps) of frame FRAME (0-based)
- -tt: Check timestep consistency
trj_rmsd.py
Calculates RMSD or RMSF of selected atoms over MD simulation.
Usage:
$SCHRODINGER/run trj_rmsd.py input.cms -trj trajectory_trj -mode RMSD -rmsd "a.pt CA" -fit "protein" -ref 0 -p
Modes: - RMSD: Root Mean Square Deviation - RMSF: Root Mean Square Fluctuation
Arguments:
- cms: Input cms file
- -trj TRJ: Input trajectory directory
- -mode MODE: RMSD or RMSF (default: RMSD)
- -s S: Slice trajectory START:END:STEP
- -rmsd RMSD: Atom selection for RMSD calculation (default: 'a.pt CA')
- -fit FIT: Atom selection for superposition (defaults to rmsd selection)
- -ref REF: Reference frame (default: 0) OR structure filename
- -o O: Output filename (defaults to stdout)
- -p: Plot results
trj_sasa.py
Calculates Solvent Accessible Surface Area (SASA) for atoms over trajectory.
Usage:
$SCHRODINGER/run trj_sasa.py input.cms output -t trajectory_trj -asl "protein" -s ::10 -probe_radius 1.4
Output Files:
- sasa.dat: Total, hydrophobic, and hydrophilic SASA
- sasa_byres.dat: Matrix of shape (times, residues)
Arguments:
- cms: Input cms file
- out: Output filename (extensions added automatically, default: sasa)
- -t T: Trajectory directory
- -asl ASL: ASL for SASA calculations (default: 'protein')
- -s S: Slice trajectory START:END:STEP
- -cutoff CUTOFF: Atoms within this distance considered for occlusion (default: 8.0Å)
- -probe_radius PROBE_RADIUS: Solvent probe radius in Angstroms (default: 1.4Å)
- -resolution RESOLUTION: Resolution for calculation (decrease for accuracy, increase for speed)
- -exclude_water: Explicitly exclude waters (default: True)
trj_ssp.py
Calculates secondary structure along trajectory.
Usage:
$SCHRODINGER/run trj_ssp.py input.cms output -ASL "protein" -p
Arguments:
- cms: Input cms file
- out: Output filename
- -ASL ASL: Atom selection for secondary structure (default: 'protein')
- -p: Plot results
trj_time.sh
Bash utility for monitoring progress of running Desmond MD simulations and estimating completion time.
How it works:
1. Reads the multisim.log file to identify the remote node and job location
2. Fetches the simulation log file from the compute node via rsync to /tmp
3. Extracts performance metrics and simulation progress
4. Calculates estimated time to completion
5. Cleans up temporary files automatically
Usage:
$SCHRODINGER/run trj_time.sh desmond_md_job_multisim.log
Output Example:
Fetching the log file from node2:/scratch/user/md_job.1/md_job.log...
Last ns/day: 45.3
Current simulation time (ps): 125000
Total simulation time (ns): 500
Remaining simulation time (ns): 375
Estimated time to finish: 8 days, 6 hours, 23 minutes
What it reports: - ns/day: Simulation speed (nanoseconds per day) - Current simulation time: How far the simulation has progressed (ps) - Total simulation time: Target simulation length (ns) - Remaining simulation time: How much is left to simulate (ns) - Estimated time to finish: Real-world time estimate (days, hours, minutes)
Requirements: - Valid multisim.log file from a running or completed Desmond job - SSH access to the compute node where the job is/was running - rsync installed
Use Cases: - Monitor long-running MD simulations (days/weeks) - Estimate when simulation will complete - Check if simulation is progressing at expected speed - Quick status check without logging into compute nodes
Note: This script uses /tmp for temporary storage and automatically cleans up after execution.
Note on Unavailable Tools
The following custom scripts are currently not implemented or have errors: - trj_contact_map.py - Returns NotImplementedError - trj_helix_axis.py - Not implemented yet
Notes
- All scripts preserve the slice notation from Python:
START:END:STEP - ASL expressions should typically be static (not dynamic like
within 5 (m.n 1)) for analysis tools - Frame indices are 0-based (first frame is 0, negative numbers count from end)
- Output trajectories inherit the input format unless explicitly specified
- Copyright Schrodinger, LLC. All rights reserved.