马天宝第四讲.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
马天宝第四讲

MATLAB的函数分析 第四讲 主要内容 常用的数学函数 MATLAB函数编写方法与运用 选择指令与循环指令 MATLAB函数 本章介绍MATLAB内建函数,如三角函数、双曲线函数、复数运算函数、多项式函数和逻辑/选择函数等 MATLAB工具箱内提供了上百种内建函数,当所需要的函数不在其中时,可使用自定义函数 数组(array)的加、减、乘、除、幂运算 内建函数 一个函数可以当做另一个函数的变量,比如:log_x=log(abs(x)) 其中log和abs均为内建函数 [N,D]=rat(sqrt(3),1.e-6) rat(x,len)函数是将x化为分数的形式,x的有效长度为13 如:rats(sqrt(3),13) 脉冲函数——表达式 x=-25:25;b=sinc(x); plot(x,b); 复数运算 MATALB中式以i和j表示虚部的,复数相关的函数如下: real(x)输出x的实部 imag(x)输出x的虚部 angle(x)给出复数z的相角 conj(x)给出复数z的共轭复数 abs(x)给出复数z的绝对值/模/向量的长度 实例 x=1-2*i; real(x) imag(x) conj(x) abs(x) angle(x) a=1;b=4;c=12; x1=(-b+sqrt(b^2-4*a*c))/(2*a)——复数计算 实例 y=5*exp(i*pi*0.75) 复数绘图可使用compass/feature/polar等二维绘图命令 举例1 阻抗Z1=6.16+j9和Z2=2.5-j4串联后接在U=220,30°电源上,计算电路中的电流I,并画出向量图。 多项式运算 多项式常被用来表示物理现象的解析函数,如曲线拟合 MATALB以最简单的方式表达多项式,如多项式y=x3+2x2-3x-4表示为(array)p=[1 2 -3 -4],其中数值时多项式各阶的系数 将数组(array)x的值代入y=x3+2x2-3x-4即可求得多项式的值 可用polyval()直接计算多项式的值 x=1:3 p=[1 4 -7 -10] y=polyval(p,x) 多项式运算函数 polyval(p,x)——计算多项式的值 poly() ——polyval(p,x)的反运算 conv(a,b) ——array的乘法运算 [q,r]=deconv(a,b) ——array的除法运算 roots() ——只要输入各阶系数即可求解对应的根 real() ——用来去除因计算产生的假虚部系数 fzero() ——求非线性方程式的实根 多项式的加减乘除 求解一元高阶方程式的根 求非线性方程式的实根 举例 MATLAB函数编写 MATLAB函数定义 编写MATLAB工具箱 MATLAB编程技巧 选择指令与循环指令 关系运算函数 if-else-end语法 Switch开关表达式 Switch开关表达式 for循环 for循环 while循环 while循环 (一)选择结构 选择结构的语句有if语句和switch语句。 1. if语句 格式一: if 条件 语句组 end 格式三: if 条件1 语句组1 elseif 条件2 语句组2 …… elseif 条件m 语句组m else 语句组m+1 end 【例4】 输入三角形的三条边,求面积。 A=input(请输入三角形的三条边:); if A(1)+A(2)A(3) A(1)+A(3)A(2) A(2)+A(3)A(1) p=(A(1)+A(2)+A(3))/2; s=sqrt(p*(p-A(1))*(p-A(2))*(p-A(3))); disp(s); else disp(不能构成一个三角形。) end 运行: 请输入三角形的三条边:[4 5 6] 9.9216 【例5】 输入一个字符,若为大写字母,则输出其后继字符,若为小写字母,则输出其前导字符,若为其他字符则原样输出。 c=input( ,s); if c=A c=Z disp(setstr(abs(c)+1)); elseif c=a c=z

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档