occ
|
Classes | |
struct | AtomContribution |
Represents the contribution of a single atom to polarization energy attribution. More... | |
struct | PairContribution |
Represents the partitioned polarization energy contribution from a dimer pair. More... | |
Typedefs | |
using | FieldMap = ankerl::unordered_dense::map< std::pair< size_t, size_t >, Mat3N > |
Functions | |
PairContribution | partition_crystal_polarization_energy (const core::Dimer &dimer, const Mat3N &total_field_a, const Mat3N &total_field_b, const Mat3N &pair_field_a, const Mat3N &pair_field_b, const Vec &polarizabilities_a, const Vec &polarizabilities_b) |
Partitions crystal field polarization energy back to individual dimer pairs. | |
std::vector< PairContribution > | partition_all_pairs (const std::vector< core::Dimer > &dimers, const FieldMap &total_fields, const FieldMap &pair_fields, const std::vector< Vec > &polarizabilities) |
Partition multiple dimer pairs simultaneously. | |
using occ::interaction::polarization_partitioning::FieldMap = typedef ankerl::unordered_dense::map<std::pair<size_t, size_t>, Mat3N> |
std::vector< PairContribution > occ::interaction::polarization_partitioning::partition_all_pairs | ( | const std::vector< core::Dimer > & | dimers, |
const FieldMap & | total_fields, | ||
const FieldMap & | pair_fields, | ||
const std::vector< Vec > & | polarizabilities | ||
) |
Partition multiple dimer pairs simultaneously.
PairContribution occ::interaction::polarization_partitioning::partition_crystal_polarization_energy | ( | const core::Dimer & | dimer, |
const Mat3N & | total_field_a, | ||
const Mat3N & | total_field_b, | ||
const Mat3N & | pair_field_a, | ||
const Mat3N & | pair_field_b, | ||
const Vec & | polarizabilities_a, | ||
const Vec & | polarizabilities_b | ||
) |
Partitions crystal field polarization energy back to individual dimer pairs.
Uses gradient-based energy attribution following the approach from the reference Python implementation. The total crystal field polarization energy is smaller than the sum of individual pair polarizations due to field cancellation effects.
dimer | The molecular dimer pair |
total_field_a | Total crystal field on molecule A atoms |
total_field_b | Total crystal field on molecule B atoms |
pair_field_a | Field contribution from molecule B onto A |
pair_field_b | Field contribution from molecule A onto B |
polarizabilities_a | Atomic polarizabilities for molecule A |
polarizabilities_b | Atomic polarizabilities for molecule B |