(小白易懂)经纬度太阳辐射模型及代码介绍

太阳时角的确定

ω = ( ST 12) × 15°

式中: ω 为太阳时角; ST 为真太阳时( 此处采用北京时间)

太阳赤纬角的确立

太阳赤纬角定义为太阳入射光与地球赤道面的夹角,以 δ 表示,与所在地区无关,仅由日期决定,太 阳赤纬角不是一成不变的,而是每天都在进行微小 的变化

δ = 23 45sin( 360° ×(284 + n365 ) :,δ 为太阳赤纬角; n 为一年中的天数

太阳高度角

定义为太阳入射方向与水平面之间的夹角,以 h 表示

计算公式为: sinh = sinφsinδ + cosφcosδcosω式中: φ 为地理纬度; ω 为太阳时角; δ 为太阳赤纬角; h 为太阳高度角。

大气层上界某一时刻的太阳辐射量,以 E0表示,其计算公式为:

E0 = Esc[ 1 +0 034 × cos( 2n ×3.141 592 6 ÷365)] 式中: ESC为太阳常数,通常取 1367 W/m2; n 为一年中的天数。

大气质量与大气透明度的引入及计算

大气质量定义为太阳光线穿过地球大气的路径与太阳光线在天顶角方向时穿过大气路径只比,也就是大气对地球表面接收太阳光的影响程度,以 mh

来进行表示,其计算公式如下: h30°时,其计算公式为:

 mh = 1÷sinh

h 30°时,由于折射影响,公式变为:

mh =1229 + ( 614sinh) 2]- 614sinh

大气透明度

是指透过一个大气质量的投射辐射与入射辐射之比,用来表征大气对辐射的削弱程度,其公式选用: ta = 0 271 0 0 293 5tb

tb = 0 56×0.8 × ( e 0 56mh + e 0 096mh)

tb为直接辐射大气透明系数; ta为间接辐射大气透明系数。

直接辐射是指未被地球大气层吸收、反射及折射仍保持原来的方向到达地球表面的这部分太阳辐射,用 Ebh来表示,其公式为:

Ebh = E0 × tb × sinh   E0为大气层上界某一时刻的太阳辐射量; h

太阳高度角。

间接辐射是指经过经过大气和云层的折射、反射、散射作用改变了原来的传播方向到达地球表面的、并无特定方向的这部分太阳辐射,用 Edh来表示,

其公式为: Edh = 0 5 × sinh × E0 × 0.9 × 1 ta ÷[1- 1 4 × log (ta÷mh)]

mh 为修正后的大气质量.

总辐射强度

就是直接辐射强度与间接辐射强度的和,用 Eth来表示,因此公式为:Eth = Ebh + Edh

太阳赤纬角和高度角计算代码如下:

import math

# 输入经纬度和年份
latitude = 39.6
longitude = 116.3
n = 1 * 30 + 1  # 假设月份为1,日期为1
# 计算太阳赤纬角
def calculate_hour_angle(hour):
    n = 1 * 30 + 1  # 假设月份为1,日期为1
    omega = (hour - 12) * 15
    hourc = 23.45 * math.sin(math.radians(360 * (284 + n) / 365))
    return hourc, omega

# 计算太阳高度角
def calculate_solar_elevation_angle(phi, delta, t):
    sin_h = math.sin(math.radians(phi)) * math.sin(math.radians(delta)) + math.cos(math.radians(phi)) * math.cos(math.radians(delta)) * math.cos(math.radians(t))
    h = math.degrees(math.asin(sin_h))
    return h

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值