我想聚合远程THREDDS目录的特定目录内的所有文件。这些是grib2
文件,用于nam预测。 This是每个月的目录的主要列表。这是我的ncml
文件,用于汇总this catalog个文件:
<?xml version="1.0" encoding="UTF-8"?>
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2" >
<aggregation dimName="time" type="joinExisting">
<scan location="http://www.ncei.noaa.gov/thredds/dodsC/nam218/201807/20180723/" regExp="^.*\.grb2$" subdirs="false"/>
<dimension name="time" orgName="t" />
</aggregation>
</netcdf>
此外,我最感兴趣的是在文件u-component_of_wind_height_above_ground
和v-component_of_wind_height_above_ground
中包含这两个变量。
我不确定远程目录中的上述汇总是否正确。我从上面的ncml文件中收到此错误:
There are no datasets in the aggregation DatasetCollectionManager{ collectionName='http://www.ncei.noaa.gov/thredds/dodsC/nam218/201807/20180723/^.*\.grb2$' recheck=null dir=http://www.ncei.noaa.gov/thredds/dodsC/nam218/201807/20180723/ filter=^.*\.grb2$
该ncml
文件应如何写入?
谢谢。
答案 0 :(得分:2)
您不能对远程URL进行定位,因此您需要为聚合提供这些OPeNDAP端点的列表,例如:
<dataset name="Nam218" urlPath="nam218">
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
<aggregation dimName="time" type="joinExisting">
<netcdf location="http://www.ncei.noaa.gov/thredds/dodsC/nam218/201807/20180723/<file01>.grb2"/>
<netcdf location="http://www.ncei.noaa.gov/thredds/dodsC/nam218/201807/20180723/<file02>.grb2"/>
<netcdf location="http://www.ncei.noaa.gov/thredds/dodsC/nam218/201807/20180723/<file03>.grb2"/>
</aggregation>
</netcdf>
</dataset>
答案 1 :(得分:0)
您可以编写一个简单的程序(我使用c ++)在命令提示符下使用。 (我使用Windows。)它将启动BAT文件,该文件将启动wget并下载最新的THREDDS目录,然后将其保存为纯文本格式,然后c ++程序将整个文件加载到一个字符串中,在该字符串中我对其进行解析并使用数据。