0

我正在尝试使用 DISC 模型从 GHI 计算 DNI。它似乎在某些日子返回了合乎逻辑的值,但在其他日子里,它似乎大大偏离了标准。之后我使用 GHI - DNI * cos(θ) 的标准公式计算 DHI。

这是我的数据框示例以供参考:

压力 天顶 dni
2021-02-21 09:00:00+02:00 1022 79.611284 148.975472 632.731814 34.877836
2021-02-21 10:00:00+02:00 1022 73.237092 322.780190 792.803789 94.126078
2021-02-21 11:00:00+02:00 1022 68.484954 501.550757 763.726566 221.457448
2021-02-21 12:00:00+02:00 1022 65.795320 521.414153 865.344120 166.625191
2021-02-21 13:00:00+02:00 1022 65.466171 516.448304 878.623028 151.617274
2021-02-21 14:00:00+02:00 1022 67.536285 412.165474 866.599138 81.039446
2021-02-21 15:00:00+02:00 1021 71.767697 292.985096 778.455371 49.429408
2021-02-21 16:00:00+02:00 1021 77.744154 124.146227 223.897390 76.617876
2021-02-22 09:00:00+02:00 1022 79.276500 114.214529 277.318106 62.614056
2021-02-22 10:00:00+02:00 1023 72.888793 248.292454 634.777628 61.523563
2021-02-22 11:00:00+02:00 1023 68.124958 387.336228 855.994144 68.406867
2021-02-22 12:00:00+02:00 1023 65.429755 516.448304 878.656364 151.095472
2021-02-22 13:00:00+02:00 1023 65.104368 511.482455 887.843374 137.729993
2021-02-22 14:00:00+02:00 1023 67.187466 407.199624 866.444561 71.264128
2021-02-22 15:00:00+02:00 1023 71.437557 218.497359 329.880024 113.484015
2021-02-22 16:00:00+02:00 1023 77.433660 99.316982 74.722948 83.059519
2021-02-23 09:00:00+02:00 1028 78.938277 49.658491 0.000000 49.658491
2021-02-23 10:00:00+02:00 1028 72.537193 99.316982 0.000000 99.316982
2021-02-23 11:00:00+02:00 1028 67.761859 153.941321 25.383509 144.334754
2021-02-23 12:00:00+02:00 1028 65.061403 238.360756 135.501848 181.226844
2021-02-23 13:00:00+02:00 1028 64.740241 233.394907 116.897570 183.512050
2021-02-23 14:00:00+02:00 1028 66.836873 188.702265 67.331661 162.217334
2021-02-23 15:00:00+02:00 1028 71.106160 168.838869 113.359190 132.131384
2021-02-23 16:00:00+02:00 1028 77.122298 79.453585 3.785011 78.610017
2021-02-24 09:00:00+02:00 1029 78.596748 84.419434 53.955268 73.751777
2021-02-24 10:00:00+02:00 1028 72.182423 168.838869 150.012792 122.936847
2021-02-24 11:00:00+02:00 1028 67.395784 263.190001 299.151463 148.207170
2021-02-24 12:00:00+02:00 1028 64.690387 327.746039 415.466900 150.129973
2021-02-24 13:00:00+02:00 1028 64.373905 322.780190 377.550453 159.490967

如您所见,在第 21 天和第 22 天,它可以轻松找到 DNI。然而在 23 日,它似乎返回了不合逻辑的值。此外,我通过将其乘以 100 来校正压力输入。

这是实际 irradiance.disc 调用的相关代码行:

for x in df.index:
    df['dni'][x] = irradiance.disc(df['ghi'][x],
                                   df['zenith'][x],
                                   x,
                                   df['pressure'][x]*100)['dni']

之后,即使它不那么相关,我也这样计算 DHI:

for x in df.index:
    df['dhi'][x] = df['ghi'][x] - df['dni'][x] * math.cos(np.deg2rad(df['zenith'][x]))

我还没有找到这个问题的根源,我只是怀疑它可能与 DISC 模型的输入压力限制有关。

有任何想法吗?

4

1 回答 1

0

正如@kevinsa5 指出的那样,数据似乎是正确的,因为在阴天,GHI 主要不是由 DNI 组成。

于 2021-02-27T13:55:01.760 回答