pvlib计算太阳相关指标

利用pvlib计算太阳方位角、高度角、天顶角、时角以及赤纬度

输入信息:

经度:114.05;纬度22.544;时间:'2023-08-05 11:37:46';时区:'Asia/Shanghai'

在线计算器得到的结果

链接:[http://www.atoolbox.net/Tool.php?Id=1060]
http://www.atoolbox.net/Tool.php?Id=1060

python代码实现

import math
import pvlib
import pandas as pd

# 设置时区为北京
tz = 'Asia/Shanghai'
# 设置观测时间
time_str = '2023-08-05 11:37:46'
# 设置观测位置,经度和纬度(以度为单位)
latitude = 22.544
longitude = 114.05

time = pd.Timestamp(time_str, tz=tz)

# 获取太阳位置信息
solar_position = pvlib.solarposition.get_solarposition(time, latitude, longitude)

# 获取太阳天顶角(以度为单位)
solar_zenith = solar_position['apparent_zenith']
# 太阳高度角(以度为单位)
solar_altitude = solar_position['elevation']
# 太阳方位角
solar_azimuth = solar_position['azimuth']
# # 太阳时角(以度为单位)
solar_hour_angle = pvlib.solarposition.hour_angle(solar_position.index, longitude, solar_position['equation_of_time'])
# 计算太阳赤纬度
solar_declination = pvlib.solarposition.declination_cooper69(time.dayofyear)  # 返回的是弧度

# 输出结果
print("太阳天顶角:", solar_zenith.values[0])
print("太阳高度角:", solar_altitude.values[0])
print("太阳方位角:", solar_azimuth.values[0])
print("太阳时角:", solar_hour_angle[0])
print("太阳赤纬度:",math.degrees(solar_declination))

'''
得到的结果如下:
太阳天顶角: 13.420333551688927
太阳高度角: 76.57566372730878
太阳方位角: 111.80348780254673
太阳时角: -13.029009563575642
太阳赤纬度: 16.82952362570134
'''
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值