Linear chains¶
Overview
This is a class for linear chains in the model. |
|
Creates a Kremer-Grest linear chain |
|
DNA chain based on works published: C. |
|
General random polymers comprised of arbitrary |
|
Details
-
class
hoobas.LinearChain.DNA3SPNChain(ss_dna_sequence=None, ds_dna_sequence=None, sticky_sequence=None, flexor=None, mpi_rank=None, mpi_sync_method=None, intermediate_files_dir=None, **kwargs)[source]¶
-
class
hoobas.LinearChain.DNAChain(n_ss, n_ds, sticky_end, flexor=None, **kwargs)[source]¶ DNA chain based on works published: C. Knorowski, S. Burleigh, A. Travesset, “Dynamics and statics of DNA-programmable nanoparticle self-assembly and crystallization”, Phys. Rev. Lett. 106, 2011 T. I. N. G. Li, R. Sknepnek, R. J. MacFarlane, C. A. Mirkin, M. Olvera de la Cruz, “Modeling the crystallization of spherical nucleic acid nanoparticle conjugates with molecular dynamics simulations”, J. Am. Chem. Soc. 135, 2013
-
sticky_end= None¶ Bead types: S: ssDNA A: dsDNA B: sticky-end NP: nanoparticle Fl: flanking bead C:
-
-
class
hoobas.LinearChain.GenericBlockRingPolymer(n_mono=(100, ), kuhn_length=1.0, rigid=None, units=None, randomize_blocks=False)[source]¶
-
class
hoobas.LinearChain.GenericPolymer(n_mono=100, kuhn_length=1.0, beadname=None, rigid=False, units=None)[source]¶ Creates a Kremer-Grest linear chain
- Args:
n_mono: Number of monomers in the chain kuhn_length: segment size used for construction beadname: beadname used, defaults to ‘GenericPolymer’ rigid: whether to add angular potentials along the chain units: unit system
-
class
hoobas.LinearChain.GenericRingPolymer(n_mono=100, kuhn_length=1.0, beadname=None, rigid=False, units=None)[source]¶
-
class
hoobas.LinearChain.LinearChain(n_monomer=None, kuhn_length=None, units=None)[source]¶ This is a class for linear chains in the model. Subclasses are expected to provide building implementation and/or force-fields
- Properties:
number_monomers: Set at building time to the number of monomers in the chain dir: direction of the chain, [0., 0., 1.] is expected kuhn_length: segment length of the polymer (for KG-like models), otherwise child-defined zero_pos: position of the initial monomer
-
property
thickness¶ Performs an approximate calculation of the thickness a layer of this chain would have by calculating max(z) - min(z)
- Returns
thickness
-
class
hoobas.LinearChain.PolyStyreneSulfonateChain(n_monomers, tacticity_distribution=None)[source]¶
-
class
hoobas.LinearChain.RandomPolymer(n_mono, monomers=None, distribution=None, units=None)[source]¶ General random polymers comprised of arbitrary
hoobas.Composite.CompositeObjectmonomers- Args:
n_mono: Number of monomers to assemble. This parameter can be an integer or function. The function should not take any arguments
monomers (dict): list of monomers that will be used for building the chain. If any of the monomers are beads, they will be converted to BeadMonomer objects
distribution (function): function that determines the next monomer to be added. Extra and superseding behavior
-None: Entirely random distribution
-foo(**kwargs): queries kwargs from self and passes them in foo
-foo() returns a CompositeObject: use the composite object as the next monomer
-foo() returns None: terminate building for this chain