Closed jmert closed 2 years ago
Merging #24 (8e637bc) into master (d3c9831) will increase coverage by
0.02%
. The diff coverage is100.00%
.
@@ Coverage Diff @@
## master #24 +/- ##
==========================================
+ Coverage 96.54% 96.57% +0.02%
==========================================
Files 9 9
Lines 347 350 +3
==========================================
+ Hits 335 338 +3
Misses 12 12
Impacted Files | Coverage Δ | |
---|---|---|
src/Legendre.jl | 100.00% <ø> (ø) |
|
src/calculation.jl | 94.40% <ø> (ø) |
|
src/norm_sphere.jl | 97.36% <100.00%> (+0.22%) |
:arrow_up: |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 10de346...8e637bc. Read the comment docs.
Defined such that the integrating square of this normalization times the complex exponential in azimuth equals the surface area of the unit sphere. This complements the spherical normalization
LegendreSphereNorm
which instead integrates over the sphere to unity.Also adds an intermediate
AbstractLegendreSphereNorm <: AbstractLegendreNorm
in the abstract type hierarchy to consolidate the coefficients for all three ofLegendreFourPiNorm
,LegendreOrthoNorm
, andLegendreSphereNorm
.The original motivation was to see if replacing the initial condition of 1 / sqrt(4π) which must necessarily be rounded (because π is trancendental) with an exactly-representable value (1.0 for the 4π normalization) could lead to better numerical precision. Namely, I thought that something like summing over many terms could show the accumulated bias, but I haven't actually found that to be true in practice. Nonetheless, having another option for a built-in normalizations is still useful.