Open adriesse opened 2 years ago
Update on this isseu: SAM code has changed to use effective_irradiance
instead of poa_global
for the noct_sam
temperature model https://github.com/NREL/ssc/pull/1233. SAM considers the change to be correcting a bug.
I think pvlib should correct its code, with liberal in-line comments to document that the correction deviates from the published reference.
I support a correction (of course). I haven't had time to look closely at the change in SAM though. Did they write anything about impact on results? Since it has been this way for so long we might consider offering both behaviors.
Describe the problem The noct_sam temperature model has an
effective_irradiance
input, which would normally have a value less thanpoa_global
, mainly due to reflection losses. This is implemented internally as an adjustment to thetransmittance_absorptance
parameter. However, this adjustment produces some questionable results.Code fragment to demonstrate the problem
Code fragment output
Comments on output Note that under open circuit conditions the module temperature remains at 41.6 in the third and fourth cases despite the reduction in irradiance, which is not logical. The biggest surprise comes when you set
geff
to small values, like 20% ofgpoa
because the module temperature then goes below ambient.Additional context The
noct_sam
function in pvlib appears to correspond very closely to the code in SAM itself, so this problem would exist there too. But it is much easier to demonstrate it here.Solution Reflected irradiance does not contribute to heating or electricity generation, so a single irradiance input for this thermal model is enough.