[MITgcm-devel] exf vector rotation (with interpolation)
Jean-Michel Campin
jmc at ocean.mit.edu
Mon Dec 26 18:02:49 EST 2011
Hi,
I 've changed the exf-interpolation of 2-component vector
to use the grid rotation-angles (instead of the locally computed
angles). I left the original code (available with exf option:
EXF_USE_OLD_VEC_ROTATION, but undef by default).
My main concern with the EXF_USE_OLD_VEC_ROTATION code is that
the rotation does not preserve the norm of the vector:
The (square of the) norm of the rotated field is
uvect^2 + vvect^2 = u2Fac * tmpU^2 + v2Fac * tmpV^2 + uvFac * tmpU*tmpV
with tmpU,tmpV the non-rotated field. In order to preserve the norm,
we should have u2Fac = v2Fac = 1 and uvFac = 0.
But when I plot these 3 quantities for the CS-32 grid, I don't get
the expected values, specially near the Norh pole and South pole
where the differences are large (> 0.5).
And apart from the 2x 4 grid-points around the N & S pole, there are
still differences larger than 0.05.
So I think it's better and more accurate to use the angles
contained in the grid-files (or computed with S/R CALC_GRID_ANGLES),
and should also be faster. And in the long term, we should
probably remove the EXF_USE_OLD_VEC_ROTATION code.
Cheers,
Jean-Michel
More information about the MITgcm-devel
mailing list