Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
roots
多項式の根
呼び出し手順
[x]=roots(p) [x]=roots(p,'e')
パラメータ
- p
実数または複素係数の多項式 または 降順の多項式係数のベクトル(MATLAB互換用).
説明
x=roots(p)
は
多項式p
のx
である
複素ベクトルを返す.
100次以下の実数多項式の場合,高速な(Jenkins-Traub法に基づく)
RPOLYアルゴリズムが使用される.
その他の場合, その根はコンパニオン行列の固有値として計算される.
どのような場合でもこのアルゴリズムを強制的に使用したい
場合,x=roots(p,'e')
を使用されたい.
例
作者
- Serge Steer (INRIA)
参照
RPOLYアルゴリズムは以下の文献に記述されている. "Algorithm 493: Zeros of a Real Polynomial", ACM TOMS Volume 1, Issue 2 (June 1975), pp. 178-189
Jenkins, M. A. and Traub, J. F. (1970), A Three-Stage Algorithm for Real Polynomials Using Quadratic Iteration, SIAM J. Numer. Anal., 7(1970), 545-566.
Jenkins, M. A. and Traub, J. F. (1970), Principles for Testing Polynomial Zerofinding Programs. ACM TOMS 1, 1 (March 1975), pp. 26-34
使用される関数
ソースコードrpoly.f はScilabの配布ソースのディレクトリ SCI/modules/polynomials/src/fortran にある. コンパニオン行列が使用される場合,固有値計算は LapackコードであるDGEEVおよびZGEEVにより行われる.
<< residu | Polynomials | rowcompr >> |