17.2 Complex Arithmetic

Last-modified: 2025-04-02 (水) 21:13:13

17.2 複素数演算

以下の関数の説明において、 z は複素数x + i yであり、i はと定義されますsqrt (-1)。

: z = abs (x)

xの大きさを計算します。

大きさは | z | =sqrt (x^2 + y^2)として定義されます。

例えば:

abs (3 + 4i)
    ⇒ 5

See also: arg.

: theta = arg (z)

: theta = angle (z)
引数、つまりzの角度を計算します。

これは、 ラジアン単位でtheta =atan2 (y, x)として定義されます。

例えば:

arg (3 + 4i)
    ⇒ 0.92730

See also: abs.

: zc = conj (z)

zの複素共役を返します。

複素共役はconj (z) = x - i yとして定義されます。

See also: real, imag.

: zsort = cplxpair (z)

: zsort = cplxpair (z, tol)

: zsort = cplxpair (z, tol, dim)

数値z を、実部が増加する順に複素共役ペアに分類します。

負の虚数複素数は各ペアの最初に配置されます。すべての実数 ( を含む数 ) は複素数ペアの後に配置されます。

abs (imag (z)) / abs (z) < tol

tol は、マッチングの許容値を決定する範囲 [0, 1) の重み係数です。デフォルト値は で100 * eps、与えられた複素ペアの結果の許容値はtol * abs (z(i)))です 。

デフォルトでは、複素ペアはzの最初の非シングルトン次元に沿ってソートされます。dimが指定されている場合、複素ペアはこの次元に沿ってソートされます。

一部の複素数をペアにできなかった場合はエラーを通知します。すべての複素数が正確な共役ではない場合 ( tol以内) はエラーを通知します。実部が同じで虚部が異なるペアの順序は定義されていないことに注意してください。

cplxpair (exp (2i*pi*[0:4]'/5)) == exp (2i*pi*[3; 2; 4; 1; 0]/5)

: y = imag (z)

の順序は定義されていないことに注意してください。

cplxpair (exp (2i*pi*[0:4]'/5)) == exp (2i*pi*[3; 2; 4; 1; 0]/5)

:y = 画像 (z)

zの虚数部を実数として返します。

See also: real, conj.

: x = real (z)

zの実部を返します。

See also: imag, conj.