3.
\ begingroup美元

我有一个二维纬度-时区风netCDF数据集(如这是ERA-Interim的小样本),从中我想找到每个时间步的纬向风的所有局部极大值作为纬度的函数。输出应该是每个时间步骤的纬度列表(可能为空)。

如果可能的话,我更喜欢使用python, cdo和/或nco。例如,我可以在python xarray中使用导数函数并指定纬度维度,然后根据二阶导数的条件找到这个新函数的根,但我还没有遇到过一个函数可以沿着特定的维度找到2-D数组的零/根。有没有更有效、更可取的方法来完成这项任务?

请让我知道这是否不适合地球科学堆栈交换,如果是这样的话,我应该在哪里张贴问题。江南电子竞技平台江南体育网页版

\ endgroup美元
3.
  • 1
    \ begingroup美元 如果使用xarray,则可以直接访问数组的值,并且可以应用预先存在的局部极值查找函数,例如docs.scipy.org/doc/scipy/reference/generated/..。docs.scipy.org/doc/scipy/reference/generated/..。(允许您设置连续极小值/极大值之间的最小距离)。那会有用吗? \ endgroup美元
    - - - - - -埃里克
    2022年1月6日4:44
  • \ begingroup美元 @埃里克,谢谢,是的,scipy.signal.find_peaks似乎特别灵活和有用。我希望有一些东西可以估计网格位置之间的最大值/最小值的位置,但这并不是严格必要的。你能建议一种有效的申请方法吗scipy.signal.find_peaks除以(10^5)的时间步长?或者这是一个单独的问题? \ endgroup美元
    - - - - - -climatestudent
    2022年1月6日8:57
  • 1
    \ begingroup美元 嗯,不,我怀疑(但把这个留给其他评论者),这些关于局部极值的统计类型在计算上是昂贵的;算法必须检查每个样本,可能是多次。任何加速可能只能最大限度地使用您的计算资源来实现,例如:下面的多处理方法docs.python.org/3/library/multiprocessing.html至少可以确保并行处理8个(或更多)NetCDF文件。 \ endgroup美元
    - - - - - -埃里克
    2022年1月6日14:13

0

你的答案

点击“张贴您的答案”,即表示您同意我们的服务条款隐私政策饼干的政策

浏览带标签的其他问题问自己的问题