最近在看清华大学的博士论文:马克西姆. 贫预混燃烧振荡的自抗扰控制[D].清华大学,2017.
其中有一推导如下,自己手推其实很费劲,下面介绍如何用matlab进行符号运算:
要用到的公式来自现代控制理论的教材,一般现控书都会给出状态空间表达式到传递函数矩阵是如何推导的,所以就不说是哪一本了
。
matlab代码:
clear all %/清空工作区
syms s beta1 beta2 b0 u y;%/声明要用到的符号变量
I=eye(2)%/eye函数用于创建一个二阶单位阵
A=[-beta1 1;-beta2 0];%/照着论文打A矩阵
B=[b0 beta1;0 beta2];%/同上
F=inv(s*I-A);%/inv函数用来对矩阵取反
collect(F*B)%/collect函数是合并同类项
运行结果:
ans =
[ (b0*s)/(s^2 + beta1*s + beta2), (beta1*s + beta2)/(s^2 + beta1*s + beta2)]
[ (-b0*beta2)/(s^2 + beta1*s + beta2), (beta2*s)/(s^2 + beta1*s + beta2)]
可以看到与论文中给出的相同。
用matlab求传递函数矩阵就是这么简单,本文结束啦。
本文结束啦。