pvlib计算太阳相关指标

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

输入信息:

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

在线计算器得到的结果

链接:[http://www.atoolbox.net/Tool.php?Id=1060]
pvlib计算太阳相关指标_第1张图片

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
'''

你可能感兴趣的:(python,能源)