首页 > 解决方案 > 我如何确定或更好地指定当前和过去预测的范围?

问题描述

我对 pvlib 的预测有一个概念上的问题:问题是,如果我要求“过去的预测”,那么我不知道预测的时间范围是什么。对于实际的未来预测,它更明显一点,我会天真地从返回的预测的时间戳中减去当前时间,尽管如果数据请求(取决于模型)仅以每小时或 6 小时为间隔进行,那么看起来像我必须将这种不确定性添加到地平线上,所以我仍然不确定。

对于过去的预测,我只是不知道地平线是什么。如何确定?

这个问题适用于 pvlib-python 获取数据/预测的标准方法,我认为它也适用于特殊脚本https://github.com/wholmgren/get_nomads以获取更远的预测数据。

任何帮助将不胜感激理解这种情况。

为了使这个问题更具体,我将这段代码包含在从 forecast_to_power.ipynb 中获取的代码中,并将开始和结束时间修改为过去:

# built-in python modules
import datetime
import inspect
import os

# scientific python add-ons
import numpy as np
import pandas as pd

# plotting stuff
# first line makes the plots appear in the notebook
%matplotlib inline 
import matplotlib.pyplot as plt
import matplotlib as mpl

# finally, we import the pvlib library
from pvlib import solarposition,irradiance,atmosphere,pvsystem
from pvlib.forecast import GFS, NAM, NDFD, RAP, HRRR

# Choose a location.
# Tucson, AZ
latitude = 32.2
longitude = -110.9
tz = 'US/Mountain'

surface_tilt = 30
surface_azimuth = 180 # pvlib uses 0=North, 90=East, 180=South, 270=West convention
albedo = 0.2

# for this example, let's predict into the past:
start = pd.Timestamp(datetime.date.today(), tz=tz) - pd.Timedelta(days=14) # 14 days ago
end = start + pd.Timedelta(days=7) # 7 days from start

fm = GFS()

forecast_data = fm.get_processed_data(latitude, longitude, start, end)

forecast_data.head()

temp_air    wind_speed  ghi dni dhi total_clouds    low_clouds  mid_clouds  high_clouds
2019-02-25 06:00:00-07:00   6.581512    1.791610    0.000000    0.000000    0.000000    33.0    0.0 0.0 33.0
2019-02-25 09:00:00-07:00   4.832214    0.567790    392.833659  668.164855  121.831040  0.0 0.0 0.0 0.0
2019-02-25 12:00:00-07:00   3.409973    0.860611    794.120954  910.658669  118.492918  0.0 0.0 0.0 0.0
2019-02-25 15:00:00-07:00   6.841797    0.942555    529.425232  515.727013  222.689391  22.0    0.0 0.0 22.0
2019-02-25 18:00:00-07:00   24.458038   0.466084    11.339769   0.000000    11.339769   52.0    0.0 0.0 52.0

这个反向预测的时间范围是多少?我可以调整吗?如果有怎么办?

标签: pvlib

解决方案


对于实际的未来预测,它更明显一点,天真我只是从返回的预测的时间戳中减去当前时间

是的,这对于真实的预测是正确的。对于过去的预测,您应该以与您做出真实预测的能力相一致的方式定义视野。

NCEP 维护一个模型状态页面,详细说明天气模型数据在其服务器上可用的典型时间。每个模型在其初始化时间和预测可用性之间都有不同的延迟。

Solar Forecast Arbiter 定义文档也可能有所帮助。


推荐阅读