| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> FAO Penman-Monteith公式(彭曼公式)计算参考蒸散量ET0的Python代码 -> 正文阅读 |
|
[Python知识库]FAO Penman-Monteith公式(彭曼公式)计算参考蒸散量ET0的Python代码 |
????????1998年,联合国粮农组织(FAO)正式提出用Penman-Monteith公式作为计算ET0的唯一标准方法。作者最近做模型需要计算这个参数,用Python写了计算的相关代码。 ????????根据FAO推荐的Penman-Monteith方法,ET0计算公式如下: ????????以日为步长,则式中,ET0为参考蒸散量,mm/day;Rn为作物表面上的净辐射,MJ/(m2 day);G为土壤热通量,MJ/(m2 day);T为2米高处日平均气温,℃;u2为2米高处的风速,m/s;es为饱合水汽压,kPa;ea为实际水汽压,kPa;es-ea为饱和水汽压差,kPa;?为饱和水汽压曲线的斜率;r为湿度计常数,kPa/℃。
(1)土壤热通量(G)????????土壤热通量可用复杂的模型描述。因为土壤热通量相对于Rn来说很小,尤其是在表面被植物覆盖和计算时间段是24小时或更长的时候。土壤温度随大气温度变化,对于长时段步长,计算G可用简单公式: ? ????????式中:G为土壤热通量,MJ/(m2 day);Cs为土壤热容量,MJ/(m3 ℃);Ti为第i时刻大气温度,℃;Ti-1为第i-1时刻大气温度,℃;?t为时间步长,day;?Z为有效土壤深度,m。因为参考作物表面之下以1天或10天为时段的土壤热通量值相对小,因此它可以忽略,所以有Gday≈0。 (2)2米高处日平均气温(T)????????在温度变化对气象参数值影响很小的情况下,如果没有日平均气温观测值,日平均日气温(Tmean)按FAO Penman-Monteith公式计算饱和水汽压关系曲线(?)的斜率和平均空气密度的影响(Pa)。为了标准化,以24小时为时段的T被定义为日最高温度(Tmax)和日最低温度(Tmin)的均值,而不是以小时观测温度的平均值,即: (3)饱和水汽压(es)????????用平均气温代替日最高和最低气温,会使饱和水汽压估计值偏低,相应的水汽压差(表示大气蒸发能力的参数)也变小,也会出现低估参照腾发的情况。因此,平均饱和水汽压必须用与日最高和最低气温对应的饱和水汽压之间的平均值来计算。由于饱和水汽压与空气温度有关,它可用空气温度计算。关系式为: ?
????????式中,e0(T)为空气温度T时的水汽压,kPa。因为上式是非线性函数,必须以日平均最高和最低气温的平均值来计算:???????? ?(4)饱和水汽压曲线的斜率(?) ? (5)露点温度计算实际水汽压(ea)????????露点温度是空气冷却使空气内的水汽含量达到饱和时的温度。实际水汽压(ea)在露点温度时是饱和水汽压。 (6)湿度计常数(r)????????式中,r为湿度计常数,kPa/℃;p为大气压,kPa;λ为汽化潜热,2.45MJ/kg;Cp为常压下的比热,1.013×10-3MJ/(kg ℃);ε为水蒸汽分子量与干燥空气分子量的比,其值为0.662。? 净辐射缺测时的公式计算? ? ? ? 大部分情况下没有净辐射的观测资料,根据FAO推荐的Penman-Monteith方法,净辐射可由以下公式计算。其中,Rn是进来的净短波辐射Rns与出去的净长波辐射RnL的差值: ????????净短波辐射Rns是由射入进来和反射出去的太阳辐射的平衡关系得出的:? ????????其中,α为冠层反射系数,以草为假想作物时取值0.23,无量纲;Rs为天文辐射,MJ /m2 day。Stefan-Boltzmann定律定量揭示了长波能量发射的速率与表面的绝对温度的4次方成比例。然而,由于物质的吸收和天空的向下辐射,从地球表面上离去的净能量通量小于由Stefan-Boltzmann定律给出的发射能通量。水蒸气,云团,二氧化碳和尘埃是长波辐射的吸收者和发射者,当估计从地球表面的净输出通量时我们应该知道它们的浓度。由于湿度和云团起着很重要的作用,因此在评价长波辐射的净输出通量时,对Stefan-Boltzmann定律中用这两个因素作校正。而假定其它长波辐射的吸收者浓度是常数,则有: ? ????????其中,RnL为净长波辐射,MJ /m2 day;σ为Stefan-Boltzmann常数,取4.903*10-9 MJ/K4 m2 day;Tmax,k为24小时内最高绝对温度值,K;Tmin,k为24小时内最低绝对温度值,K;ea为实际水汽压,kPa;Rs为太阳总辐射,MJ /m2 day;Rso为晴空辐射,MJ /m2 day。在没有修正值情况下,晴空辐射可由以下公式计算: ? ????????其中,Z为测站海拔,m;Ra为天文辐射,MJ /m2 day。? ? ? ? ? 下面是计算各种辐射的代码,有部分刚接触python时候写的,方法比较蠢hh,可以在改进下。
? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 17:30:03- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |