将必需的参数传递给实例

Passing required arguments into instance

虽然这个问题的实质内容在 pvlib 库中是特定的,但我认为这个错误本质上是普遍的,其他问题可能有助于回答。

我正在使用 pvlib 库中名为 total_irrad 的函数(此处的文档:http://pvlib-python.readthedocs.io/en/latest/_modules/pvlib/irradiance.html#total_irrad)。

当我调用该函数并向其传递正确的参数时,出现错误:TypeError: total_irrad() takes at least 7 arguments (11 given)。我知道我已经提供了所有 11 个可用参数,并且这个 TypeError 告诉我在 11 个参数中,7 个是必需的,但我没有传递正确的必需项。

我想首先,这个理解是否正确(来自这里:Error: function() takes at least n arguments (n given))。如果正确,如何知道哪些是必需的项目,哪些不是。或者,如果我离谱,任何人都可以提供任何建议。

total_irrad = pvlib.irradiance.total_irrad(
    surface_tilt=20, 
    surface_azimuth=solpos['azimuth'], 
    solar_zenith=solpos['zenith'], 
    solar_azimuth=solpos['azimuth'], 
    dni= clearsky['dni'], 
    ghi=clearsky['ghi'], 
    dhi=clearsky['dhi'], 
    dni_extra=dni_extra, 
    airmass=airmass, 
    albedo=0.25, 
    surface_type='grass',
    model='haydavies', 
    model_perez='allsitescomposite1990')

任何必需的参数,后面没有 ={Default}。您缺少必需的参数:

apparent_zenith
azimuth