Wrong nav_lon and Nav_lat values in the NEMO output

Hi list,
I am using NEMO4 r4.0.6 with XIOS 2.5 to build a regional model. While checking the model output, seems that the nav_lon and nav_lat coordinates has weird values over some areas (figs attached). The coordinate values look good in the domain_cfg and initial data files. Any idea where I am going wrong.


Hi Bijoy,

It looks like some processors have been removed from the computational domain. In these places, since no lon/lat data is available, xios assigns a missing value when building the global output. Nothing (a priori) abnormal as long as this occurs on land !


Thanks Jérôme. Those values are over the land. A few land processors are removed from the computations.
A minor issue is that the plotting packages are unable to properly represent the coordinate axes due to these xios filled values. The conversion (using cdo) of curvilinear to regular (lonlat) grid also fails in this case.


If you generate a meshmask file without land processor elimination, and use it for any pre or post processing (including plotting) instead of the lat/lon data from the outputs, then it solves the issue.

Hope this helps,


Thanks Robinson. Does the meshmask file includes the lat-lon points corresponding to T, U and V points? My understanding is that it has only the T point lat-lon points, may be I am wrong.

Is it true that the option ln_listonly=.true. in nammpp, will keep the land processors, ie, simulation without land processor elimination.


Hei Bijoy,

In the meshmask there is pretty much all the grid data, including that of T, U, V, F, W points. Generating the meshmask is the first step you need to do when running Nemo so you can generate initial conditions, weight files etc… you need the meshmask file for everything.
n_listonly=.true is an option I have never tried, I don’t know.

Hope this helps,

Thanks again.

“ln_listonly=.true is an option I have never tried, I don’t know.”
My intention is to the run the model for a few time steps without land processor suppression. So looking for the correct option to do this.


I don’t think you need to use this option for that. Do yo use nemo4 ? If you set by hand jpni and jpnj in the namelist then it should work. In Nemo 3.6 you just set jpnij=jpni*jpnj.
It will not even run one time step, it will do the initialization job, generate the meshmask and then crash.

You already have the proper lon/lat coordinates at T, U, V and F points in the domcfg file. So I don’t see the need of the meshmask file.

“ln_listonly=.true" will stop the model at its early stage and print in ocean.output the list of optimum domain decompositions that are used by default when you don’t specify jpni and jpnj in the nammpp part of the namelist

You can always force the value of joni and jpnj in nammpp. From NEMO 4.0, the parameter jpnij is no more existing, as you already fix the number of processes you want to use when you launch the model with mpirun (or whatever equivalent syntax you use). If you want to force the model to keep its land processes (so you are wasting cpu time…) just fix jpni and jpnj in nammpp and run the model with mpirun -np N ./nemo.exe with N=jpni*jpnj.

in the domain_cfg file:
glamt=longitude at T-points
gphit=latitude at T-points
glamu=longitude at U-points
gphiu=latitude at U-points

Thanks all. I have those coordinate variables in the domain_cfg file.