just in case if I can explain what I meant by changing NLAYS.
I have created a 3D layered file (somehow) and that file is recognized by IOAPI tools. A simple program m3xtract, for instance, recognizes the file, however, it sees only the 1st layer in the data although the file has 3 layers (when viewed with ncdump, or ncview). I am not sure what is the basis for the m3tools to read the vertical dimensionality but I suspect it is by reading NLAYS in the global attributes?
ncdump to my input 3D file (created from 2D file) looks like
netcdf emis_mole_all_1KM {
dimensions:
TSTEP = UNLIMITED ; // (25 currently)
VAR = 62 ;
DATE-TIME = 2 ;
LAY = 3 ; [### here!]
ROW = 280 ;
COL = 280 ;
variables:
int TFLAG(TSTEP, VAR, DATE-TIME) ;
TFLAG:units = “<YYYYDDD,HHMMSS>” ;
TFLAG:long_name = "TFLAG " ;
TFLAG:var_desc = "Timestep-valid flags: (1) YYYYDDD or (2) HHMMSS " ;
float ACET(TSTEP, LAY, ROW, COL) ;
ACET:_FillValue = NaNf ;
ACET:long_name = "ACET " ;
ACET:units = "mole/s " ;
ACET:var_desc = "ACET[1]
…
:NTHIK = 1 ;
:NCOLS = 280 ;
:NROWS = 280 ;
:NLAYS = 1 ; [ ### here!]
:NVARS = 62 ;
:GDTYP = 2 ;
Thanks