Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Possibility of beam irradiance from behind plane of array

Ouverte Adaptée aux débutants
#2,903 5 commentaires 2 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
78/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
python
Domaine
data

Piste de recherche

Commence par poa_components() et examine beam_component() pour vérifier le même ordre d’écrêtage. Repère les tests existants des composantes d’irradiance et ajoute une couverture pour le DNI négatif lorsque aoi >= 90 ; le travail est terminé lorsque les deux chemins renvoient une irradiance directe nulle et que le comportement existant pour les angles positifs est préservé.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

bug

Describe the bug
The function poa_components() contains the following line:

 poa_direct = np.maximum(dni * np.cos(np.radians(aoi)), 0)

This usually works, but is not correct because it is the cosine that should be clipped, not the product. When using raw DNI measurements negative values are sometimes present, and these could produce a very small positive poa_direct when the sun is behind the plane of array.

Expected behavior

poa_direct is always zero when aoi >= 90.

Possible solution:

poa_direct = dni * np.maximum(np.cos(np.radians(aoi)), 0)

Additional context

The function beam_component() appears to have the same problem.

Langage dominant
Python
Étoiles
1.7k
Forks
1.2k
Merge moyen
3 j 18 h
PR mergées (30 j)
13

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de pvlib/pvlib-python

Toutes les issues de pvlib/pvlib-python

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.