Post-build simulations and analyses¶
Polystyrene is a linear polymer rather than a cross-linked network, so a uniaxial-deformation measurement of Young’s modulus is not particularly meaningful for the short chains built here. What we can do is anneal and equilibrate the system, then perform a temperature ladder to estimate the glass-transition temperature, and use analyze to measure the fractional free volume of the equilibrated melt.
The DGEBA-PACM Epoxy Thermoset walks through the full set of postsim and analyze techniques in detail (including deformation, which is well-suited to thermosets); this section adapts that workflow to a linear polymer.
The postsim configuration¶
Create postsim.yaml in the project base directory:
- anneal:
input_top: systems/final-results/final.top
input_gro: systems/final-results/final.gro
P: 1
T0: 300
T1: 600
ncycles: 2
T0_to_T1_ps: 10
T1_ps: 10
T1_to_T0_ps: 10
T0_ps: 10
- equilibrate:
input_top: systems/final-results/final.top
input_gro: postsim/anneal/anneal.gro
T: 300
ps: 100
- ladder:
input_top: systems/final-results/final.top
input_gro: postsim/equilibrate/equilibrate.gro
subdir: postsim/ladder-heat
Tlo: 300
Thi: 600
deltaT: 5
ps_per_rise: 10
ps_per_run: 90
warmup_ps: 10
- ladder:
input_top: systems/final-results/final.top
input_gro: postsim/ladder-heat/ladder.gro
subdir: postsim/ladder-cool
Tlo: 300
Thi: 600
deltaT: -5
ps_per_rise: 10
ps_per_run: 90
warmup_ps: 10
Run it:
$ htpolynet postsim -cfg postsim.yaml -ocfg 1-polystyrene.yaml -proj proj-0
This produces proj-0/postsim/{anneal,equilibrate,ladder-heat,ladder-cool}/ with the usual Gromacs outputs plus on-the-fly density-vs-time plots.
Density during annealing and equilibration¶
Placeholder
TODO: insert the rho_v_ns.png plots from proj-0/postsim/anneal/ and proj-0/postsim/equilibrate/ here. Note whether the annealing has actually densified the system (it usually fails to in builds this short) and whether the post-anneal equilibration trace is flat over the second half.
Glass-transition temperature¶
After postsim has produced the heating and cooling ladders, fit Tg from the density-vs-temperature traces with:
$ htpolynet plots post --cfg postsim.yaml --proj proj-0
This emits tg.png plus per-ladder CSVs in proj-0/plots/.
Placeholder
TODO: insert proj-0/plots/tg.png and report the heating and cooling Tg values from the console output here. In simulations this short, expect significant heating/cooling hysteresis — comment on what production-length runs would be needed to get a converged estimate.
Free volume¶
Use htpolynet analyze to invoke gmx freevolume on the equilibration trajectory. Create fv.yaml:
- command: freevolume
Then:
$ htpolynet analyze -cfg fv.yaml -proj proj-0
Placeholder
TODO: report the fractional free volume (and standard error) from proj-0/analyze/freevolume/ffv.dat here. Glassy polystyrene at 300 K typically has FFV in the 0.15–0.20 range.