The clover construction in lib/clover_quda.cpp does not presently support anisotropic clover construction. To do this Fmunu should be constructed with an isotropic gauge field, and the anisotropy taken care of explicitly when multiplying in the clover coefficient. Presently there is a single clover coefficient, this needs to be make an array of coefficients, allowing us to include the anisotropy in explicitly as a linear factor.
template<typename T, typename U>
Real
QDPCloverTermT<T,U>::getCloverCoeff(int mu, int nu) const
{
START_CODE();
if( param.anisoParam.anisoP ) {
if (mu==param.anisoParam.t_dir || nu == param.anisoParam.t_dir) {
return param.clovCoeffT;
}
else {
// Otherwise return the spatial coeff
return param.clovCoeffR;
}
}
else {
// If there is no anisotropy just return the spatial one, it will
// be the same as the temporal one
return param.clovCoeffR;
}
END_CODE();
}
The clover construction in lib/clover_quda.cpp does not presently support anisotropic clover construction. To do this Fmunu should be constructed with an isotropic gauge field, and the anisotropy taken care of explicitly when multiplying in the clover coefficient. Presently there is a single clover coefficient, this needs to be make an array of coefficients, allowing us to include the anisotropy in explicitly as a linear factor.
The Chroma reference code is here: https://github.com/JeffersonLab/chroma/blob/master/lib/actions/ferm/linop/clover_term_qdp_w.h https://github.com/JeffersonLab/chroma/blob/master/lib/meas/glue/mesfield.cc (construction of Fmunu)