Skip to content

Clarify AOI-minimizing principle in tracking.singleaxis docstring - #2869

Merged
kandersolar merged 5 commits into
pvlib:mainfrom
chenyi6758-source:docs/singleaxis-docstring-aoi
Oct 5, 2026
Merged

kandersolar merged 5 commits into
pvlib:mainfrom
chenyi6758-source:docs/singleaxis-docstring-aoi

Conversation

@chenyi6758-source

@chenyi6758-source chenyi6758-source commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

The docstring for pvlib.tracking.singleaxis describes the coordinate system and rotation conventions in detail, but never states the underlying principle: the rotation angle is chosen to minimize the angle of incidence (AOI) of the sun's beam onto the panel, thereby maximizing the use of direct normal irradiance (DNI).

This PR adds that explanation to the docstring, including a note that backtracking adjusts the rotation away from the AOI-minimizing angle to avoid row-to-row shading. Also adds a whatsnew entry.

Closes #2314.

  • I am familiar with the contributing guidelines
  • I attest that all AI-generated material has been vetted for accuracy and is in compliance with the pvlib license
  • Tests added
  • Updates entries in docs/sphinx/source/reference for API changes.
  • Adds description and name entries in the appropriate "what's new" file in docs/sphinx/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).
  • New code is fully documented. Includes numpydoc compliant docstrings, examples, and comments where necessary.
  • Pull request is nearly complete and ready for detailed review.
  • Maintainer: Appropriate GitHub Labels (including remote-data) and Milestone are assigned to the Pull Request and linked Issue.

@github-actions

Copy link
Copy Markdown

Hey @chenyi6758-source! 🎉

Thanks for opening your first pull request! We appreciate your
contribution. Please ensure you have reviewed and understood the
contributing guidelines.

If AI is used for any portion of this PR, you must vet the content
for technical accuracy.

@kandersolar

Copy link
Copy Markdown
Member

@chenyi6758-source please edit the PR description to include the checklist from the PR template, and tick the items you are able to.

@chenyi6758-source

Copy link
Copy Markdown
Contributor Author

Done — checklist added to the PR description, with the applicable items ticked.

@cwhanse cwhanse left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chenyi6758-source you can add your GH tag to the contributors at the bottom of the whatsnew file.

Comment thread pvlib/tracking.py Outdated
Comment thread docs/sphinx/source/whatsnew/v0.16.2.rst Outdated
Comment thread docs/sphinx/source/whatsnew/v0.16.2.rst Outdated
@RDaxini RDaxini added this to the v0.16.2 milestone Sep 28, 2026
chenyi6758-source and others added 2 commits October 5, 2026 09:57
Co-authored-by: Rajiv Daxini <143435106+RDaxini@users.noreply.github.com>
@kandersolar
kandersolar merged commit 97ea589 into pvlib:main Oct 5, 2026
1 check was pending
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve pvlib.tracking.singleaxis docstring

4 participants