38 SftMom(
int mom2_max,
bool avg_equiv_mom_=
false,
int j_decay=-1);
44 SftMom(
int mom2_max, multi1d<int> origin_offset_,
45 bool avg_equiv_mom_=
false,
int j_decay=-1) ;
48 SftMom(
int mom2_max, multi1d<int> origin_offset_, multi1d<int> mom_offset_,
49 bool avg_equiv_mom_=
false,
int j_decay=-1)
50 {
init(mom2_max, origin_offset_, mom_offset_, avg_equiv_mom_,
j_decay); }
54 {
init(
p.mom2_max,
p.origin_offset,
p.mom_offset,
p.avg_equiv_mom,
p.decay_dir); }
82 int momToNum(
const multi1d<int>& mom_in)
const;
90 {
return phases[mom_num]; }
98 multi2d<DComplex>
sft(
const LatticeComplex& cf)
const;
101 multi2d<DComplex>
sft(
const LatticeComplex& cf,
int subset_color)
const;
104 multi2d<DComplex>
sft(
const LatticeReal& cf)
const;
107 multi2d<DComplex>
sft(
const LatticeReal& cf,
int subset_color)
const;
109 #if BASE_PRECISION==32
110 multi2d<DComplex>
sft(
const LatticeComplexD& cf)
const;
112 multi2d<DComplex>
sft(
const LatticeComplexD& cf,
int subset_color)
const;
119 bool avg_mom_=
false,
int j_decay=-1);
Primary include file for CHROMA library code.
Fourier transform phase factor support.
multi1d< int > getMomOffset() const
Momentum offset.
int numSites() const
Number of sites in each subset.
int numSubsets() const
Number of subsets - length in decay direction.
multi1d< int > canonicalOrder(const multi1d< int > &mom) const
Canonically order an array of momenta.
multi1d< int > origin_offset
SftMom(const SftMomParams_t &p)
General constructor.
SftMom(int mom2_max, multi1d< int > origin_offset_, multi1d< int > mom_offset_, bool avg_equiv_mom_=false, int j_decay=-1)
Construct around some fixed origin_offset and mom_offset.
multi1d< int > mom_offset
const LatticeComplex & operator[](int mom_num) const
Return the phase for this particular momenta id.
multi1d< int > numToMom(int mom_num) const
Convert momenta id to actual array of momenta.
int getDir() const
Decay direction.
int momToNum(const multi1d< int > &mom_in) const
Convert array of momenta to momenta id.
bool getAvg() const
Are momenta averaged?
multi2d< DComplex > sft(const LatticeComplex &cf) const
Do a sumMulti(cf*phases,getSet())
int numMom() const
Number of momenta.
multi1d< LatticeComplex > phases
void init(int mom2_max, multi1d< int > origin_offset, multi1d< int > mom_offset, bool avg_mom_=false, int j_decay=-1)
int multiplicity(int mom_num) const
Return the the multiplicity for this momenta id.
const Set & getSet() const
The set to be used in sumMulti.
Asqtad Staggered-Dirac operator.
multi1d< int > mom_offset
multi1d< int > origin_offset