ElMD API

Class Reference

The sole class is ElMD.ElMD

class ElMD(formula="", metric="mod_petti")

Construct an ElMD object from a given formula string. Elements are parsed and stored in a fixed length vector according to the ordering by the given metric.

formula: str, default=""

The formula for the ElMD object should be initialized with a parseable chemical composition with balanced brackets and standard ascii characters. Unrecognized characters and elements will fail silently

metric: str, default="mod_petti"

The type of elemental indexing which should be used to construct an elemental vector. The available indices are:

  • "mod_petti": The modified Pettifor scale
  • "petti": The pettifor number as first reported by D. Pettifor.
  • "mendeleev": The Mendeleev number for ordering the elements
  • "atomic": The standard atomic number given for each element

Attributes

ElMD.vector_form : numpy.ndarray

Stores a vectorized representation of the formula with the given metric indexing the ratios of each element as a numpy array.

ElMD.pretty_formula

Returns a chemical composition string using normalized ratios of each element.

Methods

ElMD.elmd(self, comp2, comp1 = None)

Main method to calculate ElMD between two compositions. Has been overloaded to accept formula strings or other ElMD objects.

In this usage, all three examples are equivalent:

   x = ElMD("NaCl")
   x.elmd("LiCl") 

   y = ElMD("LiCl")
   x.elmd(y)

   f = ElMD.elmd
   f("NaCl", "LiCl")

Returns a float to signify distance between two formula.