mirror of
https://github.com/paboyle/Grid.git
synced 2024-11-09 23:45:36 +00:00
Extract slice working on checkerboard field for Block Lanczos
This commit is contained in:
parent
d66b2423cb
commit
3668e81c5e
@ -981,8 +981,14 @@ void InsertSlice(const Lattice<vobj> &lowDim,Lattice<vobj> & higherDim,int slice
|
||||
hcoor[orthog] = slice;
|
||||
for(int d=0;d<nh;d++){
|
||||
if ( d!=orthog ) {
|
||||
hcoor[d]=lcoor[ddl++];
|
||||
hcoor[d]=lcoor[ddl];
|
||||
if ( hg->_checker_dim == d ) {
|
||||
hcoor[d]=hcoor[d]*2; // factor in the full coor for peekLocalSite
|
||||
lcoor[ddl]=lcoor[ddl]*2; // factor in the full coor for peekLocalSite
|
||||
}
|
||||
ddl++;
|
||||
}
|
||||
|
||||
}
|
||||
peekLocalSite(s,lowDimv,lcoor);
|
||||
pokeLocalSite(s,higherDimv,hcoor);
|
||||
@ -1003,6 +1009,7 @@ void ExtractSlice(Lattice<vobj> &lowDim,const Lattice<vobj> & higherDim,int slic
|
||||
assert(orthog<nh);
|
||||
assert(orthog>=0);
|
||||
assert(hg->_processors[orthog]==1);
|
||||
lowDim.Checkerboard() = higherDim.Checkerboard();
|
||||
|
||||
int dl; dl = 0;
|
||||
for(int d=0;d<nh;d++){
|
||||
@ -1020,11 +1027,16 @@ void ExtractSlice(Lattice<vobj> &lowDim,const Lattice<vobj> & higherDim,int slic
|
||||
Coordinate lcoor(nl);
|
||||
Coordinate hcoor(nh);
|
||||
lg->LocalIndexToLocalCoor(idx,lcoor);
|
||||
int ddl=0;
|
||||
hcoor[orthog] = slice;
|
||||
int ddl=0;
|
||||
for(int d=0;d<nh;d++){
|
||||
if ( d!=orthog ) {
|
||||
hcoor[d]=lcoor[ddl++];
|
||||
hcoor[d]=lcoor[ddl];
|
||||
if ( hg->_checker_dim == d ) {
|
||||
hcoor[d]=hcoor[d]*2; // factor in the full gridd coor for peekLocalSite
|
||||
lcoor[ddl]=lcoor[ddl]*2; // factor in the full coor for peekLocalSite
|
||||
}
|
||||
ddl++;
|
||||
}
|
||||
}
|
||||
peekLocalSite(s,higherDimv,hcoor);
|
||||
|
Loading…
Reference in New Issue
Block a user