occ
Loading...
Searching...
No Matches
occ::qm::ExternalPotential Concept Reference

Concept for an external-potential model: a self-contained engine that produces a one-electron potential matrix V_ext and the nuclear–external interaction energy when handed an SCF procedure (HF/DFT/etc.). More...

#include <external_potential.h>

Concept definition

template<typename T, typename Proc>
concept occ::qm::ExternalPotential = requires(const T &model, Proc &proc) {
{ model.compute_potential_matrix(proc) } -> std::convertible_to<Mat>;
{ model.nuclear_interaction_energy(proc) } -> std::convertible_to<double>;
{ model.label() } -> std::convertible_to<std::string_view>;
{ model.descriptor() } -> std::convertible_to<std::string>;
}
Concept for an external-potential model: a self-contained engine that produces a one-electron potenti...
Definition external_potential.h:20

Detailed Description

Concept for an external-potential model: a self-contained engine that produces a one-electron potential matrix V_ext and the nuclear–external interaction energy when handed an SCF procedure (HF/DFT/etc.).

Models are independent of SCF<Proc> — callers can use them on the side (e.g. for diagnostics) or feed them into SCF::set_external_potential.