我是靠谱客的博主 能干鱼,最近开发中收集的这篇文章主要介绍Simulink仿真计算中保留特定位数的小数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

simulink模块库中无保留特定位数小数的相关模块,因此需要通过自定义matlab function来实现。但是在simulink中直接调用matlab的系统函数会出现"Function ‘syms’ not supported for code generation"的错误。具体解决方案如下:

1 创建myFormat.m文件

function out
= myFormat(in)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%保留特定位数的小数
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
syms a;
a=roundn(in,-4);%保留4位小数
out
= a;
end

2 在simulink中自定义matlab function中调用该方法

function out = myFloor(in)
coder.extrinsic('myFormat')
out = 0;
out = myFormat(in);

该方法同样可以实现simulink仿真中调用matlab脚本。

最后

以上就是能干鱼为你收集整理的Simulink仿真计算中保留特定位数的小数的全部内容,希望文章能够帮你解决Simulink仿真计算中保留特定位数的小数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(86)

评论列表共有 0 条评论

立即
投稿
返回
顶部