-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Expose temperature.fuentes in PVSystem and ModelChain #1073
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 4 commits
c3b794b
484bab7
16f4579
70ce880
301967a
512df4c
e93d316
8a5fb6a
7bdf256
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -609,6 +609,46 @@ def faiman_celltemp(self, poa_global, temp_air, wind_speed=1.0): | |
| return temperature.faiman(poa_global, temp_air, wind_speed, | ||
| **kwargs) | ||
|
|
||
| def fuentes_celltemp(self, poa_global, temp_air, wind_speed): | ||
| """ | ||
| Use :py:func:`temperature.fuentes` to calculate cell temperature. | ||
|
|
||
| Parameters | ||
| ---------- | ||
| poa_global : pandas Series | ||
| Total incident irradiance [W/m^2] | ||
|
|
||
| temp_air : pandas Series | ||
| Ambient dry bulb temperature [C] | ||
|
|
||
| wind_speed : pandas Series | ||
| Wind speed [m/s] | ||
|
|
||
| Returns | ||
| ------- | ||
| temperature_cell : pandas Series | ||
| The modeled cell temperature [C] | ||
|
|
||
| Notes | ||
| ----- | ||
| The Fuentes thermal model uses the module surface tilt for convection | ||
| modeling. The SAM implementation of PVWatts hardcodes the value at 30 | ||
kandersolar marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| degrees, ignoring whatever value is used for irradiance transposition. | ||
| This method defaults to using ``self.surface_tilt``, but if | ||
| you want to match the PVWatts behavior, you can override it by | ||
| including a ``surface_tilt`` value in ``temperature_model_parameters``. | ||
| """ | ||
| # default to using the PVSystem attribute, but allow user to | ||
| # override with a custom surface_tilt value | ||
| kwargs = {'surface_tilt': self.surface_tilt} | ||
| temp_model_kwargs = _build_kwargs([ | ||
| 'noct_installed', 'module_height', 'wind_height', 'emissivity', | ||
| 'absorption', 'surface_tilt', 'module_width', 'module_length'], | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think We might also consider getting For now, I'm OK expecting the
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Valid points. I unthinkingly pulled all the extra parameters from I can imagine some people objecting to using Fuentes with the real
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't have a better idea at the moment, than using
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Also something to consider when creating an Array class. |
||
| self.temperature_model_parameters) | ||
| kwargs.update(temp_model_kwargs) | ||
| return temperature.fuentes(poa_global, temp_air, wind_speed, | ||
| **kwargs) | ||
|
|
||
| def first_solar_spectral_loss(self, pw, airmass_absolute): | ||
|
|
||
| """ | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.