Synthesis control options¶
Continuous-synthesis (co-translational) runs are configured from a separate
.ini control file (e.g. csp.ini), read by
cosmo.csp.protocol.read_csp_config(), which returns a
CSPConfig (inputs, length schedule, and a populated
RunParams). This is the synthesis analogue of the
single-chain Simulation control options page: the same [OPTIONS] /
key = value grammar, a different set of options.
Comments: inline or on their own line, starting with
;or#.Keyword and value are separated by
=or:.Every option below has a default except the ones marked required.
Units are OpenMM defaults — nm, ps, kJ/mol, K, kJ/mol/nm² — and dwell times are in seconds. Integers may use
_digit separators (200_000).
For the physics behind these knobs (the three-stage elongation cycle, the codon-resolved kinetics, the O’Brien 12-10-6 ribosome wall), see Synthesis on a coarse-grained ribosome. This page is the parameter reference.
Running a synthesis¶
The runner lives in the package as cosmo.csp. Once cosmo is installed
(pip install -e . from the repo root) either of these works:
cosmo-csp -f csp.ini # installed console command
python -m cosmo.csp -f csp.ini # module form
# stitch the per-stage trajectories into one VMD movie afterwards
cosmo-csp-movie -o synth_out --ribosome 4v9d_50S_PtR_5jte_AtR_model_cg_trunc.pdb
A GPU is recommended: the truncated ribosome adds several thousand rigid beads.
Example csp.ini:
[OPTIONS]
; --- inputs (pdb_file, ribosome are required) ---
pdb_file = asyn.pdb ; full native PDB; the CG model is built from it
ribosome = 4v9d_50S_PtR_5jte_AtR_model_cg_trunc.pdb ; truncated CG ribosome (P-/A-anchors + rigid scenery)
model = hps_urry ; nascent IDP force field (any model works; hps_kr is the default)
; --- length schedule ---
L0 = 5 ; first nascent length (default 1)
L_max = 8 ; final nascent length (default: full residue count)
; --- codon-resolved kinetics ---
mrna = mrna.txt ; one codon per residue (required for per-codon timing);
; or "fastest"/"slowest"/"median" to auto-build a synonymous-codon mRNA
codon_times = trans_times.txt ; table path = per-codon (required, no bundled default);
; a positive number of s = uniform instead
scale_factor = 4331293 ; in-vivo seconds -> in-silico ns compression (larger = faster)
time_stage_1 = 0.000340 ; mean peptidyl-transfer dwell (s)
time_stage_2 = 0.004201 ; mean translocation dwell (s)
random_seed = 1 ; reproducible first-passage-time schedule
; --- test clamps (leave UNSET in production; see the warning below) ---
max_steps_per_stage = 40
min_steps_per_stage = 20
; --- integrator / output ---
dt = 0.01 ; timestep (ps)
ref_t = 300 ; temperature (K)
tau_t = 0.01 ; Langevin friction (1/ps)
nstout = 20 ; trajectory/log output interval (steps)
; --- ribosome / PTC mechanics ---
; PTC geometry is always optimized (A/P targets one peptide bond, ~0.38 nm,
; the selected model's bond length, apart and EV-clear) -- no knob. Bonds default
; to flexible (constraints = None;
; set constraints = AllBonds for rigid bonds).
restraint_k = 83680 ; C-terminus harmonic restraint (kJ/mol/nm^2)
minimize = yes ; energy-minimize each seeded structure before its MD
; tunnel_wall = yes ; one-sided tunnel floor (default on; plane auto-derived)
; --- post-synthesis phases (steps; 0 = skip) ---
ejection_steps = 20000 ; release the restraint; chain diffuses out (+x)
dissociation_steps = 0 ; free run away from the ribosome
; --- hardware / output ---
device = GPU
ppn = 4
outdir = synth_out
Parameter summary¶
“Required = yes” means the run cannot proceed without it. — in the Default
column means there is no default. Options are grouped by role; they all live in
the same single [OPTIONS] section.
Inputs & length schedule¶
Option |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
str |
yes |
|
Full native PDB of the target protein. cosmo builds the one-bead-per-residue CG model from it; the nascent chain at length |
|
str |
yes |
|
Truncated CG ribosome PDB. Source of the P-/A-anchors and the rigid (mass-0) scenery. Supplying it is the signal to load it as rigid — there is no |
|
str |
no |
|
Nascent IDP force field. Any model works ( |
|
str |
for per-codon timing |
|
mRNA sequence file (raw nucleotides; one codon per residue plus one stop), or the keyword |
|
str or float |
for per-codon timing |
|
Codon-timing key. A path to a |
|
int |
no |
|
First nascent length to synthesize. |
|
int |
no |
full length |
Final nascent length. Must satisfy |
|
str |
no |
|
Output root; each residue writes |
Note
There is no domain_def, stride_output_file, or nascent_ev_radii
option: those are topo’s Gō-model inputs. cosmo’s chain is sequence-based, so a
length-L model is just buildCoarseGrainModel on residues 1..L — no
STRIDE, no native-contact map.
Kinetics & schedule length¶
Option |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
float |
no |
|
In-vivo-seconds → in-silico-ns compression ( |
|
float [s] |
no |
|
Mean peptidyl-transfer dwell. The per-residue dwell is an exponential draw with this mean. |
|
float [s] |
no |
|
Mean translocation dwell. Stage 3’s mean is the remainder |
|
int |
no |
|
Seed for the first-passage-time sampler (reproducible dwell schedule). |
|
bool |
no |
|
Apply the ribosome-traffic (polysome) dwell-time correction, if available, on top of the per-codon kinetics. Off by default (single-ribosome timing). |
|
float |
no |
|
Translation initiation rate (1/s). Consumed only when |
|
int |
no |
|
Testing only. Upper clamp on each stage’s MD step count. Breaks the physical timescale mapping — leave unset in production. |
|
int |
no |
|
Testing only. Lower clamp on each stage’s MD step count. |
|
int |
no |
|
Post-synthesis ejection phase (steps); |
|
int |
no |
|
Post-synthesis dissociation phase (steps); |
Warning
``max_steps_per_stage`` / ``min_steps_per_stage`` are testing-only knobs.
They clamp the MD step count so examples finish quickly, which breaks the
physical timescale mapping. In production leave them unset so step counts
come entirely from the kinetics (scale_factor, the codon times, dt). The
sampled dwell times in seconds are always written to dwell_times.dat.
Integrator, ribosome & PTC mechanics¶
These configure the shared per-length engine (RunParams,
consumed by run_length()).
Option |
Type |
Default |
Description |
|---|---|---|---|
|
float [ps] |
|
Integration timestep. (cosmo uses flexible harmonic bonds and soft HPS/mpipi potentials — there is no rigid-bond / dt-halving stability guard.) |
|
float [K] |
|
Langevin temperature. |
|
float [ps⁻¹] |
|
Langevin friction coefficient. |
|
int |
|
Trajectory (DCD) and log output interval, in steps, for every stage. |
|
str |
|
Bond treatment: |
|
float [kJ/mol/nm²] |
|
Stiffness of the C-terminus harmonic position restraint to the A/P target point (= 200 kcal/mol/Ų). Switching the target A→P is how translocation is reproduced. (Its |
|
bool |
|
Energy-minimize each seeded structure before running that stage’s MD. |
|
bool |
|
Apply the one-sided half-harmonic tunnel wall (a floor below the synthesis point). The plane |
|
str |
|
Compute platform: |
|
int |
|
Number of CPU threads ( |
Note
Boolean options accept yes/no, true/false, 1/0. The
trna_tether field exists on RunParams but is forced off by the CSP
runner — CSP needs the switchable A↔P position restraint, so the O’Brien
tRNA tether (which targets only the P-site) is incompatible with the 3-stage
translocation.
Notes on individual options¶
- Required inputs (
pdb_file/ribosome) A synthesis run cannot start without both.
pdb_filesupplies the sequence (the length-Lmodel isbuildCoarseGrainModelon residues1..L— no STRIDE, no contact map).ribosomeis the truncated CG ribosome providing the P-/A-anchors and the rigid scenery; it must carry tRNA beads under the fixed names (segidsPtR/AtR, resid 76, beadsR/P/BR2) or anchor lookup — and the always-on PTC-geometry optimization — fail.- Per-codon vs. uniform timing (
mrna/codon_times) codon_timesselects the timing mode by its value type: a path → per-codon timing (mrnarequired); a positive number of seconds → uniform timing (nomrna). There is no bundled default — per-codon timing needs an explicit table path (pick one underassets/csp/codon_dwell_times/). A codon-time table filename must not be a bare number. Settingmrna = fastest,slowestormedianauto-builds a synonymous-codon mRNA from the protein + table (see Codon dwell-time tables (per-codon timing)).- Ribosome ↔ nascent excluded volume
The rigid ribosome interacts with the chain via the O’Brien 12-10-6 excluded volume (sum combining rule
R = Rmin/2ᵢ + Rmin/2ⱼ,ε = 0.000132kcal/mol) plus Debye–Hückel (Yukawa) electrostatics. The per-beadRmin/2values are inherited from topo and are model-independent steric radii: they live in the standaloneOBRIEN_RMIN_2_NM(per-AA) andOBRIEN_RNA_RMIN_2_BEADS(rRNAP/R/BR) tables incosmo.parameters.model_parameters, decoupled from any force field, so the excluded volume is identical for every nascent model.- Post-synthesis phases (
ejection_steps/dissociation_steps) After the last residue,
ejection_steps > 0runs a phase with the C-terminus restraint released (rigid ribosome and tunnel wall still present), so the finished chain diffuses out of the tunnel.dissociation_steps > 0continues the free protein away from the ribosome. Both write their own output folders.- Output layout and progress log
Every stage writes a standalone, nascent-only trajectory to
<outdir>/L_<L>/stage_<s>/. A per-residue<outdir>/dwell_times.datrecords the codon and the three sampled dwell times (seconds, ns, MD steps). Stitch the per-stage trajectories into one VMD movie withcosmo-csp-movie -o <outdir> --ribosome <ribosome>.pdb. SetCOSMO_CSP_VERBOSE=1for the full per-stage banners. See Synthesis on a coarse-grained ribosome for the output tree.