nk 1.0.0
C++ Numerical Computing Runtime
Loading...
Searching...
No Matches
conversions_extras.hpp File Reference
#include <memory_resource>
#include <nk/value/value.hpp>
#include <tuple>

Go to the source code of this file.

Functions

std::tuple< Value, Value > nk::signal::sos2tf (const Value &sos, double g=1.0, std::pmr::memory_resource *mr=nullptr)
 Second-order sections to transfer function.
std::tuple< Value, Value, double > nk::signal::sos2zp (const Value &sos, double g=1.0, std::pmr::memory_resource *mr=nullptr)
 Second-order sections to zero / pole / gain.
std::tuple< Value, Value, double > nk::signal::tf2zpk (const Value &b, const Value &a, std::pmr::memory_resource *mr=nullptr)
 Transfer function to zero / pole / gain.
std::tuple< Value, Value, double > nk::signal::ctf2zp (const Value &NUM, const Value &DEN, const Value &SV=Value::Empty, std::pmr::memory_resource *mr=nullptr)
 Cascaded transfer function to zero / pole / gain.
Value nk::signal::scaleFilterSections (const Value &CTFNum, const Value &SV, std::pmr::memory_resource *mr=nullptr)
 Scale numerator coefficients of a cascaded transfer function.
std::tuple< Value, Value, Value, Value > nk::signal::tf2ss (const Value &b, const Value &a, std::pmr::memory_resource *mr=nullptr)
 Transfer function to state space (controllable canonical form).
std::tuple< Value, Value > nk::signal::ss2tf (const Value &A, const Value &B, const Value &C, double D=0.0, std::pmr::memory_resource *mr=nullptr)
 State space to transfer function (SISO only).
std::tuple< Value, Value, double > nk::signal::ss2zp (const Value &A, const Value &B, const Value &C, double D=0.0, std::pmr::memory_resource *mr=nullptr)
 State space → zero / pole / gain ([z, p, k] = ss2zp(A, B, C, D)).
std::tuple< Value, Value, Value, Value > nk::signal::zp2ss (const Value &z, const Value &p, double k, std::pmr::memory_resource *mr=nullptr)
 Zero / pole / gain to state space (via zp2tf then tf2ss).
std::tuple< Value, Value, Value, Value > nk::signal::sos2ss (const Value &sos, double g=1.0, std::pmr::memory_resource *mr=nullptr)
 Second-order sections to state space (via sos2tf then tf2ss).
Value nk::signal::ss2sos (const Value &A, const Value &B, const Value &C, double D=0.0, std::pmr::memory_resource *mr=nullptr)
 State space → second-order sections (sos = ss2sos(A, B, C, D)).