The OASIS Coupler Forum

  HOME

Namcouple bundle fields ERROR WRF4.0.1+NEMO3.6+XIOS1+OASIS3-MCTv4

Up to Specific issues in real coupled models

Posted by Anonymous at November 12 2018

Hello, quite new with OASIS, I am getting an error as in the object, in a regional configuration WRF4.0.1+NEMO3.6+XIOS1+OASIS3-MCTv4.

FROM debug.01.000000 (WRF) :

(oasis_coupler_setup) otfld OOEvaMPr

(oasis_coupler_setup) set src checkused WRF_d01_EXT_d01_EVAP-PRECIP:OOEvaMPr 4

(oasis_coupler_setup) match otfld OOEvaMPr 7

(oasis_coupler_setup) ERROR: namcouple bundle fields do not match for WRF_d01_EXT_d01_EVAP-PRECIP OOEvaMPr

(oasis_coupler_setup) ERROR: namcouple bundle numbers are 1 0

(oasis_abort) ABORT: file = mod_oasis_coupler.F90

(oasis_abort) ABORT: line = 876

FROM debug.02.000000 (NEMO):

(oasis_coupler_setup) otfld WRF_d01_EXT_d01_SST

(oasis_coupler_setup) set src checkused O_SSTSST:WRF_d01_EXT_d01_SST 3

(oasis_coupler_setup) match otfld WRF_d01_EXT_d01_SST 1

(oasis_coupler_setup) ERROR: namcouple bundle fields do not match for O_SSTSST WRF_d01_EXT_d01_SST

(oasis_coupler_setup) ERROR: namcouple bundle numbers are 0 1

(oasis_abort) ABORT: file = mod_oasis_coupler.F90

(oasis_abort) ABORT: line = 876

(oasis_abort) ABORT: on model = oceanx

(oasis_abort) ABORT: on global rank = 24

(oasis_abort) ABORT: on local rank = 0

(oasis_abort) ABORT: CALLING ABORT FROM OASIS LAYER NOW

The namcouple STRING entries seem standard, for instance for SST:

O_SSTSST WRF_d01_EXT_d01_SST 1 900 2 sO1A1.nc EXPORTED

192 116 193 117 ocet atmm LAG=100

R 0 R 0

LOCTRANS MAPPING

AVERAGE

mozaic_Od01_to_Ad01.nc

and to me it seems that by using OASIS3-MCT v3.0 such an error does not occur I guess it is something trivial about the new possibility of bundle fields, but digging quickly into the code I am not able to figure it out, any suggestion is much appreciated,

Bests, Andrea

Posted by Anonymous at November 15 2018

This looks reminiscent of something I found when upgrading an existing coupled model using NEMO(vn3.6) from OASIS3-MCT vn3.0 to vn4.0. Some of the argument interfacing to OASIS has changed slightly so that NEMO code which previously worked, despite not strictly conforming to the OASIS user guide requirements, now becomes a problem.

If you have access to the NEMO repository you can see what we have done to get NEMO vn3.6 working with OASIS3-MCT vn4.0 by looking at changeset 10159 of NEMO branch: branches/UKMO/dev_r5518_GO6_package

Richard

Posted by Anonymous at November 16 2018

Yes you are right, there is a problem of backward compatibility between OASIS3-MCT_4.0 and OASIS3-MCT_3.0. We might correct this but in the mean time I think you can solve your problem as follows:

In your call to oasis_def_var:

CALL oasis def var (var_id, name, il_part_id, var_nodims, kinout, var_actual_shape, var_type, ierror)

you have to make sure that the second element of var_nodims, i.e. var_nodims(2), equals the number of bundles i.e. at least 1 if you are just exchanging one standard field. Bundle fields were not supported with OASIS3-MCT_3.0, so var_nodims(2) had no special significance and 0 was OK, which is not the case anymore with OASIS3-MCT_4.0.

I hope it helps, Sophie

Posted by Anonymous at November 17 2018

Thanks a lot Sophie, substituting (/2,1/) to (/2,0/) for var_nodims in any NEMO call to oasis_def_var fixed the problem, (I guess implying that bundle fields are in fact disabled).

Thanks and best regards, Andrea
Reply to this