eon.displace#

Module Contents#

Classes#

Data#

API#

eon.displace.logger#

‘getLogger(…)’

class eon.displace.DisplacementManager(reactant, moved_atoms)[source]#

Initialization

make_displacement()[source]#
exception eon.displace.NotImplementedError[source]#

Bases: Exception

exception eon.displace.DisplaceError[source]#

Bases: Exception

class eon.displace.Displace(reactant, std_dev, radius, hole_epicenters)[source]#

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

abstract make_displacement()[source]#

Writes the displacement_passed.con and mode_passed.dat to path.

get_displacement(atom_index)[source]#

Returns a displacement to be added to self.reactant.r

filter_epicenters(epicenters)[source]#

Returns the epicenters that lie in the hole defined by Displace.hole_epicenters. If Displace.hole_epicenters is None, all of the epicenters are accepted.

class eon.displace.Undercoordinated(reactant, max_coordination, std_dev=0.05, radius=5.0, hole_epicenters=None, cutoff=3.3, use_covalent=False, covalent_scale=1.3)[source]#

Bases: eon.displace.Displace

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

init()[source]#
make_displacement()[source]#

Select an undercoordinated atom and displace all atoms in a radius about it.

class eon.displace.Leastcoordinated(reactant, std_dev=0.05, radius=5.0, hole_epicenters=None, cutoff=3.3, use_covalent=False, covalent_scale=1.3)[source]#

Bases: eon.displace.Displace

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

make_displacement()[source]#

Select an undercoordinated atom and displace all atoms in a radius about it.

class eon.displace.ListedAtoms(reactant, std_dev=0.05, radius=5.0, hole_epicenters=None, cutoff=3.3, use_covalent=False, covalent_scale=1.3, displace_all=False)[source]#

Bases: eon.displace.Displace

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

make_displacement()[source]#

Select a listed atom and displace all atoms in a radius about it.

class eon.displace.ListedTypes(reactant, std_dev=0.05, radius=5.0, hole_epicenters=None, cutoff=3.3, use_covalent=False, covalent_scale=1.3, displace_all=False)[source]#

Bases: eon.displace.Displace

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

make_displacement()[source]#

Select a listed atom and displace all atoms in a radius about it.

class eon.displace.Random(reactant, std_dev=0.05, radius=5.0, hole_epicenters=None)[source]#

Bases: eon.displace.Displace

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

make_displacement()[source]#

Select a random atom and displace all atoms in a radius about it.

class eon.displace.NotFCCorHCP(reactant, std_dev=0.05, radius=5.0, hole_epicenters=None, cutoff=3.3, use_covalent=False, covalent_scale=1.3)[source]#

Bases: eon.displace.Displace

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

make_displacement()[source]#

Select an atom without HCP or FCC coordination and displace all atoms in a radius about it.

class eon.displace.NotTCPorBCC(reactant, std_dev=0.05, radius=5.0, hole_epicenters=None, cutoff=3.3, use_covalent=False, covalent_scale=1.3)[source]#

Bases: eon.displace.Displace

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

make_displacement()[source]#

Select an atom without TCP or BCC coordination and displace all atoms in a radius about it.

class eon.displace.NotTCP(reactant, std_dev=0.05, radius=5.0, hole_epicenters=None, cutoff=3.3, use_covalent=False, covalent_scale=1.3)[source]#

Bases: eon.displace.Displace

Initialization

Reactant is an Atoms object. std_dev is the standard deviation of the normal distribution used to create the random displacements. radius is the distance to neighbors that will also be displaced.

make_displacement()[source]#

Select an atom without HCP or FCC coordination and displace all atoms in a radius about it.

class eon.displace.Water(reactant, stdev_translation, stdev_rotation, molecule_list=[], random=0)[source]#

Bases: eon.displace.Displace

Displace molecules of water without streatching them.

Initialization

reactant: structure to be displaced stdev_translation: translational standard deviation (Angstrom) stdev_rotation: rotational standard deviation (radian)molecules: list of indices of the molecules to displace or None to displace all the moleculesrandom: if 0 displace all molecules in molecule_list, if ‘random > 0’ picked up at random in ‘molecule_list’ a number of molecules equal to the number soted in ‘random’ and displace only these

make_displacement()[source]#

Returns Atom object containing displaced structure and an array containing the displacement.

get_displacement()[source]#

Returns Atom object containing displaced structure and an array containing the displacement.

static rotate_water(hydrogen1, hydrogen2, oxygen, psi, theta, phi, hydrogen_mass=1.0, oxygen_mass=16.0)[source]#