nk 1.0.0
C++ Numerical Computing Runtime
Loading...
Searching...
No Matches
props.hpp
Go to the documentation of this file.
1// toolboxes/control/include/nk/control/props/props.hpp
2//
3// Predicates and analytic properties of an LTI struct value (tf, zpk,
4// or ss as built by toolboxes/control/lti).
5
6#pragma once
7
8#include <memory_resource>
9#include <nk/value/value.hpp>
10#include <utility>
11
12namespace nk::control {
13
16
17
25
34Value isct(const Value &sys, std::pmr::memory_resource *mr = nullptr);
35
45Value isdt(const Value &sys, std::pmr::memory_resource *mr = nullptr);
46
55Value issiso(const Value &sys, std::pmr::memory_resource *mr = nullptr);
56
66Value isproper(const Value &sys, std::pmr::memory_resource *mr = nullptr);
67
77Value isstable(const Value &sys, std::pmr::memory_resource *mr = nullptr);
78
89Value order(const Value &sys, std::pmr::memory_resource *mr = nullptr);
90
100Value pole(const Value &sys, std::pmr::memory_resource *mr = nullptr);
101
113Value zero(const Value &sys, std::pmr::memory_resource *mr = nullptr);
114
121
135 std::pmr::memory_resource *mr = nullptr);
136
146std::pair<Value, Value>
147pzmap(const Value &sys, std::pmr::memory_resource *mr = nullptr);
148
158Value isstatic(const Value &sys, std::pmr::memory_resource *mr = nullptr);
159
170Value tzero(const Value &sys, std::pmr::memory_resource *mr = nullptr);
171
172
174} // namespace nk::control
Core MATLAB-compatible multidimensional array and scalar value type.
Definition value.hpp:61
Value isstable(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Stability predicate (isstable(sys)).
Value isdt(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Discrete-time predicate (isdt(sys)).
DampResult damp(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Natural frequencies and damping ratios ([wn, zeta, p] = damp(sys)).
Value pole(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Poles of the system (pole(sys)).
Value issiso(const Value &sys, std::pmr::memory_resource *mr=nullptr)
SISO predicate (issiso(sys)).
Value zero(const Value &sys, std::pmr::memory_resource *mr=nullptr)
(Transmission) zeros of the system (zero(sys)).
Value isstatic(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Static-system predicate (isstatic(sys)).
Value tzero(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Transmission zeros (tzero(sys)).
Value isproper(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Proper rational predicate (isproper(sys)).
Value isct(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Continuous-time predicate (isct(sys)).
Value order(const Value &sys, std::pmr::memory_resource *mr=nullptr)
System order (order(sys)).
std::pair< Value, Value > pzmap(const Value &sys, std::pmr::memory_resource *mr=nullptr)
Pole / zero map ([p, z] = pzmap(sys)).
Result of damp.
Definition props.hpp:116
Value p
Pole list (column vector).
Definition props.hpp:119
Value zeta
Damping ratios (column vector, dimensionless).
Definition props.hpp:118
Value wn
Natural frequencies (column vector, rad/s).
Definition props.hpp:117