Simulation code and study data for sequence-controlled A/B heteropolymer melts. The model separates the range of sequence correlations from their amplitude and measures post-quench composition fluctuations at fixed chemistry, chain length, density and mean composition. Follow-up studies are maintained in HetPoly.
Committed run data · Campaigns and datasets · Figure sources · Data archive
The model is a periodic melt of A/B bead–spring chains, simulated with Langevin dynamics in OpenMM. Harmonic bonds connect adjacent monomers. Every pair shares a WCA repulsive core; a separate attractive branch gives like pairs a deeper attraction than A–B pairs. Changing the A–B attraction therefore preserves excluded volume.
Bead–spring geometry. Teal and orange identify A and B beads. The periodic boundary translates a chain segment by one box length. This is a schematic; the baseline production system contains 144 chains of 40 beads.
| Baseline parameter | Value |
|---|---|
| Chains × beads per chain | 144 × 40 = 5,760 beads |
| Box length; bead density |
|
| Mean composition | |
| Attraction depths |
|
| Core depth; attractive cutoff |
|
| Bond stiffness; rest length |
|
| Equilibration → quench temperature | |
| Langevin friction; time step |
|
| Equilibration; production | 30,000; 250,000 steps |
| Stored spectra; run summary | Every 2,000 steps; mean of final five spectra |
A Markov backbone
Independent sequence controls. For the unconditioned generator,
Stochastic chains are drawn independently within their own boundaries; they
are neither copies of one sequence nor required to be unique. Their composition
is fixed in expectation. The fixed-density size comparison conditions full
chain sets on an exact global 50:50 composition. Deterministic alternating
and
Fixed-density structure. Left: 144-chain spectra at
| Chains |
Box length |
|
|
Ratio |
|---|---|---|---|---|
| 144 | 22.000 | 6.23 ± 1.22 | 540.9 ± 13.4 | 86.9× |
| 288 | 27.718 | 6.60 ± 0.75 | 773.3 ± 58.6 | 117.2× |
| 576 | 34.923 | 6.83 ± 1.25 | 575.4 ± 39.6 | 84.3× |
Here
The committed campaign includes its design manifest, metadata, completion
checksums, saved spectra, snapshots and derived condition summaries. The
matrix-RPA implementation is in melt/rpa_matrix.py;
it returns structure factors only for stable homogeneous kernels. The
baseline bare closure is unstable and does not determine a physical spinodal.
Install Python dependencies and the test runner:
python3 -m pip install -r requirements.txt pytestRun one baseline production condition (CUDA-capable OpenMM installation
required for --platform CUDA; use CPU or Reference when appropriate):
python3 -m melt.run \
--out output/melt/demo --run_id k1 \
--sequence correlated --kappa 1 --pi 0.99 --f_A 0.5 \
--n_chains 144 --chain_length 40 --box_size 22 \
--T_equilibrate 5 --T_quench 0.7 --lj_eps_AB 0.1 \
--equilibration 30000 --n_steps 250000 --snapshot_interval 2000 \
--compute_density --grid_size 56 --save_trajectory \
--seed 1 --platform CUDAmelt.scan runs the original sequence, persistence–amplitude, composition
and cross-attraction grids; use python3 -m melt.scan --help for the grid
arguments and the campaign manifest for the production designs.
Plan and launch a fresh 30-run fixed-density campaign from a clean committed checkout. Store its output outside the checkout so committed study outputs and their manifests remain intact:
python3 -m melt.fixed_density_size_scan --dry-run
python3 -m melt.fixed_density_size_scan \
--manifest-only --out ../study-runs --campaign-id reproduction --platform CUDA
python3 -m melt.fixed_density_size_scan \
--run --out ../study-runs --campaign-id reproduction --platform CUDA
python3 -m melt.fixed_density_size_scan \
--analyze --out ../study-runs --campaign-id reproductionThe launcher pins code provenance, verifies completed-run checksums and skips
verified runs. --run-index selects a scheduler-array task. The committed
completed campaign is
fixed_density_pi099_v2.
Run the code checks and regenerate the README's model and structure figures:
python3 -m pytest tests/ -q
python3 scripts/render_schematic_figures.py --export
python3 scripts/render_potential_figure.py
python3 scripts/render_structure_figure.pyFigure documentation describes the data inputs and rendering dependencies. AWS instructions cover the static parameter suite and fixed-density campaign.
| Location | Contents |
|---|---|
melt/ |
Simulation engine, sequence generation, observables and RPA implementation |
output/melt/fixed_density_size/fixed_density_pi099_v2/ |
Completed 30-run campaign and measured summaries |
scripts/ |
README figure renderers and archive download/upload tools |
aws/ |
Campaign launchers and dataset manifest |
tests/ |
Simulation and numerical regression checks |
docs/figures/ |
README model and measured-structure figures |
Large study datasets are archived at 10.5281/zenodo.20499120. The campaign manifest identifies the relevant runs.
| Archive file | Study data |
|---|---|
heteropolymer_microphase_data.tar |
Production metadata, stored spectra, snapshots and available trajectories |
fixed_density_campaign.tar |
Completed 30-run size comparison and earlier execution provenance |
Supplementary_Data_1_source_tables.zip |
Numerical source and sensitivity tables, selected validation trajectories and historical analysis scripts |
Download and checksum-verify the simulation archives:
python3 scripts/fetch_zenodo.py --dest output/zenodo --only \
heteropolymer_microphase_data.tar fixed_density_campaign.tar