principia_materia.translation_group.lattice module

class principia_materia.translation_group.lattice.Lattice(vec, pg=None, tol=1e-06)

Bases: object

A lattice.

It can be a lattice in any kind

Parameters:
  • vec (array of float, shape(dim, dim)) – The lattice vectors, in row convention.

  • pg (str or a PointGroup object) – The point group of the lattice.

  • tol (float, optional, default to 1.0E-6) – Tolerance threshold.

property abc

Length of each lattice vector

property abg

Angle between lattice vectors

axial_strain(strain)

Strains the unit cell.

Parameters:

strain (array of floats, shape(dim)) – Strain on each axis.

cartesian_to_lattice(vector)

Convert the position of a point from cartesian coordinate to lattice coordinate.

Parameters:

vector (array of float, shape(dim)) – A point in the space, in cartesian coordinate.

copy()

Return a copy of the object.

Returns:

new – A copy of the object itself.

Return type:

Lattice

property dim

Dimentions of the lattice.

lattice_to_cartesian(vector)

Convert the position of a point from lattice coordinate to cartesian coordinate.

Parameters:

vector (array of float, shape(dim)) – A point in the space, in lattice coordinate.

property rabc

Length of each reciprocal lattice vector

property rabg

Angle between reciprocal lattice vectors

property rvec

Reciprocal lattice vectors.

property rvol

Volume of the reciprocal lattice

set_ws_cell(nrange=2)

Construct WS cell object for ws_weight calculation.

similarity_transform(transformation_matrix)

Similarity transformation on lattice vectors.

Parameters:

transformation_matrix (array of floats, shape(dim, dim)) – An invertable similarity transformation matrix, in row convention.

strain(strain)

Strains the unit cell.

Parameters:

strain (array of floats, shape(dim)) – Strain on each axis.

to_dict()

Return a dictionary containing key information about the lattice.

property vec

Lattice vectors.

property vol

Volume of the lattice

ws_weight(vector, lattice_coordinate=True)

Compute the weight of a point in the WS cell of the lattice.

Parameters:
  • vector (array of float, shape(dim)) – A point in the space, in lattice coordinate if lattice_coordinate == True, otherwise in cartesian coordinate.

  • lattice_coordinate (bool) – Whether the input point is in lattice coordinate or cartesian coordinate.

principia_materia.translation_group.lattice.get_lattice_io_wrapper(title='Lattice')

YAML data wrapper for Lattice class.