Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Consider updating pvlib.tracking.singleaxis() to return zeros (or similar) for nighttime instead of NaNs

Aberta
#2,539 14 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
22/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
backend

Direção de pesquisa

The NaN output comes from the night-time branch of singleaxis in pvlib/tracking.py, around the line the issue links. Read the function and the tests in pvlib/tests/test_tracking.py to see which outputs are NaN after sunset. Done means the maintainers have agreed on zero versus NaN for each output, or an opt-in parameter, with tests and docs updated. The design choice is still open, so settle it in the thread before coding.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Is your feature request related to a problem? Please describe.
pvlib.tracking.singleaxis returns NaNs for intervals where the sun is below the horizon. This can result in NaNs propogating to lots of other pvlib outputs and can cause confusion, other issues, etc. See https://groups.google.com/g/pvlib-python/c/ZeVmTC7eddY as an example.

It appears to happen here:

https://github.com/pvlib/pvlib-python/blob/6dfeaf8ee97db6a7a8f3c8109eed8b5d285c4e41/pvlib/tracking.py#L155

Describe the solution you'd like
Perhaps change the default to be zero for surface_tilt and tracker_theta (and whatever is most appropriate for aoi and surface_azimuth). Or have an optional input for pvlib.tracking.singleaxis to specify whether it returns NaNs or numbers at night.

Describe alternatives you've considered
Applying .fillna(0) (or similar) to the output of pvlib.tracking.singleaxis is what I typically do.

Additional context
It looks like this zero vs nan situation was briefly discussed in https://github.com/pvlib/pvlib-python/issues/569. It seems it would be worth further discussion. Is there a significant reason that NaN is the output at night?

fillna(0) is used in the gallery here and here, but not here.

Tagging @cwhanse.

Linguagem predominante
Python
Estrelas
1.7k
Forks
1.2k
Merge médio
3d 18h
PRs com merge (30d)
13

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de pvlib/pvlib-python

Todas as issues de pvlib/pvlib-python

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.