Matlab 学习之旅(一)
一、脚本文件和M函数
1.1 脚本文件
脚本文件是命令行的集合,由一系列 MATLAB 命令、内置函数及M 文件等组成的文件。脚本文件在MATLAB 编译器中建立,并被保存为.m文件,按顺序执行,执行过程中生成的变量存放在当前工作空间中。
注意:脚本不能返回输出变量,所有创建的变量将保留在工作空间中,但脚本能提供图形输出,就像使用图形输出函数plot()一样。
例子:
利用M文件编辑器,键入命令并保存为magicrank.m
array = zeros(1,32); for n = 3:32 array(n) = rank(magic(n)); end array bar(array) %柱状图输出结果 |
运行M文件,结果如下图1-1
图1-1 函数运行结果图
1.2 M函数
M 函数也称子程序,它必须由MATLAB调用并具有一定的通用性。
1.2.1 M函数的结构
从结构上看,M函数和脚本文件相比,最大的区别就是多了一个“函数声明行”。
M 函数的格式: function [返回变量表]=函数名(输入变量列表)
注释说明语句段
函数体语句
调用格式:输出变量=函数名(输入变量)
说明:1)函数定义名应和文件保存名一致,当一个 M 文件中含多个 M 函数时,第一个函数是主函数,M文件名必须是主函数名;
2)MATLAB 中的函数文件名必须以字母开头,可以是字母、下划线及数字的任意组合,但不能超过31个字符
3)M 函数注释由%开始的行表示,help function_name 显示的是第一行后的注释。
二、 数据分析
2.1 多项式及其函数
MATLAB中使用一维向量来表示多向式,将多项式的系数按降幂次序存放在向量中,如多项式P(x)的具体表示方法如下:
2.1.1 多项式求根
matlab提供函数roots求解一个多项式的根
在命令窗口输入:
>> p = [3,-10,0,15,1000]; >>r = roots(p) |
输出结果如下:
r = 4.0283 + 2.8554i |
2.1.2 多项式的运算
多项式运算函数
运算关系 | 对应函数指令 |
乘法 | conv(a,b) |
除法 | [q,r] = deconv(a,b) q是多项式a除以多项式b的商,余式是r |
多项式求导 | polyder(p) |
多项式积分 | Polyint(p,k),返回多项式p的积分,积分常数项为k。 |
2.2 有理多项式
在很多应用中,如傅里叶、拉普拉斯和Z变换中,出现了两个多项式之比,matlab中多项式的展开函数如下:
[r,p,k]=residue(b,a)
b、a 分别是分子、分母多项式系数向量;r、p、k分别是留数、极点和直项
代码:
>> a = [1 5 6]; |
输出结果:
r = -1.0000 -3.0000 [] |