A fixed-storage Chebyshev-series transfer function. More...
#include <nonlinear_shaping.hpp>
Public Member Functions | |
| ChebyshevHarmonicShaperT () noexcept | |
| void | prepare (double sample_rate) |
| void | set_alias_policy (NonlinearAliasPolicy policy) |
| NonlinearAliasPolicy | alias_policy () const noexcept |
| int | oversample_factor () const noexcept |
| int | latency_samples () const noexcept |
| int | tail_samples () const noexcept |
| double | sample_rate () const noexcept |
| void | clear_harmonics () noexcept |
| void | set_harmonic (int order, double amplitude) noexcept |
| double | harmonic (int order) const noexcept |
| double | small_signal_gain () const noexcept |
| The exact derivative of the configured, unclipped series at zero. | |
| double | worst_case_output () const noexcept |
| A transfer-domain bound, independent of the selected alias filter. | |
| void | reset () noexcept |
| SampleType | process (SampleType input) noexcept |
| void | process_block (const SampleType *input, SampleType *output, std::size_t sample_count) noexcept |
| double | shape (double input) const noexcept |
Static Public Member Functions | |
| static constexpr double | dc_output () noexcept |
Static Public Attributes | |
| static constexpr int | kMaxHarmonic = 16 |
A fixed-storage Chebyshev-series transfer function.
Coefficient zero is intentionally unavailable: every polynomial is translated by its value at zero so digital silence remains silence even when even harmonics are active. Inputs are constrained to the Chebyshev design domain [-1, 1]; the alias policy also band-limits the resulting boundary corners unless raw off mode is selected.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinestaticconstexprnoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
The exact derivative of the configured, unclipped series at zero.
|
inlinenoexcept |
|
inlinenoexcept |
A transfer-domain bound, independent of the selected alias filter.
|
staticconstexpr |