Repository navigation
M2: calculation engine (grids, tilt, vertical illuminance, statistics) - #2
Merged
Merged
Conversation
Luminaires with heading and tilt (IES tilt factors applied), direct illuminance on any surface, area and full-width route grids summed over luminaires, min/mean/max and uniformity statistics that are unverifiable when any point is; photometry plausibility warnings. Isotropic and Lambertian cases within 1e-6; 100 luminaires x 10,000 points in ~55 ms. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
What this changes
M2: the calculation engine.
Luminaires have a heading and a tilt. Tilt 90° is wall-mounted: the luminaire's nadir swings towards C0. IES tilt factors are applied, and a tilt outside the file's table is an error rather than a guess.
Direct illuminance on any surface: horizontal, vertical (e.g. at fire-fighting equipment) or inclined.
Grids:
Every grid is summed over all luminaires and capped at a million points.
Statistics: min, mean, max, max/min and min/mean. One undefined point (e.g. at a luminaire's centre) makes them
None, which a check will report as "cannot verify".Photometry plausibility warnings (gap 13), shown by
luxpath photometry:Faster intensity lookup (binary search).
How you verified it
cargo xtask ci, natively (macOS) and in the local Linux container, including the release-mode timing budget. Merged on the local checks (hosted CI unavailable).Life safety (AGENTS.md §2)
Never panic (AGENTS.md §3)
unwrap/indexing on input outside tests; non-finite inputs giveNoneor errors; grid sizes are cappedProvenance (AGENTS.md §1)
Records
parity/features.toml: calc.direct-point, grids, tilt and vertical illuminance shippeddocs/status.md,docs/gaps.md(rows 3, 8, 9 and 13 closed; 16 added),docs/roadmap.md,ROADMAP.mdlog