Main Content

eps

浮動小数点相対精度

説明

d = eps は、1.0 から次に大きい倍精度数値 (2-52) までの距離を返します。

d = eps(x) は、abs(x) から、x と同じ精度をもち次に大きい浮動小数点数までの、正の距離を返します。ここで、x のデータ型は single または double です。x の型が duration である場合、eps(x) は次に大きい duration の値を返します。コマンド eps(1.0)eps と等価です。

d = eps(datatype) は、datatype で指定したデータ型 ("double" または "single") に従って eps を返します。構文 eps("double") (既定) は eps と等価で、eps("single")eps(single(1.0)) と等価です。

d = eps("like",p) は、1.0 から、浮動小数点変数 p と同じ精度で、データ型、スパース性、実数/複素数の区別が p と同じである、次に大きい浮動小数点数までの正の距離を返します。

すべて折りたたむ

1.0 から次に大きい倍精度数値までの距離を返します。

d = eps
d = 2.2204e-16

epseps(1.0) および eps("double") と等価です。

log2(eps) を計算します。

d = log2(eps)
d = -52

基底 2 で、eps2^-52 と等しくなります。

10.0 から次に大きい倍精度数値までの距離を返します。

d = eps(10.0)
d = 1.7764e-15

1.0 から次に大きい単精度数値までの距離を返します。

d = eps("single")
d = single
    1.1921e-07

eps("single")eps(single(1.0)) と等価です。

log2(eps("single")) を計算します。

d = log2(eps("single"))
d = single
    -23

基底 2 で、単精度の eps2^-23 と等しくなります。

単精度表現の 10.0 から次に大きい単精度数値までの距離を返します。

d = eps(single(10.0))
d = single
    9.5367e-07

1.0 から、データ型と実数/複素数の区別が既存の配列と同じである、次に大きな浮動小数点数までの距離を返します。

最初に、single データ型の複素数ベクトルを作成します。

p = single([0.12+2i -0.5i 3]);

1.0 から、次に大きい浮動小数点数までの距離を、p と同様の複素数であるスカラーとして返します。

d = eps("like",p)
d = single
    1.1921e-07 + 0.0000e+00i

10 行 10 列のスパース行列を作成します。

p = sparse(10,10,pi);

1.0 から、データ型とスパース性が p と同じである、次に大きな浮動小数点数までの距離を返します。出力は 1 行 1 列のスパース行列です。

d = eps("like",p)
d = 
   (1,1)      2.2204e-16

入力引数

すべて折りたたむ

入力配列。スカラー、ベクトル、行列または多次元配列として指定します。d のサイズは x と同じです。すべての x について、eps(x) = eps(-x) = eps(abs(x)) です。x が複素数である場合、d は次に大きい浮動小数点までの距離です。xInf または NaN の場合、eps(x)NaN を返します。

データ型: double | single | duration
複素数のサポート: あり

出力データ型。"double" または "single" として指定します。

  • eps("double")eps および eps(1.0) と等価です。

  • eps("single")eps(single(1.0)) および single(2^-23) と等価です。

データ型: char

プロトタイプ。浮動小数点変数として指定します。

データ型: double | single
複素数のサポート: あり

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2006a より前に導入