matlab step贴吧,2012b运行step函数出错,求解!

该博客详细解析了MATLAB中用于系统响应仿真step函数的内部实现逻辑。内容涵盖不同参数组合下的用法,包括传递函数形式、状态空间系统等,并提供了自定义step函数的示例代码,适用于理解及扩展MATLAB控制系统工具箱的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

因为你的是精简了的吧,没有step这个函数,给你一个:

function [yout,x,t] = step(a,b,c,d,iu,t)

ni = nargin;

no = nargout;

if ni==0,

eval(*exresp(**step**)*)

return

end

error(nargchk(2,6,ni));

% Determine which syntax is being used

switch ni

case 2

if size(a,1)>1,

% SIMO syntax

a = num2cell(a,2);

den = b;

b = cell(size(a,1),1);

b(:) = {den};

end

sys = tf(a,b);

t = [];

case 3

% Transfer function form with time vector

if size(a,1)>1,

% SIMO syntax

a = num2cell(a,2);

den = b;

b = cell(size(a,1),1);

b(:) = {den};

end

sys = tf(a,b);

t = c;

case 4

% State space system without iu or time vector

sys = ss(a,b,c,d);

t = [];

otherwise

% State space system with iu

if min(size(iu))>1,

error(*IU must be a vector.*);

elseif isempty(iu),

iu = 1:size(d,2);

end

sys = ss(a,b(:,iu),c,d(:,iu));

if ni<6,

t = [];

end

end

if no==1,

yout = step(sys,t);

yout = yout(:,:);

elseif no>1,

[yout,t,x] = step(sys,t);

yout = yout(:,:);

x = x(:,:);

t = t*;

else

step(sys,t);

end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值