|
Sound Byte Libs 0.5.1-121-g3358a44
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
|
Definition at line 58 of file modal_resonator.hpp.
#include <modal_resonator.hpp>
Public Member Functions | |
| ModalResonator () | |
| void | set_mode (uint8_t index, float hz, float q, float match, float weight=1.0f, float radiate=1.0f) |
| Set one mode. Modes at or beyond count() are kept but silent. | |
| void | set_modes (const Mode *modes, uint8_t count) |
| Install a whole set; count is clamped to the bank's size. | |
| void | set_count (uint8_t count) |
| How many of the modes are live. | |
| uint8_t | count () const |
| const pm::MassSpringDamper & | mode (uint8_t i) const |
| float | weight (uint8_t i) const |
| float | radiate (uint8_t i) const |
| float | admittance () const |
| float | history () const |
| float | commit (float force) |
| Apply this sample's force to every live mode; return the point velocity. | |
| float | radiated () const |
| What the body sounds like this sample: each mode's velocity by its radiation weight. | |
| float | energy () const |
| Stored energy across the live modes, for passivity tests. | |
| void | reset () |
| diagram::Ports | describe (diagram::Graph &g, uint8_t parent, const char *name="resonator") const |
| One Load node per live mode, wired in parallel to a shared point. Never called from audio code (AP-037). | |
Static Public Attributes | |
| static constexpr uint8_t | MAX_MODES = MaxModes |
|
inline |
Definition at line 66 of file modal_resonator.hpp.
|
inline |
Set one mode. Modes at or beyond count() are kept but silent.
Definition at line 75 of file modal_resonator.hpp.
References sbl::dsp::math::clamp01(), sbl::dsp::pm::ModalResonator< MaxModes >::radiate(), sbl::dsp::pm::MassSpringDamper::set_resonance(), and sbl::dsp::pm::ModalResonator< MaxModes >::weight().
|
inline |
Install a whole set; count is clamped to the bank's size.
Definition at line 85 of file modal_resonator.hpp.
References sbl::dsp::math::clamp01(), sbl::dsp::pm::ModalResonator< MaxModes >::count(), sbl::dsp::pm::ModalResonator< MaxModes >::radiate(), sbl::dsp::pm::MassSpringDamper::set_resonance(), and sbl::dsp::pm::ModalResonator< MaxModes >::weight().
|
inline |
How many of the modes are live.
Definition at line 96 of file modal_resonator.hpp.
References sbl::dsp::pm::ModalResonator< MaxModes >::count().
|
inline |
Definition at line 100 of file modal_resonator.hpp.
Referenced by sbl::dsp::pm::ModalResonator< MaxModes >::set_count(), and sbl::dsp::pm::ModalResonator< MaxModes >::set_modes().
|
inline |
Definition at line 102 of file modal_resonator.hpp.
|
inline |
Definition at line 103 of file modal_resonator.hpp.
Referenced by sbl::dsp::pm::ModalResonator< MaxModes >::set_mode(), and sbl::dsp::pm::ModalResonator< MaxModes >::set_modes().
|
inline |
Definition at line 104 of file modal_resonator.hpp.
Referenced by sbl::dsp::pm::ModalResonator< MaxModes >::set_mode(), and sbl::dsp::pm::ModalResonator< MaxModes >::set_modes().
|
inline |
Definition at line 108 of file modal_resonator.hpp.
|
inline |
Definition at line 110 of file modal_resonator.hpp.
References sbl::dsp::pm::ModalResonator< MaxModes >::history().
Referenced by sbl::dsp::pm::ModalResonator< MaxModes >::history().
|
inline |
Apply this sample's force to every live mode; return the point velocity.
Definition at line 117 of file modal_resonator.hpp.
References sbl::dsp::pm::MassSpringDamper::commit().
|
inline |
What the body sounds like this sample: each mode's velocity by its radiation weight.
Definition at line 130 of file modal_resonator.hpp.
|
inline |
Stored energy across the live modes, for passivity tests.
Definition at line 133 of file modal_resonator.hpp.
References sbl::dsp::pm::ModalResonator< MaxModes >::energy().
Referenced by sbl::dsp::pm::ModalResonator< MaxModes >::energy().
|
inline |
Definition at line 139 of file modal_resonator.hpp.
References sbl::dsp::pm::ModalResonator< MaxModes >::reset().
Referenced by sbl::dsp::pm::ModalResonator< MaxModes >::reset().
|
inline |
One Load node per live mode, wired in parallel to a shared point. Never called from audio code (AP-037).
Definition at line 145 of file modal_resonator.hpp.
References sbl::dsp::diagram::Graph::add_edge(), sbl::dsp::diagram::Graph::add_group(), sbl::dsp::diagram::Graph::add_node(), sbl::dsp::pm::MassSpringDamper::describe(), sbl::dsp::diagram::Force, sbl::dsp::diagram::Ports::group, sbl::dsp::diagram::Ports::in, sbl::dsp::diagram::Junction, sbl::dsp::diagram::Ports::out, and sbl::dsp::diagram::Velocity.
|
staticconstexpr |
Definition at line 64 of file modal_resonator.hpp.