ERROR in subroutine READNML

Hi!

I am running mcip V5.0 And I get the following error:


*** SUBROUTINE: READNML
*** ERROR READING NAMELIST FILE ON UNIT 8
*** NAMELIST FILE NAME = namelist.mcip
*** NAMELIST = filenames
*** IOSTAT = 5010


 *** ERROR ABORT in subroutine READNML
 ABNORMAL TERMINATION IN READNML

Error running mcip

Does anybody knows what is wrong?

Thanks in advance.

1 Like

What Fortran compiler are you using? PGI?

The error-numbers (5010) are vendor specific; you probably want to do a search for your compiler together with “runtime error status”.

This isn’t Intel, presumably: their error numbers top out at 781; and if you’re using gfortran, lots of luck: I can’t find their error-status numbers documented anywhere on the web (something that, to my mind, disqualfies them from being a professional quality compiler).

@cristianarango2

Have you updated your MCIP script to use the version that accompanied MCIPv5.0? If not, that is likely the source of your error. There are several elements in the namelist, “filenames”, that changed between MCIPv4.5 and MCIPv5.0.

Please let me know if that works.

–Tanya

thanks a lot for you reply. I am using gfortran. this are the error codes of gfortran:
-3 LIBERROR_FIRST = -3,
-2 LIBERROR_EOR = -2,
-1 LIBERROR_END = -1,
0 LIBERROR_OK = 0,
5000 LIBERROR_OS = 5000,
5001 LIBERROR_OPTION_CONFLICT
5002 LIBERROR_BAD_OPTION
5003 LIBERROR_MISSING_OPTION
5004 LIBERROR_ALREADY_OPEN
5005 LIBERROR_BAD_UNIT
5006 LIBERROR_FORMAT
5007 LIBERROR_BAD_ACTION
5008 LIBERROR_ENDFILE
5009 LIBERROR_BAD_US
5010 LIBERROR_READ_VALUE
5011 LIBERROR_READ_OVERFLOW
5012 LIBERROR_INTERNAL
5013 LIBERROR_INTERNAL_UNIT
5014 LIBERROR_ALLOCATION
5015 LIBERROR_DIRECT_EOR
5016 LIBERROR_SHORT_RECORD
5017 LIBERROR_CORRUPT_FILE
5018 LIBERROR_INQUIRE_INTERNAL_UNIT

But I don´t know what value is wrong

Thanks a lot for your Reply

Yes, I am using the mcip script from the version 5.0, indeed, there are some differences between script versions.

Thanks for the list. Where did you find it?

You have 5010 LIBERROR_READ_VALUE which means that there is probably what gfortran thinks is a formatting-error somewhere in the list – maybe an extra comma or decimal point. Check it character-by-character; these things are notoriously hard to find (which is one of the reasons the I/O API encourages environment variables instead of namelists…)

…and the gfortran authors have a particularly idiosyncratic way of reading the Fortran standard ;-(

Hi!

I got it from http://www.hep.manchester.ac.uk/u/samt/misc/gfortran_errors.html
I checked the namelist.mcip and compared with namelist in previous versions that I have run and everything seems to be ok.

Can I run mcip 4.2 with WRF4.1? I made a proof but it seems that not recognize wrf 4.

@cristianarango2

I’m sorry you’re experiencing this issue with MCIPv5.0. There is another user with the same issue, so I’d like to get more information to solve the problem. I tested with GFortran on my system, and I did not encounter any errors. Can you please attach your namelist that was generated from your MCIPv5.0 run?

You cannot use MCIPv4.2 with WRFv4.0+. Only MCIPv5.0 is set up for WRFv4.0+ at this time.

–Tanya

Hi Tanya, thanks a lot for your help.

Below my namelist.mcip and the script tha generates it is attached

&FILENAMES
file_gd = “/SIMCAB/meteorologia/mcip5/d01/GRIDDESC”
file_mm = “/SIMCAB/meteorologia/WRF/WRFV4/run/wrfout_d01_2019-08-30_00:00:00”,
file_ter = “/SIMCAB/meteorologia/WRF/WPSV4/geo_em.d01.nc”
ioform = 1
&END

&USERDEFS
lpv = 0
lwout = 0
luvbout = 1
mcip_start = “2019-08-30-00:00:00.0000”
mcip_end = “2019-08-31-00:00:00.0000”
intvl = 60
coordnam = “Colombia”
grdnam = “CMAQBogota”
btrim = -1
lprt_col = 0
lprt_row = 0
wrf_lc_ref_lat = 40.0
&END

&WINDOWDEFS
x0 = 1
y0 = 1
ncolsin = 179
nrowsin = 154
&ENDrun_mcip.csh (18.7 KB)

@cristianarango2

Thank you for providing your namelist. This is just a guess, but I’d like you to try it. Please edit namelist.mcip to remove the comma after the first element of “file_mm”. Then execute mcip.exe. If you cannot execute mcip.exe without your script, edit your script so that you do not overwrite namelist.mcip (for example) by temporarily changing “cat namelist.mcip >> !” to “cat junk >> !”.

Please let me know if that works.

–Tanya

Hi Tanya

Yes, we already try it modifying the run_mcip.csh part that generates the namelist.mcip, but it doesn´t work.

Thanks for your help!

I am using PGI and meet the same problem. Have you found the solution? Thanks.


*** SUBROUTINE: READNML
*** ERROR READING NAMELIST FILE ON UNIT 8
*** NAMELIST FILE NAME = namelist.mcip
*** NAMELIST = filenames
*** IOSTAT = 239


 *** ERROR ABORT in subroutine READNML
 ABNORMAL TERMINATION IN READNML

Error running mcip

Hello @cristianarango2 @tlspero @mtchuang100

I checked the run_mcip file posted, and it uses IfGeo = “T”.
Please, check the post below. Maybe it can help…

Hi all,

I had the same issue and am using gfortran (from gccv7.3.0). I removed the comma from the MCIP run script (where file_mm is defined and written, around line 360) but this did not resolve the issue. Changing ‘IfGeo = “T”’ to ‘IfGeo = .TRUE.’ makes the program run further, but this is because the corresponding if statements (there are 3 of them, around lines 295, 335, 375) are only checking for “T”. When they’re revised to check for .TRUE., the original READNML error appears. I’m able to view my geo_em file from WRFv4.1.2 in VERDI, so I believe it was generated successfully.

Please let me know if a solution is found.

Thank you,
Elyse


*** SUBROUTINE: READNML
*** ERROR READING NAMELIST FILE ON UNIT 8
*** NAMELIST FILE NAME = namelist.mcip
*** NAMELIST = filenames
*** IOSTAT = 19


 *** ERROR ABORT in subroutine READNML
 ABNORMAL TERMINATION IN READNML

We are using WRF 4.0, and MCIP 5.0, this is the error that we are facing, we tried all the possible solutions mentioned in the thread, but none worked, can you guys help in anyway, because it is creating a big problem to the research.
A possible bypass solution to this was to use geogrid.exe,ungrib.exe and metgrid.exe in WRF4.0 but run realtime.exe and wrf.exe with older WRF version and use old mcip and CMAQ for the computing, it works!! :slight_smile: but the problem is we want to use CMAQv5.3, because of its easy coupled compatibility with WRF. Please if someone can help, that would be appreciable. Thank you!

Shivang –
Are you using the MCIP script as it is provided on GitHub, or did you modify it? Post your namelist.mcip file, so that we can verify that it was generated correctly.

What compiler and version are you using?

Hi Chris,
We are using the script (run_mcip.csh) as it is, we did not modify it, and we are using GCC 4.8.5 compiler.
namelist.mcip::

&FILENAMES
file_gd = “/home/hpc5/WRF4.0/Build_WRF/WRF/test/em_real/mcip_trial/GRIDDESC”
file_hdr = “/home/hpc5/WRF4.0/Build_WRF/WRF/test/em_real/mcip_trial/mmheader.d01_3DINDIA_20191102” #added from old mcip run file
file_mm = “/home/hpc5/WRF4.0/Build_WRF/WRF/test/em_real/wrfout_d01_2019-11-02_00:00:00”,
“/home/hpc5/WRF4.0/Build_WRF/WRF/test/em_real/wrfout_d01_2019-11-02_00:00:00”,
“/home/hpc5/WRF4.0/Build_WRF/WRF/test/em_real/wrfout_d01_2019-11-03_00:00:00”,
file_ter = “/home/hpc5/WRF4.0/Build_WRF/WRF/test/em_real/geo_em.d01.nc”
ioform = 1
&END

&USERDEFS
lpv = 0
lwout = 0
luvbout = 1
mcip_start = “2019-11-02_00:00:00.0000”
mcip_end = “2019-11-03_00:00:00.0000”
intvl = 60
coordnam = “3DINDIA”
grdnam = “3DINDIA”
btrim = 5
lprt_col = 0
lprt_row = 0
wrf_lc_ref_lat =
&END

&WINDOWDEFS
x0 =
y0 =
ncolsin =
nrowsin =
&END

We would be glad if you could help us.

The script run_mcip.csh generates namelist.mcip. The namelist you have provided does not look like what would be produced by the script.
In particular, you have an embedded comment (line beginning with a #) in the &FILENAMES namelist. I believe this is not legal in Fortran90, and that is exactly what your error message is telling you.
There are other differences as well between your namelist.mcip and the version generated by the script. The structure of namelist.mcip that is required may vary from one version of MCIP to another. As noted in the release notes, the source code to readnml.f90 has changed; there is no longer a file_hdr variable.
I suggest you try the version “out of the box” with the tutorial case, verify that works, then modify for your application.

@Catalyst2682, @cristianarango2, @mtchuang100, @epenning, @Shivang

I think I finally figured out the issue with the script and MCIPv5.0. I believe I introduced an error in the MCIP script when I removed the MM5 processing. Inside MCIP, I changed the name of the file that we used to load either TERRAIN (from MM5) or Geogrid (from WRF) output from “file_ter” to “file_geo” to be more reflective of the WRF input that we use. However, I forgot to change its setting in the MCIP script where the namelist is generated. Unfortunately, I never used that part of the script in my testing because I already had the fractional land use in the wrfout files…so I never ran into this issue.

Please see: https://github.com/USEPA/CMAQ/blob/master/PREP/mcip/scripts/run_mcip.csh

In line 377, please change “file_ter” to “file_geo”. That will hopefully solve the issue.

I apologize for the inconvenience. The script will be updated in the next release. Please let me know in this thread if the solution I proposed here works for you.

Thanks, also, to @cjcoats and @cgnolte for weighing in on this issue.

–Tanya

3 Likes