Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

Errors running WPS-4.1 with ECMWF data

This post was from a previous version of the WRF&MPAS-A Support Forum. New replies have been disabled and if you have follow up questions related to this post, then please start a new thread from the forum home page.

josemorales

New member
Hello everyone.
I am trying to perform a WRF simulation with data provided by the European Center ECMWF.
I have read quite a few posts on how to perform it, but unfortunately I have problems "I think" due to the lack of Relative Humidity data.

The data sent to me by ECMWF comes in 2 parts:

1.- A "T1" dataset corresponding to model levels.
2.- A "T2" data set corresponding to surface.

Now, at the moment of working with these data, I have carried out the steps suggested in the following section:

* Download the ECMWF data separately for model level variables (Q,T,U,V and geopotential) and surface variables. In this way, you will get 'pure' GRIB1 and 'pure' GRIB2 files rather than the hybrid type.
*Run ungrib twice: for the model levels files, use this Vtable. For the surface file, use the 'old' Vtable.ECMWF_sigma. Between the two ungrib runs, change the ungrib prefix in the namelist.wps (e.g. I used prefix = 'FILE_ML' and prefix = 'FILE_SFC').
*Run util/calc_ecmwf_p.exe. This only works if the program can read both files. To achieve this, make sure that in the metgrid part of the namelist.wps, both input names are given (fg_name = 'FILE_ML','FILE_SFC','PRES',). Not sure whether 'PRES' makes a difference here, but since it will be used for metgrid I already put it there and it worked for me. 'PRES' are the files created by calc_ecmwf_p.exe. Note that you'll also need an 'ecmwf_coeffs' file for this step.
*Run metgrid, real and wrf as usual.

The ungrib processes have been successful (or so I think).
But when I run "calc_ecmwf_p.exe" I get the following errors. Which I think finally do not allow me to run metgrid properly.

./util/calc_ecmwf_p.exe

Reading from FILE_ML at time 2021-08-03_12
Reading from FILE_ML at time 2021-08-03_18
Reading from FILE_ML at time 2021-08-04_00
Reading from FILE_ML at time 2021-08-04_06
Reading from FILE_ML at time 2021-08-04_12
Reading from FILE_SFC at time 2021-08-03_12
Found PSFC field in FILE_SFC:2021-08-03_12
WARNING: Either TT or SPECHUMD not found. No RH will be computed.
Reading from FILE_SFC at time 2021-08-03_18
Found PSFC field in FILE_SFC:2021-08-03_18
WARNING: Either TT or SPECHUMD not found. No RH will be computed.
Reading from FILE_SFC at time 2021-08-04_00
Found PSFC field in FILE_SFC:2021-08-04_00
WARNING: Either TT or SPECHUMD not found. No RH will be computed.
Reading from FILE_SFC at time 2021-08-04_06
Found PSFC field in FILE_SFC:2021-08-04_06
WARNING: Either TT or SPECHUMD not found. No RH will be computed.
Reading from FILE_SFC at time 2021-08-04_12
Found PSFC field in FILE_SFC:2021-08-04_12
WARNING: Either TT or SPECHUMD not found. No RH will be computed.
Reading from PRES at time 2021-08-03_12
Reading from PRES at time 2021-08-03_18
Reading from PRES at time 2021-08-04_00
Reading from PRES at time 2021-08-04_06
Reading from PRES at time 2021-08-04_12[/size]


Finally, when I try to run metgrid.exe, it fails as shown below.

$ ./metgrid.exe
Processing domain 1 of 3
INFORM: Couldn't find SOILT004 at level 200100.000000 to fill level 4.000000 of SOILT.
INFORM: Couldn't find SOILT010 at level 200100.000000 to fill level 10.000000 of SOILT.
INFORM: Couldn't find SOILT030 at level 200100.000000 to fill level 30.000000 of SOILT.
INFORM: Couldn't find SOILT060 at level 200100.000000 to fill level 60.000000 of SOILT.
INFORM: Couldn't find SOILT100 at level 200100.000000 to fill level 100.000000 of SOILT.
INFORM: Going to create the field SOIL_LEVELS
INFORM: Going to create the field PRES
INFORM: PRES at level 200100.000000 already exists; leaving it alone.
INFORM: Field LANDSEA.mask does not have a valid mask and will not be checked for missing values
WRF_DEBUG: Warning DIM 4 , NAME num_metgrid_levels REDEFINED by var
RH 138 7 in wrf_io.F90 line 2588
ERROR: Error in ext_pkg_write_field
application called MPI_Abort(MPI_COMM_WORLD, 29538720) - process 0
[unset]: write_line error; fd=-1 buf=:cmd=abort exitcode=29538720
:
system msg for write_line failure : Bad file descriptor
:shock: :shock: :shock:
I would be very grateful if any of you could guide me in this implementation.
Regards,
José Morales.
 
Hi José,
I apologize for the delay in response while I was traveling. Are you still having the same problem? Typically the error you're seeing (Error in ext_pkg_write_field) means surface data is missing. Make sure to check that all 3-d meteorological fields include surface level data.

However, there is an issue specifically related to ECMWF data. The ecmwf_coeffs file may be missing level 0 data, and a line may need to be added to the text file in order to make metgrid run correctly after running calc_ecmwf. See the example file here and if you are missing that first line, add it and then re-run calc_ecmwf_p.exe again, and then metgrid.exe.
 
Top