首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用UFuncTypeError时PVLIB run_model

使用UFuncTypeError时PVLIB run_model
EN

Stack Overflow用户
提问于 2022-04-13 02:50:13
回答 1查看 40关注 0票数 1

我已经定义了我的模型,当我遇到以下错误时,我希望得到生成的结果:UFuncTypeError: ufunc 'multiply' did not contain a loop with signature matching types (dtype('float64'), dtype('<U5')) -> None

我的模型的一个简单版本如下所示:

代码语言:javascript
复制
temperature_model_parameters = TEMPERATURE_MODEL_PARAMETERS['sapm']['open_rack_glass_glass']
sandia_modules = pvlib.pvsystem.retrieve_sam('SandiaMod')
cec_inverters = pvlib.pvsystem.retrieve_sam('cecinverter')
sandia_module = sandia_modules['Canadian_Solar_CS6X_300M__2013_']
cec_inverter = cec_inverters['ABB__PVI_3_0_OUTD_S_US__240V_'] 

pvlib_location = Location(latitude=self.latitude, longitude=self.longitude,
                            name=name, altitude=self.altitude, tz=self.tz)

system = PVSystem(surface_tilt=20, surface_azimuth=210,
                        module_parameters=sandia_module,
                        inverter_parameters=cec_inverter,
                        temperature_model_parameters=temperature_model_parameters,
                        modules_per_string=5, strings_per_inverter=3,
                        albedo='urban', module_type='glass_polymer',
                        racking_model='insulated_back', name='Inverter1')

mc = ModelChain(system, self.pvlib_location)

weather = pvlib.iotools.get_psm3(self.latitude, self.longitude, self.nrel_key,
                                 self.nrel_email, names=name,interval=60, 
                                 attributes=('air_temperature', 'dew_point', 'dhi', 'dni', 
                                             'ghi', 'surface_albedo', 'surface_pressure', 
                                             'wind_direction', 'wind_speed'),
                                 leap_day=False, full_name='pvlib python', 
                                 affiliation='pvlib python', map_variables=True, timeout=30)[0]

weather.index.name = "utc_time"

result = mc.run_model(weather)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-13 02:50:13

问题是PVSystemPVSystem参数。参数albedo需要一个浮动。另一方面,参数surface_type接受可能曲面类型中的一个字符串。

PVSystem文档

表面类型

正确的PVSystem调用应该是:

代码语言:javascript
复制
system = PVSystem(surface_tilt=20, surface_azimuth=210,
                        module_parameters=sandia_module,
                        inverter_parameters=cec_inverter,
                        temperature_model_parameters=temperature_model_parameters,
                        modules_per_string=5, strings_per_inverter=3,
                        surface_type='urban', module_type='glass_polymer',
                        racking_model='insulated_back', name='Inverter1')
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71851286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档