real
複素数の実数部
構文
説明
例
数値入力の実数部の計算
次の数値の実数部を求めます。これらの数値はシンボリック オブジェクトではないため、結果は浮動小数点数となります。
[real(2 + 3/2*i), real(sin(5*i)), real(2*exp(1 + i))]
ans = 2.0000 0 2.9374
シンボリック入力の実数部の計算
シンボリック オブジェクトに変換された数値の実数部を計算します。
[real(sym(2) + 3/2*i), real(4/(sym(1) + 3*i)), real(sin(sym(5)*i))]
ans = [ 2, 2/5, 0]
次のシンボリック式の実数部を計算します。
real(2*exp(1 + sym(i)))
ans = 2*cos(1)*exp(1)
シンボリック式の実数部の計算
一般的に、real
は、変数を含むシンボリック式から実数部全体を抽出できません。ただし、real
は入力式を書き換えたり、単純化できることもあります。
syms a x y real(a + 2) real(x + y*i)
ans = real(a) + 2 ans = real(x) - imag(y)
数値をこれらの変数に代入する場合や、これらの変数が実数であることを指定する場合は、real
は式の実数部を抽出できます。
syms a a = 5 + 3*i; real(a + 2)
ans = 7
syms x y real real(x + y*i)
ans = x
x
と y
が実数であるという仮定を、syms
を使用して再作成することで消去します。
syms x y
行列入力の実数部の計算
行列 A
の要素の実数部を求めます。
syms x A = [-1 + sym(i), sinh(x); exp(10 + sym(7)*i), exp(sym(pi)*i)]; real(A)
ans = [ -1, real(sinh(x))] [ cos(7)*exp(10), -1]
入力引数
ヒント
シンボリック オブジェクトではない数値について
real
を呼び出すと、MATLAB® 関数real
が呼び出されます。
代替方法
共役によって、z
の実数部を計算できます。 real(z)= (z + conj(z))/2
.
バージョン履歴
R2006a より前に導入