nk 1.0.0
C++ Numerical Computing Runtime
Loading...
Searching...
No Matches
ordqz.hpp
Go to the documentation of this file.
1
3// toolboxes/linalg/include/nk/linalg/ordqz.hpp
4//
5// Reorder Generalized Schur decomposition: [AAS, BBS, QS, ZS] = ordqz(AA, BB, Q, Z, select/domain)
6
7#pragma once
8
9#include <memory_resource>
10#include <string>
11#include <tuple>
12#include <nk/value/value.hpp>
13
14namespace nk::linalg {
15
18
19
21std::tuple<Value, Value, Value, Value> ordqz(const Value &AA, const Value &BB,
22 const Value &Q, const Value &Z,
23 const Value &select,
24 std::pmr::memory_resource *mr = nullptr);
25
27std::tuple<Value, Value, Value, Value> ordqz(const Value &AA, const Value &BB,
28 const Value &Q, const Value &Z,
29 const std::string &domain,
30 std::pmr::memory_resource *mr = nullptr);
31
32
34} // namespace nk::linalg
Core MATLAB-compatible multidimensional array and scalar value type.
Definition value.hpp:61
std::tuple< Value, Value, Value, Value > ordqz(const Value &AA, const Value &BB, const Value &Q, const Value &Z, const Value &select, std::pmr::memory_resource *mr=nullptr)
Reorder Generalized Schur decomposition using a boolean select vector.