ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

単精度 MATLAB コードの生成

この例では、単精度の MATLAB® コードを倍精度の MATLAB コードから生成する方法について示します。

前提条件

この例を実行するには、次の製品をインストールします。

フォルダーの作成と関連ファイルのコピー

  1. ローカルの作業フォルダー (例: c:\ex_2ndOrder_filter) を作成します。

  2. docroot\toolbox\fixpoint\examples フォルダーに移動します。MATLAB コマンド ラインで以下のように入力します。

    cd(fullfile(docroot, 'toolbox', 'fixpoint', 'examples')) 

  3. ex_2ndOrder_filter.m および ex_2ndOrder_filter_test.m ファイルをローカル作業フォルダーにコピーします。

    種類名前説明
    関数のコードex_2ndOrder_filter.mMATLAB のエントリポイント関数
    テスト ファイルex_2ndOrder_filter_test.m

    ex_2ndOrder_filter.m をテストする MATLAB スクリプト

     関数 ex_2ndOrder_filter

     ex_2ndOrder_filter_test スクリプト

単精度構成オブジェクトの設定

単精度構成オブジェクトを作成します。テスト ファイル名を指定します。テスト ファイルを使用して単精度コードを検証します。倍精度コードと単精度コードとの誤差をプロットします。その他のプロパティに既定値を使用します。

scfg = coder.config('single');
scfg.TestBenchName = 'ex_2ndOrder_filter_test';
scfg.TestNumerics = true;
scfg.LogIOForComparisonPlotting = true;

単精度 MATLAB コードの生成

倍精度の MATLAB 関数 ex_2ndOrder_filter単精度の MATLAB コードに変換するには、convertToSingle を使用します。

convertToSingle -config scfg ex_2ndOrder_filter

convertToSingle は倍精度コードを解析します。関数 ex_2ndOrder_filter の入力型を指定しなかったため、変換プロセスではテスト ファイルの実行によって型が推定されます。変換プロセスは倍精度変数に単精度の型を選択します。インデックス変数に int32 を選択します。変換が完了すると、convertToSingle で型推奨レポートが生成されます。

型推奨レポートの表示

変換プロセスによって変数に選択された型を確認するには、関数 ex_2ndOrder_filter の型推奨レポートを開きます。ex_2ndOrder_filter_report.html リンクをクリックします。

レポートが Web ブラウザーで開きます。変換プロセスによって次が変換されます。

  • 倍精度変数から single

  • インデックス i から int32。変換プロセスはインデックスと次元変数を int32 にキャストします。

生成された単精度の MATLAB コードの表示

単精度の MATLAB コード生成のレポートを表示するには、コマンド ウィンドウで次を行います。

  1. [単精度型のコードの生成] ステップにスクロールします。[レポートの表示] リンクをクリックします。

  2. [MATLAB ソース] ペインで、ex_2ndOrder_filter_single をクリックします。

コード生成レポートに、ex_2ndOrder_filter に対する単精度の MATLAB コードが表示されます。

潜在的なデータ型の問題の表示

単精度コードを生成する場合、convertTosingle を使用して潜在的なデータ型の問題をコード生成レポートで強調表示できます。convertTosingle で倍精度演算を削除できない場合、演算を行う MATLAB 式がレポートで強調表示されます。[コードの洞察] タブをクリックします。潜在的なデータ型の問題がないということは、倍精度演算が残っていないことを示します。

倍精度変数と単精度変数との比較

比較プロットのために入力と出力を記録することを選択したため、入力 x と出力 y の比較プロットを確認できます。

参考

| |

関連するトピック