Re: [idvusers] BUFR support in IDV

HI all:

Apparently the BUFR reading is ok, and it reads ok into the FeatureType adapters, buts its not clear if IDV is using the new adapter.

Reinoud: We can read well-formed BUFR messages into the CDM, but figuring out what they mean in order to get them geolocated and visualized in the IDV is a hard problem.

BUFR is a particularly complex format where providers have too many choices on how to do the encoding, with little or no guidance or best practices AFAICT. The original example you sent (MSSARG_00217064.bufr) is good. The latest two are, um, difficult, and the possibility of us being able to understand arbitrary BUFR messages like this is not good. Perhaps if you could track down any documentation on that "template", we will see what we can do.

John

On 11/9/2010 8:36 AM, Don Murray wrote:
Hi Reinoud-

Thanks for trying this out. The BUFR support in the IDV has not really been tested. It relies on the netCDF-Java package to do the reading, so by default, some things "just work", while others (as you found) don't.

Please submit this to support-idv@xxxxxxxxxxxxxxxx and the developers can take a look. It'll probably be passed on to the netCDF-Java support people for action.

Don

On 11/9/10 2:16 AM, Reinoud Bokhorst wrote:
Hi Don,
After a short break I have started looking into this again. Attached two
surface SYNOP files in BUFR that load fine in toolsUI 4.2 but not in IDV
2.9u2.

I can open the files in IDV as "Netcdf /Gempak point data files" but
when I try to view the data I get the following error:


ucar.ma2.ForbiddenConversionException
at ucar.ma2.ArrayStructure.getFloat(ArrayStructure.java:1022)
at ucar.ma2.StructureDataW.getScalarFloat(StructureDataW.java:139)
at ucar.ma2.StructureDataW.convertScalarFloat(StructureDataW.java:96)
at
ucar.unidata.data.point.PointObFactory.makePointObs(PointObFactory.java:1910)

at
ucar.unidata.data.point.NetcdfPointDataSource.makeObs(NetcdfPointDataSource.java:360)

at
ucar.unidata.data.point.NetcdfPointDataSource.makeObs(NetcdfPointDataSource.java:322)

at
ucar.unidata.data.point.PointDataSource.getDataInner(PointDataSource.java:1266)

at ucar.unidata.data.DataSourceImpl.getData(DataSourceImpl.java:2238)
at ucar.unidata.data.DirectDataChoice.getData(DirectDataChoice.java:332)
at ucar.unidata.data.DataChoice.getData(DataChoice.java:637)
at ucar.unidata.data.DataInstance.getData(DataInstance.java:243)
at ucar.unidata.data.DataInstance.getData(DataInstance.java:207)
at ucar.unidata.data.DataInstance.dataOk(DataInstance.java:295)
at
ucar.unidata.data.point.PointDataInstance.init(PointDataInstance.java:83)
at
ucar.unidata.data.point.PointDataInstance.<init>(PointDataInstance.java:69)
at
ucar.unidata.idv.control.ObsDisplayControl.doMakeDataInstance(ObsDisplayControl.java:795)

at
ucar.unidata.idv.control.DisplayControlImpl.initializeDataInstance(DisplayControlImpl.java:3084)

at
ucar.unidata.idv.control.DisplayControlImpl.setData(DisplayControlImpl.java:3066)

at
ucar.unidata.idv.control.StationModelControl.setData(StationModelControl.java:1459)

at
ucar.unidata.idv.control.StationModelControl.init(StationModelControl.java:463)

at
ucar.unidata.idv.control.DisplayControlImpl.init(DisplayControlImpl.java:1333)

at
ucar.unidata.idv.control.DisplayControlImpl.init(DisplayControlImpl.java:1034)

at
ucar.unidata.idv.ControlDescriptor.initControl(ControlDescriptor.java:986)
at ucar.unidata.idv.ControlDescriptor$1.run(ControlDescriptor.java:911)
at ucar.unidata.util.Misc$3.run(Misc.java:1090)


Regards,
Reinoud



Don Murray wrote:
Hi Reinoud-

On 10/19/10 7:43 AM, Reinoud Bokhorst wrote:
Thank you for your fast response and fix.

No problem. It was my bug, I figured I should fix it and I had a few
spare cycles. ;-)

This particular example now works. But when I try loading other samples
from GTS (Global Telecom System) data it doesn't.. I am a bit confused
now about the level of support of BUFR in IDV (after your fix that made
it work) but as I understand it, it is only partly because the CDM
supports it (correct me if I am wrong ;). Do you want more sample data
at this point? Or rather wait until BUFR is officially going to be
supported?

Can you load all these other files in the ToolsUI? If they conform to
what the CDM thinks are point or station obs, then they should be
readable in the IDV. Although, the CDM implementation might not be
correct. The IDV won't be able to handle soundings (profiles) or
trajectories which the CDM might handle. Sample files would help.

HP, yes I'll probably send a note to the User's Committee, although by
no means I am an expert on this field.

Cheers,

Don







  • 2010 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the idvusers archives: