occ
Loading...
Searching...
No Matches
occ::qm::cint::AOBasis Class Reference

#include <shell.h>

Public Types

using AtomList = std::vector<Atom>
using ShellList = std::vector<Shell>

Public Member Functions

 AOBasis (const AtomList &, const ShellList &, const std::string &name="", const ShellList &ecp={})
 AOBasis ()
size_t nbf () const
void merge (const AOBasis &)
bool shells_share_origin (size_t p, size_t q) const
const auto & name () const
auto size () const
auto ecp_size () const
auto nsh () const
auto ecp_nsh () const
auto kind () const
bool is_pure () const
bool is_cartesian () const
bool have_ecps () const
void set_kind (Shell::Kind kind)
void set_pure (bool pure)
const Shell & operator[] (size_t n) const
const Shell & at (size_t n) const
const Shell & ecp_at (size_t n) const
const auto & shells () const
const auto & ecp_shells () const
const auto & atoms () const
const auto & first_bf () const
const auto & bf_to_shell () const
const auto & bf_to_atom () const
const auto & shell_to_atom () const
const auto & ecp_shell_to_atom () const
const auto & atom_to_shell () const
const auto & atom_to_ecp_shell () const
const auto & ecp_electrons () const
auto & ecp_electrons ()
void set_ecp_electrons (const std::vector< int > &e)
auto total_ecp_electrons () const
int total_nuclear_charge () const
 Get total nuclear charge from all atoms.
int effective_nuclear_charge () const
 Get effective nuclear charge (accounting for ECP electrons).
uint_fast8_t l_max () const
uint_fast8_t ecp_l_max () const
void rotate (const Mat3 &rotation)
void translate (const Vec3 &rotation)
auto max_shell_size () const
auto max_ecp_shell_size () const
auto max_num_primitives () const
bool operator== (const AOBasis &rhs) const
void calculate_shell_cutoffs ()

Static Public Member Functions

static AOBasis load (const AtomList &atoms, const std::string &name)
static AOBasis load_minimal_basis (const AtomList &atoms)
static AOBasis load_sap_basis (const AtomList &atoms)

Member Typedef Documentation

◆ AtomList

using occ::gto::AOBasis::AtomList = std::vector<Atom>

◆ ShellList

using occ::gto::AOBasis::ShellList = std::vector<Shell>

Constructor & Destructor Documentation

◆ AOBasis() [1/2]

occ::gto::AOBasis::AOBasis ( const AtomList & ,
const ShellList & ,
const std::string & name = "",
const ShellList & ecp = {} )

◆ AOBasis() [2/2]

Member Function Documentation

◆ at()

const Shell & occ::gto::AOBasis::at ( size_t n) const
inline

◆ atom_to_ecp_shell()

const auto & occ::gto::AOBasis::atom_to_ecp_shell ( ) const
inline

◆ atom_to_shell()

const auto & occ::gto::AOBasis::atom_to_shell ( ) const
inline

◆ atoms()

const auto & occ::gto::AOBasis::atoms ( ) const
inline

◆ bf_to_atom()

const auto & occ::gto::AOBasis::bf_to_atom ( ) const
inline

◆ bf_to_shell()

const auto & occ::gto::AOBasis::bf_to_shell ( ) const
inline

◆ calculate_shell_cutoffs()

◆ ecp_at()

const Shell & occ::gto::AOBasis::ecp_at ( size_t n) const
inline

◆ ecp_electrons() [1/2]

◆ ecp_electrons() [2/2]

const auto & occ::gto::AOBasis::ecp_electrons ( ) const
inline

◆ ecp_l_max()

uint_fast8_t occ::gto::AOBasis::ecp_l_max ( ) const

◆ ecp_nsh()

auto occ::gto::AOBasis::ecp_nsh ( ) const
inline

◆ ecp_shell_to_atom()

const auto & occ::gto::AOBasis::ecp_shell_to_atom ( ) const
inline

◆ ecp_shells()

const auto & occ::gto::AOBasis::ecp_shells ( ) const
inline

◆ ecp_size()

auto occ::gto::AOBasis::ecp_size ( ) const
inline

◆ effective_nuclear_charge()

Get effective nuclear charge (accounting for ECP electrons).

Returns
Total nuclear charge minus ECP electrons

◆ first_bf()

const auto & occ::gto::AOBasis::first_bf ( ) const
inline

◆ have_ecps()

bool occ::gto::AOBasis::have_ecps ( ) const
inline

◆ is_cartesian()

bool occ::gto::AOBasis::is_cartesian ( ) const
inline

◆ is_pure()

bool occ::gto::AOBasis::is_pure ( ) const
inline

◆ kind()

auto occ::gto::AOBasis::kind ( ) const
inline

◆ l_max()

uint_fast8_t occ::gto::AOBasis::l_max ( ) const

◆ load()

AOBasis occ::gto::AOBasis::load ( const AtomList & atoms,
const std::string & name )
static

◆ load_minimal_basis()

◆ load_sap_basis()

◆ max_ecp_shell_size()

◆ max_num_primitives()

◆ max_shell_size()

auto occ::gto::AOBasis::max_shell_size ( ) const
inline

◆ merge()

◆ name()

const auto & occ::gto::AOBasis::name ( ) const
inline

◆ nbf()

size_t occ::gto::AOBasis::nbf ( ) const
inline

◆ nsh()

auto occ::gto::AOBasis::nsh ( ) const
inline

◆ operator==()

bool occ::gto::AOBasis::operator== ( const AOBasis & rhs) const

◆ operator[]()

const Shell & occ::gto::AOBasis::operator[] ( size_t n) const
inline

◆ rotate()

void occ::gto::AOBasis::rotate ( const Mat3 & rotation)

◆ set_ecp_electrons()

void occ::gto::AOBasis::set_ecp_electrons ( const std::vector< int > & e)
inline

◆ set_kind()

◆ set_pure()

void occ::gto::AOBasis::set_pure ( bool pure)
inline

◆ shell_to_atom()

const auto & occ::gto::AOBasis::shell_to_atom ( ) const
inline

◆ shells()

const auto & occ::gto::AOBasis::shells ( ) const
inline

◆ shells_share_origin()

bool occ::gto::AOBasis::shells_share_origin ( size_t p,
size_t q ) const
inline

◆ size()

auto occ::gto::AOBasis::size ( ) const
inline

◆ total_ecp_electrons()

◆ total_nuclear_charge()

Get total nuclear charge from all atoms.

Returns
Sum of atomic numbers

◆ translate()

void occ::gto::AOBasis::translate ( const Vec3 & rotation)

The documentation for this class was generated from the following file:
  • /home/runner/work/occ/occ/include/occ/gto/shell.h