eon.atoms¶
Atoms / structure helpers for the eOn Python server.
Storage and I/O
:class:eon.structure.Structure (alias :class:Atoms) is the in-memory
working type. On disk, structures are readcon.ConFrame values
(see :func:eon.structure.Structure.from_conframe).
Geometry kernels
PBC, neighbor lists (vesin), and process-atom selection live under
:mod:eon.geometry. This module re-exports them for compatibility and
keeps structure-matching / CNA helpers plus the element table.
Module Contents¶
Functions¶
True if two structures match when same-element atoms are interchangeable. |
|
Gives the matrix representing a rotation of theta radians about axis |
|
Returns a list of cna numbers for all atoms in p Inspired by the CNA code provided by Asap (wiki.fysik.dtu.dk/asap) |
|
Returns a list of indices for the atoms with cna = 0 |
|
Returns a list of cna numbers for all atoms in p Inspired by the CNA code provided by Asap (wiki.fysik.dtu.dk/asap) |
|
Returns a list of cna numbers for all atoms in p Inspired by the CNA code provided by Asap (wiki.fysik.dtu.dk/asap) |
|
Returns a list of indices for the atoms with cna = 0 |
|
Returns a list of indices for the atoms with cna = 0 |
|
A recursive depth-first search for a complete set of mappings from atoms in configuration a to atoms in configuration b. Do not use the mappings argument, this is only used internally for recursion. |
|
Takes two atoms objects and returns the motion from a to b that is entirely internal - no rotation or translation, in the form of a new atoms object. |
Data¶
API¶
- eon.atoms.logger¶
‘getLogger(…)’
- eon.atoms.identical(atoms1, atoms2, epsilon_r)[source]¶
True if two structures match when same-element atoms are interchangeable.
Parameters
atoms1, atoms2 : Structure Configurations to compare (same box within 1e-4). epsilon_r : float Max allowed MIC displacement (Å) for a pair to count as the same site.
- eon.atoms.match(a, b, eps_r, neighbor_cutoff, indistinguishable, check_rotation=False, use_identical=False)[source]¶
- eon.atoms.point_energy_match(file_a, energy_a, file_b, energy_b, eps_e, eps_r, neighbor_cutoff, check_rotation=False, use_identical=False)[source]¶
- eon.atoms.points_energies_match(file_a, energy_a, files_b, energies_b, eps_e, eps_r, neighbor_cutoff, check_rotation=False, use_identical=False)[source]¶
- eon.atoms.rotm(axis, theta)[source]¶
Gives the matrix representing a rotation of theta radians about axis
- eon.atoms.cna(p, cutoff, brute=False)[source]¶
Returns a list of cna numbers for all atoms in p Inspired by the CNA code provided by Asap (wiki.fysik.dtu.dk/asap)
- eon.atoms.not_HCP_or_FCC(p, cutoff, brute=False)[source]¶
Returns a list of indices for the atoms with cna = 0
- eon.atoms.cnat(p, cutoff, brute=False)[source]¶
Returns a list of cna numbers for all atoms in p Inspired by the CNA code provided by Asap (wiki.fysik.dtu.dk/asap)
- eon.atoms.cnar(p, cutoff, brute=False)[source]¶
Returns a list of cna numbers for all atoms in p Inspired by the CNA code provided by Asap (wiki.fysik.dtu.dk/asap)
- eon.atoms.not_TCP(p, cutoff, brute=False)[source]¶
Returns a list of indices for the atoms with cna = 0
- eon.atoms.not_TCP_or_BCC(p, cutoff, brute=False)[source]¶
Returns a list of indices for the atoms with cna = 0
- eon.atoms.get_mappings(a, b, eps_r, neighbor_cutoff, mappings=None)[source]¶
A recursive depth-first search for a complete set of mappings from atoms in configuration a to atoms in configuration b. Do not use the mappings argument, this is only used internally for recursion.
Returns None if no mapping was found, or a dictionary mapping atom indices a to atom indices b.
Note: If a and b are mirror images, this function will still return a mapping from a to b, even though it may not be possible to align them through translation and rotation.
- eon.atoms.internal_motion(a, b)[source]¶
Takes two atoms objects and returns the motion from a to b that is entirely internal - no rotation or translation, in the form of a new atoms object.
- eon.atoms.elements¶
None
- eon.atoms.numElements¶
119