This script reads in structures that make "ladder-like" polymers. It can be used to either build block copolymers or homopolymers.
The structures this is based on are benzoxazines but it should be extendable to any structure where you need to have two "head" and two "tail" atoms on each repeat unit. However, it remains untested on systems other than the rather simple examples included here.
For the input structures, you need to label the atoms so they can be identified. You need to modify the Name property of the "head and tail" atoms to be R1 and R2. Example structures are included to clarify this.
The script works by creating centroids on the repeat units, moving them until there are close contacts, then creating the bonds between R1 and R2 atoms on each repeat unit. Once the heavily distorted structure is created, the hydrogens are adjusted and it is optimized using Forcite. The optimization is a two step process. The first optimization uses rigid bodies on each repeat unit in the polymer to fix these and enables some optimization of the new bonds. The second optimization is a full optimization of the structure.
The example structures are taken from the following paper:
Synthesis and characterization of fluorinated polybenzoxazine material with low dielectric constant. Su, Y. Polymer, 44(26),(2003), 7989-7996. doi: 10.1016/j.polymer.2003.10.026.
Note - this script also uses the molecule alignment script from the Accelrys Community Forums. Thanks to Jason for posting this!
Modules: Materials Visualizer, Forcite Plus, COMPASS Version: 5.0 and later