Reciprocal3DLattice

class sknano.core.crystallography.Reciprocal3DLattice(a_star=None, b_star=None, c_star=None, alpha_star=None, beta_star=None, gamma_star=None, b1=None, b2=None, b3=None, cell_matrix=None, orientation_matrix=None, offset=None)[source] [edit on github][source]

Bases: sknano.core.crystallography.ReciprocalLatticeBase, sknano.core.crystallography.DirectLatticeMixin

3D reciprocal lattice class.

Parameters:
  • b_star, c_star (a_star,) –
  • beta_star, gamma_star (alpha_star,) –
  • b2, b3 (b1,) –
  • cell_matrix (array_like) –
  • orientation_matrix (array_like) –

Attributes

a1 3D lattice vector \(\mathbf{a}_1=\mathbf{a}\).
a2 3D lattice vector \(\mathbf{a}_2=\mathbf{b}\).
a3 3D lattice vector \(\mathbf{a}_3=\mathbf{c}\).
a_star Length of lattice vector \(\mathbf{a^*}\).
alpha_star Angle between lattice vectors \(\mathbf{b}^{\ast}\) and \(\mathbf{c}^{\ast}\) in degrees.
angles Tuple of lattice parameter angles \(\alpha^*, \beta^*, \gamma^*\).
b1 Lattice vector \(\mathbf{b}_1=\mathbf{a}^{\ast}\).
b2 Lattice vector \(\mathbf{b}_2=\mathbf{b}^{\ast}\).
b3 Lattice vector \(\mathbf{b}_3=\mathbf{c}^{\ast}\).
b_star Length of lattice_vector \(\mathbf{b^*}\).
beta_star Angle between lattice vectors \(\mathbf{c}^{\ast}\) and \(\mathbf{a}^{\ast}\) in degrees.
bounding_box region bounding_box.
c_star Length of lattice vector \(\mathbf{c^*}\).
cell Alias for cell_matrix.
cell_matrix Matrix of lattice row vectors.
centroid Region centroid.
cos_alpha \(\cos\alpha\)
cos_alpha_star \(\cos\alpha^{\ast}\)
cos_beta \(\cos\beta\)
cos_beta_star \(\cos\beta^{\ast}\)
cos_gamma \(\cos\gamma\)
cos_gamma_star \(\cos\gamma^{\ast}\)
fmtstr Format string.
fractional_matrix Transformation matrix to convert from cartesian coordinates to fractional coordinates.
gamma_star Angle between lattice vectors \(\mathbf{a}^{\ast}\) and \(\mathbf{b}^{\ast}\) in degrees.
lattice_parameters Tuple of lattice parameters a^*, b^*, c^*, alpha^*, beta^*, gamma^*.
lattice_vectors Tuple of lattice vectors \(\mathbf{b}_1, \mathbf{b}_2, \mathbf{b}_3\).
lengths Tuple of lattice vector lengths \(a^*, b^*, c^*\).
matrix Alias for cell_matrix.
metric_tensor Metric tensor.
offset Lattice offset.
ortho_matrix Transformation matrix to convert from fractional coordinates to cartesian coordinates.
reciprocal_lattice Reciprocal lattice of this Reciprocal3DLattice.
region Parallelepiped defined by lattice vectors.
sin_alpha \(\sin\alpha\)
sin_alpha_star \(\sin\alpha^{\ast}\)
sin_beta \(\sin\beta\)
sin_beta_star \(\sin\beta^{\ast}\)
sin_gamma \(\sin\gamma\)
sin_gamma_star \(\sin\gamma^{\ast}\)

Methods

cartesian_to_fractional(ccoords) Convert cartesian coordinate to fractional coordinate.
cubic(a_star) Generate a cubic 3D lattice with lattice parameter \(a^*\).
fractional_diff(fcoords1, fcoords2) Compute difference between fractional coordinates.
fractional_to_cartesian(fcoords) Convert fractional coordinate to cartesian coordinate.
hexagonal(a_star, c_star) Generate a hexagonal 3D lattice with lattice parameters \(a^*, c^*\).
monoclinic(a_star, b_star, c_star, beta_star) Generate a monoclinic 3D lattice with lattice parameters \(a^*, b^*, c^*, \beta^*\).
orthorhombic(a_star, b_star, c_star) Generate an orthorhombic 3D lattice with lattice parameters \(a^*, b^*, c^*\).
rotate(**kwargs) Rotate unit cell.
tetragonal(a_star, c_star) Generate a tetragonal 3D lattice with lattice parameters \(a^*, c^*\).
todict() Return dict of Reciprocal3DLattice parameters.
translate(t) Translate lattice.
triclinic(a_star, b_star, c_star, ...) Generate a triclinic 3D lattice with lattice parameters \(a^*, b^*, c^*, \alpha^*, \beta^*, \gamma^*\).
wrap_cartesian_coordinate(p[, epsilon, pbc]) Wrap cartesian coordinate to lie within unit cell.
wrap_cartesian_coordinates(points[, ...]) Wrap array of cartesian coordinates to lie within unit cell.
wrap_fractional_coordinate(p[, epsilon, pbc]) Wrap fractional coordinate to lie within unit cell.
wrap_fractional_coordinates(points[, ...]) Wrap array of fractional coordinates to lie within unit cell.

Attributes Summary

a_star Length of lattice vector \(\mathbf{a^*}\).
alpha_star Angle between lattice vectors \(\mathbf{b}^{\ast}\) and \(\mathbf{c}^{\ast}\) in degrees.
angles Tuple of lattice parameter angles \(\alpha^*, \beta^*, \gamma^*\).
b1 Lattice vector \(\mathbf{b}_1=\mathbf{a}^{\ast}\).
b2 Lattice vector \(\mathbf{b}_2=\mathbf{b}^{\ast}\).
b3 Lattice vector \(\mathbf{b}_3=\mathbf{c}^{\ast}\).
b_star Length of lattice_vector \(\mathbf{b^*}\).
beta_star Angle between lattice vectors \(\mathbf{c}^{\ast}\) and \(\mathbf{a}^{\ast}\) in degrees.
c_star Length of lattice vector \(\mathbf{c^*}\).
cos_alpha_star \(\cos\alpha^{\ast}\)
cos_beta_star \(\cos\beta^{\ast}\)
cos_gamma_star \(\cos\gamma^{\ast}\)
gamma_star Angle between lattice vectors \(\mathbf{a}^{\ast}\) and \(\mathbf{b}^{\ast}\) in degrees.
lattice_parameters Tuple of lattice parameters a^*, b^*, c^*, alpha^*, beta^*, gamma^*.
lattice_vectors Tuple of lattice vectors \(\mathbf{b}_1, \mathbf{b}_2, \mathbf{b}_3\).
lengths Tuple of lattice vector lengths \(a^*, b^*, c^*\).
reciprocal_lattice Reciprocal lattice of this Reciprocal3DLattice.
sin_alpha_star \(\sin\alpha^{\ast}\)
sin_beta_star \(\sin\beta^{\ast}\)
sin_gamma_star \(\sin\gamma^{\ast}\)

Methods Summary

cubic(a_star) Generate a cubic 3D lattice with lattice parameter \(a^*\).
hexagonal(a_star, c_star) Generate a hexagonal 3D lattice with lattice parameters \(a^*, c^*\).
monoclinic(a_star, b_star, c_star, beta_star) Generate a monoclinic 3D lattice with lattice parameters \(a^*, b^*, c^*, \beta^*\).
orthorhombic(a_star, b_star, c_star) Generate an orthorhombic 3D lattice with lattice parameters \(a^*, b^*, c^*\).
tetragonal(a_star, c_star) Generate a tetragonal 3D lattice with lattice parameters \(a^*, c^*\).
todict() Return dict of Reciprocal3DLattice parameters.
triclinic(a_star, b_star, c_star, ...) Generate a triclinic 3D lattice with lattice parameters \(a^*, b^*, c^*, \alpha^*, \beta^*, \gamma^*\).

Attributes Documentation

a_star

Length of lattice vector \(\mathbf{a^*}\).

alpha_star

Angle between lattice vectors \(\mathbf{b}^{\ast}\) and \(\mathbf{c}^{\ast}\) in degrees.

angles

Tuple of lattice parameter angles \(\alpha^*, \beta^*, \gamma^*\).

b1

Lattice vector \(\mathbf{b}_1=\mathbf{a}^{\ast}\).

b2

Lattice vector \(\mathbf{b}_2=\mathbf{b}^{\ast}\).

b3

Lattice vector \(\mathbf{b}_3=\mathbf{c}^{\ast}\).

b_star

Length of lattice_vector \(\mathbf{b^*}\).

beta_star

Angle between lattice vectors \(\mathbf{c}^{\ast}\) and \(\mathbf{a}^{\ast}\) in degrees.

c_star

Length of lattice vector \(\mathbf{c^*}\).

cos_alpha_star

\(\cos\alpha^{\ast}\)

cos_beta_star

\(\cos\beta^{\ast}\)

cos_gamma_star

\(\cos\gamma^{\ast}\)

gamma_star

Angle between lattice vectors \(\mathbf{a}^{\ast}\) and \(\mathbf{b}^{\ast}\) in degrees.

lattice_parameters

Tuple of lattice parameters a^*, b^*, c^*, alpha^*, beta^*, gamma^*.

lattice_vectors

Tuple of lattice vectors \(\mathbf{b}_1, \mathbf{b}_2, \mathbf{b}_3\).

lengths

Tuple of lattice vector lengths \(a^*, b^*, c^*\).

reciprocal_lattice

Reciprocal lattice of this Reciprocal3DLattice.

sin_alpha_star

\(\sin\alpha^{\ast}\)

sin_beta_star

\(\sin\beta^{\ast}\)

sin_gamma_star

\(\sin\gamma^{\ast}\)

Methods Documentation

classmethod cubic(a_star)[source] [edit on github][source]

Generate a cubic 3D lattice with lattice parameter \(a^*\).

classmethod hexagonal(a_star, c_star)[source] [edit on github][source]

Generate a hexagonal 3D lattice with lattice parameters \(a^*, c^*\).

classmethod monoclinic(a_star, b_star, c_star, beta_star)[source] [edit on github][source]

Generate a monoclinic 3D lattice with lattice parameters \(a^*, b^*, c^*, \beta^*\).

classmethod orthorhombic(a_star, b_star, c_star)[source] [edit on github][source]

Generate an orthorhombic 3D lattice with lattice parameters \(a^*, b^*, c^*\).

classmethod tetragonal(a_star, c_star)[source] [edit on github][source]

Generate a tetragonal 3D lattice with lattice parameters \(a^*, c^*\).

todict()[source] [edit on github][source]

Return dict of Reciprocal3DLattice parameters.

classmethod triclinic(a_star, b_star, c_star, alpha_star, beta_star, gamma_star)[source] [edit on github][source]

Generate a triclinic 3D lattice with lattice parameters \(a^*, b^*, c^*, \alpha^*, \beta^*, \gamma^*\).