Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 其它 > 资料存档
资料存档 资料存档
回复
 
主题工具 显示模式
旧 2019-12-14, 20:13   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 在MATLAB中强制变量类型

我有double float类型的变量,我希望它们是float 。是否有一种方法可以强制变量float而不是双float ,还有没有办法以全局方式对所有函数和子函数进行修改,而在主函数的开头只有几行?我有很多函数,它们使用许多临时变量并创建它们返回的变量。遍历我的所有功能并进行更改将非常困难。

我对此要求的理由:

我正在编写MATLAB程序,以模拟一种算法,然后将其在硬件中实现。我想确保使用32位作为信号大小不会引起计算错误。



回答:

使用@cbz建议的B=single(A) ,或将数组定义为SINGLE ,例如通过调用B=zeros(3,3,'single')在Matlab中创建“浮点数”。

无法全局地将Matlab变成“浮动”环境。尽管大多数低层函数也都针对single实现(少数例外,例如在DOUBLE帮助中提到的那些),但许多高层内置函数仅适用于double 。

换句话说,您必须手动将变量定义为single ,并且必须定期检查变量是否没有被悄悄地转换为double ,最后,如果代码需要功能,则可能无法正常工作尚未针对single实施。



更多&回答...
poster 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛禁用 表情符号
论坛启用 [IMG] 代码
论坛启用 HTML 代码



所有时间均为北京时间。现在的时间是 23:48


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.