フィルターのクリア

doubleからsi​ngleのキャスト精​度の向上方法?

14 ビュー (過去 30 日間)
nguyen congkien
nguyen congkien 2018 年 5 月 29 日
編集済み: nguyen congkien 2018 年 5 月 30 日
添付画像みたいのキャスト処理をSimulinkモデルで実装してみましたが、 8.333333333333333(double)⇒8.3333330154419(single)になる理由は何でしょうか。 2進数⇔10進数の変換結果が約8.333333313465118になりますが、Simulink上でもこの結果ぐらいになり、浮動小数点のキャスト精度向上するために何か設定・コンフィギュレーションがありますでしょうか。(Matlab R2025Sp1)

回答 (1 件)

Takafumi
Takafumi 2018 年 5 月 29 日
浮動小数点の精度を確認するのに、epsコマンドがありまして、 single 型の精度は代替小数点7桁あたりまでです。
eps('single')
ans =
single
1.1920929e-07
  1 件のコメント
nguyen congkien
nguyen congkien 2018 年 5 月 30 日
編集済み: nguyen congkien 2018 年 5 月 30 日
ご回答ありがとうございます。
知りたかったのが、
・どうしてその結果になるのか。
・どうやって結果の制度を上げるのか。
です。

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSimulink についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!