Opened 5 years ago

Last modified 12 months ago

#232 accepted Defect

Warnings about undefined GRiB2 messages

Reported by: ahilboll Owned by: anphi
Priority: major Milestone: FLEXPART 10
Component: FP input data Version: FLEXPART 10.0
Keywords: Cc: petra.seibert@…

Description

I'm filing this against flex_extract, but am not 100% sure if this is correct.

I'm using flex_extract to download ERA5 data. I'm using the release-10 branch from git (up to date as of today).

When running FLEXPART, I get errors like this when the model initializes:

 parId        3063 isec1(6)         143
 parId        3066 isec1(6)         141
 ***ERROR: undefined GRiB2 message found!         192         128         186           1
 parId         186 isec1(6)          -1
 ***ERROR: undefined GRiB2 message found!         192         128         187           1
 parId         187 isec1(6)          -1
 ***ERROR: undefined GRiB2 message found!         192         128         188           1
 parId         188 isec1(6)          -1
 ***ERROR: undefined GRiB2 message found!           0           0          17           1
 parId         235 isec1(6)          -1
 ***ERROR: undefined GRiB2 message found!         192         128         139         106
 parId         139 isec1(6)          -1
 ***ERROR: undefined GRiB2 message found!         192         128          39         106
 parId          39 isec1(6)          -1
 ***ERROR: undefined GRiB2 message found!         192         128          27           1
 parId          27 isec1(6)          -1
 ***ERROR: undefined GRiB2 message found!         192         128          28           1
 parId          28 isec1(6)          -1
 ***ERROR: undefined GRiB2 message found!         192         128         244           1
 parId         244 isec1(6)          -1

and warnings like this in every time step:

 ***WARNING: undefined GRiB2 message found!         192         128         186           1
 parId         186 isec1(6)          -1
 ***WARNING: undefined GRiB2 message found!         192         128         187           1
 parId         187 isec1(6)          -1
 ***WARNING: undefined GRiB2 message found!         192         128         188           1
 parId         188 isec1(6)          -1
 ***WARNING: undefined GRiB2 message found!           0           0          17           1
 parId         235 isec1(6)          -1
 ***WARNING: undefined GRiB2 message found!         192         128         139         106
 parId         139 isec1(6)          -1
 ***WARNING: undefined GRiB2 message found!         192         128          39         106
 parId          39 isec1(6)          -1
 ***WARNING: undefined GRiB2 message found!         192         128          27           1
 parId          27 isec1(6)          -1
 ***WARNING: undefined GRiB2 message found!         192         128          28           1
 parId          28 isec1(6)          -1
 ***WARNING: undefined GRiB2 message found!         192         128         244           1

The FLEXPART run seems to complete without problems.

This is confusing for the user, because the ERROR suggest that something is wrong.

Some of the paramers that FLEXPART complains about are defined in CONTROL_EA5.highres as ADDPAR:

ADDPAR /186/187/188/235/139/39

The others are parameters 17 (whatever that might be), 27, 28 (cvl and cvh), and 244 (fsr).

If FLEXPART doesn't need these fields, then I suggest that flex_extract doesn't download them by default. New users will just try CONTROL files that are in the repository, and will get confused by all the warnings.

If FLEXPART does need these fields, then there should be something done in FLEXPART in order to not issue these warnings.

Change History (12)

comment:1 Changed 5 years ago by pesei

There are two issues here:

  1. Is FLEXPART properly recognising input fields? (This is likely a FLEXPART and not a flex_extract issue.)
  1. The Warnings issued by FLEPXART. Note that they are just warnings, not error messages. However, I think they should be downgraded to Information:, as this does not normally indicate a problem. So far, Information: is not being used in FLEXPART, but probably we should do so.

comment:2 Changed 5 years ago by ahilboll

As for 1., I cannot find any mention of any of these fields in readwinds_ecmwf.f90. Are they actually used by FLEXPART for anything?

comment:3 Changed 5 years ago by anphi

I can tell, that the ERROR at initialization time comes from the gridcheck.f which is used only one time to do some check on the GRIB files at the beginnning. The WARNING comes from the readwind_ecmfw.f at every time step. So, the meaning is the same! Nevertheless, I agree with Petra that this should definitely be changed into INFORMATION !

Another thing is, that a parameter Id of 17 should not exist. That's strange and we have to look into that. When I read the ERROR message there is a hint of parId 235, which is the skin temperature. Maybe somethings going wrong here. I'll check that.

Parameter FSR (244) substitutes the normal SR (173) in ERA5 and CERA data sets because they don't have an SR. FLEXPART should be able to read this paramter.

The extra parameters 27 and 28 can be deleted from the CONTROL files. They are already hard coded as mandatory. I have no idea why FLEXPART is not able to read them. Unless, this is an old status and FLEXPART don't use them anymore. We need a statement from other developers here!

Parameter 39 is the volumetric soil water layer 1. I don't know why it is retrieved. It seems that it will not be used in FLEXPART and I will delete it in all CONTROL files. Same for parameter 139.

Parameters 186 - 188 are cloud layers. I guess this was used for testing or so. Since FLEXPART does not use them, I will also delete them from the ADDPAR list in the CONTROL files.

comment:4 follow-up: Changed 5 years ago by ahilboll

Parameter FSR (244) substitutes the normal SR (173) in ERA5 and CERA data sets because they don't have an SR. FLEXPART should be able to read this paramter.

Does that mean I shouldn't use ERA5 with FLEXPART at the moment? I cannot really judge the influence of this.

I did some preliminary runs with ERA5 and compared to ERA-Interim, and they generally looked pretty good.

comment:5 in reply to: ↑ 4 Changed 5 years ago by pesei

Replying to ahilboll:

Parameter FSR (244) substitutes the normal SR (173) in ERA5 and CERA data sets because they don't have an SR. FLEXPART should be able to read this paramter.

What is the long name of the parameter?

comment:6 Changed 5 years ago by ahilboll

What is the long name of the parameter?

SR (173) is surface roughness, FSR (244) is forecast surface roughness

comment:7 Changed 5 years ago by pesei

Surface roughness is used in FLEXPART in the context of dry deposition. Currently, it is a function of landuse and tabulated values are being used. Therefore it is not read in and the warnings can be safely ignored.

Probably it is extracted by flex_extract to prepare possible use in the future.

comment:8 Changed 5 years ago by anphi

  • Owner set to anphi
  • Status changed from new to accepted

comment:9 Changed 3 years ago by pesei

  1. to be clarified whether parameters 17, 27, 28, 173 and 244 should be kept.
  1. FLEXPART gridcheck.f90 should not issue ERROR messages for extraneous fields (just WARNINGS).

comment:10 Changed 2 years ago by pesei

  • Cc petra.seibert@… added
  • Component changed from flex_extract to FP input data
  • Milestone set to FLEXPART 10

comment:11 Changed 2 years ago by pesei

  • Version changed from flex_extract_v7.0.4 to FLEXPART 10.0

comment:12 Changed 12 months ago by hcpxvi

It is worth noting that the behaviour noted in this ticket continues unchanged in the current dev versions of FLEXPART and flex_extract (checked out from git over the last few days; today is 2023-05-08).

For now, I am going to note the remarks in this thread and assume that the errors and warnings may be ignored (especially as I am working on something in the stratosphere, which will not be much affected by surface fluxes and skin temperatures). However, it would be nice to know whether there is a way to suppress the messages, and even nicer if future versions of FLEXPART only emitted the messages when they were needed. If they have to be emitted, then a change from "Warning" and "Error" to "Information" strikes me as a good idea.

Note: See TracTickets for help on using tickets.
hosted by ZAMG