Using PointStat Without FSCT_VAR1_LEVELS #1502
Replies: 4 comments 5 replies
-
CORRECTION: I previously provided information to set the file_type for GridStat instead of PointStat. Updates were made inline. Hi @tonsager , what is the file type of the forecast data you are trying to read? If the file type is NetCDF and the dimensions of the variable are lat,lon, then the FCST_VAR1_LEVELS value you are using is correct. However, the tool cannot properly discern that the file is a NetCDF file. If the file is a CF compliant NetCDF file, you can specify this using POINT_STAT_MET_CONFIG_OVERRIDES (using METplus 4.0.0):
If you are using METplus 4.1.0 (which should be released next week), then you can set:
Here is an excerpt from the MET User's Guide that contains the possible values to set for file_type:
If it is GRIB file, try setting This section of the MET User's Guide contains the more information on how to define which fields to read including a list of settings that can be used to extract records from GRIB files. We typically recommend using the MET plot_data_plane tool to plot a field as a quick test to see if the data can be read by the other MET tools. The field info settings used with this tool will be the same to read that data by other tools. If you continue to have issues reading your data, you can send us the file and we can take a closer look. If the file is small enough you can attach it directory to this discussion. If it is a large file, you can upload it to our FTP site. Instructions for the latter are pinned to the METplus GitHub Discussions home page. |
Beta Was this translation helpful? Give feedback.
-
Hi George:
Thanks for getting back to me so quickly. The forecast data is input using
python embedding. I'm reading a non-compliant netCDF file and passing in
the data in a met_data array. It is not a grib file. I'm able to
successfully use GridStat using this forecast data, but I'm having trouble
specifying the levels in PointStat.
When I add this command: GRID_STAT_FCST_FILE_TYPE = PYTHON_NUMPY, I'm able
to specify the FCST levels: FCST_VAR1_LEVELS = "(*,*)"
This command also seems to work: FCST_GRID_STAT_FILE_TYPE = PYTHON_NUMPY -
Are they both correct?
But I'm not sure how to specify the levels with the OBS data. The OBS data
are in a netCDF file I created using ascii2nc.
Thank you!
Terry
…On Wed, Mar 9, 2022 at 8:54 AM George McCabe ***@***.***> wrote:
Hi @tonsager <https://github.com/tonsager> , what is the file type of the
forecast data you are trying to read?
If the file type is NetCDF and the dimensions of the variable are lat,lon,
then the FCST_VAR1_LEVELS value you are using is correct. However, the tool
cannot properly discern that the file is a NetCDF file. If the file is a CF
compliant NetCDF file, you can specify this using GRID_STAT_FCST_FILE_TYPE
(using METplus 4.0.0 or higher):
GRID_STAT_FCST_FILE_TYPE = NETCDF_NCCF
Here is an excerpt from the MET User's Guide that contains the possible
values to set for file_type:
file_type = GRIB1; GRIB version 1
file_type = GRIB2; GRIB version 2
file_type = NETCDF_MET; NetCDF created by another MET tool
file_type = NETCDF_PINT; NetCDF created by running the p_interp
or wrf_interp utility on WRF output.
May be used to read unstaggered raw WRF
NetCDF output at the surface or a
single model level.
file_type = NETCDF_NCCF; NetCDF following the Climate Forecast
(CF) convention.
file_type = PYTHON_NUMPY; Run a Python script to load data into
a NumPy array.
file_type = PYTHON_XARRAY; Run a Python script to load data into
an xarray object.
If it is GRIB file, try setting FCST_VAR1_LEVELS = L0. L is the level
type identifier for a generic level type, so L0 is typically used when
there is a single record.
This section of the MET User's Guide
<https://met.readthedocs.io/en/develop/Users_Guide/config_options.html#fcst>
contains the more information on how to define which fields to read
including a list of settings that can be used to extract records from GRIB
files.
We typically recommend using the MET plot_data_plane tool to plot a field
as a quick test to see if the data can be read by the other MET tools. The
field info settings used with this tool will be the same to read that data
by other tools.
If you continue to have issues reading your data, you can send us the file
and we can take a closer look. If the file is small enough you can attach
it directory to this discussion. If it is a large file, you can upload it
to our FTP site. Instructions for the latter are pinned to the METplus
GitHub Discussions home page.
—
Reply to this email directly, view it on GitHub
<#1502 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ASABHXTKWTOOBT7GBJXEGSLU7DCT5ANCNFSM5QJ2YF7Q>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
--
-------------------------------------------------------------
Terrance Onsager
NOAA/NWS/Space Weather Prediction Center
325 Broadway
Boulder, CO USA 80305
1-303-497-5713
-------------------------------------------------------------
*Safeguarding society with actionable space weather information*
|
Beta Was this translation helpful? Give feedback.
-
Hi George:
In the manual, it describes the "ascii2nc ASCII Point Observation Format" I
used to create my OBS file. It describes the "Level" as the "Pressure level
in hPa or accumulation interval in hours for the observation value", and it
is a numeric value. In my PointStat config file, it takes the OBS Level as
a string. How are these values reconciled, and how do I distinguish if the
Level field I use in ascii2nc is "accumulated interval in hours for the
observations value" or the pressure level?
Thank you,
Terry
|
Beta Was this translation helpful? Give feedback.
-
Hi John:
That was it. Thank you!!!
Terry
|
Beta Was this translation helpful? Give feedback.
-
I am trying to compare gridded FCST model output with OBS on a lat-lon grid, but my data do not have any levels. Is it possible to bypass specifying FCST_VAR1_LEVELS and OBS_VAR1_LEVELS?
If I use FCST_VAR1_LEVELS = "(,)", I get this error:
ERROR : VarInfo::set_level_info_grib() - failed to parse level string '(,)'
I'm not sure why the code thinks I'm using grib.
If I put in a dummy value ('P750'), PointStat runs to completion, but the matched pairs are all rejected:
DEBUG 2: Rejected: level mismatch = 87
Is it possible to use PointStat if the data do not contain levels?
Thank you
Beta Was this translation helpful? Give feedback.
All reactions