Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
complex
複素数を計算する.
呼び出し手順
c=complex(a) c=complex(a,b)
引数
- a
1行1列またはn行m列の倍精度実数行列, 実部.
aが虚部を有する場合, エラーが発生します.- b
1行1列またはn行m列の倍精度実数行列, 虚部 (デフォルト b=0).
bが虚部を有する場合, エラーが発生します.- c
n行m列の倍精度複素行列, 複素数.
説明
c=complex(a) は, aを実部,
0 を虚部とする複素数を作成します.
c=complex(a,b) は実部a ,
虚部bの複素数を作成します.
この関数は,
特に複素数演算が%inf または%nan
のような特定の浮動小数点数と競合する場合に,
a+%i*bのような式の代替手段となります.
例
以下の例では,実部と虚部から複素数を生成します.
complex(1,2) complex([1 2],[3 4])
a のみが指定された場合, 虚部は0に設定されます.
complex([1 2 3])
a がスカラーで b が
行列の場合, 結果 c は,
bと同じ大きさとなります.
同様に, b がスカラーで a
が行列の場合, 結果 c は
aと同じ大きさになります.
c = complex([1 2 3], 4) c = complex(1, [2 3 4])
a と b が
異なる大きさの行列の場合,以下のセッションのような
エラーが発生します.
-->complex(ones(2,3),ones(4,5)) !--error 10000 complex: Incompatible input arguments #1 and #2: Same sizes expected. at line 33 of function complex called by : complex(ones(2,3),ones(4,5))
complex 関数の目的は,NaNや無限大のような
IEEE 浮動小数点数を管理することです.
以下の例では,複素数演算を使用する場合,
実部と虚部が複合体となる複素数を作成するのは
容易ではないことを示します.
これは,%i と %infの積が
(0+%i) * (%inf+%i*0)と評価されるためです.
この結果は,中間式0*%inf,つまり,
%nanとなります.
-->%inf+%i*%inf
ans =
Nan + Inf
この問題の解決策は complex関数を使用することです.
-->complex(%inf,%inf)
ans =
Inf + Inf
参照
- imult — 虚数単位 i を乗じる
| Report an issue | ||
| << Complex | Complex | conj >> |