#include <pulp/signal/denormal.hpp>
#include <pulp/signal/simd_buffer.hpp>
#include <algorithm>
#include <cmath>
#include <span>
Go to the source code of this file.
|
| template<typename SampleType = float> |
| void | pulp::signal::fill_strike_pulse (std::span< SampleType > dst, SampleType velocity) |
| | Fill dst with a raised-cosine contact pulse, peak-normalized to velocity.
|
| float | pulp::signal::mode_shape_at (const ModalShape &shape, float position) |
| | Evaluate a mode's shape at a normalized position along the body.
|
| void | pulp::signal::fill_ideal_string_shapes (std::span< ModalShape > dst) |
| | Fill dst with the mode shapes of an ideal string fixed at both ends: dst[i] describes the (i+1)-th transverse mode, phi_m(x) = sin(m*pi*x), whose nodes are at x = k/m.
|
| template<typename SampleType = float> |
| void | pulp::signal::fill_mode_weights (std::span< SampleType > dst, std::span< const ModalShape > shapes, float position) |
| | Sample every shape in shapes at position, writing phi_m(position) to dst.
|