Processing math: 100%

sknano.core.crystallography.Crystal3DLattice

class sknano.core.crystallography.Crystal3DLattice(a=None, b=None, c=None, alpha=None, beta=None, gamma=None, a1=None, a2=None, a3=None, cell_matrix=None, orientation_matrix=None, offset=None)[source][source]

3D crystal lattice class.

Parameters:

a, b, c : float

alpha, beta, gamma : float

a1, a2, a3 : array_like

cell_matrix : array_like

orientation_matrix : array_like, optional

Attributes

a Length of lattice vector a.
a1 Lattice vector a1=a.
a2 Lattice vector a2=b.
a3 Lattice vector a3=c.
alpha Angle between lattice vectors b and c in degrees.
angles Tuple of lattice parameter angles α,β,γ.
b Length of lattice_vector b.
b1 3D reciprocal lattice vector b1=a.
b2 3D reciprocal lattice vector b2=b.
b3 3D reciprocal lattice vector b3=c.
beta Angle between lattice vectors a and c in degrees.
c Length of lattice vector c.
cell_matrix Matrix of lattice row vectors.
cell_volume Alias for volume.
cos_alpha cosα
cos_alpha_star cosα
cos_beta cosβ
cos_beta_star cosβ
cos_gamma cosγ
cos_gamma_star cosγ
fmtstr Format string.
fractional_matrix Transformation matrix to convert from cartesian coordinates to fractional coordinates.
gamma Angle between lattice vectors a and b in degrees.
lattice_parameters Tuple of lattice parameters a, b, c, alpha, beta, gamma.
lattice_vectors Tuple of lattice vectors a1,a2,a3.
lengths Tuple of lattice vector lengths a,b,c.
lengths_and_angles Alias for attr:Crystal3DLattice.lattice_parameters.
matrix Alias for cell_matrix.
metric_tensor Metric tensor.
ortho_matrix Transformation matrix to convert from fractional coordinates to cartesian coordinates.
reciprocal_lattice Reciprocal lattice of this Crystal3DLattice.
sin_alpha sinα
sin_alpha_star sinα
sin_beta sinβ
sin_beta_star sinβ
sin_gamma sinγ
sin_gamma_star sinγ
volume Crystal cell volume.

Methods

cartesian_to_fractional(ccoords) Convert cartesian coordinate to fractional coordinate.
cubic(a) Generate a cubic 3D lattice with lattice parameter a.
fractional_to_cartesian(fcoords) Convert fractional coordinate to cartesian coordinate.
hexagonal(a, c) Generate a hexagonal 3D lattice with lattice parameters a,c.
monoclinic(a, b, c, beta) Generate a monoclinic 3D lattice with lattice parameters a,b,c,β.
orthorhombic(a, b, c) Generate an orthorhombic 3D lattice with lattice parameters a,b,c.
rotate([angle, axis, anchor_point, ...]) Rotate unit cell.
tetragonal(a, c) Generate a tetragonal 3D lattice with lattice parameters a,c.
todict() Return dict of Crystal3DLattice parameters.
translate(t) Translate lattice.
triclinic(a, b, c, alpha, beta, gamma) Generate a triclinic 3D lattice with lattice parameters a,b,c,α,β,γ.
wrap_cartesian_coordinate(p[, pbc]) Wrap cartesian coordinate to lie within unit cell.
wrap_fractional_coordinate(p[, epsilon, pbc]) Wrap fractional coordinate to lie within unit cell.