matlab中c2d如何将连续函数离散化 5
1个回答
展开全部
matlab中,传递函数离散化,特别是转化为差分方程,可以使用c2d实现,系数直接转化是不可以的。c2d的具体用法,可以参照matlab帮助,下面举一例
% transfor function
sys = tf([1 -1], [1 4 5]);
% discretize
ts = 0.1; % 采样周期
dsys = c2d(sys, ts, 'z'); % 转化为差分方程
% extract
[num, den] = tfdata(dsys,'v'); % 提取差分方程系数
结果为:
>> dsys
Transfer function:
0.07736 z - 0.08557
----------------------
z^2 - 1.629 z + 0.6703
Sampling time: 0.1
>> num
num =
0
0.077359465661809 -0.085567271047414
>> den
den =
1.000000000000000
-1.629281019107614
0.670320046035640
转载于http://blog.sina.com.cn/s/blog_6163bdeb0100q3jh.html
% transfor function
sys = tf([1 -1], [1 4 5]);
% discretize
ts = 0.1; % 采样周期
dsys = c2d(sys, ts, 'z'); % 转化为差分方程
% extract
[num, den] = tfdata(dsys,'v'); % 提取差分方程系数
结果为:
>> dsys
Transfer function:
0.07736 z - 0.08557
----------------------
z^2 - 1.629 z + 0.6703
Sampling time: 0.1
>> num
num =
0
0.077359465661809 -0.085567271047414
>> den
den =
1.000000000000000
-1.629281019107614
0.670320046035640
转载于http://blog.sina.com.cn/s/blog_6163bdeb0100q3jh.html
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询