occ
Loading...
Searching...
No Matches
polarization_partitioning.h File Reference
#include <occ/core/linear_algebra.h>
#include <occ/core/dimer.h>
#include <ankerl/unordered_dense.h>
#include <vector>
Include dependency graph for polarization_partitioning.h:

Classes

struct  occ::interaction::polarization_partitioning::AtomContribution
 Represents the contribution of a single atom to polarization energy attribution. More...
 
struct  occ::interaction::polarization_partitioning::PairContribution
 Represents the partitioned polarization energy contribution from a dimer pair. More...
 

Namespaces

namespace  occ
 
namespace  occ::interaction
 interactions energies including CrystalExplorer model energies
 
namespace  occ::interaction::polarization_partitioning
 

Typedefs

using occ::interaction::polarization_partitioning::FieldMap = ankerl::unordered_dense::map< std::pair< size_t, size_t >, Mat3N >
 

Functions

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.
 
std::vector< PairContributionocc::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.