JDFTx  1.5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TranslationOperatorSpline Class Reference

Translation operator which works in real space using interpolating splines. More...

#include <TranslationOperator.h>

Inheritance diagram for TranslationOperatorSpline:
TranslationOperator

Public Types

enum  SplineType { Constant, Linear }
 Types of interpolating spline available for translation. More...
 

Public Member Functions

 TranslationOperatorSpline (const GridInfo &gInfo, SplineType splineType)
 
void taxpy (const vector3<> &t, double alpha, const ScalarField &x, ScalarField &y) const
 
- Public Member Functions inherited from TranslationOperator
 TranslationOperator (const GridInfo &gInfo)
 

Public Attributes

enum
TranslationOperatorSpline::SplineType 
splineType
 
- Public Attributes inherited from TranslationOperator
const GridInfogInfo
 

Detailed Description

Translation operator which works in real space using interpolating splines.

Member Enumeration Documentation

Types of interpolating spline available for translation.

Enumerator
Constant 

0th order spline i.e. nearest neighbour interpolation

Linear 

1st order spline i.e. linear interpolation

Member Function Documentation

void TranslationOperatorSpline::taxpy ( const vector3<> &  t,
double  alpha,
const ScalarField x,
ScalarField y 
) const
virtual

Compute \( y += alpha T_t(x) \) , where \( T_t \) is the translation operator \( T_t(x(r)) = x(r+t) \) modulo the lattice vectors T must conserve integral(x) and satisfy \( T^{\dagger}_t = T_{-t} \) exactly for gradient correctness Note that \( T^{-1}_t = T_{-t} \) may only be approximately true for some implementations.

Implements TranslationOperator.


The documentation for this class was generated from the following file: