coordination

Created on Thu Mar 02 17:26:23 2017

@author: lansford

class Coordination(atoms, exclude=[], cutoff=1.25, cutoff_type='percent')[source]

Class for calculating coordination and generalized coordination number.

Parameters
  • atoms (atoms) – ASE atoms type.

  • exclude (list of int) – Indices of atoms to exclude in tabulating the coordination of each atom

  • cutoff (float) – Fudge factor multiplied by Van der Waals radii used to determine connectivity. If distance between atoms is less than the summ of their radii times cutoff they are considered to be coordinated

  • cutoff_type (str) – Can be ‘percent’ or ‘absolute’. If Absolute then the cutoff is considered a distance and replaces the use of Van der Waals radii entirely. If multiple atom types are to be used then ‘perecent’ is best.

Variables
  • atoms (atoms) – ASE atoms type.

  • exclude (list of int) – Indices of atoms to exclude in tabulating the coordination of each atom

  • cutoff (float) – Fudge factor multiplied by Van der Waals radii used to determine connectivity. If distance between atoms is less than the summ of their radii times cutoff they are considered to be coordinated

  • cutoff_type (str) – Can be ‘percent’ or ‘absolute’. If Absolute then the cutoff is considered a distance and replaces the use of Van der Waals radii entirely. If multiple atom types are to be used then ‘perecent’ is best.

get_coordination_numbers()[source]

Implements the read function

Returns

  • cn (list of int) – list of coordination numbers for each atom.

  • bonded (list of list) – List of indices of atoms bonded to each atom

get_gcn(site=[], surface_type='fcc')[source]

Returns the generalized coordination number of the site given. To define A site, just give a list containing the indices of the atoms forming the site. The calculated coordination numbers and bonding needs to be supplied, and the surface type also needs to be changed if the surface is not represented by bulk fcc.

Parameters
  • site (list of int) – indices for which to calculate the GCN values

  • surface_type (str) – Indicates natural bulk of the material which influences the maximum coordination environment of a site

Returns

gcn – Listof generalized coordination values for the desired atoms in a system.

Return type

list of float

read()[source]

Returns an array of coordination numbers and an array of existing bonds determined by distance and covalent radii. By default a bond is defined as 120% of the combined radii or less. This can be changed by setting ‘cutoff’ to a float representing a factor to multiple by (default = 1.2). If ‘exclude’ is set to an array, these atomic numbers with be unable to form bonds. This only excludes them from being counted from other atoms, the coordination numbers for these atoms will still be calculated, but will be unable to form bonds to other excluded atomic numbers.

Variables
  • cn (list of int) – list of coordination numbers for each atom.

  • bonded (list of list) – List of indices of atoms bonded to each atom