PVLib预测未针对时区进行调整

2024-05-20 13:42:58 发布

您现在位置:Python中文网/ 问答频道 /正文

背景

我正在尝试使用PVLib对太阳能发电量进行预测。我已经按照ReadTheDocs页面上的所有说明进行了操作,能够毫无问题地运行查询并生成输出

问题

我已经指定了时区“Australia/Queensland”(+10),但是当我查看预测数据的导出时,似乎GFS数据没有针对时区进行调整。原始数据导出中的空气温度和短波通量场似乎仍在UTC时间内

即使在运行“process_data”类时,空气温度似乎仍然不正确。计算的辐照度场(ghi、dni、dhi)似乎与时区正确对齐,但因为这些是基于云量和;太阳位置,我不知道他们是否使用了正确的输入

请求帮助

有人知道问题是什么吗?我是否忽略了什么,这是PVLib中的错误,还是在运行process_数据类之前需要手动调整时区?如果有帮助的话,我已经在下面附上了我的代码

# **********************************************************
# PACKAGES
# **********************************************************
import pandas as pd
from datetime import date

from pvlib.tracking import SingleAxisTracker
from pvlib.modelchain import ModelChain
from pvlib.temperature import TEMPERATURE_MODEL_PARAMETERS
from pvlib.forecast import GFS

# **********************************************************
# INPUTS
# **********************************************************
latitude = -27.5
longitude = 153.00
tz = 'Australia/Queensland'
start = pd.Timestamp(date.today(), tz=tz)
end = start + pd.Timedelta(days=7)
dc_size = 110
ac_size = 100
module_parameters = {'pdc0': dc_size, 'gamma_pdc': -0.004}
inverter_parameters = {'pdc': ac_size, 'pdc0': dc_size, 'eta_inv_nom': dc_size / ac_size}
temperature_model_parameters = TEMPERATURE_MODEL_PARAMETERS['sapm']['open_rack_glass_glass']

# **********************************************************
# GFS
# **********************************************************
model = GFS(resolution='Quarter')
raw_data = model.get_data(latitude, longitude, start, end)
raw_data.to_csv('raw_gfs_data.csv')

data = model.get_processed_data(latitude, longitude, start, end)
data.to_csv('processed_gfs_data.csv')

# Resample data
resampled_data = data.resample('30min').interpolate()

# **********************************************************
# PV SYSTEM
# **********************************************************
# Define the specs for the PV System (horizontal axis tracking system)
t_system = SingleAxisTracker(
    axis_azimuth=90, axis_tilt=0, max_angle=180, backtrack=True, module='pvwatts_dc', inverter='pvwatts_ac',
    module_parameters=module_parameters,inverter_parameters=inverter_parameters, name='tracking', gcr=.40,
    temperature_model_parameters=temperature_model_parameters
)

# build model chain
mc = ModelChain(
    system=t_system, location=model.location, name='pvwatts', dc_model='pvwatts', ac_model='pvwatts', 
    aoi_model='physical', spectral_model='no_loss', temperature_model='sapm', losses_model='no_loss',
    transposition_model='perez'
)

# Run model, Export AC Power
mc.run_model(resampled_data)
ac = mc.ac
ac.to_csv('export_ac.csv')

Tags: csvfromimportdatasizemodeldcstart