天气学诊断实习一 露点和凝结抬升高度的计算

一、实习内容

  已知南京站某一时次的相对湿度(92.8%)、气温(14.1ºC)、气压(1017.4, hPa)及站点高度(35.2m),请利用迭代法求出:
(1) 该站的露点温度
(2) 凝结高度和凝结温度

二、算法原理

露点温度计算:
在这里插入图片描述凝结高度,凝结温度计算:
在这里插入图片描述![在这里插入图片描述](https://img-blog.csdnimg.cn/9ec11368b40b478b9d6dca89a522a405.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAbWdsNjY2,size_15,color_FFFFFF,t_70,g_se,x_16

三、代码实现

import math 

##露点温度函数
def td(rhum,air,hgt,P):
    '''露点温度'''
    e_s=6.1078*math.exp(17.26*air/(273.16+air-35.86))
    e=e_s*rhum/100
    while e<e_s:
        air=air-0.05#迭代步长
        e_s=6.1078*math.exp(17.26*air/(273.16+air-35.86))
    td=air
    return td
##凝结高度,凝结温度函数
def ZT(hgt,air,td,P):
    e_z=6.1078*math.exp(17.26*td/(273.16+td-35.86))
    theta_z=(air+273)*(1000/P)**0.286
    q_Z=0.622*e_z/(P-0.378*e_z)
    P_L=300#迭代初值
    T_L=theta_z*(P_L/1000)**0.286
    e_L=6.1078*math.exp(17.26*(T_L-273.16)/(T_L-35.86))
    q_L=0.622*e_L/(P_L-0.378*e_L)
    while q_L<q_Z:
        P_L=P_L+1#迭代步长
        T_L=theta_z*(P_L/1000)**0.286
        e_L=6.1078*math.exp(17.26*(T_L-273.16)/(T_L-35.86))
        q_L=0.622*e_L/(P_L-0.378*e_L)
    Z_L=(9.8*hgt+(1004*(air+273.16))-1004*T_L)/9.8
    T_L=T_L-273.16
    return [Z_L,T_L,P_L]

rhum=92.8       ###湿度,不加百分号
air=14.1        ###温度,摄氏度气温
hgt=35.2        ###高度,单位米
P=1017.4        ###气压,单位hPa
td=td(rhum,air,hgt,P)
zt=ZT(hgt,air,td,P)
print('该站点温度为:%lf\n凝结高度为:%lf\n凝结温度为:%lf'%(td,zt[0],zt[1]))

四、实习结果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值