1

pvlib用来预测太阳能装置。我一直遇到infer_aoi_model().

def infer_aoi_model(self):
    params = set(self.system.module_parameters.keys())
    if set(['K', 'L', 'n']) <= params:
        return self.physical_aoi_loss
    elif set(['B5', 'B4', 'B3', 'B2', 'B1', 'B0']) <= params:
        return self.sapm_aoi_loss
    elif set(['b']) <= params:
        return self.ashrae_aoi_loss
    else:
        raise ValueError('could not infer AOI model from ' +
                         'system.module_parameters')

我看到我需要在所选模块series中为 B5 - B0、'b' 或 K'、'L'、'n' 提供值,具体取决于使用的 aoi 损失模型。当我从Sandia module数据库中导入模块时,我看到了 B5-B0 输入,但是,当我输入CEC module数据库时​​,我没有看到任何必要的输入,因为 AOI 丢失。不幸的是,Sandia Moduledb 似乎没有正确的模块类型,并且CECdb 总是引发 aValueError因为不需要的输入在series.

数据库是否Sandia Module更新?还有其他地方可以寻找这个吗?任何人都可以在这个话题上为我提供帮助吗?

4

1 回答 1

0

如果您可以使用默认值,则可以传递aoi_model='physical'aoi_model='ashrae'在创建ModelChain对象时传递。这可能对您的应用程序来说不够好,也可能不够好。

这个github问题是相关的:https ://github.com/pvlib/pvlib-python/issues/289

于 2017-05-12T02:24:52.027 回答