8 #include "LinearGenerator.h" 9 #include <mcMd/simulation/Simulation.h> 10 #include <mcMd/simulation/System.h> 11 #include <mcMd/potentials/bond/BondPotential.h> 12 #include <mcMd/neighbor/CellList.h> 13 #include <simp/species/Species.h> 14 #include <simp/boundary/Boundary.h> 43 while (!success && iAttempt < maxAttempt) {
59 for (
int iAtom = 1; iAtom < nAtom; ++iAtom) {
60 atomPtr = &molecule.
atom(iAtom);
61 prevPtr = &molecule.
atom(iAtom-1);
64 while (!success && iAttempt < maxAttempt) {
74 for (
int j = 0; j < iAtom; ++j) {
A Vector is a Cartesian vector.
int nAtom() const
Get number of atoms per molecule for this Species.
const BondPotential & bondPotential()
Get the associated BondPotential by reference.
void randomPosition(Random &random, Vector &r) const
Generate random position within the primary unit cell.
A set of interacting Molecules enclosed by a Boundary.
Classes used by all simpatico molecular simulations.
LinearGenerator(Species &species, System &system)
Constructor.
const Species & species()
Get the associated Species by reference.
A point particle within a Molecule.
Utility classes for scientific computation.
const Boundary & boundary() const
Get the associated Boundary by reference.
Generates initial configurations for molecules of one species.
Simulation & simulation()
Get the associated Simulation by reference.
void deleteAtom(Atom &atom)
Delete a Atom object from its cell.
A cell list for Atom objects in a periodic system boundary.
Single-processor Monte Carlo (MC) and molecular dynamics (MD).
const Atom & atom(int localId) const
Get a specific Atom in this Molecule.
bool attemptPlaceMolecule(Molecule &molecule, Array< double > const &diameters, CellList &cellList)
Attempt to place an entire linear chain.
A physical molecule (a set of covalently bonded Atoms).
const Vector & position() const
Get the position Vector by const reference.
virtual double randomBondLength(Util::Random *random, double beta, int type) const =0
Return bond length chosen from equilibrium distribution.
A Species represents a set of chemically similar molecules.
bool attemptPlaceAtom(Atom &atom, const Array< double > &diameters, CellList &cellList)
Attempt to place an atom.
void unitVector(Vector &v)
Generate unit vector with uniform probability over the unit sphere.
Random & random()
Get the random number generator by reference.