File MultipoleChargePair.h

Copyright

This code is licensed under the 3-clause BSD license.

Copyright ETH Zurich, Laboratory for Physical Chemistry, Reiher Group.

See LICENSE.txt for details.

namespace Scine
namespace Sparrow
namespace nddo
namespace multipole

Enums

enum ChargeDistanceSeparation

Values:

d00
d01
d10
d02
d20
d0s2
ds20
p11
m11
p12
p21
m12
m21
p1s2
ps21
m1s2
ms21
p22
m22
p2s2
ps22
m2s2
ms22
ps2s2
ms2s2
class MultipoleChargePair
#include <MultipoleChargePair.h>

This class stores the information about the distance between two point charges and about the product of their charges

Public Functions

MultipoleChargePair(const MultipoleCharge &c1, const MultipoleCharge &c2)
ChargeDistanceSeparation getXDistance() const
ChargeDistanceSeparation getYDistance() const
void setChargeProduct(double q)
double getChargeProduct() const
const MultipoleCharge &firstCharge() const
const MultipoleCharge &secondCharge() const

Private Functions

void calculateCharges()
void calculateDistances()
ChargeDistanceSeparation calculateXYDistance(ChargeDistance d1, ChargeDistance d2)