matlab基础函数及其应用举例!

matlab基础函数及其应用举例!
matlab基础函数及其应用举例!

matlab中subplot函数的功能

功能

分割figure,创建子坐标系

语法

h = subplot(m,n,p) or subplot(mnp)

subplot(m,n,p,'replace')

subplot(m,n,P)

subplot(h)

subplot('Position',[left bottom width height])

subplot(..., prop1, value1, prop2, value2, ...)

h = subplot(...)

描述

★h=subplot(m,n,p)/subplot(mnp)将figure划分为m×n块,在第p块创建坐系,并返回它的句柄。当m,n,p<10时,可以简化为subplot(mnp)

subplot mnp(注:subplot(m,n,p)

或者 subplot(m n p)此函数最常用:subplot是将多个图画到一个平面上的工具。其中,m表示是图排成m行,n表示图排成n列,也就是整个figure

中有n个图是排成一行的,一共m行,如果第一个数字是2就是表示2行图。p 是指你现在要把曲线画到figure中哪个图上,最后一个如果是1表示是从左到右第一个位置。)

★subplot(m,n,p,'replace')如果所指定的坐标系已存在,那创建新坐标系替换★subplot(m,n,P)

此时p为向量,表示将P中指定的小块合并成一个大块创建坐标系,P中指定的小块可以不连续,甚至不相连。比如subplot(2,3,[2 5])表示将第2和5小块连成一个大块;subplot(2,3,[2 6])由于2和6不连续也不相连,此时表示将第2、3、5和6四块连成一个大块,相当于subplot(2,3,[2 3 5 6])

★subplot(h)将坐标系h设为当前坐标系,相当于axes(h)

★subplot('Position',[left bottom width height])在指定位置创建一个新坐标系,等效于axes('Position',[left bottom width height])

★subplot(..., prop1, value1, prop2, value2, ...)在创建坐标系时,同时设置相关属性,a x e s属性参见附录

★h = subplot(...)

返回所创建坐标系的句柄.

Linspace函数

功能:linspace是Matlab中的一个指令,用于产生x1,x2之间的N点行矢量。其中x1、x2、N分别为起始值、终止值、元素个数。若缺省N,默认点数为100。在matlab的命令窗口下输入help linspace或者doc linspace可以获得该函数的帮助信息。

表达式:a=linspace(first,last,n)其中的n为元素总数,即为:(last-first)+1=n;

相关函数:logspace

用法:x=logspace(a, b, n)

功能:logspace(a, b, n)生成一个(1xn)数组,数据的第一个元素值为10^a,最后一个元素为10^b,n是总采样点数。需要注意的是,此时产生的数组元素在10^a 到10^b上并不是均匀分布的,而形成一个对数曲线。

(数组相乘使用的是“.*”,数组相除分左除和右除,左除用“.\”,右除用“./”,幂运算用“.^”。矩阵四则运算用的符号和数字四则运算用的符合是一致的;)

Inv()求矩阵的逆矩阵,det()矩阵的行列式的值。

矩阵的幂运算的时候,a和p必须其中一个是标量,例子:a=2;p=[2 3;1 1];c=a^p;这个有结果,否则是错误的!

A.数组的处理方法:例子:将数组a的行按逆序排列得到数组b。如下:

这个和左面的是一样:的“:”和“1:3”等价!

这个表示的是把数组b的第1列和第3列连接到a的右侧,生成新的数组c。

1.MATLAB数值显示格式:format short,短格式,例子:4/3写成1.3333,既是五点显示;

Format long,长格式,例子:4/3,写成1.33333333333333,既是十五点显示;format hex,十六进制格式;format rat,分数格式,例子:4/3。

2.

这个说明矩阵的两种表示方法。他们是等价的!

3.调用M文件:

过程:单击桌面左上角的快捷图标,先把数组a,保存在名字为myfirstmatrix文件中,在命令窗口提示符后输入myfirstmatrix,就可以调用上面的数组。

4.reshape函数可以将任何维数的数组转变成其他维数的数组。

5.数组的处理方法:

a(3,3)=0;是将第3行,第3列元素设置为0;

a(3,4)=1;是将第3行,第4列元素设置为1;

a(:,3)=5或者a(:,3)=[5;5;5];将数组a的第3列元素全部设置为5。

补充:a’或者conj(a’)表示矩阵a的复数矩阵。

6.命令reshape(a,3,3), reshape(a,[],3), reshape(a,3,[]), reshape(a,[3 3])的结果都是一样的,把一个数组转变成3*3的矩阵。

矩阵的分解,

1.特征值分解:

其中V是特征矢量矩阵,D是特征值

的对角矩阵。

2.奇异值分解:

其中U,V是奇异矢量举证,S为奇异值。

3.LU分解(三角分解法):

其中L为上三角矩阵,U为下三角矩阵。

其他矩阵的分解:

a.cholesky分解(乔里斯基分解),所用函数式choi.

满足的条件是:a是n阶对称正定矩阵,表达式:choi(a)。

b. QR分解,实矩阵A可以写成A=QR,其中Q为正交矩阵,R为上三角矩阵,调用格[Q R]=qr(a)。

注:全1数组,全0数组,表达式:ones(4)表示4阶全为1的矩阵,a=zeros(3,3)表示3阶全为0的矩阵。若输入的参数时,即ones(r,c)或zeros(r,c)表示生成一个r行c列的全1或者全0数组。单位矩阵函数eye().

标准数组:

1.函数rand生成正态分布的随机数组,其元素的取值介于0和1之间。函数randn 生成数值为0,方差为1的标准正态分布矩阵:

2.函数diag生成对角数组,在该数组中,一个向量可以被放在与数组主对角线平行的任何位置上:

数组的大小:

1.函数size返回的是一个行向量,第一个元素的数组的行数,第二个元素是数组的

列数。用法如下:

2.函数numel返回一个数组中元素的总和!表达式为:numel(a)。

3.函数length返回行数或者列数的最大值。表达式为:length(a)。

数组的关系运算:

一个数值矩阵或者数组可以和一个标量进行关系运算。运算规则是将矩阵的数值一次和标量数值进行关系运算,得出相应的关系结果,然后返回一个逻辑矩阵;若是非同维的矩阵进行关系运算,返回错误的信息。

2. MATLAB的基本逻辑运算符为:&(与),︱(或),~(非)。

3.逻辑运算函数:iscell,判断项是不是单元数组;

ischar,判断项是不是字符串;

isempty,判断项是否为空;

isinf,判断项是不是无穷大;

isnumeric,判断项是否为数值数组;

isspace,判断项是否为空格;

isequal,判断项是否相等;

iskeyword,判断项是否是matlab关键字。

例题:已知数组a=[3 2 1 4;1 3 3 1;3 1 7 0],要求如下:

(1)读取a(3,4),a(2,3);

(2)读取a的前两行和前两列元素;

(3)读取a的第二行元素;

(4)读取a的第三列元素;

(5)删除a的第三行元素;

(6)删除a的第2,3列的元素。

解:

(注释:程序是从左往右实现的。省去了a(2,3)程序,其原理和a (3,4)一样!)

字符串:

1. 函数char,str2mat,strvcat 创建字符串的时候,是将字符串纵向排列,而且不需

要注意每个字符串变量的长度是不是相等。函数strcat()在合并字符串的时候是将祖父穿横向排列,并将字符串结尾的空格删除。要保留这些空格,可以用矩阵合并[]来实现字符串的字符。 例子如下:

比较下面两种方法的不同:

注:特别注意a的表示方法,这影响到输出的结果!由上述的程序可以知道,a字符串中的is后面的空格被保留。

2.用户在构造二维字符数组时,不过要注意保持二维字符数组的每一行具有相同的长度。

单元数组的建立:

用二维单元数组为例子:

A(4,2)表示的是A单元数组中的第4行第2列的单元元素;A{4,2}表示的是A单元数组中的第4行第2列单元中所存储的内容。

MATLAB中有3中建立单元数组的方法:

1.利用赋值语句:

比较两者的优缺点!

2.利用单元数组法:

3.利用函数cell:

函数cell用来预分配指定大小的单元数组,表达式有一下几种:

(1)c=cell(n)或者c=cell(n,n);

(2)c=cell(m,n)或者c=cell([m n]);

(3)c=cell(m,n,p,…)或者c=cell([m n p …]);

(4)c=cell(size(A))其中A为已知的矩阵,

事实上,利用函数cell建立的单元数组,是先用cell生成一个空的单元数组,然后再向其中添加所需的数据:

由例子程序我们可以看出来,单元数组中的内容一般是以压缩的形式显示的,像c(2,1)={[1 2;2 1]}就是压缩的形式,这个时候就可以通过函数celldisp来查看单元数组中的详细内容了,或者通过函数cellplot以图像的形式显示单元数组的内容。给出了例子:

数值与字符串的相互转换:

1.数值格式转换例子

命令结果

fprintf(' %.0e\n ',pi) 3e+00

fprintf(' %.1e\n ',pi) 3.1e+00

fprintf(' %.3e\n ',pi) 3.142e+00

fprintf(' %.5e\n ',pi) 3.14159e+00 fprintf(' %.10e\n ',pi) 3.1415926536e+00 fprintf(' %.0f\n ',pi) 3

fprintf(' %.1f\n ',pi) 3.1

fprintf(' %.3f\n ',pi) 3.142

fprintf(' %.5f\n ',pi) 3.14159

fprintf(' %.10f\n ',pi) 3.1415926536 fprintf(' %.0g\n ',pi) 3

fprintf(' %.1g\n ',pi) 3

fprintf(' %.3g\n ',pi) 3.14

fprintf(' %.5g\n ',pi) 3.1416

fprintf(' %.10g\n ',pi) 3.141592654

fprintf(' %.8.0g\n ',pi) 3

fprintf(' %.8.1g\n ',pi) 3

fprintf(' %.8.3g\n ',pi) 3.14

fprintf(' %.8.5g\n ',pi) 3.1416

fprintf(' %.8.10g\n ',pi) 3.141592654

注意,对e 和f 格式,小数点右边的十进制数就是小数点右边要显示的多少位数字。相反,在g 的格式里,小数点右边的十进制数指定了显示数字的总位数。另外,注意最后的五行,其结果指定为8个字符长度,且是右对齐。在最后一行,8被忽略,因为指定超过了8位。

2.数值转换为字符串的函数

char,数值取小数部分转换成字符;

int2str,整型转换成字符串;

num2str,变数值为字符串;

dec2hex,数值转换为16进制字符串;

dec2bin,数值换换为2进制字符串;

dec2base,数值转换为任意进制的字符串。

注:在这里举几个函数的例子,(1)函数num2str的逆操作str2num函数的用法!

函数str2num可以对表达式的值进行转换,但是该表达式中不能包含工作区中的变量!如:

ans=[],表示转换失败!

(2)函数sprintf的逆操作sscanf函数的用法:

注:str2double的用法,把字符串转换成双精度值的函数!

字符串主要函数功能描述:MATLAB基础及应用(第二版)张学敏著中国电力出版社P60!(尽量记住!)

多项式的运算

1.多项式的创建:

(1)系数矢量直接输入法:用这个方法要知道多项式的行矢量p。使用函数

poly2sym实现

(2)根矢量:使用函数poiy实现。

复数根的根矢量所对应的多项式系数中,有可能带有很小的虚部,此时要对多项式系数进行取是不命令把虚部滤掉。如程序中pr=real(p)这一步!

2.多项式求值,求根

多项式求值有2种格式:1.按数组运算规则计算,函数为polival;2.按矩阵运算规则计算,函数为polyval。

笔记中有记录:多项式求值,求根;多项式乘法,除法;多项式微分,积分;所利用的函数实现及其程序!

3.多项式的曲线拟合

原理:根据一组或者多组测量数据找出数学上可以描述此数据的一条曲线的过程。评价一条曲线是不是准确的描述了测量数据的最通用的方法,是看测量数据点与该曲线上对应点之间的平方误差是不是达到最小。

实现的函数:polyfit(x,y,n)其中,x和y是拟合的数据,n是拟合多项式的阶次!

例子:

数据x=[0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1]和y=[-0.232 0.647 1.877 3.565

5.134 7.443 9.221 10.011 11.678 12.566 13.788]做二次曲线拟合,并图示拟合曲线和原来的数据。

若是做9阶多项式拟合,图示原来的数据,二次曲线拟合,9阶曲线拟合.

注:这个过程,我采用的是M文件的调用:

(完整版)MATLAB常用函数大全

一、MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数ceil(x):天花板函数,即加入正小数至最近整数rat(x):将实数x化为分数表示 rats(x):将实数x化为多项分数展开 sign(x):符号函数(Signum function)。 当x<0时,sign(x)=-1; 当x=0时,sign(x)=0; 当x>0时,sign(x)=1。 rem(x,y):求x除以y的馀数 gcd(x,y):整数x和y的最大公因数 lcm(x,y):整数x和y的最小公倍数 exp(x):自然指数 pow2(x):2的指数 log(x):以e为底的对数,即自然对数或 log2(x):以2为底的对数 log10(x):以10为底的对数 二、MATLAB常用的三角函数 sin(x):正弦函数 cos(x):余弦函数

tan(x):正切函数 asin(x):反正弦函数 acos(x):反馀弦函数 atan(x):反正切函数 atan2(x,y):四象限的反正切函数 sinh(x):超越正弦函数 cosh(x):超越馀弦函数 tanh(x):超越正切函数 asinh(x):反超越正弦函数 acosh(x):反超越馀弦函数 atanh(x):反超越正切函数 三、适用於向量的常用函数有: min(x): 向量x的元素的最小值 max(x): 向量x的元素的最大值 mean(x): 向量x的元素的平均值 median(x): 向量x的元素的中位数 std(x): 向量x的元素的标准差 diff(x): 向量x的相邻元素的差 sort(x): 对向量x的元素进行排序(Sorting)length(x): 向量x的元素个数 norm(x): 向量x的欧氏(Euclidean)长度sum(x): 向量x的元素总和 prod(x): 向量x的元素总乘积 cumsum(x): 向量x的累计元素总和cumprod(x): 向量x的累计元素总乘积 dot(x, y): 向量x和y的内积 cross(x, y): 向量x和y的外积 四、MATLAB的永久常数

matlab基础与指导应用部分习题问题详解

作业一 4、写出完成下列操作的命令。 (1)将矩阵A第2~5行中第1,3,5列元素赋给矩阵B。>> M=[0:1:48]; >> A=reshape(M,7,7) A = 0 7 14 21 28 35 42 1 8 15 2 2 29 36 43 2 9 16 2 3 30 37 44 3 10 17 2 4 31 38 45 4 11 18 2 5 32 39 46 5 12 19 2 6 33 40 47 6 13 20 2 7 34 41 48 >> B=A(2:5,1:2:5) B = 1 15 29 2 16 30 3 17 31 4 18 32 (2)删除矩阵A的第七行元素。 >> A(7,:)=[] A = 0 7 14 21 28 35 42 1 8 15 2 2 29 36 43 2 9 16 2 3 30 37 44 3 10 17 2 4 31 38 45 4 11 18 2 5 32 39 46 5 12 19 2 6 33 40 4 7 (3)将矩阵A的每个元素值加30。 >> A=A+30 A = 30 37 44 51 58 65 72 31 38 45 52 59 66 73 32 39 46 53 60 67 74

33 40 47 54 61 68 75 34 41 48 55 62 69 76 35 42 49 56 63 70 77 (4求矩阵A的大小和维素。 sizeA = size(A) dA = ndims(A) sizeA = 6 7 dA = 2 (5)将向量t的0元素用机器零来代替。 >> t=[1 2 3 4 0 5]; t = 1 2 3 4 0 5 >> find(t==0) ans = 5 >> t(5)=eps t = 1.0000 2.0000 3.0000 4.0000 0.0000 5.0000 (6)将含有12个元素的向量x转换成3*4矩阵。 >> x=[0:11] x = 0 1 2 3 4 5 6 7 8 9 10 11 >> y=reshape(x,3,4) y =

matlab的特点

第一章绪论 MATLAB软件的特点 MATLAB是美国MathWorks公司自20世纪80年代中期推出的数学软件,具有优秀的数值计算能力和卓越的数据可视化能力,可以提供与矩阵有关的强大的数据处理和图形显示功能, 为软件开发人员在程序编制过程中实现数值计算和图 形显示新添了又一行之有效的开发平台,所以一经推出便使其很快在数学软件中脱颖而出。到目前为止,其最高版本版已经推出。随着版本的不断升级,它在数值计算及符号计算功能上得到了进一步完善。MATLAB已经发展成为多学科、多种工作平台的功能强大的大型软件,在控制、通信、信号处理及科学计算等领域中得到广泛的应用,已经被认可为能够有效提高工作效率、改善设计手段的工具软件。 MATLAB语言最大的特点是简单和直接,它主要有如下特点。 1.编程效率高 MATLAB是一种面向科学与工程计算的高级语言,允许使用数学形式的语言编写程序,且比BASIC、FORTRAN和C等语言更加接近我们书写计算公式的思维方式,用MATLAB编写程序犹如在演算纸上排列出公式与求解问题。因此,MATLAB 语言也可通俗地称为演算纸式科学算法语言。由于它编写简单,所以编程效率高,易学易懂。 2.用户使用方便 MATLAB语言是一种解释执行的语言(在没被专门的工具编译之前),它灵活、方便,其调试程序手段丰富,调试速度快,需要学习时间少。人们用任何一种语言编写程序一般都要经过四个步骤:编辑、编译、链接,以及执行和调试。各个步骤之间是顺序关系,编程的过程就是在它们之间做瀑布型的循环。MATLAB语言与其他语言相比,较好的解决了上述问题,把编辑、编译、链接和执行融为一体。它能在同一画面上进行灵活操作,快速排除输入程序中的书写错误、语法错误以至语义错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程

matlab各种函数的用法

1 Text函数的用法: 用法 text(x,y,'string')在图形中指定的位置(x,y)上显示字符串string text(x,y,z,'string') 在三维图形空间中的指定位置(x,y,z)上显示字符串string 2, plot([0,z1,z12],'-b','LineWidth',3)[ ]里面表示数组. 3, x,y均为矩阵,plot命令就是画出x,y矩阵对应的二维平面的点形成的曲线。y(:,1)中逗号前是行,逗号后是列,冒号表示从几到几。所以y(:,1)表示第一列的所有元素。如果是y(3:5,1)则表示第一列的第3到第5行对应的元素。只要你的y矩阵有100列,那你当然可以将1改成100。同理,x矩阵也可以这样。 4 sym的意思是symbol,就是后面括号里面是个代数式,要进行符号运算,class()判断对象是什么类型。 5 matlab控制运算精度用的是digits和vpa这两个函数 xs = vpa(x,n) 在n位相对精度下,给出x的数值型符号结果xs xs = vpa(x) 在digits指定的精度下,给出x的数值型符号结果xs

digits用于规定运算精度,比如: digits(20); 这个语句就规定了运算精度是20位有效数字。但并不是规定了就可以使用,因为实际编程中,我们可能有些运算需要控制精度,而有些不需要控制。vpa就用于解决这个问题,凡是用需要控制精度的,我们都对运算表达式使用vpa函数。例如: digits(5); a=vpa(sqrt(2)); 这样a的值就是1.4142,而不是准确的1.4880 又如: digits(5); a=vpa(sqrt(2)); b=sqrt(2); 这样a的值是1.4142,b没有用vpa函数,所以b是1.4880...... 6

MATLAB基础及应用实验指导书

MATLAB基础及应用实验指导书

MATLAB基础及应用课程实验指导书 实验一软件环境和基本操作熟悉 一、实验目的 ①熟悉MATLAB 主界面,并学会简单的菜单操作。 ②学会简单的矩阵输入与信号输入。 ③掌握部分绘图函数。 二、实验内容 熟悉MATLAB操作环境,通过简单操作熟悉MATLAB的基本使用方法。 三、实验要求与步骤 1、用户第一次使用MATLAB 时,建议首先在屏幕上键入demo 命令,它将启动MATLAB 的演试程序,用户可在此演示程序中领略MATLAB 所提供的强大的运算与绘图功能。也可以键入help 进行进一步了解。 MATLAB 启动界面如图所示: MATLAB 语言最基本的赋值语句结构为:变量名列表= 表达式。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“= ”省略,则ans 变量将自动建立,例如键入:1900/81 ,得到输出结果:ans =23.4568 。 MATLAB 中变量命名的原则要求必须以英文字母开头,文件夹名字中可以

还包括、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的。这种规则包括将来为自己编写的脚本文件、函数文件命名以及为使用的变量命名也应遵循这个规则。 2、用户工作目录和当前目录的建立和设置 1)为管理方便,每个用户在使用MATLAB 前,尽量为自己建立一个专门的工作目录,即“用户目录”,用来存放自己创建应用文件。例如首先打开资源管理器,在E 驱动器下可以根据自己喜好建立一个新文件夹,但应注意:该文件夹必须以英文开头,文件夹名字中可以包括字母、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的,这与MATLAB 中为变量和文件名命名原则是一致的。尽管MATLAB\work 允许用户存放用户文件,但最好把它仅作为临时工作目录来使用。 2)为了用户运行方便,在开始工作前可把用户定义的目录设置为当前目录,方法是可直接在MATLAB 命令窗口桌面上方通过目录设置栏来实现。 3)把自己的工作目录加到MATLAB 搜索路径上,这样可以在任何情况下方便地调用自己的编写文件。MATLAB 工作时,基本搜索过程为:首先在工作空间,即MATLAB 内存中进行检查,看输入的指令是不是变量;如不是,则检查输入指令是不是内建函数(比如sin 函数等);如不是,则在当前目录上,检查是否有与输入指令相同的M 文件存在;如还没有,则在MATLAB 定义的搜索路径其他目录中,检查是否有该M 文件存在。设置方法是通过File 菜单下设置路径对话框进行。 3、熟悉简单的矩阵输入 1)从屏幕上输入矩阵A=[1 2 3 ;4 5 6;7 8 9] 回车 A=[1,2,3;4,5,6;7,8,9] 回车 观察输出结果。 2)试用回车代替分号,观察输出结果。 3)输入size(A) ,观察结果。 4)输入矩阵B=[9,8,7;6,5,4;3,2,1];回车 输入矩阵C=[4,5,6;7,8,9;1,2,3];回车,然后分别键入 A B C 回车观察结果。 5)选择File | new 菜单中的M-file ,输入B=[9,8,7;6,5,4;3,2,1] ;保存为

MATLAB与仿真应用

摘要 MATLAB是美国mathworks公司开发的大型数学计算软件,它具有强大的矩阵处理和绘图功能,已经广泛地应用于科学研究和工程技术的各个领域,MATLAB 以矩阵和向量为基本数据单元,提供了丰富的矩阵操作和矩阵运算功能,并在这些基本运算基础上提供了可供各种科学研究和工程技术门类使用的工具箱。极大地方便了科学计算和工程问题的求解,使得科技人员从复杂的变成工作中解放出来,专注于数学模型的建立。本文着重介绍MATLAB的基本操作和一些基础应用,并通过例子来阐述说明,熟悉MATLAB函数调用,了解其在电工电子技术中的应用。掌握Matlab基本语法结构及调试方法,熟悉Matlab函数调用,熟练其用于电工电子的一些计算,并学会用Matlab/Simulink进行简单电路的仿真。 一、MALTISM简介 MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 在MATLAB函数库中,除了基本初等函数外,还有初等矩阵和矩阵变换、线性代数方程组合矩阵特征的求解、多项式运算和求根、函数的插值和数据的多项式拟合、数值积分和常数微分方程数值解、函数求极值、单变量非线性方程求解根、数据分析和傅里叶变换,以及某些特殊的矩阵函数和数学函数,这些函数都可以直接调用。用户可以根据自己的需要任意扩充函数库。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用. 二、MATLAB的应用。 MATLAB产品族可以用来进行以下各种工作: ●数值分析 ●数值和符号计算

自动控制常见MATLAB函数的应用

自动控制常见MATLAB 函数的应用 1、在matlab 中采用roots 函数求解多项式的根,采用conv 函数实 现多项式的积,相互连接的模块的模型求解也相当简单(1)、串联连接命令G=G1*G2(2)、并联连接命令G=G 1±G2(3)、反馈连接命令G=feedback (G1,G2,Sign )(sign 用来表示系统是正反馈或负反馈,sign=-1为负反馈) 例如:① 程序如下: >>p=[1304]; >>roots(p) ans = -3.3553 0.1777+1.0773i 0.1777-1.0773i ②、用matlab 实现: 程序如下: >>p=[321];q=[14]; >>n=conv(p,q) n = 31494③、一个传递函数模型,可以由下面的命令输入:32()34p s s s =++2 ()(321)(4)n s s s s =+++325()345 s G s s s s +=+++

>>num=[15];den=[1345]; >>G=tf(num,den) Transfer function: s +5 --------------------- s^3+3s^2+4s +5 ④、如下图所示,前向传递函数为G (S ) ,反馈回路传递函数为H(S),利用feedback 计算系统的闭环传递函数 程序如下: >>numg=[1];deng=[50000]; >>numh=[11];denh=[12]; >>[num,den]=feedback(numg,deng,numb,denh,-1); >>[num,den]=feedback(numg,deng,numh,denh,-1); >>G=tf(num,den) () R S ???→

MATLAB优势和特点2

MATLAB优势和特点 2010-02-24 01:59:37| 分类:软件频道| 标签:无|字号大中小订阅 MATLAB自1984年由美国MathWorks1公司推向市场以来,历经十几年的发展,现已成为国际公认的最 优秀的科技应用软件。 MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或编程以完成各自的计算。 谈到MATLAB,就不能不涉及MathWorks公司的另一重要的伴随产品Simulink。Simulink是用来对真实世界的动力学系统建模、模拟和分析的软件。Simulink提供了基于MATLAB核心的数值、图形、编程功能的一个块状图界面,通过块与块的联线和属性设置,用户很容易构建出符合特定要求的模型,并对模 型进行分析和模拟。 MATLAB的组成 MATLAB大家庭有许多成员,包括应用程序开发工具、工具箱、数据存取工具、学生产品、状态流图、 模块集、代码生成工具等。 其中,应用程序开发工具包括了MATLAB编译器、C/C++数学库、MATLAB Web服务器、MATLAB 运行服务器,这些工具可以建立和发布独立于MATLAB环境的应用程序;工具箱实际上是一些高度优化并且是面向专门应用领域的函数的集合。仅随软件提供的工具箱可支持的领域就有信号和图象处理、控制系统设计、最优化、金融工程、符号数学、神经网络等等。工具箱的最大的特点是它的开放性,几乎所有函数都是用MATLAB语言写成的(只有少数工具箱的某些函数是使用C语言写成的动态库函数),因而可以直接阅读和加以改写,用户也可以自行开发适合特定领域的工具箱;数据存取工具提供了从外部数据源获取数据的简易途径,这些数据源包括外部硬件和外部数据库(与JDBC、ODBC兼容);而学生产品则是专门针对美国和加拿大地区的学生而发布的MATLAB的简易和廉价版本。 状态流图是一个专门针对事件驱动系统建模和设计的图形化的模拟环境;模块集是面向应用领域的模块(Simulink的基本单位)的集合,这些模块可以直接用于Simulink模型中;代码生成工具可以从Simulink 模型或状态流图中产生可定制的C和Ada代码,以便实现快速原型和硬件在线模拟。 MATLAB的特点 总的来说,该软件有三大特点。一是功能强大。具有数值计算和符号计算、计算结果和编程可视化、数学和文字统一处理、离线和在线计算等功能;二是界面友善、语言自然。MATLAB以复数处理作为计算单元,指令表达与标准教科书的数学表达式相近;三是开放性强。该公司本身就推出了30多个应用工具箱,而世界上超过200家公司开发出与MATLAB兼容的第三方产品,这些产品向用户提供更多的工具箱、模块集、与其他商业产品的接口等。下面仅对第二个特点作一些解释。 语言自然是MATLAB深受用户喜爱的重要原因之一。在MATLAB中,基本的计算单元是矩阵,复数或实数则可以理解为1×1的矩阵。MATLAB的很多运算都是直接针对矩阵的,所以表示起来也就特别方便。例如,复数“A=3+2i”,在MATLAB中表示就是“A=3+2i”。又如,要计算两个矩阵C、D的乘积,可以表示为“C×D”,而不像大多数计算机语言那样需要用户编写循环语句来实现。 MATLAB的这些特点使它获得了对应用学科(特别是边缘学科和交*学科)的极强适应力,并很快成为应用学科计算机辅助分析、设计、教学,乃至科技文字处理不可缺少的基础软件。 MATLAB与图象处理 图象处理工具包是由一系列支持图象处理操作的函数组成的,所支持的图象处理操作有:几何操作、区域操作和块操作;线性滤波和滤波器设计;变换(DCT变换);图象分析和增强;二值图象操作等。 图象处理工具包的函数,按功能可以分为以下几类:图象显示;图象文件输入与输出;几何操作;象素值和统计;图象分析与增强;图象滤波;线性二维滤波器设计;图象变换;领域和块操作;二值图象操

matlab特点及应用领域

MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连 matlab开发工作界面 接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了

像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。 一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同于其他语言的特点。正如同FORTRAN和C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB的最突出的特点就是简洁。MATLAB 用更直观的、符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观、最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点。 ①语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用其丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。 具有FORTRAN和C等高级计算机语言知识的读者可能已经注意到,如果用FORTRAN或C语言去编写程序,尤其当涉及矩阵运算和画图时,编程会很麻烦。例如,如果用户想求解一个线性代数方程,就得编写一个程序块读入数据,然后再使用一种求解线性方程的算法(例如追

最新Matlab中常见数学函数的使用

给自己看的----Matlab的内部常数(转) 2008/06/19 14:01[Ctrl C/V--学校 ] MATLAB基本知识 Matlab的内部常数 pi 圆周率 exp(1) 自然对数的底数e i 或j 虚数单位 Inf或inf 无穷大 Matlab的常用内部数学函数

如何用matlab进行多项式运算 (1)合并同类项 syms 表达式中包含的变量 collect(表达式,指定的变量) (2)因式分解 syms 表达式中包含的变量factor(表达式) (3)展开 syms 表达式中包含的变量 expand(表达式) 我们也可在matlab中调用maple的命令进行多项式的运算,调用格式如下: maple(’maple中多项式的运算命令’) 如何用matlab进行分式运算 发现matlab只有一条处理分式问题的命令,其使用格式如下: [n,d]=numden(f)把符号表达式f化简为有理形式,其中分子和分母的系数为整数且分子分母不含公约项,返回结果n为分子,d为分母。注意:f必须为符号表达式 不过我们可以调用maple的命令,调用方法如下: maple(’denom(f)’)提取分式f的分母 maple(’numer(f)’)提取分式f的分子 maple(’normal(f)’ ) 把分式f的分子与分母约分成最简形式 maple(’expand(f)’) 把分式f的分子展开,分母不变且被看成单项。 maple(’factor(f)’) 把分式f的分母和分子因式分解,并进行约分。 如何用Matlab进行因式分解 syms 表达式中包含的变量factor(表达式) 如何用Matlab展开 syms 表达式中包含的变量expand(表达式) 如何用Matlab进行化简 syms 表达式中包含的变量simplify(表达式) 如何用Matlab合并同类项 syms 表达式中包含的变量collect(表达式,指定的变量) 如何用Matlab进行数学式的转换 调用Maple中数学式的转换命令,调用格式如下: maple(‘Maple的数学式转换命令’) 即:maple(‘convert(表达式,form)’)将表达式转换成form的表示方式 maple(‘convert(表达式,form, x)’)指定变量为x,将依赖于变量x的函数转换成form的表示方式(此指令仅对form为exp与sincos的转换式有用) 如何用Matlab进行变量替换 syms 表达式和代换式中包含的所有变量subs(表达式,要替换的变量或式子,代换式) 如何用matlab进行复数运算 a+b*i 或 a +b*j表示复数a+bi 或a+bj real(z)求复数z的实部 imag(z)求复数z的虚部 abs(z)求复数z的模 angle(z)求复数z的辐角, conj(z)求复数z的共轭复数 exp(z)复数的指数函数,表示e^z 如何在matlab中表示集合 [a, b, c,…] 表示由a, b, c,…组成的集合(注意:元素之间也可用空格隔开) unique(A) 表示集合A的最小等效集合(每个元素只出现一次) 也可调用maple的命令,格式如下: maple('{a, b, c,…}')表示由a, b, c,…组成的集合 下列命令可以生成特殊的集合: maple(‘{seq(f(i),i=n..m)}’)生成集合{f(n), f(n+1), f(n+2), … , f(m)} 如何用Matlab求集合的交集、并集、差集和补集

matlab特点及应用领域

MATLAB就是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模与仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB与Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数与数据、实现算法、创建用户界面、连 matlab开发工作界面 接其她编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位就是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。

在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。 一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,就是由于它有着不同于其她语言的特点。正如同FORTRAN与C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB的最突出的特点就就是简洁。MATLAB用更直观的、符合人们思维习惯的代码,代替了C与FORTRAN语言的冗长代码。MATLAB给用户带来的就是最直观、最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点。 ①语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用其丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发就是站在专家的肩膀上。 具有FORTRAN与C等高级计算机语言知识的读者可能已经注意到,如果用FORTRAN或C语言去编写程序,尤其当涉及矩阵运算与画图时,编程会很麻烦。例如,如果用户想求解一个线性代数方程,就得编写一个程序块读入数据,然后再使用一种求解线性方程的算法(例如追赶法)编写一个程序块来求解方程,最后再输出计算结果。在求解过程中,

MATLAB基础及应用论文

题目 : MATLAB 语言多项式计算的分析与概述 摘要 :数值计算在科学研究与工程应用中有着十分广泛的应用,MATLAB 向我们提供 了标准的多项式的常用函数,包括求根、相乘、相除等。这些功能在进行现代数字信号处理与分析时非常有用。本文主要通过示例的形式分析与概述MATLAB 多项式计算的基本内容。 关键词 : 多项式 ;运算 ; 函数 ; 拟合 ; MATLAB 。 一、 引言 : MATLAB 是由MATH WORKS 公司推出的一种面向科学与工程的计算软件。 如今MATLAB 语言发展速度非常快,涉及十分广阔,本文主要讨论MATLAB 多项式的计 算,可谓MATLAB 的冰山一角。读者若要了解MATLAB 语言的更多知识还应多读多看他人著作。 二、 多项式计算 : 1,多项式的创建方法 : 在MATLAB 里:多项式由一个行向量表示,它的系数是按降序排列。 例如: 由1×N 的向量 表示 多项式,如用poly2sym()可以查看这个多项式。 (1)直接输入法 在MATLAB 命令窗口中直接输入多项式的系数矢量,然后利用转换函数poly2sym 将多项式由系数矢量形式转换为符号新式。 (2)指令P=poly(AR)法 若AR 是方阵,多项式P 是该方阵的特征多项式 若AR=[a 1, a 2,…,a n-1,a n ],则AR 的元素认为是多项式P 的根 如果A 为二维矩阵, poly(A)给出A 的特征多项式。如果A 为一维矩阵, poly(A)表示由A 的元素为多项式的根所确定的多项式。 【例1】产生多项式的方法。 clear %方法一(由多项式的系数确定的多项式) p=[1 -2 3]%直接给出多项式p poly2sym(p)%给出p 多项式的表达式 %方法二(由矩阵所确定的多项式) a=[1 2;-2 4] ] ..[210n a a a a p =n n n n n a x a x a x a P ++++=-- (22110)

论述MATLAB软件的重要性

论述MATLAB软件的重要性 计算机与信息管理工程学院 光信息科学与技术 王强 200807040050 MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用。 MATLAB的优势: (1)友好的工作平台和编程环境 MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。 (2)简单易用的程序语言 Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出

matlab的语言特点

Matlab语言的特点 Matlab具有用法简单、灵活、程式结构性强、延展性好等优点,已经逐渐成为科技计算、视图交互系统和程序中的首选语言工具。特别是它在线性代数、数理统计、自动控制、数字信号处理、动态系统仿真等方面表现突出,已经成为科研工作人员和工程技术人员进 行科学研究和生产实践的有利武器。 Matlab的技术特点 语言简洁紧凑,语法限制不严,程序设计自由度大,可移植性好。Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入输出和面向对象编程特点。Matlab以矩阵为基础,不需要预先定义变量和矩阵(包括数组)的维数,可以方便地进行矩 阵的算术运算、关系运算和逻辑运算等。而且Matlab有特殊矩阵专门的库函数,可以高效 地求解诸如信号处理、图像处理、控制等问题。 运算符、库函数丰富Matlab的一个重要特色就是具有一套程序扩展系统和一组称之 为工具箱的特殊应用子程序,每一个工具箱都是为某一类学科专业和应用而定制的。Matlab包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号 计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能;而学科性工具箱 是专业性比较强的,如control,toolbox,signl proceessingtoolbox,commumnicationtoolbox 等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科 范围内的基础程序就可直接进行高、精、尖的研究。 强大的数值(矩阵)运算功能Matlab是一个包含大量计算算法的集合。其拥有600 多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所 使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在 通常情况下,可以用它来代替底层编程语言,如C和C++。在计算要求相同的情况下,使 用Matlab的编程工作量会大大减少。Matlab的这些函数集包括从最简单最基本的函数到诸 如矩阵、特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运 算和线性方程组的求解、微分方程及偏微分方程组的求解、符号运算、傅立叶变换和数据 的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等 数学运算、多维数组操作以及建模动态仿真等。 界面友好、编程效率高Matlab程序书写形式自由,被称为“草稿式”语言,这是因 为其函数名和表达更接近我们书写计算公式的思维表达方式,编写Matlab程序犹如在草稿 纸上排列公式与求解问题,因此可以快速地验证工程技术人员的算法。此外Matlab还是一 种解释性语言,不需要专门的编译器。具体地说,Matlab运行时,可直接在命令行输入Matlab语句,系统立即进行处理,完成编译、链接和运行的全过程。利用丰富的库函数避 开繁杂的子程序编程任务,压缩了一切不必要的编程工作 图形功能强大Matlab 具有非常强大的以图形化显示矩阵和数组的能力,同时它能给 这些图形增加注释并且可以对图形进行标注和打印。Matlab 的图形技术包括二维和三维的 可视化、图象处理、动画等高层次的专业图形的高级绘图函数(例如图形的光照处理、色 度处理以及四维数据的表现等),又包括一些可以让用户灵活控制图形特点的低级绘图命令,可以利用Matlab的句柄图形技术创建图形用户界面。同时对一些特殊的可视化要求, 例如图形对话等,Matlab也有相应的功能函数,保证了用户不同层次的要求。另外新版本 的Matlab还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求 的用户也可以得到满足。 Matlab功能特点 它将一个优秀软件的易用性与可靠性、通用性与专业性、一般目的的应用与高深的科学技术应用有机的相结合 扩展性强Matlab不仅有着丰富的库函数,在进行复杂的数学运算时可以直接调用。 而且用户还可以根据需要方便地编写和扩充新的函数库。通过混合编程用户可以方便地在

Matlab的常用函数及指令简单介绍

摘要本文从计算机语言、数学建模、网络控制系统仿真与结构化思维等方面阐述了半年来学习Matlab的心得体会与感想。由于个人知识有限在部分细节问题的理解上可能存有偏差还请老师批评指正不吝赐教。关键词Matlab语言数学建模软件网络控制系统仿真 结构化思维 - 1 - 学习Matlab快半个学期了虽然还有很多问题不是很清楚但通过实践学习我对于Matlab总算有个整体的理解而且每次上机操作都会有一定的收获和感想下面就谈谈我个人对于Matlab的一些看法。 Matlab语言 Matlab和其它语言不一样我这个学期学习的是C语言另外对于Action Script、HTML、php语言也接触过一些。C语言主要是面向过程的它的灵活性比较强可根据自己的意图编辑程序但所耗费的时间和精力比较大。例如定义变量就分为int、float、char等类型十分麻烦而Action Script与php就显得比较随意不必纠结于哪一种类型的变量比如定义Var number3Var playtrue即可。相对于前两者而言Matlab则显得更为灵活与快捷它是一门解释性语言能自动将高级语言翻译成机器语言。比如求tf2当t012345时tf的值。如果使用C语言则需要定义变量调用math函数还要应用for循环、输出函数而Matlab则不然只需输入t0:5f2.t然后回车即可。另外Matlab还配有许多常用公式操作起来十分方便例如想求出223tftftytyty在10y10y时的零输入响应应用dsolve 函数只需输入xdsolveD2y3Dy2y0y01Dy01 回车即得结果x3exp-t-2exp-2t。或许也正是Matlab语言简洁、优化的特点才使得它在学术界被广泛应用吧。 数学建模 对于数学建模而言Matlab是一款相当不错的建模辅助工具因为Matlab中有统计函数线性分析函数插值函数非线性分析函数等等这些数模必备的函数而且Matlab强大的绘图功能可使很多数学演算过程变得可视化。这些对于分析问题都很有帮助。虽然我们学习的Matlab是电子信息工程方向的但在下个学期班里的大部分同学都要参加数模竞赛

MATLAB基础及其应用教程周开利邓春晖课后答案

第三章习题及参考答案 解答: >> p=[1 -1 -1]; >> roots(p) ans = -0.6180 1.6180 解答: 取n=5,m=61 >> x=linspace(0,2*pi,5); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on

分段线性和三次样条插值方法与精确值之差取n=11,m=61 >> x=linspace(0,2*pi,11); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on 分段线性和三次样条插值方法与精确值之差

解答: >> x=[0,300,600,1000,1500,2000]; >> y=[0.9689,0.9322,0.8969,0.8519,0.7989,0.7491]; >> xi=0:100:2000; >> y0=1.0332*exp(-(xi+500)/7756); >> y1=interp1(x,y,xi,'spline'); >> p3=polyfit(x,y,3); >> y3=polyval(p3,xi); >> subplot(2,1,1);plot(xi,y0,'o',xi,y1,xi,y3,'-.'); >> subplot(2,1,2);plot(xi,y1-y0,xi,y3-y0);grid on 插值和拟合方法相比较,都合理,误差也相近。 解答: 梯形法积分 >> x=-3:0.01:3;

Matlab语言及应用论文

一、MATLAB简介 MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple 并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。 二、应用 MATLAB 产品族可以用来进行以下各种工作: (1)数值分析; (2)数值和符号计算; (3)工程与科学绘图; (4)控制系统的设计与仿真; (5)数字图像处理技术; (6)数字信号处理技术; (7)通讯系统设计与仿真; (8)财务与金融工程。 MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特

相关文档
最新文档