mirror of
https://github.com/paboyle/Grid.git
synced 2024-11-14 01:35:36 +00:00
added phi vectors - still commented out and does not compile otherwise
This commit is contained in:
parent
2b782df290
commit
ced30b61e2
@ -34,12 +34,12 @@ BEGIN_HADRONS_NAMESPACE
|
|||||||
|
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* A2AVectorsSchurDiagTwo template implementation *
|
* DistilVectorsFromPerambulator template implementation *
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
/*
|
/*
|
||||||
|
|
||||||
template <typename FImpl>
|
template <typename FImpl>
|
||||||
A2AVectorsSchurDiagTwo<FImpl>::A2AVectorsSchurDiagTwo(FMat &action)
|
DistilVectorsFromPerambulator<FImpl>::DistilVectorsFromPerambulator(FMat &action)
|
||||||
: action_(action)
|
: action_(action)
|
||||||
, fGrid_(action_.FermionGrid())
|
, fGrid_(action_.FermionGrid())
|
||||||
, frbGrid_(action_.FermionRedBlackGrid())
|
, frbGrid_(action_.FermionRedBlackGrid())
|
||||||
@ -53,7 +53,7 @@ A2AVectorsSchurDiagTwo<FImpl>::A2AVectorsSchurDiagTwo(FMat &action)
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
template <typename FImpl>
|
template <typename FImpl>
|
||||||
void A2AVectorsSchurDiagTwo<FImpl>::makeRho(FermionField &rhoOut, const FermionField &evec, const Complex &noises)
|
void DistilVectorsFromPerambulator<FImpl>::makeRho(FermionField &rhoOut, const FermionField &evec, const Complex &noises)
|
||||||
{
|
{
|
||||||
|
|
||||||
LatticeSpinColourVector tmp2(grid4d);
|
LatticeSpinColourVector tmp2(grid4d);
|
||||||
@ -62,7 +62,7 @@ void A2AVectorsSchurDiagTwo<FImpl>::makeRho(FermionField &rhoOut, const FermionF
|
|||||||
LatticeColourVector tmp_nospin(grid4d);
|
LatticeColourVector tmp_nospin(grid4d);
|
||||||
LatticeColourVector evec3d(grid3d);
|
LatticeColourVector evec3d(grid3d);
|
||||||
|
|
||||||
|
int vecindex;
|
||||||
for (int inoise = 0; inoise < nnoise; inoise++) {
|
for (int inoise = 0; inoise < nnoise; inoise++) {
|
||||||
for (int dk = 0; dk < LI; dk++) {
|
for (int dk = 0; dk < LI; dk++) {
|
||||||
for (int dt = 0; dt < Nt_inv; dt++) {
|
for (int dt = 0; dt < Nt_inv; dt++) {
|
||||||
@ -98,6 +98,42 @@ void A2AVectorsSchurDiagTwo<FImpl>::makeRho(FermionField &rhoOut, const FermionF
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <typename FImpl>
|
||||||
|
void DistilVectorsFromPerambulator<FImpl>::makePhi(FermionField &rhoOut, const FermionField &evec, const SpinVector &perambulator)
|
||||||
|
{
|
||||||
|
|
||||||
|
LatticeSpinColourVector tmp2(grid4d);
|
||||||
|
LatticeSpinColourVector tmp3d(grid3d);
|
||||||
|
LatticeColourVector tmp3d_nospin(grid3d);
|
||||||
|
LatticeColourVector tmp_nospin(grid4d);
|
||||||
|
LatticeColourVector evec3d(grid3d);
|
||||||
|
|
||||||
|
int vecindex;
|
||||||
|
for (int inoise = 0; inoise < nnoise; inoise++) {
|
||||||
|
for (int dk = 0; dk < LI; dk++) {
|
||||||
|
for (int dt = 0; dt < Nt_inv; dt++) {
|
||||||
|
for (int ds = 0; ds < Ns; ds++) {
|
||||||
|
vecindex = inoise + nnoise * dk + nnoise * LI * ds + nnoise *LI * Ns*dt;
|
||||||
|
sinks_tsrc[vecindex] = zero;
|
||||||
|
for (int t = Ntfirst; t < Ntfirst + Ntlocal; t++) {
|
||||||
|
sink_tslice=zero;
|
||||||
|
for (int ivec = 0; ivec < nvec; ivec++) {
|
||||||
|
ExtractSliceLocal(evec3d,eig4d.evec[ivec],0,t,3);
|
||||||
|
sink_tslice += evec3d * perambulator(t, ivec, dk, inoise,dt,ds);
|
||||||
|
}
|
||||||
|
#ifdef USE_LOCAL_SLICES
|
||||||
|
InsertSliceLocal(sink_tslice,sinks_tsrc[vecindex],0,t-Ntfirst,Grid::QCD::Tdir);
|
||||||
|
#else
|
||||||
|
InsertSlice(sink_tslice,sinks_tsrc[vecindex],t,Grid::QCD::Tdir);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user