occ
Loading...
Searching...
No Matches
occ::dft::MolecularGrid Class Reference

Class for molecular integration grids in DFT. More...

#include <molecular_grid.h>

Public Member Functions

 MolecularGrid (const AOBasis &basis, const GridSettings &settings=GridSettings(), RadialGridMethod method=RadialGridMethod::LMG)
 Constructor from AOBasis.
 
 MolecularGrid (const Mat3N &positions, const IVec &atomic_numbers, const GridSettings &settings=GridSettings(), RadialGridMethod method=RadialGridMethod::LMG)
 Constructor from custom positions and atomic numbers.
 
size_t n_atoms () const
 Get the number of atoms.
 
AtomGrid get_partitioned_atom_grid (size_t atom_idx) const
 Generate a partitioned atom grid for a specific atom.
 
AtomGrid get_atom_grid (size_t atom_idx) const
 Generate an atom grid for a specific atomic number.
 
const GridSettingssettings () const
 Get the grid settings.
 
void populate_molecular_grid_points ()
 Generate and initialize the molecular grid points.
 
const MolecularGridPointsget_molecular_grid_points () const
 Get the molecular grid points.
 
void set_atomic_radii (const Vec &)
 
const Vec & atomic_radii () const
 

Detailed Description

Class for molecular integration grids in DFT.

This class manages the creation and manipulation of molecular integration grids for density functional theory calculations. It supports various grid generation methods and can work with either basis set information or user-provided data.

Constructor & Destructor Documentation

◆ MolecularGrid() [1/2]

occ::dft::MolecularGrid::MolecularGrid ( const AOBasis basis,
const GridSettings settings = GridSettings(),
RadialGridMethod  method = RadialGridMethod::LMG 
)

Constructor from AOBasis.

Creates a molecular grid based on basis set information.

Parameters
basisBasis set information
settingsGrid settings
methodGrid generation method

◆ MolecularGrid() [2/2]

occ::dft::MolecularGrid::MolecularGrid ( const Mat3N &  positions,
const IVec &  atomic_numbers,
const GridSettings settings = GridSettings(),
RadialGridMethod  method = RadialGridMethod::LMG 
)

Constructor from custom positions and atomic numbers.

Creates a molecular grid based on user-provided atomic positions and numbers.

Parameters
positionsAtomic positions (3 x N matrix)
atomic_numbersAtomic numbers
settingsGrid settings
methodGrid generation method

Member Function Documentation

◆ atomic_radii()

const Vec & occ::dft::MolecularGrid::atomic_radii ( ) const
inline

◆ get_atom_grid()

AtomGrid occ::dft::MolecularGrid::get_atom_grid ( size_t  atom_idx) const

Generate an atom grid for a specific atomic number.

Parameters
atomic_numberAtomic number
Returns
AtomGrid The generated atom grid

◆ get_molecular_grid_points()

const MolecularGridPoints & occ::dft::MolecularGrid::get_molecular_grid_points ( ) const

Get the molecular grid points.

Returns
const MolecularGridPoints& The molecular grid points

◆ get_partitioned_atom_grid()

AtomGrid occ::dft::MolecularGrid::get_partitioned_atom_grid ( size_t  atom_idx) const

Generate a partitioned atom grid for a specific atom.

Parameters
atom_idxIndex of the atom
Returns
AtomGrid The partitioned atom grid

◆ n_atoms()

size_t occ::dft::MolecularGrid::n_atoms ( ) const

Get the number of atoms.

Returns
size_t Number of atoms

◆ populate_molecular_grid_points()

void occ::dft::MolecularGrid::populate_molecular_grid_points ( )

Generate and initialize the molecular grid points.

This method generates the actual grid points for the molecular calculation. It is called automatically when needed, but can also be called explicitly.

◆ set_atomic_radii()

void occ::dft::MolecularGrid::set_atomic_radii ( const Vec &  )

◆ settings()

const GridSettings & occ::dft::MolecularGrid::settings ( ) const

Get the grid settings.

Returns
const GridSettings& The grid settings

The documentation for this class was generated from the following file: