The PASS criteria a render of this spec must meet. More...
#include <modal_spec.hpp>
Public Attributes | |
| double | freq_cents = 10.0 |
| Frequency error budget per mode, in cents. | |
| double | t60_rel = 0.08 |
| T60 error budget per mode, relative (0.08 = 8%). | |
| double | gain_rel = 0.10 |
| Amplitude error budget per mode, relative to the resolved gain. | |
| double | verify_seconds = 2.0 |
| Impulse response length a verifier should render to check the above. | |
The PASS criteria a render of this spec must meet.
These are part of the spec — not of the test that reads it — because the tolerance a model can hold is a property of the model: a bar with well-separated modes holds a few cents, a dense plate does not, and burying that number in test code makes it invisible to whoever authors the next spec.
These are defined against the spec's impulse response — the resolved modes driven by a single unit sample — not against a render through excitation. A contact pulse shapes the excitation spectrum by design, so it scales each mode's measured amplitude by an amount that is a property of the pulse rather than of the mode set. The impulse response is the mode set's own definition, and is the only stimulus under which the authored gain and the measured amplitude are the same number. excitation describes performance; these tolerances describe identity.
| double pulp::signal::ModalSpecTolerances::freq_cents = 10.0 |
Frequency error budget per mode, in cents.
| double pulp::signal::ModalSpecTolerances::gain_rel = 0.10 |
Amplitude error budget per mode, relative to the resolved gain.
| double pulp::signal::ModalSpecTolerances::t60_rel = 0.08 |
T60 error budget per mode, relative (0.08 = 8%).
| double pulp::signal::ModalSpecTolerances::verify_seconds = 2.0 |
Impulse response length a verifier should render to check the above.
Too short and a long mode's decay cannot be fit at all, so the spec states the length its own tolerances were set against.