Python(numpy):垂向涡度计算(二维速度,附完整代码)
最近写代码的时候遇到了需要用速度计算涡度的问题,在网上搜了一下,发现不知道为什么,能找到的代码源都无比复杂,难道是简单到大家都不屑于写了吗hhh
涉及到处理数据,如果你的数据来源是nc文件,并使用xarray模块读取的话,推荐使用metpy.calc.vorticity()函数,具体使用方法参见链接中的说明。但如果你用的是netCDF4.Dataset语句读nc文件,建议就不要用metpy库了,数据格式的转换会把你逼疯的(别问我怎么知道的)。
因为我是水平速度计算垂直涡度,也就是速度是二维的,因此实际上的计算方法非常简单,直接上代码:
import numpy as np
'''
计算公式:dv/dx-du/dy
U、V是二维的速度矩阵,U向东为正,V向北为正
'''
q = np.gradient(V,axis=0)+np.gradient(U,axis=1)
没想到吧,其实一行代码就能搞定。但要注意,这里默认U和V的分辨率为1了,如果使用的数据分辨率不同的话记得除以距离。
附np.gradient()的作用示例如下,如果没用过的uu就不用搜索啦:
np.gradient([1,2,4,7],axis=0)
'''
array([1. , 1.5, 2.5, 3. ])
'''np.gradient([[1,2,4,7],[2,3,5,8],[3,4,50,100]],axis=1)
'''
array([[ 1. , 1.5, 2.5, 3. ],[ 1. , 1.5, 2.5, 3. ],[ 1. , 23.5, 48. , 50. ]])
'''
这个函数的返回矩阵大小和输入矩阵一样,因此比手动求梯度要方便得多。中间使用三点差分,边缘使用向前或向后差分。
Python(numpy):垂向涡度计算(二维速度,附完整代码)相关推荐
- 利用OpenCV、Python和Ubidots构建行人计数器程序(附完整代码)
作者 | Jose Garcia 译者 | 吴振东 校对 | 张一豪.林亦霖,编辑 | 于腾凯 来源 | 数据派(ID:datapi) 导读:本文将利用OpenCV,Python和Ubidots来编写 ...
- 基于MATLAB计算MIMO信道容量(附完整代码与分析)
目录 一.介绍 二. 代码 三. 运行结果及分析 3.1 MIMO信道容量:固定发射天线数为4 3.2 MIMO信道容量:固定接收天线数为4 3.3 AWGN信道与瑞利信道容量 四. 总结 一.介绍 ...
- 【Python】发送微信公众号消息(附完整代码)一一CSDN21天学习挑战赛
目录 一.微信公众号注册 注册测试号 获取账号信息 新增消息模板 二.代码实现 新建access_token.py文件 新建send_message.py文件 新建main.py文件 运行main ...
- 使用 Python 实现一个简单的智能聊天机器人(附完整代码)
文章目录 简要说明 总体的思路 需要准备的环境 接收用户的语音输入,并将其存为音频文件 技术提升 调用百度AI接口, 识别音频文件并以文本信息返回 请求智能机器人, 发送文本信息, 返回智能聊天内容 ...
- 基于Python实现的新闻网络爬虫程序(附完整代码)
1.2 概要 本文档针对以下三个方面进行了详细说明: 架构说明,对新闻网络爬虫的核心架构进行描述,供开发人员在开发或升级应用时参考 部署说明,对新闻网络爬虫的部署步骤进行描述,供部署人员进行应用部署或 ...
- 欢迎随时回家——python制作一个火车票抢票版本(附完整代码,仅供学习参考)
嗨害大家好鸭~我是小熊猫
- python代码手机壁纸_Python制作微信好友背景墙教程(附完整代码)
引言 前段时间,微信朋友圈开始出现了一种晒照片新形式,微信好友墙,即在一张大图片中展示出自己的所有微信好友的头像. 效果如下图,出于隐私考虑,这里作了模糊处理. 是不是很炫,而且这还是独一无二的,毕竟 ...
- python做直方图-python OpenCV学习笔记实现二维直方图
本文介绍了python OpenCV学习笔记实现二维直方图,分享给大家,具体如下: 官方文档 – https://docs.opencv.org/3.4.0/dd/d0d/tutorial_py_2d ...
- 梯度下降计实例计算(二维)
梯度下降计实例计算(二维) 文章目录 内容简介 示例说明 绘制曲线 进一步讨论 参考资料 内容简介 梯度下降是在机器学习中重要的计算内容.本文就一个具体的示例,展示如何在梯度下降中. 示例说明 设损失 ...
- 用Numpy和Pandas分析二维数据笔记
用Numpy和Pandas分析二维数据 上节课,我们利用numpy和pandas分析了一维数据.在这节课中,你将学到这两种库的更多特性.并用它们来分析 二维数据,这节课后,你将能够使用pandas重新 ...
最新文章
- 【spring】spring基于xml的声明式事务控制
- java中的注解(二)
- ORACLE数据库之PL/SQL触发器、rownum、动态SQL、数据库之视图与索引
- Ubuntu 8.10今起正式退休
- Crossing Rivers UVA - 12230 概率与期望
- 张迈机器人_财会类专业建设改革千人高峰论坛圆满召开!
- ssh(Spring+Spring mvc+hibernate)——hibernate.cfg.xml
- Linux - xshell上传文件报错乱码
- Understanding the Bias-Variance Tradeoff
- python有趣的代码-趣味至上主义:这5个有趣的Python库带你花式编码
- Web服务及http协议_学习笔记
- 数据库物理结构设计-建索引原则
- Qt界面程序的可视化设计
- BasicVSR++: Improving Video Super-Resolution with Enhanced Propagation and Alignment阅读笔记
- 双机热备的概念双机热备的概念
- 电商打折套路分析 —— Python数据分析练习
- Java总结之基础篇
- 基于传统方法的单目深度估计
- Android10的GPU呈现模式分析在哪?
- layui框架学习(1:布局)
热门文章
- 三菱FX1N PLC 485与三菱变频器modbus通讯可直接拿来实用了,三菱FX PLC与三菱变频器通讯
- 第七届湖湘杯网络安全大赛 - 初赛writeup
- 单元测试系列[v1.0.0][SpringBootTest]
- 使用腾讯云函数每天签到有道云笔记、贴吧、爱奇艺等平台
- 第五十六章 SQL命令 INSERT OR UPDATE
- redis批处理操作:基于hiredis实现
- vue封装带天数的倒计时
- 于丹 论语心得讲稿_心灵之道
- 日志文件系统及性能分析
- 小象学院_Python数据分析_第三讲_Pandas