Main Content

real

構文

説明

real(z) は、z の実数部を返します。z が行列の場合、realz の要素ごとに働きます。

数値入力の実数部の計算

次の数値の実数部を求めます。これらの数値はシンボリック オブジェクトではないため、結果は浮動小数点数となります。

[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

xy が実数であるという仮定を、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 より前に導入

参考

| | | |