Tutorial 7 — Continuous Synthesis through an analytic tunnel (cosmo-cylinder)¶
Goal: synthesize a nascent chain residue by residue with codon-resolved
kinetics, confining it with an analytic cylindrical tunnel instead of explicit
ribosome beads. This is the tunnel-geometry half of the O’Brien Continuous Synthesis
Protocol ported to COSMO’s IDP force field (cosmo.csp, mirroring topo.csp). Its
sibling — the same protocol on an explicit coarse-grained ribosome — is
Tutorial 8.
Unlike topo’s structure-based csp (native contacts, STRIDE, rigid AllBonds),
COSMO’s port is sequence-based: no STRIDE, no domain.yaml, no native-contact
map — the nascent chain is a transferable HPS/mpipi IDP that grows N→C at the
peptidyl-transferase center (PTC) and extrudes down the analytic bore.
This is a proof of concept. The settings here check that the machinery builds, times, runs and writes outputs end to end in seconds on CPU. They are deliberately tiny (short
Lrange, clampedmax_steps_per_stage) and are not a physical/scientific validation.
Prerequisites: the coarse-grained workflow of
Tutorial 1 and the force fields of
Tutorial 2. This tutorial confines the nascent chain
with an analytic cylindrical bore (no explicit ribosome beads) — the
ribosome-free confinement path of cosmo.csp.
Nascent chain: α-synuclein (asyn.pdb, 140 residues, from Tutorial 1).
The model¶
No ribosome beads. An analytic cylindrical bore of radius tunnel_radius
through an otherwise infinite wall (a “hole in a wall”) supplies the radial
confinement; the chain extrudes along +x. Because the wall is a smooth potential
rather than discrete beads, it is fast and never jams. Each residue is grown,
seeded from the previous length, restrained at the new C-terminus, minimized, and
run for one MD segment whose length is set by the codon’s translation time.
Files¶
File |
Role |
|---|---|
|
Full-length nascent protein (only the first |
|
Demo mRNA (140 cycled sense codons + |
|
Analytic-tunnel config ( |
Run it¶
cd tutorials/07_csp_cylinder
python -m cosmo.csp.cylinder -f cylinder.ini # -> synth_out_cyl/L_<L>/
# installed console script: cosmo-cylinder -f cylinder.ini
The config defaults to device = CPU so it runs anywhere; switch to device = GPU
for a real run. Kinetics are per-codon: mrna.txt gives the codon sequence and
codon_times points at the E. coli 310 K translation-time table under
assets/csp/codon_dwell_times/. max_steps_per_stage clamps each residue’s dwell
(otherwise ~10⁶ steps) down to a traceable test size — raise it, extend L_max, and
switch to GPU for production.
Stitch a movie¶
python -m cosmo.csp.movie -o synth_out_cyl # layout auto-detected
# installed console script: cosmo-csp-movie -o synth_out_cyl
Writes a fixed-width VMD-playable movie (movie.dcd / movie.psf / movie.tcl)
that plays the growing chain length by length.
What it produces¶
synth_out_cyl/L_005/ … L_010/— one folder per chain length, each with the MD trajectory and the nascent structure at that length.synth_out_cyl/ejection/thensynth_out_cyl/dissociation/— the post-synthesis free runs: the C-terminus restraint is dropped (ejection_steps) so the finished chain diffuses out of the bore, then a second free run (dissociation_steps) lets it drift fully clear. Set either to0to skip.synth_out_cyl/dwell_times.dat— per-residue codon + dwell-time table; the per-codon variation is visible here (e.g.AUU≈ 2 ms vs.CGU≈ 72 ms).
Generated synth_out_*/ directories are git-ignored (bulky
trajectories/checkpoints). Delete them and re-run to reproduce.
Where this sits in the series¶
Tutorials 7–10 explored how to confine the nascent chain. cosmo.csp consolidates
those into one package with codon-resolved O’Brien kinetics and post-elongation
phases. This tutorial is its analytic-tunnel mode; the explicit
coarse-grained ribosome mode is Tutorial 8.