occ
Loading...
Searching...
No Matches
occ::qm::cosx Namespace Reference

Classes

struct  GridBatchInfo
 
struct  ScreenedShellPairs
 
class  SemiNumericalExchange
 
struct  Settings
 Configuration settings for COSX seminumerical exchange. More...
 
struct  ShellLists
 ORCA-style SHARK shell lists (shell-based, not pair-based) See: Helmich-Paris et al. More...
 

Functions

GridBatchInfo compute_batch_info (const occ::Mat3N &pts_block)
 
ScreenedShellPairs screen_shell_pairs (const GridBatchInfo &batch, const std::vector< occ::gto::Shell > &shells, const Vec &screening_extents, double margin=1.0)
 
std::vector< size_t > screen_shells_geometric (const GridBatchInfo &batch, const std::vector< occ::gto::Shell > &shells, const Vec &screening_extents, double margin=1.0)
 Screen shells based on geometric proximity to grid batch Returns list-1: shells where distance - extent < batch_radius + margin.
 
std::vector< size_t > screen_shells_density (const std::vector< size_t > &list1, const Mat &Fg, const std::vector< occ::gto::Shell > &shells, const std::vector< int > &first_bf, double threshold=1e-10)
 Screen shells based on F intermediate magnitude (density-weighted basis values) Returns list-2: shells from list1 where max|F_shell| > threshold F = sum_kappa P_kappa,lambda * X_kappa,g (Eq.
 
std::vector< size_t > screen_shells_overlap (const std::vector< size_t > &list2, const GridBatchInfo &batch, const std::vector< occ::gto::Shell > &shells, const Vec &screening_extents, double threshold=1e-12)
 Screen shells based on differential overlap for ESP integrals Returns list-3: shells from list2 with non-negligible overlap at grid points This is based on the "chain of spheres" - each basis function has a sphere outside of which it's negligible.
 
ShellLists build_shell_lists (const GridBatchInfo &batch, const Mat &Fg, const std::vector< occ::gto::Shell > &shells, const std::vector< int > &first_bf, const Vec &screening_extents, double f_threshold=1e-10, double overlap_threshold=1e-12, double margin=1.0)
 Build all three shell lists for a batch.
 

Function Documentation

◆ build_shell_lists()

ShellLists occ::qm::cosx::build_shell_lists ( const GridBatchInfo batch,
const Mat Fg,
const std::vector< occ::gto::Shell > &  shells,
const std::vector< int > &  first_bf,
const Vec &  screening_extents,
double  f_threshold = 1e-10,
double  overlap_threshold = 1e-12,
double  margin = 1.0 
)

Build all three shell lists for a batch.

◆ compute_batch_info()

GridBatchInfo occ::qm::cosx::compute_batch_info ( const occ::Mat3N pts_block)

◆ screen_shell_pairs()

ScreenedShellPairs occ::qm::cosx::screen_shell_pairs ( const GridBatchInfo batch,
const std::vector< occ::gto::Shell > &  shells,
const Vec &  screening_extents,
double  margin = 1.0 
)

◆ screen_shells_density()

std::vector< size_t > occ::qm::cosx::screen_shells_density ( const std::vector< size_t > &  list1,
const Mat Fg,
const std::vector< occ::gto::Shell > &  shells,
const std::vector< int > &  first_bf,
double  threshold = 1e-10 
)

Screen shells based on F intermediate magnitude (density-weighted basis values) Returns list-2: shells from list1 where max|F_shell| > threshold F = sum_kappa P_kappa,lambda * X_kappa,g (Eq.

8 in paper)

◆ screen_shells_geometric()

std::vector< size_t > occ::qm::cosx::screen_shells_geometric ( const GridBatchInfo batch,
const std::vector< occ::gto::Shell > &  shells,
const Vec &  screening_extents,
double  margin = 1.0 
)

Screen shells based on geometric proximity to grid batch Returns list-1: shells where distance - extent < batch_radius + margin.

◆ screen_shells_overlap()

std::vector< size_t > occ::qm::cosx::screen_shells_overlap ( const std::vector< size_t > &  list2,
const GridBatchInfo batch,
const std::vector< occ::gto::Shell > &  shells,
const Vec &  screening_extents,
double  threshold = 1e-12 
)

Screen shells based on differential overlap for ESP integrals Returns list-3: shells from list2 with non-negligible overlap at grid points This is based on the "chain of spheres" - each basis function has a sphere outside of which it's negligible.