Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2010-02-16
年龄: 43
帖子: 2
声望力: 0 ![]() |
![]()
给这个分段函数编写了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 |
![]() |
![]() |