Shading geometry filtering and runtime estimation#74
Merged
FlorianK13 merged 9 commits intoopen-pv:mainfrom Dec 5, 2025
Merged
Conversation
FlorianK13
reviewed
Dec 5, 2025
Member
|
@mestr01 Can you also run |
Filter gets now applied in scene.calculate as well
Contributor
Author
Done. Checks run without errors. |
Member
FlorianK13
approved these changes
Dec 5, 2025
Member
FlorianK13
left a comment
There was a problem hiding this comment.
Looks good to me - @mestr01 is this ready to be merged from your side?
Contributor
Author
Yes |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

@FlorianK13
This PR includes additional logic for the CLI.
The first change involves estimating the runtime of a run. To do this, the previous computing time per sky segment is determined and extrapolated for the remaining segments.
The other change involves filtering shading geometry before the data is loaded into the headless browser. The filtering works as follows:
the --shading-geometry gets filtered. The value of --min-sun-angle is used if it is set, otherwise the minimum
angle of the SolarIrradianceData is used. The shading geometry is filtered based on the simulation geometry bounding box and the minimum radiance angle. For this purpose, the distance from the bounding box and the height required with the minimum angle are calculated. If at least one vertex of a triangle is above this height, the triangle continues to be used for the shading geometry, otherwise it is removed. In simple terms, if at least one corner of a triangle can block radiation from the simulation geometry, it remains part of the shading geometry.