- SylvesterEquation
- SylvesterEquationTriangular
- SylvesterEquationTriangularBlocked
- SylvesterEquationSchur
- SylvesterEquationSchurBlocked
SylvesterEquation
Решает уравнение Сильвестра для вещественных или комплексных квадратных матриц:
A*X + X*B = scale*C
где A — общая матрица размера m на m, а B — общая матрица размера n на n; правая часть C и решение X имеют размер m на n; scale — выходной коэффициент масштабирования, устанавливаемый ≤ 1 для предотвращения переполнения в X.
Используются LAPACK-функции GEES и TRSYL. См. раздел «Примечание» в описании метода SylvesterEquationSchur.
Вычисления для типа matrix<double>
bool matrix::SylvesterEquation(
|
Вычисления для типа matrix<float>
bool matrixf::SylvesterEquation(
|
Вычисления для типа matrix<complex>
bool matrix::SylvesterEquation(
|
Вычисления для типа matrix<complexf>
bool matrix::SylvesterEquation(
|
Параметры
B
[in] Квадратная матрица B.
C
[in] Матрица C, столбцы которой представляют собой правые части систем линейных уравнений.
X
[out] Матрица X с решением уравнения Сильвестра.
scale
[out] Коэффициент масштабирования, устанавливаемый ≤ 1 для предотвращения переполнения в X.
Возвращаемое значение
Возвращает true в случае успеха, иначе false в случае ошибки.
Примечание
Выходная матрица X имеет те же размеры, что и входная матрица C.