(1)num=[2547];

表示将2547作为一个1×1的矩阵赋值给变量num,如果没有特别的需要应该写成num=2547

den=[1,2005];

[1,2005]是表示一个一行两列的矩阵,说它是行向量也可以

g=tf(num,den);

tf是表示函数,输入为num,den,输出是g,tf的具体内容要找到函数才能知道

phai=feedback(g,1);

道理同上,好像是求相位

num=[571.2];

den=[1,0];

gc=tf(num,den);

ggc=gc*g;

有上面可知,gc,g一定是不是向量,否则gc*g的语法就有错误,它一定是矩阵,

phaic=feedback(ggc,1);

获得反馈的相位

bode(ggc);

画伯德图

grid on;

给图形打上网格线,不打网格线的命令是grid off;

(2)num=conv([800],[1/40 1]);

[800]表示1×1矩阵,[1/40 1]表示1×2矩阵。conv是函数,具体功能要找到conv的代码或者帮助

den=conv([1 0],conv([1/3/pi 1],[1/1000 1]));

同理

a=tf(num,den);

phaic=feedback(a,1);

或者相位

t=0:0.01:3;

在0到3之间,以0.01为增量或者步长,产生一个时间序列,这在matlab时间上是一个行向量,

u=pi/6*sin(3*pi*t);

pi是matlab的内部变量,为3.14159265....,注意t是向量,产生的u也是向量,在其他的语言中,这样的功能要用一个循环来实现。

lsim(phaic,u,t);

要查阅lsim的功能。

grid on;

给图形打上网格线,

++++++++++++++++++++++++++

matlab的基本功能就是矩阵的运算,像函数lsim的功能如果不知道,在command窗口键入help lsim,就可查阅,如果没有结果,就是用户定义的函数,好在matlab一般都可以看到源代码。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐