The OASIS Coupler Forum

  HOME

Masking of coupling variables in oasis-mct

Up to Transformations and interpolations

Posted by Anonymous at March 21 2014

Hi Laure,

I am using OASIS-MCT. My remapping setup looks like this:

LOCTRANS CHECKIN SCRIPR CHECKOUT
INSTANT
INT=0
CONSERV LR SCALAR LATLON 10 FRACNNEI FIRST
INT=0

I am not using a pre-existing mapping file. Well, I generated it once and am re-using it. I haven't changed the namcouple, masks, etc since generating it. (It takes several hours to generate).

I have a low res atmosphere 192x145 mapping onto a higher res ice/ocean 1440x1080. I have dumped fields at the source model and found that they have not been masked using the source mask, which was unexpected, but maybe it's the correct behaviour. I have attached an image to explain. The top LHS is the source, top RHS is dest and the bottom plot is a field that has been interpolated. You can see that there are lots of land masses in the bottom image with values instead of being masked, like Tasmania.

In general I'm curious about how OASIS uses the different masks. I guess there are two cases:

1) the source has data for a region that is masked out on the dest. I would think that it just gets masked out.
2) the source does not have any data for a region in the dest. This can happen when the source mask covers a non-masked region in the dest. Does OASIS do anything in this case? Does it have a way to figure out the missing values?

Thanks, Nic

Posted by Anonymous at March 21 2014

Hi Nicholas,

First of all, it is not INT=0 but INT=1 that you should put in your namcouple, INT=0 does not exist anymore with OASIS3-MCT.

As you observed (as you plotted them) OASIS3-MCT writes a debug file containing the coupling field before the remapping on the source grid and after the remapping on the target grid, when using the option EXPOUT for a pair of coupling fields in the namcouple.  There is no mask applied on these fields.
So on the source grid, you do not see the grid mask which it is normal. On the target side, the masked points do not receive any value (the field is equal to zero) and this is why you see the target grid mask.

In your case, I think you have a version of OASIS3-MCT in which some masked target points receive a value when using the conservative interpolation. This was modified in the trunk but this version is still under development and I would not recommend to switch to trunk for "operational" purpose unless it is really necessary.

Concerning your last questions:
- if a target point falls outside the source domain, OASIS find the nearest source unmasked neighbour point to this target point and sends the value of the source field of this point to the target point.
- if all the source neighbour points are maked for a target point, OASIS find the nearest source unmasked neighbour point to this target point and sends the value of the source field of this point to the target point.

This is the default for all the interpolations in OASIS except for the conservative interpolation where you have to specify it using FRACNNEI, as you did (see the User Guide https://oasis.cerfacs.fr/wp-content/uploads/sites/114/2021/02/GLOBC-Valcke_TR_OASIS3-MCT_2.0_2013.pdf section 4.3 for CONSERV interpolation).

Best regards, Laure
Reply to this