ergo
fermi_contact.cc File Reference
#include <memory>
#include "memorymanag.h"
#include "basisinfo.h"
#include "aos.h"
#include "density_description_file.h"
#include "Matrix.h"
#include "MatrixSymmetric.h"

Classes

struct  FCAccumulator
 

Functions

template<class Accumulator >
ergo_real accumulate (int n, const ergo_real *spinMat, const Accumulator &ac)
 
int computeFermiContact (const BasisInfoStruct &bis, const ergo_real *spinDensity, const Vector3D &R, ergo_real &result)
 computeFermiContact computes the Fermi contact interaction for given molecule and specified spin density. More...
 
int main (int argc, char *argv[])
 

Variables

static const double GE = 2.0023193044
 

Detailed Description

implements "Fermi contact" integrals. The formulas are give in the hyperfine project.

Author
: Pawel Salek responsible

Function Documentation

◆ accumulate()

template<class Accumulator >
ergo_real accumulate ( int  n,
const ergo_real spinMat,
const Accumulator &  ac 
)

Referenced by computeFermiContact().

◆ computeFermiContact()

int computeFermiContact ( const BasisInfoStruct bis,
const ergo_real spinDensity,
const Vector3D R,
ergo_real result 
)

computeFermiContact computes the Fermi contact interaction for given molecule and specified spin density.

Parameters
bisbasis set specification.
spinDensityspin density defined as D_alpha-D_beta.
Rthe cartesian coordinates to which we compute interaction to.
resultwill contain the interaction if the function succeeds.
Returns
0 on success, -1 on failure.

References accumulate(), dft_get_orbs(), BasisInfoStruct::noOfBasisFuncs, BasisInfoStruct::noOfShells, and Vector3D::v.

Referenced by main().

◆ main()

Variable Documentation

◆ GE

const double GE = 2.0023193044
static

Referenced by main().