简单计算后,R另存为NetCDF文件

时间:2018-12-03 09:18:19

标签: r netcdf

我想做(显然)简单的事情,但是还没有找到正确的方法:

我在网格上读取了一个netcdf文件(来自ERA5重新分析的风速)。 由此,我使用风速来计算风量系数(使用给定的功率曲线)。 然后,我想编写一个新的netcdf文件,其结构与输入文件完全相同,只是用新变量(风量系数)代替输入风速。

是否有一种简单/快速的方法来避免使用ncvar_def和ncdim_def重新定义所有暗淡,vars ...

提前感谢您的答复!

1 个答案:

答案 0 :(得分:0)

在R中编写netcdf文件并不太复杂,这里有一个很好的在线示例:

http://geog.uoregon.edu/GeogR/topics/netCDF-write-ncdf4.html

您可以从输入文件复制尺寸。

但是,如果您的风能曲线只是一个简单的解析表达式,则可以使用气候数据运算符(cdo)从bash / linux中的命令行在一行中执行此任务。

例如,如果文件中有两个变量10u和10v(我没有确切记得重新分析的名称),则可以创建一个新变量WCF = SQRT(U 2 + V 2)通过以下方式

cdo expr,'wcf=sqrt(10u**2+10v**2)' input.nc output.nc 

在此处查看示例:

https://code.mpimet.mpg.de/boards/53/topics/1622

因此,如果您的窗口幂函数是一个解析表达式,则可以完全不使用R或担心尺寸等的方式定义它,新文件将添加一个变量wcf。然后,您可能应该使用NCO更改元数据(单位等),以确保它们合适。