Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - Русский
Scilabヘルプ >> Polynomials > sylm

sylm

シルベスタ行列

呼び出し手順

S = sylm(a, b)

パラメータ

a,b

多項式

S

行列

説明

sylm(a,b) は,多項式aおよびb に関連するシルベスタ行列,すなわち, 以下のような行列Sを出力します:

coeff( a*x + b*y )' = S * [coeff(x)';coeff(y)'].

Sの次元はdegree(a)+degree(b)に等しくなります.

a およびbが規約分解多項式の場合,

rank(sylm(a,b))=degree(a)+degree(b)) となります. また,以下の命令は,

u = sylm(a,b) \ eye(na+nb,1)
x = poly(u(1:nb),'z','coeff')
y = poly(u(nb+1:na+nb),'z','coeff')

べズー分解,つまり, a*x+b*y = 1となるような最小次数の x および yを計算します.

x = poly(0,"x");
y = poly([1, 2, 3], "x", "coeff")
sylm(x, y)
--> x = poly(0, "x");
--> y = poly([1, 2, 3], "x","coeff")
 y  =
  1 +2x +3x²

--> sylm(x, y)
 ans  =
   0.   0.   1.
   1.   0.   2.
   0.   1.   3.

参照

  • bezout — Bezout法により、2つの多項式または2つの整数の最大公約数を計算します
  • diophant — Solves the diophantine (Bezout) equation p1*x1 + p2*x2 = b
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 25 08:53:20 CET 2020