主要内容

生成单精度MATLAB代码

这个例子展示了如何生成单精度MATLAB®从双精度MATLAB代码的代码。

先决条件

完成这个示例中,安装以下产品:s manbetx 845

创建一个文件夹,复制有关文件

  1. 例如,创建一个本地工作目录c: \ ex_2ndOrder_filter

  2. 改变docroot \工具箱\ fixpoint \例子文件夹中。在MATLAB命令行,输入:

    cd (fullfile (docroot,“工具箱”,“fixpoint”,“示例”))

  3. 复制ex_2ndOrder_filter.mex_2ndOrder_filter_test.m文件下载到本地工作目录。

    类型 的名字 描述
    函数代码 ex_2ndOrder_filter.m MATLAB函数入口点
    测试文件 ex_2ndOrder_filter_test.m

    MATLAB脚本测试ex_2ndOrder_filter.m

    ex_2ndOrder_filter函数

    ex_2ndOrder_filter_test脚本

设置单精确配置对象

创建一个单精度配置对象。指定测试文件名称。验证单精度的代码使用测试文件。情节双精度之间的错误代码和代码单精度。使用其他属性的默认值。

scfg = coder.config (“单一”);scfg。TestBenchName =“ex_2ndOrder_filter_test”;scfg。TestNumerics = true;scfg。LogIOForComparisonPlotting = true;

生成单精度MATLAB代码

将双精度MATLAB函数,ex_2ndOrder_filter,单精度MATLAB代码,可以使用convertToSingle

convertToSingle配置scfgex_2ndOrder_filter

convertToSingle分析了双精度的代码。通过运行测试文件转换过程推断类型,因为你没有指定的输入类型ex_2ndOrder_filter函数。转换过程选择单精度类型为双精度变量。它选择int32对索引变量。转换完成后,convertToSingle生成一个类型的建议报告。

视图类型建议报告

看到类型转换过程为变量,选择打开类型建议报告ex_2ndOrder_filter函数。点击链接ex_2ndOrder_filter_report.html

报告在web浏览器中打开。转换过程的转换:

  • 双精度变量

  • 该指数int32。转换过程指标和维度变量int32

视图生成单精度MATLAB代码

查看报告的生成单精度MATLAB代码、在命令窗口:

  1. 滚动到生成单精度的代码的一步。单击查看报告链接。

  2. MATLAB源窗格中,单击ex_2ndOrder_filter_single

代码生成的报告显示的单精度MATLAB代码ex_2ndOrder_filter

查看潜在的数据类型问题

当你产生单精度代码、convertTosingle使强调潜在的数据类型问题的代码生成报告。如果convertTosingle不能删除一个双精度运算,这份报告强调了MATLAB表达式结果的操作。单击代码的见解选项卡。没有潜在的数据类型问题表明,没有双精度操作仍然存在。

比较单精度和双精度变量

你可以看到输入的比较图x和输出y因为你选择日志输入和输出比较的阴谋。

另请参阅

||

相关的话题