// Calculates U_mu^dagger(x-\hat{mu})V(x-\hat{\mu}) Eigen::MatrixXcd GaugeField::backward_uv(const Eigen::VectorXcd &v, const ssize_t t, const int spatial_ind, const int direction) const { int down_ind = idown[spatial_ind][direction]; return (tslices.at(t))[down_ind][direction].adjoint() * v.segment(3 * down_ind, 3); }
// Calculates U_mu(x)V(x+\hat{\mu}) Eigen::MatrixXcd GaugeField::forward_uv(const Eigen::VectorXcd &v, const ssize_t t, const int spatial_ind, const int direction) const { int up_ind = iup[spatial_ind][direction]; return (tslices.at(t))[spatial_ind][direction] * v.segment(3 * up_ind, 3); }