double factor = scale*_v->volume(x, y + 1)/_vDensity[_u->idx(x, y + 1)]; should be replaced with double factor = scale*_v->volume(x, y + 1)/_vDensity[_v->idx(x, y + 1)];