繁体   English   中英

将bounds变量添加到netcdf文件

[英]Adding bounds variable to netcdf file

我想将纬度范围添加到现有的netCDF文件中。 有关边界的定义,请参见http://www.cgd.ucar.edu/cms/eaton/netcdf/CF-20010629.htm#bnds

是否有可以自动添加边界的命令? 我对使用nco或netCDF4或cdms工具包的任何解决方案持开放态度。 但是,我希望它是一个后处理解决方案。

将边界添加到现有坐标,如下所示:

ncap2 -O -s 'crd@bounds="crd_bnds";defdim("bnds",2);crd_bnds[$crd,$bnds]=0.0;*crd_dff=0.5*(crd(1)-crd(0));crd_bnds(:,0)=crd-crd_dff;crd_bnds(:,1)=crd+crd_dff;' in.nc out.nc

这产生了

zender@aerosol:~$ ncks --cdl -v crd ~/foo2.nc
netcdf foo2 {
  dimensions:
    bnds = 2 ;
    crd = 10 ;

  variables:
    int crd(crd) ;
      crd:bounds = "crd_bnds" ;

    double crd_bnds(crd,bnds) ;

  data:
    crd = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ;

    crd_bnds = -0.5, 0.5, 0.5, 1.5, 1.5, 2.5, 2.5, 3.5, 3.5, 4.5, 4.5, 5.5, 5.5, 6.5, 6.5, 7.5, 7.5, 8.5, 8.5, 9.5 ;

} // group /

这里坐标名为“crd”,边界名为“crd_bnds”。 当坐标改变固定值(如上所述)时,边界值的公式可以很简单,或者更多涉及可变间距(读者练习)。 我们将添加一个ncap2函数,以便在不久的将来自动执行此操作。

CZ

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM