云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 西工大matlab知识点整理(详细版本)

西工大matlab知识点整理(详细版本)

  • 62 次阅读
  • 3 次下载
  • 2026/4/24 8:37:21

33.函数文件 (1)函数文件的基本结构

函数文件由function语句引导,其基本结构为: function 输出形参表= 函数名(输入形参表) 注释说明部分 函数体语句

其中,以function开头的一行为引导行,表示该M文件是一个函数文件。当输出形参多于一个时,应该用方括号括起来。 说明: 关于函数文件名 函数文件名通常由函数名再加上扩展名.m组成。 当函数文件名与函数名不同时,Matlab将忽略函数名而确 认文件名因此调用时使用函数文件名。 关于注释说明部分 注释说明包括3部分:

紧随引导行之后以%开头的第一注释行。

这一行一般包括大写的函数文件名和函数功能简要描述,供lookfor关键词查询和help在线帮助时使用。

第一注释行及之后连续的注释行。

通常包括函数输入/输出参数的含义及调用格式说明等信息,构成全部在线帮助文本。

与在线帮助文本相隔一空行的注释行。 包括函数文件编写和修改的信息,如作者和版本等。 (如果在函数文件中插入了return语句,则执行到该语句就结束函数 的执行,流程转至调用该函数的位置。通常也不使用return语句。)

例如:

function [s,p] = fcircle(r)

% FCIRCLE calculate the area and perimeter of a circle of radii r % r 圆半径 % s 圆面积 % p 圆周长

06年2月30日编 s = pi*r*r; p = 2*pi*r;

将以上函数文件以文件名fcircle.m保存,然后在命令窗口调用。 [s,p] = fcircle(10) 输出结果是: s =

314.1593 p =

62.8319

(2)函数调用

函数调用的一般格式是:

[输出实参表] = 函数名(输入实参表)

注意:函数调用时,各实参出现的顺序、个数,应与函数定义时相同。

(3)函数参数的可调性 Matlab在函数调用上有一个与一般高级语言不同之处:

函数所传递参数数目的可调性,即参数的数量可以改变。

在调用函数时,Matlab用两个预定义变量nargin和nargout分别记 录调用该函数时的输入实参和输出实参的个数。

(4)全局变量与局部变量 函数文件中的变量是局部变量。 全局变量的作用域是整个Matlab的工作空间,所有函数都可以对它

进行存取和修改。

全局变量用global命令定义,格式为: global 变量名

34.程序调试 一般说来,应用程序的错误有两类,一类是语法错误,另一类是运行时的错误。

(1)Matlab调试菜单

控制单步运行 step:单步运行,不进入函数; step in: 单步运行,进入函数; step out:停止单步运行; save and run:存储文件并开始运行。 断点操作

stop if error/warnings: 在程序执行出现错误或警告时,停止程序运行,进入调试状态。

35.Matlab矩阵分析与处理

(1)通用的特殊矩阵

常用的产生通用特殊矩阵的函数有: zeros:产生全0矩阵(零矩阵)。 ones:产生全1矩阵(幺矩阵)。 eye:产生单位矩阵。

rand:产生0~1间均匀分布的随机矩阵。

randn:产生均值为0,方差为1的标准正态分布随机矩阵。 (2)对角阵与三角阵

提取矩阵的对角线元素函数:diag A = [1,2,3;4,5,6];

D = diag(A) D = 1 5

diag函数还有一种形式:diag(A,k)提取第k条对角线的元素。 D1 = diag(A,1) D =

2

6

构造对角矩阵

如果V是一个m个元素的向量,diag(V)将产生一个m×m对角矩阵, 其主对角线元素即向量V为的元素。

(2)矩阵求逆与线性方程组求解

矩阵的逆:求方阵A的逆矩阵可调用函数inv(A)。

求解方程组:x = inv(A)*b %x = A\\b,也可以运用左除运算符求解。 (3)矩阵行列式值

把一个方程看做一个行列式,并按行列式的规则求值,称 为行列式的值。在Matlab中,使用函数det(A)得到。

36.多项式(polynomial)

(1)多项式的MATLAB表达:

多项式x4-12x3+25x+116由行向量: p=[1 -12 0 25 116]表示。 (2)求解多项式的根:roots指令

求解多项式x4-12x3+25x+116的根 >>p=[1 -12 0 25 116] p =

1 -12 0 25 116 >>r=roots(p)

(3)已知多项式的根,求解多项式

>> pp=poly(r) pp =

1.0000 -12.0000 -0.0000 25.0000 116.0000

即:x4-12x3+25x+116 (4)多项式的乘法(conv指令)

多项式a(x)=x3+2x2+3x+4

和b(x)= x3+4x2+9x+16的乘积。

>> a=[1 2 3 4] ; b=[1 4 9 16]; >> c=conv(a, b) c =

1 6 20 50 75 84 64 两个以上的多项式的乘法需要重复使用conv.

(5)多项式加法: MATLAB没有提供进行加法运算的函数。

如果两个多项式向量大小相同,标准的数组加法有效。把多项式a(x)与上面给出的b(x)相加。 >> d=a+b

当两个多项式阶次不同,低阶的多项式必须用首零填补,使其与高阶多项式有同样的阶次。

(6)多项式的除法(deconv)

c(x)=x6+6x5+20x4+50x3+75x2+84x+64 除以b(x)= x3+4x2+9x+16

>> c=[1 6 20 50 75 84 64];

>> b=[1 4 9 16]; >> [q , r]=deconv(c , b) q =

1 2 3 4 r =

0 0 0 0 0 0 0 (7)多项式的导数(polyder)

求b(x)= x3+4x2+9x+16的导数。 >> b=[1 4 9 16]; >> d=polyder(b) d =

3 8 9

结果为:3x2+8x+9 另外两种形式为:

p = polyder(P,Q):求P*Q的导函数

[p,q] = polyder(P,Q):求P/Q的导函数,导数分子存入p,分母存入q

(8)多项式的估值(polyval)

绘制p(x) = x3+4x2-7x-10在[-1, 3]段上的曲线。

x=linspace(-1, 3); % choose 100 data points between -1and 3. p=[1 4 -7 -10]; v=polyval(p, x);

plot(x, v);

title('x^{3}+4x^{2}-7x-10'); xlabel('x') (9)MATLAB中没有直接提供数值导数的函数,只有计算向前差分的函数diff,其调用格式为:

DX = diff(X) 计算向量X的向前差分

DX = diff(X,n) 计算向量X的n阶向前差分

例如:

f = inline(‘sqrt(x.^3+2*x.^2-x+12)+(x+5).^(1/6)+5*x+2’); %内联函数 x = -3:0.01:3; dx = diff(f([x,3.01]))/0.01; %根据定义式求导数 plot(x,dx)

(10)数值积分

常用积分指令:quad和quadl。 一般说来,quadl比quad更有效。 具体调用格式如下: q = quadl(fun,a,b) q = quadl(fun,a,b,tol)

q = quadl(fun,a,b,tol,trace) [q,fcnt] = quadl(fun,a,b,...)

输入量fun为被积函数的句柄。

输入量a, b分别是积分的下限、和上限,都必须是确定的数值;

搜索更多关于: 西工大matlab知识点整理(详细版本) 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

33.函数文件 (1)函数文件的基本结构 函数文件由function语句引导,其基本结构为: function 输出形参表= 函数名(输入形参表) 注释说明部分 函数体语句 其中,以function开头的一行为引导行,表示该M文件是一个函数文件。当输出形参多于一个时,应该用方括号括起来。 说明: 关于函数文件名 函数文件名通常由函数名再加上扩展名.m组成。 当函数文件名与函数名不同时,Matlab将忽略函数名而确 认文件名因此调用时使用函数文件名。 关于注释说明部分 注释说明包括3部分: 紧随引导行之后以%开头的第一注释行。 这一行一般包括大写的函数文件名和函数功能简要描述,供lookfor关键词查询和help在线帮助时使用。 第一注释行及之后连续的注释行。 通常包括函数输入/输

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com