2013-03-05 4 views
2

У нас есть часовой выход из модели океана, хранящейся в серии файлов netcdf, по одному на каждый месяц.Использование ncml для объединения файлов netcdf?

Мы сохраняем первый и последний час месяца в каждом файле. Мы хотели бы объединить эти файлы с помощью NcML, но мы не хотим получать повторяющиеся значения времени в агрегации.

Есть ли способ сделать это?

ответ

2

В NCML вы можете использовать NCOORDS, чтобы указать точное количество записей, которые вы хотите использовать. Поэтому, чтобы избежать дублирования значений времени, вы можете указать NCOORDS за каждый месяц меньше, чем у вас в настоящее время. Так в течение года не високосный, ваша агрегация может быть определена следующим образом:

<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2"> 
    <aggregation dimName="time" type="joinExisting"> 
     <netcdf location="/Data/wave/2010/Jan/gom01_0001.nc" ncoords="744"/> 
     <netcdf location="/Data/wave/2010/Feb/gom01_0001.nc" ncoords="672"/> 
     <netcdf location="/Data/wave/2010/Mar/gom01_0001.nc" ncoords="744"/> 
     <netcdf location="/Data/wave/2010/Apr/gom01_0001.nc" ncoords="720"/> 
     <netcdf location="/Data/wave/2010/May/gom01_0001.nc" ncoords="744"/> 
     <netcdf location="/Data/wave/2010/Jun/gom01_0001.nc" ncoords="720"/> 
     <netcdf location="/Data/wave/2010/Jul/gom01_0001.nc" ncoords="744"/>  
     <netcdf location="/Data/wave/2010/Aug/gom01_0001.nc" ncoords="744"/>  
     <netcdf location="/Data/wave/2010/Sep/gom01_0001.nc" ncoords="720"/> 
     <netcdf location="/Data/wave/2010/Oct/gom01_0001.nc" ncoords="744"/> 
     <netcdf location="/Data/wave/2010/Nov/gom01_0001.nc" ncoords="720"/> 
     <netcdf location="/Data/wave/2010/Dec/gom01_0001.nc" ncoords="744"/> 
    </aggregation>  
</netcdf> 

В високосном году, необходимо указать ncoords="696" за февраль.