The Styrene Monomer

Styrene is a vinyl monomer; in this example we represent its active form (ethylbenzene-like, all single bonds) rather than its natural vinyl form (c1ccccc1C=C). The active form is the template htpolynet uses for parameterization: the two vinyl carbons each carry one sacrificial hydrogen, which is the H that a cure reaction would later strip when forming a new C–C bond. Since this example does no curing, the sacrificial Hs simply stay put — but naming the carbons now means the same monomer file can be reused in example 1 and beyond.

../../_images/STY.png

Fig. 6 Active styrene. C1 and C2 are the (eventually) reactive vinyl carbons; each carries a sacrificial hydrogen.

In-config SMILES generation

The constituents block of 0-liquid-styrene.yaml carries the SMILES string and, via the SMILES atom-mapping syntax ([CH2:1], [CH3:2]), the names of the two carbons that polymerization reactions would target:

constituents:
  STY:
    smiles: "c1ccccc1[CH2:1][CH3:2]"
    reactive_atoms: {1: C1, 2: C2}
    count: 1000

When htpolynet run starts, it sees the smiles key, invokes RDKit to generate lib/molecules/inputs/STY.mol2 with the atom-name mapping (:1C1, :2C2), and then proceeds with the normal AmberTools parameterization workflow (antechamberparmchk2tleap). Users without RDKit can instead supply a pre-built mol2 in lib/molecules/inputs/ and use the rename_atoms key to assign atom names — see Molecular Structure Inputs.