问题标签 [pvlib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
35 浏览

python - 如何调整 iotools.read_tmy3 函数的 tmy_data 输出中的索引。如果其他人有同样的问题,我如何解决我的问题

这不是一个问题,而是我在阅读 tmy3 文件时遇到的问题的解决方法。我希望它可以对你们中的一些人有用。在编码和python方面我还是个新手,所以可能有更简单的方法。

问题

在使用 iotools.read_tmy3() 函数时,我遵循了其他人概述的示例和代码。这包括: 1. 读取 tmy3 数据文件;2. 将年份强制到 2015 年(或您喜欢的任何其他年份);并且,3. 将我的索引移动 30 分钟以匹配太阳辐射模拟。

我使用的代码是:

通过使用此代码,您将丢失 DataFrame 的最后一行。这通过删除第二行中的 ['2015'] 解决了这个问题,但现在最终日期设置在 2014 年。为了我的工作,我需要最终索引保持一致。

我尝试了什么

  1. 我尝试使用shift方法移动最后一行的索引,但未成功。
  2. 我试图通过将最后一行的索引设置为我想要的 DatetimeIndex 来重新索引。
  3. 我试图从索引中删除时区数据,修改索引,然后重新应用时区数据。所有这些都过于复杂,无助于解决我的问题。

什么对我有用

我所做的代码如下所示。这些是我的步骤: 1. 从我的最后一行中识别索引,并复制它的数据;2. 删除我的 tmy_data DataFrame 的最后一行;3. 使用移位的日期和复制的数据创建一个新的数据框;并且,4. 将行附加到我的 tmy_data DataFrame

这有点乏味,但在读取具有多个时区的多个 tmy3 文件时很容易解决。

这样做之后,我的最终指标是:

这样,DataFrame 包含 8760 行,而之前的方法是 8759 行。

我希望这对其他人有帮助!

0 投票
1 回答
198 浏览

python - 使用 pvlib 的 erbs 模型时,dni 似乎不正确

我使用 pvlib 的 erbs 模型从全局水平辐照度计算 dni 和 dhi。但是,最终我的 dni 似乎并不正确。我按照这里的建议将最大天顶设置为 85:从全局辐照度估计漫射和直接分量

将最大天顶更改为 85 会更好一些。但是,归根结底,我的 dni 似乎仍然给出了奇怪的值。见下图。有谁知道如何提供帮助。

在此处输入图像描述

0 投票
1 回答
260 浏览

python - DNI 计算的天顶角

对于机器学习问题,我想在给定各种天气参数的情况下推导出特定系统的每小时 PV 功率,包括每小时 GHI 和 DHI,但没有 DNI。如果我要采用pvLib DNI 估计模型之一,我总是需要天顶角。因为我有辐照度的小时值,所以我不能非常具体地了解角度。你会采取每小时平均吗?总是存在接近 90° 的角度会导致超高 DNI 值的问题。

到目前为止,我尝试手动计算每小时 DNI = (GHI-DHI)/cos(zenith),取每小时天顶的 5 分钟分辨率天顶角的平均值。该位置的日出几乎总是在早上 7 点之前,所以我应该在一天的第 6 小时获得一些非常小的光伏发电。但是,由于我采用几乎总是超过 90° 的平均值,我得到 0 kW 交流电源,或者在平均角度略低于 90° 的几天内,我得到 40 kW 交流电源,这是系统的逆变器的最大限制,这在这些早期的时间里更加不切实际。

模型链参数:

所需的天气熊猫由每小时模拟的 ghi、dhi、temp 和风速以及手动计算的 dni 组成。

0 投票
1 回答
114 浏览

python - 如何从 PVlib 确定形状怪异的每小时 PV 功率输出曲线的问题

我使用 pvlib 的每小时光伏发电量在早上异常高,在晚上异常低。高峰似乎向早晨移动。这是随机一天的输出功率和相应的辐照度数据 (W/m2):

可以看出,功率与辐照度数据并不真正匹配,并且似乎转移到了更早的时间。需要指出的是,辐照度数据是模拟的 GHI 和 DHI 和计算的 DNI。系统的最大交流输出为 40 kW,受逆变器限制。

你知道为什么会这样吗?我是否监督一些明显的事情?我试图更改没有改变任何东西的时区声明。我还尝试将倾斜角从 5 更改为 45,这奇怪地导致更高的 PV 输出功率。这个纬度绝对不应该是这样。谢谢,堆!

这是我的 PVlib 模型的代码:

0 投票
2 回答
67 浏览

python - 如何重命名 pvlib 以导入多个版本?

我希望能够执行以下操作,以便我可以更轻松地比较不同的版本:

我可以将 pvlib 克隆到两个单独的本地目录中,检查所需的版本并以可编辑/开发人员模式安装。但是我需要做什么来更改其中一个的名称?

在以下方面进行此更改是否足够setup.py

[编辑:我在某个时候尝试过,但它不起作用。]

还是有其他方法?

0 投票
2 回答
369 浏览

python - PVLIB:使用 PVLIB 计算小时角的问题

我正在尝试计算使用 PVLIB 函数“ pvl.solarposition.hour_angle() ”的小时角。

我正在开发的代码分为 02 部分:

  • 首先,我将 GPS 时间(星期几)转换为 ' %Y-%m-%d %H:%M:%S'格式的 UTC 时间。此处获得的结果采用 UTC 时间,因为 GPS 时间以 UTC 为单位。
  • 在第二部分,我尝试使用 PVLIB 计算小时角,在这部分我遇到了问题。

当我运行小时角时,python 将返回一条错误消息:

"naive_times = times.tz_localize(None) # 天真但仍然本地化的 AttributeError: 'str' 对象没有属性 'tz_localize"。

我知道这个错误是关于实现代码上的变量“final_time”的类。根据 PVLIB 文档,此变量需要保留在pandas.DatetimeIndex类(https://pvlib-python.readthedocs.io/en/latest/generated/pvlib.solarposition.hour_angle.html)上,我不知道正确转换 GPS 时间到这个类,然后在 PVLIB 上使用这个结果来计算小时角。

下面遵循我在测试中使用的部分算法:

对于这个问题,我的问题是:

  1. 如何将 GPS 时间(一周中的秒数)转换为格式 ' %Y-%m-%d %H:%M:%S'pandas.DatetimeIndex类?

    1. GPS时间转换后的结果如何是UTC时间,我需要先转换为本地时间并再次转换为UTC时间,包括tz_localize?
0 投票
1 回答
199 浏览

python - 如何计算立体空间上的光反射角

我有以下情况:

一个位于地球表面的点,具有 3D 坐标(X、Y、Z),飞机内部的一台摄像机从表面拍摄照片。对于相机,我也有拍摄图像时的 3D 坐标(X、Y、Z)。

对于这种情况,我需要计算地球表面上的点和飞机内的相机之间的光反射角。

我想要计算这个角度的建议或想法。我知道可能的解决方案将使用解析几何。

我已经使用 PVLIB 库计算了太阳入射角到表面上的点,但我在 pvlib 上找不到确定光反射角的函数。

谢谢帮助我!!

0 投票
1 回答
571 浏览

python - 如何使用 PVLIB 构建通用 pvsystem

我正在尝试构建一个通用的 pvsystem 进行建模,而不需要特定的模块和逆变器。我有所有关键变量(表面方位角、倾斜度、反照率、跟踪技术(固定、单、双)、位置、KW 中的 DC 大小、损耗因子、DC/AC 比)

我知道 PVWatts 是做到这一点的最佳方式,但我不知道它是如何工作的。我将如何最好地在 PVLIB 中构建这样的 pvsystem?

附加当前代码,它可以工作,但希望更改 pvsystem 构建

0 投票
3 回答
413 浏览

python - 使用 PVLIB 的许多坐标的太阳天顶角

我需要计算大约 106.000.000 个不同坐标的太阳天顶角。该坐标是指在图像被相机拍摄到飞机后投影在地球表面的图像中的像素。

我正在使用pvlib.solarposition.get_position()来计算太阳天顶角。返回的值计算正确(我将一些结果与 NOOA 网站进行了比较)但是,我需要如何计算许多坐标的太阳天顶角,python 花费了很多天(大约 5 天)来完成函数的执行.

我是如何编程的初学者,我想知道有什么方法可以加速太阳天顶角的计算。

下面找到了计算太阳天顶角的代码部分:

0 投票
1 回答
300 浏览

python - 导入非 TMY3 格式的天气数据以用于 pvlib 模拟

所以我正忙于一个项目,我需要在 Python 中实现一个光伏系统。最好的资源似乎是pvlib模块,但我有点坚持为此获取适当的天气数据。

我需要一个特定地点的一整年的信息,在这种情况下是南非开普敦。

我正在尝试为此获取TMY3文件,因为pvlib可以很好地适应这一点,但我能找到的唯一数据是来自 NREL 的美国位置(https://rredc.nrel.gov/solar/old_data/nsrdb/199 ​​1-2005 /tmy3/by_state_and_city.html)。我找不到TMY其他位置的。

这是我正在使用的 Jupyter 笔记本教程:https ://nbviewer.jupyter.org/github/pvlib/pvlib-python/blob/master/docs/tutorials/tmy_to_power.ipynb

我在其他网站上找到了这个位置的天气数据,但它们不是pvlib正在寻找的格式。pvlib只适合美国吗?我有什么选择?