Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2010-02-28, 16:55   #1
sunnyfighter
初级会员
 
注册日期: 2010-02-16
年龄: 43
帖子: 2
声望力: 0
sunnyfighter 正向着好的方向发展
默认 S函数请教

给这个分段函数编写了S函数的M文件,怎么调试总报错呢,各位高手帮忙看下,
分段函数:

f(x)=1 (x<m)
f(x)=(n-x+m)/n (m<x<n)
f(x)=0 x>m+n
其中m,n为常数。
M文件:
function [sys,x0,str,ts] = system(t,x,u,flag)
switch flag,
case 0
[sys,x0,str,ts] = mdlInitializeSizes;
case 3
sys=mdlOutput(t,x,u);
case {1,2,4,9}
sys=[];
otherwise
error(['Unhandled flag=',num2str(flag)]);
end;
function [sys,x0,str,ts]=mdlInitializeSizes
sizes=simsizes;
sizes.NumContStates=0;
sizes.NumDiscStates=0;
size.NumOutputs=1;
size.NumInputs=1;
size.DirFeedthrough=1;
size.NumSampleTimes=1;
sys=simsizes(sizes);
x0=[];
str=[0];
ts =[0 0];
function sys=mdlOutputs(t,x,u)
if x0<0.5
sys=1
elseif x0>1.5
sys=0
else
sys=(1-x0+0.5)/1
end
sunnyfighter 当前离线   回复时引用此帖
回复

主题工具
显示模式

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

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



所有时间均为北京时间。现在的时间是 12:57


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