Lattice Module

This module provides functions for creating lattice structures in one and two dimensions. Lattices are periodic arrangements of points in space, which can be used in various applications such as crystallography, solid-state physics, and materials science.

Functions:

  • lattice: Creates a one-dimensional lattice functor based on the specified wave vector, period, and number of units.

  • lattice2d: Creates a two-dimensional lattice functor based on the specified wave vectors for the x and y directions, periods in both directions, and the number of units in each direction.

Returns:

  • functor_obj

    A functor object representing the lattice, which can be used for further calculations related to scattering phenomena.

escape.scattering.lattice.lattice(qx: variable_obj, period: ParameterLike, num_units: int, name: str = 'Lattice', notes: str = '') functor_obj

Create a one-dimensional lattice functor.

Parameters:

qxvariable_obj

The variable object representing the x-component of the wave vector.

periodParameterLike

The period of the lattice.

num_unitsint

The number of units in the lattice.

namestr, optional

The name of the lattice functor (default is “Lattice”).

notesstr, optional

User notes for the object (default is “”).

Returns:

functor_obj

A functor object representing the one-dimensional lattice.

escape.scattering.lattice.lattice2d(qx: variable_obj, qy: variable_obj, periodx: ParameterLike, periody: ParameterLike, num_unitsx: int, num_unitsy: int, name: str = 'Lattice', notes: str = '') functor_obj

Create a two-dimensional lattice functor.

Parameters:

qxvariable_obj

The variable object representing the x-component of the wave vector.

qyvariable_obj

The variable object representing the y-component of the wave vector.

periodxParameterLike

The period of the lattice in the x-direction.

periodyParameterLike

The period of the lattice in the y-direction.

num_unitsxint

The number of units in the x-direction.

num_unitsyint

The number of units in the y-direction.

namestr, optional

The name of the lattice functor (default is “Lattice”).

notesstr, optional

User notes for the object (default is “”).

Returns:

functor_obj

A functor object representing the two-dimensional lattice.