42 float F1 = 176.0f,
F2 = 775.0f,
F3 = 3408.0f;
53 const simd lowerEdge(20.0f, splitFrequenciesHz.
F1, splitFrequenciesHz.
F2, splitFrequenciesHz.
F3);
54 const simd upperEdge(splitFrequenciesHz.
F1, splitFrequenciesHz.
F2, splitFrequenciesHz.
F3, nyquist);
60 const simd lowerEdge(20.0f, splitFrequenciesHz.
F1, splitFrequenciesHz.
F2, splitFrequenciesHz.
F3);
61 const simd upperEdge(splitFrequenciesHz.
F1, splitFrequenciesHz.
F2, splitFrequenciesHz.
F3, 22050.0f);
63 const simd bandRatio = upperEdge / lowerEdge;
64 const simd firstThirdCenter = lowerEdge *
pow(bandRatio,
simd(1.0f / 6.0f));
66 return firstThirdCenter;
72 (bandCenters * bandCenters).store(centers2);
74 const float f3 = centers2[3] / nyquist;
75 const float f2 = centers2[2] / f3;
76 const float f1 = centers2[1] / f2;
JPL_INLINE constexpr T Sqrt(T x) noexcept
Definition Math.h:269
Definition AcousticMaterial.h:36
const FreqBandCenters cBandCenters
Definition FrequencyBands.h:89
constexpr SplitFrequencies cDefaultFrequencySplits
At the moment JPL Spatial uses these frequency sptits for sound propagation.
Definition FrequencyBands.h:48
JPL_INLINE SplitFrequencies SplitFrequenciesFromBandCenters(const FreqBandCenters &bandCenters, float nyquist=22050.0f)
Definition FrequencyBands.h:69
JPL_INLINE FreqBandCenters ComputeBandLowerThirdCenters(const SplitFrequencies &splitFrequenciesHz, float nyquist=22050.0f)
Definition FrequencyBands.h:58
JPL_INLINE simd round(const simd &vec) noexcept
Element-wise round to nearest integer value.
Definition SIMD.h:1930
simd pow(const simd &x, const simd &y) noexcept
Definition SIMDMath.h:372
JPL_INLINE FreqBandCenters ComputeBandCenters(const SplitFrequencies &splitFrequenciesHz, float nyquist=22050.0f)
Definition FrequencyBands.h:51
Split frequencies points for crossover.
Definition FrequencyBands.h:41
float F1
Definition FrequencyBands.h:42
float F2
Definition FrequencyBands.h:42
float F3
Definition FrequencyBands.h:42
constexpr bool operator==(const SplitFrequencies &) const noexcept=default
Minimal 4-wide 32-bit float vector implementation for SIMD.
Definition SIMD.h:60