File DFTBDipoleMomentCalculator.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
template<class DFTBMethod>
class DFTBDipoleMomentCalculator : public Scine::Sparrow::DipoleMomentCalculator
#include <DFTBDipoleMomentCalculator.h>

This class calculates the electrical dipole moment for the DFTB methods.

Right now it calculates the dipole through a Mulliken population analysis. New methods can then be implemented if deemed necessary. In particular, with this approximation transition dipoles from orbitals on the same atom can be vastly underestimated, which is of importance for TD-DFTB.

Template Parameters
  • DFTBMethod: One of the DFTB methods type, i.e. DFTB0, DFTB2, DFTB3.

Public Functions

DFTBDipoleMomentCalculator(const DFTBMethod &method)
~DFTBDipoleMomentCalculator()
Eigen::RowVector3d calculate() const

Calculates the dipole with a Mulliken population analysis.

Private Members

const DFTBMethod &method_