MATLAB ヘルプ センター
ガロア体上の多項式を乗算
c = gfconv(a,b)
c = gfconv(a,b,p)
c = gfconv(a,b,field)
c = gfconv(polys)
c = gfconv(polys,p)
c = gfconv(polys,field)
c = gfconv(a,b) は、GF(2) 多項式の係数を昇べきの順に指定する行ベクトルを返します。返されるベクトルは、GF(2) 多項式の a と b の乗算結果です。結果の GF(2) 多項式 c の多項式次数は、a の次数と b の次数を足したものと等価です。
c
a
b
詳細については、ヒントを参照してください。
例
c = gfconv(a,b,p) は、2 つの GF(p) 多項式を乗算します。ここで、p は素数です。a、b、および c は同じガロア体にあります。a、b、および c は、昇べきの順の係数をもつ多項式です。各係数の範囲は、[0, p–1] です。
p
c = gfconv(a,b,field) は、2 つの GF(pm) 多項式を乗算します。ここで、field は GF(pm) のすべての要素の m 組を含む行列です。p は素数、m は正の整数です。a、b、および c は同じガロア体にあります。
field
この構文では、各係数は指数形式で指定されます。具体的には、[-Inf, 0, 1, 2, ...] の形式です。指数形式の要素は、GF(pm) の原始元 α に対応する field 要素 [0, 1, α, α2, ...] を表します。
c = gfconv(polys) は、GF(2) 多項式の係数を昇べきの順に指定する行ベクトルを返します。返されるベクトルは、polys で指定された GF(2) 多項式の乗算結果です。結果の GF(2) 多項式 c の多項式次数は、polys に含まれる多項式の次数の合計と等しくなります。polys で多項式を文字ベクトルの cell 配列または string 配列として指定する場合は、この構文を使用します。
polys
c = gfconv(polys,p) は、polys で指定された GF(p) 多項式を乗算します。ここで、p は素数です。polys と c は、係数を昇べきの順に含む多項式です。各係数の範囲は [0, p–1] です。a、b、および c は同じガロア体にあります。
c = gfconv(polys,field) は、polys の GF(pm) 多項式を乗算します。ここで、field は GF(pm) のすべての要素の m 組を含む行列です。p は素数、m は正の整数です。a、b、および c は同じガロア体にあります。
すべて折りたたむ
1+2x+3x2+4x3 と 1+x を 3 回乗算します。多項式を行ベクトル、文字ベクトル、および string として表します。
c_rv = gfconv([1 1 0 1],[1 1])
c_rv = 1×5 1 0 1 1 1
c_cv = gfconv('1 + x + x^3','1 + x')
c_cv = 1×5 1 0 1 1 1
c_s = gfconv("1 + x + x^3","1 + x")
c_s = 1×5 1 0 1 1 1
この結果は、1+x2+x3+x4 に対応します。
ガロア体 GF(3) 上の 1+x+x4 と x+x2 を乗算します。
gfc = gfconv([1 1 0 0 1],[0 1 1],3)
gfc = 1×7 0 1 2 1 0 1 1
この結果は、x+2x2+x3+x5+x6 に対応します。
ガロア体 GF(24) の 1+2x+3x2+4x3+5x4 および 1+x を乗算します。
field = gftuple([-1:2^4-2]',4,2); c = gfconv('1 + 2x + 3x^2 + 4x^3 + 5x^4','1 + x',field)
c = 1×6 2 6 7 8 9 6
関数gfprettyを使用して、結果を多項式型で表示します。
gfpretty
gfpretty(c)
2 3 4 5 2 + 6 X + 7 X + 8 X + 9 X + 6 X
乗算すると t=3 の DVB-S2 生成多項式になる、3 つの多項式を含む cell 配列を作成します。
polyCell = {'1 + x + x3 + x5 + x14', ... '1 + x6 + x8 + x11 + x14','1 + x + x2 + x6 + x9 + x10 + x14'}; gp = gfconv(polyCell); % DVB-S2 for t=3
gfpretty(gp)
4 6 8 10 11 13 16 17 20 24 25 26 27 1 + X + X + X + X + X + X + X + X + X + X + X + X + X 30 31 32 33 34 35 36 37 38 39 42 + X + X + X + X + X + X + X + X + X + X + X
ガロア体 GF(24) の 1+2x+3x2+4x3+5x4、1+x、および 1+x3 を乗算します。
field = gftuple((-1:2^4-2)', 4, 2); c = gfconv(["1 + 2x + 3x^2 + 4x^3 + 5x^4","1 + x","1 + x3"],field)
c = 1×9 4 13 14 9 2 1 7 8 8
2 3 4 5 6 7 8 4 + 13 X + 14 X + 9 X + 2 X + X + 7 X + 8 X + 8 X
ガロア体の多項式。行ベクトル、文字ベクトル、または string として指定します。a は、Communications Toolbox での多項式の表現または数値ベクトルのいずれかにできます。
a と b は、両方とも GF(p) 多項式または GF(pm) 多項式でなければなりません。ここで、p は素数です。p の値は、含まれている場合は指定された値、省略されている場合は 2 になり、field が指定されている場合は暗黙的に決まります。
2
例: [1 2 3 4] は、行ベクトルとして表された GF(5) の多項式 1+2x+3x2+4x3 です。
[1 2 3 4]
3
データ型: double | char | string
double
char
string
ガロア体の多項式。行ベクトル、文字ベクトル、または string として指定します。b は、Communications Toolbox での多項式の表現または数値ベクトルのいずれかにできます。
例: '1 + x' は、文字ベクトルとして表された GF(24) の多項式です。
'1 + x'
4
素数。素数として指定します。
データ型: double
GF(pm) のすべての要素の m 組。行列として指定します。field は、同じ原始元に対応して配置された GF(pm) のすべての要素をリストする行列です。GF(pm) のすべての要素の m 組を生成するには、次を使用します。
field =gftuple([-1:p^m-2]',m,p)
gftuple
ガロア体の多項式のリスト。文字ベクトルの cell 配列または string 配列として指定します。
例: ["1+x+x3+x5+x14","1+x6+x8+x11+x14"] は多項式の string 配列です。
["1+x+x3+x5+x14","1+x6+x8+x11+x14"]
データ型: cell | string
cell
ガロア体の多項式。昇べきの順に並べた多項式の係数の行ベクトルとして返されます。結果の GF(pm) 多項式 c の多項式次数は、入力多項式の次数の合計と等しくなります。c は、入力多項式と同じガロア体にあります。
関数 gfconv は、GF(pm) の計算を行います。ここで、p は素数、m は正の整数です。この関数は、ガロア体上の多項式を乗算します。GF(2m) で実行するために、ガロア配列に対して gf オブジェクトの関数 conv を使用することもできます。詳細については、多項式の乗算と除算を参照してください。
gf
conv
ガロア体の要素を乗算するには、gfconv の代わりに gfmul を使用します。代数的には、ガロア体上の多項式の乗算は、多項式の係数を含むベクトルの畳み込みと等価です。この畳み込み操作では、同じガロア体上の演算が使用されます。
gfconv
gfmul
R2006a より前に導入
gfdeconv
gfadd
gfsub
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ