Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

ModelChain disregards diffuse optical losses for non-Sandia modules

Offen
#2,509 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
22/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
python
Bereich
backend

Rechercherichtung

Start with the effective_irradiance_model function in pvlib/modelchain.py, which applies the FD module parameter to poa_diffuse and defaults to 1. Then read martin_ruiz_diffuse and marion_diffuse in pvlib/iam.py to see what they return. The open question is how to choose a diffuse loss model for non-Sandia modules, which the thread does not settle, so agree on that with maintainers before writing code.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Is your feature request related to a problem? Please describe.
modelchain.ModelChain and modelchain.ModelChain.with_pvwatts only consider optical losses for diffuse irradiance for modules from the Sandia Database, which contain an FD parameter for this. This can be seen in the effective_irradiance_model function in here.

def effective_irradiance_model(self):
def _eff_irrad(module_parameters, total_irrad, spect_mod, aoi_mod):
fd = module_parameters.get('FD', 1.)
return spect_mod * (total_irrad['poa_direct'] * aoi_mod +
fd * total_irrad['poa_diffuse'])

In my opinion, this is relevant for pvwatts approach. Not sure for more detailed approaches like single-diode model, etc.

Describe the solution you'd like
pvlib already contains well-established functions to compute diffuse irradiance losses such as the Martin-Ruiz and Marion's models. Would "just" be a matter of implementing them in the modelchain workflow.

Additional context
Even for Sandia modules, could it make sense to allow users to replace the FD constant by values from the Martin-Ruiz or Marion models?

Vorherrschende Sprache
Python
Sterne
1.7k
Forks
1.2k
Ø Merge
3 T. 21 Std.
Gemergte PRs (30 T.)
15

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus pvlib/pvlib-python

Alle Issues in pvlib/pvlib-python

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.