Skip to content

[ENH] cell temperature from backside of module temperature measurements #927

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

Closed
mikofski opened this issue Mar 3, 2020 · 2 comments · Fixed by #938
Closed

[ENH] cell temperature from backside of module temperature measurements #927

mikofski opened this issue Mar 3, 2020 · 2 comments · Fixed by #938
Milestone

Comments

@mikofski
Copy link
Member

mikofski commented Mar 3, 2020

Is your feature request related to a problem? Please describe.
recently a question was posed, given backside module temperature, how to include them in the model chain? Looking at the temperature models available, there isn't one that takes module temperature as input and returns cell temperature. SAPM has a formula for adjusting module temperature to obtain cell temperature based on irradiance and constant "delta-T" parameter that is characteristic of the module. However this formula is bundled into pvlib.temperature.sapm_cellas Eq (2) and the function doesn't take module temperature as input

Describe the solution you'd like
add an optional kwarg to pvlib.temperature.sapm_cell that allows it to bypass the module temperature calculation.

module_temperature = sapm_module(poa_global, temp_air, wind_speed,

option 1:

add module_temperature as kwarg

def sapm_cell(poa_global, temp_air, wind_speed, a, b, deltaT,
              irrad_ref=1000, module_temperature=None):
    if module_temperature is None:
        module_temperature = sapm_module(poa_global, temp_air, wind_speed,
    else:
        warning.warn('air temp and wind speed parameters ignored, overridden by module temp')
        return module_temperature + (poa_global / irrad_ref) * deltaT
option 2:

add new pvlib.temperature.sapm_module_to_cell func

def sapm_module_to_cell(module_temperature, poa_global, deltaT, irrad_ref=1000):
    return module_temperature + (poa_global / irrad_ref) * deltaT

note: if option 2, then pvlib.temperature.sapm_cell could be updated to call pvlib.temperature.sapm_module_to_cell

Describe alternatives you've considered

  • We could explain to users that they can back out the conditions to the use pvlib.temperature.sapm_cell
  • we could encourage users to formulate the equation themselves from the literature
  • we could implement a 3rd SAPM function to perform this task seperately, call it pvlib.temperature.sapm_module_to_cell?

Additional context
related to this post on the Google group

@wholmgren
Copy link
Member

-1 for a new kwarg, +1 for a new function

@cwhanse
Copy link
Member

cwhanse commented Mar 3, 2020

+1 for pvlib.temperature.sapm_cell_from_module rather than sapm_module_to_cell, I'd prefer to keep the output earlier in the name string

@mikofski mikofski changed the title cell temperature from backside of module temperature measurements [ENH] cell temperature from backside of module temperature measurements Mar 10, 2020
@wholmgren wholmgren added this to the 0.7.2 milestone Mar 21, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants