Skip to content

dft.grids

Real- and reciprocal-space grids for toy plane-wave DFT.

import mlx_atomistic.dft.grids

class RealSpaceGrid
def __init__(shape: Sequence[int], cell: Cell | Sequence[float])

Uniform orthorhombic real-space grid in atomic units.

Parameters

NameTypeDefaultDescription
shapeSequence[int]
cellCell | Sequence[float]

Properties

  • dv float — Volume represented by one grid point.
  • lengths mx.array — Cell lengths in atomic units.
  • ndim int — Number of grid dimensions.
  • size int — Total number of grid points.
  • spacing mx.array — Grid spacing in atomic units.
  • volume float — Cell volume in bohr cubed.

Methods

def coordinates() -> mx.array

Return cell-centered Cartesian grid coordinates with shape (*shape, 3).

Returns

  • mx.array
class ReciprocalGrid
def __init__(real_grid: RealSpaceGrid, vectors: mx.array, g2: mx.array, zero_mask: mx.array)

Reciprocal-space vectors matching a RealSpaceGrid FFT layout.

Parameters

NameTypeDefaultDescription
real_gridRealSpaceGrid
vectorsmx.array
g2mx.array
zero_maskmx.array

Methods

def from_real_space(grid: RealSpaceGrid) -> ReciprocalGrid

Build reciprocal vectors in NumPy FFT frequency order.

Parameters

NameTypeDefaultDescription
gridRealSpaceGrid

Returns

  • ReciprocalGrid