- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在MATLAB中数学模型的表示,matlab数学模型,matlab建数学模型,matlab建立数学模型,matlab的数学模型,matlab在数学中的应用,matlab中数学符号,matlab中角度怎么表示,matlab中度数怎么表示,matlab中根号怎么表示
* §2-6 在MATLAB中数学模型的表示 控制系统的数学模型在系统分析和设计中是相当重要的,在线性系统理论中常用的数学模型有微分方程、传递函数、状态空间表达式等,而这些模型之间又有着某些内在的等效关系。MATLAB主要使用传递函数和状态空间表达式来描述线性时不变系统(Linear Time Invariant简记为LTI)。 2.6.1传递函数 单输入单输出线性连续系统的传递函数为: 其中m≤n。G(s)的分子多项式的根称为系统的零点,分母多项式的根称为系统的极点。令分母多项式等于零,得系统的特征方程: dtm +bmr(t) = b0 dm-1r(t) dtm-1 +b1 +··· dmr(t) dr(t) dt +bm-1 +anc(t) +··· dnc(t) dtn a0 dn-1c(t) dt n-1 +a1 dc(t) dt +an-1 D(s)=a0sn+a1sn-1+……+an-1s+an=0 因传递函数为多项式之比,所以我们先研究MATLAB是如何处理多项式的。MATLAB中多项式用行向量表示,行向量元素依次为降幂排列的多项式各项的系数,例如多项式P(s)=s3+2s+4,其输入为: P=[1 0 2 4] 注意尽管s2项系数为0,但输入P(s)时不可缺省0。 MATLAB下多项式乘法处理函数调用格式为: C=conv(A,B) 例如给定两个多项式A(s)=s+3和B(s)=10s2+20s+3,求C(s)=A(s)B(s),则应先构造多项式A(s)和B(s),然后再调用conv( )函数来求C(s) A=[1,3]; B=[10,20,3]; C = conv(A,B) C = 10 50 63 9 即得出的C(s)多项式为10s3 +50s2 +63s +9 MATLAB提供的conv( )函数的调用允许多级嵌套,例如 G(s)=4(s+2)(s+3)(s+4) G=4*conv([1,2],conv([1,3],[1,4])) 可由下列的语句来输入 有了多项式的输入,系统的传递函数在MATLAB下可由其分子和分母多项式唯一地确定出来,其格式为 sys=tf(num,den) 其中num为分子多项式,den为分母多项式 num=[b0,b1,b2,…,bm]; den=[a0,a1,a2,…,an]; 对于其它复杂的表达式,如: num=conv([1,1],conv([1,2,6],[1,2,6])); 可由下列语句来输入 : den=conv([1,0,0],conv([1,3],[1,2,3,4])); G=tf(num,den) Transfer function: 2.6.2传递函数的特征根及零极点图 传递函数G(s)输入之后,分别对分子和分母多项式作因式分解,则可求出系统的零极点,MATLAB提供了多项式求根函数roots(),其调用格式为: roots(p) 其中p为多项式。 例如,多项式p(s)=s3+3s2+4 p=[1,3,0,4]; %p(s)=s3+3s2+4 r=roots(p);%p(s)=0的根 r=-3.3533 0.1777+1.0773i 0.1777-1.0773i 反过来,若已知特征多项式的特征根,可调用MATLAB中的poly( )函数,来求得多项式降幂排列时各项的系数,如上例 poly(r) p = 1.0000 3.0000 0.0000 4.0000 polyval函数用来求取给定变量值时多项式的值,其调用格式为 polyval(p,a) 其中p为多项式;a为给定变量值 例如,求n(s)=(3s2+2s+1)(s+4)在s=-5时值: n=conv([3,2,1],[1,4]); value=polyval(n,-5) value=-66 传递函数在复平面上的零极点图,采用pzmap()函数来完成,零极点图上,零点用“○。”表示,极点用“×”表示。其调用格式为 [p,z]=pzmap(num,den) 其中, p─传递函数G(s)=den的极点 z─传递函数G(s)= num的零点 例如,传递函数 用MATLAB求出G(s)的零极点,H(s)的多项式形式,及G(s)H(s)的零极点图 numg=[6,0,1]; deng=[1,3,3,1]; z=roots(numg) z=0+0.4082i 0-0.4082i; %G(s)的零点 p=roots(deng) p=-1.0000+0.0000i -1.0000+0.0000i; %G(s)的极点
文档评论(0)