matlab基本用法小结

matlab基本用法小结
matlab基本用法小结

Matlab基本用法小结

一、说明 (2)

二、数据类型及基本输入输出 (3)

1、数据类型,声明及赋初值 (3)

2、基本输入输出 (4)

三、流程控制 (5)

1、运算符 (5)

2、IF (5)

3、switch-case结构 (6)

4、try-catch结构 (7)

四、循环 (7)

1、while (7)

2、for (8)

五、数组、数组运算和矩阵运算 (8)

1、数值数组 (8)

2、数组运算和矩阵运算 (10)

3、逻辑数组 (13)

4、字符串数组 (14)

5、元胞数组 (14)

6、构架数组 (16)

7、空数组 (17)

六、M脚本文件和M函数文件、函数句柄 (17)

1、matlab script file: (17)

2、matlab function (18)

3.函数句柄的使用 (19)

七、文件 (20)

八、数据和函数的可视化 (21)

1.二维数据的可视化 (21)

2.三维数据的可视化 (23)

3.图像控制命令 (23)

九、独立的回调函数 (24)

一、说明

看了奚啸翔同学写的Fortran基本用法小结后觉得Fortran的语法既有matlab的特色也有C的特色。于是就套用了奚啸翔同学文章的格式,写了这篇matlab基本用法小结。目的是想和Fortran的语法有个对比,学起来更快。其实学过C、Fortran和matlab中任何一个的同学要学其他两种语言的语法都是非常容易上手的,一天就能搞定了。有兴趣的同学还可以看看百合Fortran版上的C、Fortran、matlab 语法对比,一定能有不少收获。

此外,尽管这三种语言的语法有很多相近的地方,matlab作为数学软件有其强大的图形用户界面操作、数据和函数的可视化和数值计算

功能,且自带很多现有的函数和工具包。而本文只涉及一些比较系统的基本操作,在最后附带介绍一些基本的数据和函数的可视化命令。建议要用的时候再利用matlab自带的帮助文档来搜索有用的函数和工具包。matlab的函数和命令都是比较人性化的,比如想要搜索读取fits文件的函数,搜索fits就能够搜到fitsread函数;需要将读出的fits数据重新做图,搜索image就可以找到imagesc函数。从书和别人的文档都只能学到有限的比较系统的操作,看帮助文档能发现更多的东西并整理出自己的使用方法。

最后要说明的是,C必须用循环才能做到的事情Fortran和matlab 用矩阵和数组运算就能做到,相对效率提高了很多;而对于一些运算量非常大的程序还是推荐用Fortran,因为相比之下matlab的运算速度比Fortran慢很多;而网上很多现有的天文软件包都是用fortran 写的(比如由宇宙学参数计算模拟数据的CAMB程序和宇宙模型可能性预测LIKELIHOOD程序),虽然matlab也有很多天文软件包,但相对fortran还是逊色不少。

二、数据类型及基本输入输出

1、数据类型,声明及赋初值

matlab中存储的数据类型(class)有以下几种:

而实际上matlab不需要对变量做声明,当它发现一个新的变量名时,将默认将其为双精度浮点类型(double)并分配内存空间。(这比C和

Fortran方便了许多,但在完成大运算量的程序时就显得浪费存储空间了)当需要把变量a从double转为其他类型的时候,比如要转为int16型,可以使用以下命令:

a=int16(a)

当需要创建一个字符型变量x并对其赋初值时,用以下格式:x='字符串';注意:

(1)在命令后加“;”表示不在command window中显示结果,而对上例来说如果不加“;”则会显示所赋字符串内容。

(2)所有的命令必须在英文输入状态下,如果使用中文输入状态下全角的“;”,将被处理为非法字符。

其中logical,cell和structure为逻辑,元胞和构架数组类型,将在后面的数组部分提到;function handle为函数句柄类型,将在后面的“M脚本文件和M函数文件、函数句柄”部分提到;java类供JA V A API应用程序接口使用,本文不进行说明。

最后说明一下,matlab也支持复数操作,赋值的时候直接输入即可,比如:a=1+2i;

2、基本输入输出

输入:v=input('message') %将用户输入的内容赋给变量v

v=input('message','s') %将用户输入的内容作为字符串赋给变量v

keyboard %用户可以从键盘输入任意多个指令

v=yesinput('prompt',default,possib)

%prompt为文字提示,default为缺省设置“值”,possib为设置值的范围。

%该指令无法在notebook中运行。

输出:disp(a)

%显示变量a的内容,另一种显示变量内容的方法是输入变量名,但是这样显示的结果带有“a=”。

三、流程控制

1、运算符

(1)关系操作符

== ~= > >= < <=

(2)涉及相互关系的集合运算符

& | ~ xor

% xor 相异元素返回1,相同元素返回0

2、IF

(1) 基本:

if 逻辑判断式

……

end

(2) 多重判断:

if 逻辑判断式

......

else if 逻辑判断式

......

else 逻辑判断式

......

end

end

end

3、switch-case结构

和C的switch语句一样

switch 变量

case数值1

……

case数值2

……

case 数值k %当变量等于数值k的时候,执行本组命令,然后跳出该结构。

……

otherwise

……%该命令可以不存在,在变量不等于前面所有的检测值的时候,执行此组命令。

end case

4、try-catch结构

try %只有当matlab执行本组命令发生错误时,后一组命令才会被执行

……

catch

……%如果此组命令执行又出错,matlab将终止该结构。end

%可以调用lasterr函数查询出错原因。如果函数的运行结果为一个空串,则表明这组命令被成功执行了。

四、循环

1、while

while 表达式

……

end

2、for

for x=数值

……

……

end

%其中的数值可以是数组;或者是类似下面的表达“1:4”,表示从1到4循环;还可以是“1:0.1:4”,表示以0.1为步长从1到4循环。

五、数组、数组运算和矩阵运算

1、数值数组

matlab中数组不需要声明。

(1)对一维数值数组赋初值

逐个元素输入:

x=[1 2 pi/2]

冒号生成:

x=1:0.1:4

定数线性采样法:

x=linspace (a,b,n)

%相当于第一个数为a,最后一个数为b,以n为采样点数等间距采样。

x=logspace(a,b,n)

%相当于第一个数为10a,最后一个数为10b,以n为采样点数等间距采样。

(2)对一维数值数组的寻访

x(3) %寻访第三个元素

x([1 2 3]) %寻访第1,2,3个元素

x(1:3) %寻访第1到3个元素

x(3:-1:1) %由前三个元素倒排成子数组

x(find(x>0.5)) %由大于0.5的元素构成的子数组

(3)对二维数值数组赋初值

逐个赋值:

x=[1,2,3; 3,4,6; 7,8,9]

%“;”为二维数组“行”的分隔符号,而“,”和空格为同一行元素的分隔符。

整列赋值:

x(:,[4,5])=4 %第4、5列赋值为4

元素重排:

A=reshape(1:9,3,3)

%将1到9重新排列成一个(3*3)矩阵,注意matlab是列“优先”,即先排第一列再排第二

列,而不是按行来排。

(4)二维数组元素的标识和寻访

“全下标”标识:

A(3,5) %第3行第5列元素

“单下标”标识:

对于一个(m*n)维数组A中第r行第c列元素,其“单下标”表示为:A(l)

%这里l=(c-1)*m+r

2、数组运算和矩阵运算

(1)数组运算

指令

含义

A.'

相当于conj(A'),conj的作用help一下吧……

A=s

把标量s赋给A的每个元素

s+B

标量s分别与B元素之和

s-B,B-s

标量s分别与B元素之差

s.*A

标量s分别与A元素之积

s./B,B.\s

s分别被B的元素除

A的每个元素自乘n次

A.^p

对A的各个元素分别求非整数幂

p.^A

以p为底,分别以A的元素为指数求幂A+B

对应元素相加

A-B

对应元素相减

A.*B

对应元素相乘

A./B

A的元素被B的对应元素除

B.\A

同上

exp(A)

以e为底,分别以A的元素为指数求幂log(A)

对A的各个元素求对数

sqrt(A)

对A的各个元素求平方根

求A各个元素的函数值

A#B

对应元素的关系运算,#代表关系运算符A@B

对应元素的逻辑运算,@代表逻辑运算符(2)矩阵运算

指令

含义

A'

共轭转置

s*A

标量s分别与A元素之积

S*inv(B)

B阵的逆乘s

A^n

A阵为方阵时,自乘n次

A^p

方阵A的非整数乘方

p^A

A阵为方阵时,标量的矩阵乘方

A+B

矩阵相加

A-B

矩阵相减

A*B

矩阵相乘

A/B

A右除B

B\A

A左除B

expm(A)

A的矩阵指数函数

logm(A)

A的矩阵对数函数

sqrtm(A)

A的矩阵平方根函数

funm(A,'FN')

一般矩阵函数

3、逻辑数组

看例子就明白了:

A=zeros(2,5); %预生成一个(2*5)全零数组A(:)=-4:5; %运用“全元素”方法向A赋值

L=abs(A)>3 %产生一个与A同维的“0 -1”逻辑值数组islogical(L) %判断L是否逻辑值数组。输出若为1,则是X=A(L) %把L中逻辑值为1对应的A元素取出

4、字符串数组

(1)字符串数组赋初值

S=['aa'

'bb']

或者:

S=char('aa','bb')

还可以:

S=str2mat('aa',' ','bb') %这里空串会产生空行

而:

S=str2cat('aa',' ','bb') %这里空串不会产生空行

(2) 字符串操作函数

int2str %把整数数组转换为串数组

num2str %把非整数数组转换为串数组

mat2str %把数值数组转换为串数组

%请使用help搜索其他的字符串操作函数。

5、元胞数组

元胞数组和一般数值数组和字符串数组不同,其元素可以是任意类型

和大小的对象。这

和C的结构型数组有些类似。

(1)创建元胞数组

有以下两种创建方式:

外标识元素赋值:

a=char('aa' 'bb');

b=1:9;

c=2:5;

d=[1+2i];

A(1,1)={a}; A(1,2)={b}; A(2,1)={c}; A(2,2)={d};

内涵的直接赋值:

a=char('aa' 'bb');

b=1:9;

c=2:5;

d=[1+2i];

A{1,1}=a; A{1,2}=b; A{2,1}=c; A{2,2}=d;

(2)元胞数组内容的调取

注意在这里()访问的是元胞,用{}访问的是元胞中存储的内容。比如:a=A(1,1)

显示:

a=

[12 char]

而:a=A{1,1}

显示:

a=

aa

bb

所以用{}而不是()调取元胞数组内容。

6、构架数组

构架数组和元胞数组类似,但其每个构架(地位相当于元胞数组的元胞)必须划分“域”后才能使用。看下面的例子:

green_house(2,3).name='六号房';

green_house(2,3).param.temperature=30;

green_house(2,3).param.humidity=10;

green_house

屏幕显示:

23 struct array with fields:

name

param

注意:

(1)在一个构架上进行的增减域的操作会影响到整个数组。

(2)增减子域不会影响到其他构架。

7、空数组

(1)有下面几种产生空数组的方法:

a=[]

b=ones(2,0) %ones的作用原本是产生一个全1的数组

c=zeros(2,0) %zeros的作用原本是产生一个全0的数组

d=eye(2,0) %eye的作用原本是产生一个对角元全为1的数组

f=rand(2,3,0,4) %rand的作用原本是产生随即数组。

(2)空数组可用于子数组的删除和数组大小的收缩

A(:,2)=[]

六、M脚本文件和M函数文件、函数句柄m文件分两种:函数和脚本。

1、matlab script file:

脚本文件没有输入输出,对工作空间(workspace)中的变量进行操作。

任何可执行的matlab命令都可以写入脚本文件。先来看一个简单的例子:

例1:产生一个20元素的一维随机数组并画出。

解:新建一个m文件命名为randplt.m(或者任何你喜欢的名字), 在其中加入如下两行代码

:

data=randn(1,20);

plot(data);

保存后选择debug/run菜单或按F5键运行,观察workspace中多出了一个变量data。

脚本文件执行时, 就如同将文件中的每一条命令依次输入到matlab 命令行中一样, 顺次执

行。你可以尝试在command history窗口中按住ctrl键选择几行执行过的命令并单击鼠标右

键在快捷菜单中选择creat M file来快速创建一个m文件。

2、matlab function

函数文件可以接受输入和给出输出,当然也可以没有,就像c语言的函数。matlab函数最大的书写特点(同C比起来)是它的输出变量定义在函数名前面。看一例:

例2: matlab内部函数std给出数组的标准差std=sqrt(sum(X)/N),编写函数stderr求实验误差err=sqrt(sum(X)/(N*(N-1))), 代码如下:function err=stderr(arr)

%实验误差(标准差估计)

%caculate along each column of arr

err=std(arr)./sqrt(size(arr,1)-1);

文件存为stderr.m, 运行时输入a=[1;2;3];建立一个列数组a, 然后输

入stderr(a)则给出a的方差。(若输入行数组则发散,因N-1=0)

此例中输入变量为arr, 函数名为stderr, 输出变量err, 此三者皆写在关键字function后面同一行。无需再使用return将err的值返回。注意:

(1)函数文件的命名要使用文件内主函数声明的名称,否则出错。(2)函数内部可以嵌套子函数并为该文件的主函数调用,只需将子函数写在主函数代码后面。

(3)一个函数可以有多个输入输出。如function [y1,y2]=myfun(x1,x2,x3)

例1中的m文件可在第一行前插入一行:

function randplt

保存后则该文件成为一个没有输入输出宗量的函数。

一般来说matlab中执行同样的任务使用函数文件比脚本文件的效率高。

3.函数句柄的使用

函数句柄起到c语言中函数指针的作用。

例3: 编写函数求出数组arr1和arr2的标准差(std)以及误差(stderr)。解:编写如下文件并保存为erreval.m

function [s1,s2]=erreval(err,arr1,arr2)

% err为所调用的误差函数,s1,s2分别返回arr1和arr2的误差.

s1=feval(err,arr1);

s2=feval(err,arr2);

此文件的输入包含"函数变量", 通过函数句柄实现函数变量err的赋值。

运行时先运行如下命令建立数组arr1,arr2:

arr1=[1;2;3];

arr2=[10;20;30];

然后输入

[std1,std2]=erreval(@std,arr1,arr2)

[stderr1,stderr2]=erreval(@stderr,arr1,arr2)

执行后返回四个误差值。

@std,@stderr为两误差函数的函数句柄。

七、文件

打开文件:

fid = fopen(filename,permission)

%其中的permission为打开类型,具体可查阅matlab的帮助文档。读文件:

[A,count] = fread(fid,size,precision)

%A 为存放读入数据的变量。

%count 为可选参数,存放成功读取的数据个数。

%fid 为文件指针。

%size 为要求读入的数据量大小,缺省状态下读到文件末尾。

matlab函数用法

A a abs 绝对值、模、字符的ASCII码值 acos 反余弦 acosh 反双曲余弦 acot 反余切 acoth 反双曲余切 acsc 反余割 acsch 反双曲余割 align 启动图形对象几何位置排列工具 all 所有元素非零为真 angle 相角 ans 表达式计算结果的缺省变量名 any 所有元素非全零为真 area 面域图 argnames 函数M文件宗量名 asec 反正割 asech 反双曲正割 asin 反正弦 asinh 反双曲正弦 assignin 向变量赋值 atan 反正切 atan2 四象限反正切 atanh 反双曲正切 autumn 红黄调秋色图阵 axes 创建轴对象的低层指令 axis 控制轴刻度和风格的高层指令 B b bar 二维直方图 bar3 三维直方图 bar3h 三维水平直方图 barh 二维水平直方图 base2dec X进制转换为十进制 bin2dec 二进制转换为十进制 blanks 创建空格串 bone 蓝色调黑白色图阵 box 框状坐标轴 break while 或for 环中断指令 brighten 亮度控制 C c

capture (3版以前)捕获当前图形 cart2pol 直角坐标变为极或柱坐标 cart2sph 直角坐标变为球坐标 cat 串接成高维数组 caxis 色标尺刻度 cd 指定当前目录 cdedit 启动用户菜单、控件回调函数设计工具cdf2rdf 复数特征值对角阵转为实数块对角阵ceil 向正无穷取整 cell 创建元胞数组 cell2struct 元胞数组转换为构架数组 celldisp 显示元胞数组内容 cellplot 元胞数组内部结构图示 char 把数值、符号、内联类转换为字符对象chi2cdf 分布累计概率函数 chi2inv 分布逆累计概率函数 chi2pdf 分布概率密度函数 chi2rnd 分布随机数发生器 chol Cholesky分解 clabel 等位线标识 cla 清除当前轴 class 获知对象类别或创建对象 clc 清除指令窗 clear 清除内存变量和函数 clf 清除图对象 clock 时钟 colorcube 三浓淡多彩交叉色图矩阵 colordef 设置色彩缺省值 colormap 色图 colspace 列空间的基 close 关闭指定窗口 colperm 列排序置换向量 comet 彗星状轨迹图 comet3 三维彗星轨迹图 compass 射线图 compose 求复合函数 cond (逆)条件数 condeig 计算特征值、特征向量同时给出条件数condest 范-1条件数估计 conj 复数共轭 contour 等位线 contourf 填色等位线 contour3 三维等位线

matlab基础知识

第2章基础知识 本章着重介绍MATLAB的一些基础知识,包括数据类型、基本矩阵操作、运算符和字符串处理函数。本章是MATLAB编程的基础。 2.1 数据类型 MATLAB中定义了很多种数据类型,包括字符、数值、单元、结构、java类、函数句柄等类型,用户还可以自己定义数据类型。 在MATLAB中有15种基本数据类型,每种基本数据类型均以数组/矩阵的形式出现,该矩阵可以是最小的0*0矩阵到任意大小的n维矩阵。 1.数值类型 数值类型包含整数、浮点数和复数3种类型。另外MATLAB还定义了Inf和NaN两个特殊数值。 (1)整数类型 MATLAB支持1、2、4和8字节的有符号整数和无符号整数。这8种数据类型的名称、表示范围、转换函数如表2-1所示,其中转换函数可以把其它数据类型的数值强制转换为对应的整数类型。尽可能使用字节少的数据类型,这样可以节约存储空间和提高运算速度。 表2-1 整数类型 名称范围转换函数名称范围转换函数 有符号1字节整数int8() 无符号1字节整数uint8() 有符号2字节整数int16() 无符号2字节整数uint16() 有符号4字节整数int32() 无符号4字节整数uint32() 有符号8字节整数int64() 无符号8字节整数uint64() (2)浮点数类型 MATLAB有单精度和双精度两种浮点数,其中双精度浮点数为MATLAB默认的数据类型。这2种数据类型的名称、存储空间、表示范围和转换函数如表2-2所示。

表2-2 浮点数类型 名称存储空间表示范围转换函数 单精度浮点数4字节single() 双精度浮点数8字节double() (3)复数类型 复数包含实部和虚部。在MATLAB中可以用i或j来表示虚部。 例如:在命令窗口中用赋值语句产生复数5+10i,代码如下: A=5+10i 例如:在命令窗口用函数complex()产生复数5+10i,具体代码如下: X=5; Y=10; z=complex(x,y) (4)Inf和NaN 在MATLAB中用Inf和-Inf分别表示正无穷大和负无穷大。除法运算中除数为0或者运算结果溢出都会导致inf或-inf的运行结果。 在MATLAB中用NaN(not a number)来表示一个既不是实数也不是复数的数值。类似0/0、inf/inf等运算产生的结果均为NaN。 2.逻辑类型 在MATLAB中逻辑类型包括true和false,分别由1和0表示。在MATLAB中用函数logical()将任何非零的数值转换为true(即1),将数值0转换为false(即0)。 3.字符和字符串类型 在MATLAB中,数据类型(char)表示一个字符。一个char类型的1*n数组称为字符串string。用单引号对表示字符串。 例如:str=‘I am a great person’

matlab基本用法

目录: 一、说明 二、数据类型及基本输入输出 三、流程控制 四、循环 五、数组、数组运算和矩阵运算 六、M脚本文件和M函数文件、函数句柄 七、文件 八、数据和函数的可视化 一、说明 matlab作为数学软件有其强大的图形用户界面操作、数据和函数的可视化和数值计算功能,且自带很多现有的函数和工具包。而本文只涉及一些比较系统的基本操作,在最后附带介绍一些基本的数据和函数的可视化命令。建议要用的时候再利用matlab自带的帮助文档来搜索有用的函数和工具包。matlab的函数和命令都是比较人性化的,比如想要搜索读取fits文件的函数,搜索fits就能够搜到fitsread函数;需要将读出的fits数据重新做图,搜索image就可以找到imagesc函数。从书和别人的文档都只能学到有限的比较系统的操作,看帮助文档能发现更多的东西并整理出自己的使用方法。 二、数据类型及基本输入输出 1、数据类型,声明及赋初值 matlab中存储的数据类型(class)有以下几种: 而实际上matlab不需要对变量做声明,当它发现一个新的变量名时,将默认将其为双精度浮点类型(double)并分配内存空间。(这比C和 Fortran方便了许多,但在完成大运算量的程序时就显得浪费存储空间了) 当需要把变量a从double转为其他类型的时候,比如要转为int16型,可以使用以下命令:a=int16(a) 当需要创建一个字符型变量x并对其赋初值时,用以下格式:x='字符串'; 注意: (1)在命令后加“;”表示不在command window中显示结果,而对上例来说如果不加“;”则会显示所赋字符串内容。 (2)所有的命令必须在英文输入状态下,如果使用中文输入状态下全角的“;”,将被处理为非法字符。其中logical,cell和structure为逻辑,元胞和构架数组类型,将在后面的数组部分提到;function handle为函数句柄类型,将在后面的“M脚本文件和M函数文件、函数句柄”部分提到;java类供JAVA API应用程序接口使用,本文不进行说明。最后说明一下,matlab也支持复数操作,赋值的时候直接输入即可,比如:a=1+2i; 2、基本输入输出 输入:v=input('message') %将用户输入的内容赋给变量v v=input('message','s') %将用户输入的内容作为字符串赋给变量v keyboard %用户可以从键盘输入任意多个指令 v=yesinput('prompt',default,possib) %prompt为文字提示,default为缺省设置“值”,possib为设置值的范围。

MATLAB文件各种操作方法(全)

1.1 文件的打开和关闭 1.1.1 文件的打开 fopen ('filename', 'mode') mode格式有: ‘r’:只读方式打开文件(默认的方式),该文件必须已存在。 ‘r+’:读写方式打开文件,打开后先读后写。该文件必须已存在。 ‘w’:打开后写入数据。该文件已存在则更新;不存在则创建。 ‘w+’:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。 ‘a’:在打开的文件末端添加数据。文件不存在则创建。 ‘a+’:打开文件后,先读入数据再添加数据。文件不存在则创建。 如果rt表示该文件以文本方式打开,如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。 Fopen函数两个返回值: 1、一个是返回一个文件标识(file Identifier),它会作为参数被传入其他对文件进 行读写操作的命令,通常是一个非负的整数,可用此标识来对此文件进行各种处理。 (如果返回的文件标识是–1,则代表fopen无法打开文件,其原因可能是文件不 存在,或是用户无法打开此文件权限); 2、另一个返回值就是message,用于返回无法打开文件的原因; 例:1-1 [f,message]=fopen('fileexam1', 'r') if f==-1 disp(message); %显示错误信息 end (若文件fileexam1不存在,则显示如下信息。 Cannot open file.existence?permissions?memory?) 例:1-2 [f,message]=fopen('fileexam2', 'r'); if f==-1 disp (message); %显示错误信息 else disp(f); end 若文件fileexam2存在,则返回f值。 1.1.2文件的关闭 Fclose(f) F为打开文件的标志,若若fclose函数返回值为0,则表示成功关闭f标志的文件;若返回值为–1,则表示无法成功关闭该文件。(打开和关闭文件比较耗时,最好不要在循环体内使用文件) 若要一次关闭打开的所有文件,可以使用下面的命令:fclose all

实验1 MATLAB使用方法和程序设计

实验1 MATLAB 使用方法和程序设计 一、实验目的 1、掌握MATLAB 软件使用的基本方法。 2、熟悉MATLAB 的数据表示、基本运算和程序控制语句。 3、熟悉MATLAB 绘图命令及基本绘图控制。 4、熟悉MATLAB 程序设计的基本方法。 二、实验内容 1.帮助命令 使用Help 命令,查找sqrt (开方)函数的使用方法。 2、矩阵运算 (1)矩阵乘法 已知A=[1 2;3 4];B=[5 5;7 8]; 求A^2*B 。 (2) 矩阵除法 已知A=[1 2 3;4 5 6;7 8 9];B=[1 0 0;0 2 0;0 0 3]; 求A\B,A/B 。 (3) 矩阵的转置及共轭转置 已知A=[5+i ,2-i ,1;6*i ,4,9-i];求A.’,A ’ 。 (4)使用冒号选出指定元素 已知A=[1 2 3 ; 4 5 6 ; 7 8 9]; 求A 中第3列前2个元素;A 中所有列第2,3行的元素。 (5)方括号[] 用magic 函数生成一个4阶魔术矩阵,删除该矩阵的第四列。 3、多项式 (1)求多项式p(x)=x 3-2x-4的根。 (2)求 f (x) = (cos x)2 的一次导数。 (3)求微分方程 的通解,并验证。 4、基本绘图命令 (1)绘制余弦曲线cost =y , ]2,0[π∈t 。 (2)在同一坐标系中绘制余弦曲线 0.25)-cos(t =y 和正弦曲线 )5.0sin(-=t y ,]2,0[π∈t (3)用plot3函数绘制三维螺线: 22x dy xy xe dx -+= sin()cos()x t y t z t =??=??=?( 0 < t < 20 )

Matlab基础知识点汇总

MATLAB讲义 第一章 MATLAB系统概述 1.1 MATLAB系统概述 MATLAB(MATrix LABoratory)矩阵实验室的缩写,全部用C语言编写。 特点: (1)以复数矩阵作为基本编程单元,矩阵运算如同其它高级语言中的语言变量操作一样方便,而且矩阵无需定义即可采用。 (2)语句书写简单。 (3)语句功能强大。 (4)有丰富的图形功能。如plot,plot3语句等。 (5)提供了许多面向应用问题求解的工具箱函数。目前,有20多个工具箱函数,如信号处理、图像处理、控制系统、系统识别、最优化、神经网络的模糊系统等。 (6)易扩充。 1.2 MATLAB系统组成 (1)MATLAB语言 MATLAB语言是高级的矩阵、矢量语言,具有控制流向语句、函数、数据结构、输入输出等功能。同时MATLAB又具有面向对象编程特色。MATLAB语言包括运算符和特殊字符、编程语言结构、字符串、文件输入/输出、时间和日期、数据类型和结构等部分。 (2)开发环境 MATLAB开发环境有一系列的工具和功能体,其部分具有图形用户界面,包括MATLAB桌面、命令窗口、命令历史窗口、帮助游览器、工作空间、文件和搜索路径等。 (3)图形处理 图形处理包括二维、三维数据可视化,图像处理、模拟、图形表示等图形命令。还包括低级的图形命令,供用户自由制作、控制图形特性之用。 (4)数学函数库 有求和、正弦、余弦等基本函数到矩阵求逆、求矩阵特征值和特征矢量等。 MATLAB数学函数库可分为基本矩阵和操作、基本数学函数、特殊化数学函数、线性矩阵函数、数学分析和付里叶变换、多项式和二重函数等。 (5)MATLAB应用程序接口(API) MATLAB程序可以和C/C++语言及FORTRAN程序结合起来,可将以前编写的C/C++、FORTRAN语言程序移植到MATLAB中。 1.3 MATLAB的应用围包括: MATLAB的典型应用包括: ●数学计算 ●算法开发 ●建模、仿真和演算 ●数据分析和可视化 ●科学与工程绘图 ●应用开发(包括建立图形用户界面) 以矩阵为基本对象 第二章 Matlab基础

MATLAB中plot的用法

MATLAB中plot的用法(2011-05-17 22:10:50)转载▼ 标签:杂谈 第五讲计算结果的可视化 本节介绍MATLAB 的两种基本绘图功能:二维平面图形和三维立体图形。 5.1 二维平面图形 5.1.1 基本图形函数 plot 是绘制二维图形的最基本函数,它是针对向量或矩阵的列来绘制曲线的。也就是说,使用plot 函数之前,必须首先定义好曲线上每一点的x 及y 坐标,常用格式为:(1)plot(x) 当x 为一向量时,以x 元素的值为纵坐标,x 的序号为横坐标值绘制 曲线。当x 为一实矩阵时,则以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线, 当x 为m×n 矩阵时,就由n 条曲线。 (2)plot(x,y) 以x 元素为横坐标值,y 元素为纵坐标值绘制曲线。 (3)plot(x,y1,x,y2,…) 以公共的x 元素为横坐标值,以y1,y2,…元素为纵坐标值绘 制多条曲线。 例5.1.1 画出一条正弦曲线和一条余弦曲线。 >> x=0:pi/10:2*pi; >> y1=sin(x); >> y2=cos(x); >>plot(x,y1,x,y2) 图5.1.1 函数plot 绘制的正弦曲线 在绘制曲线图形时,常常采用多种颜色或线型来区分不同的数据组,MATLAB 软件专 门提供了这方面的参数选项(见表5.1.1),我们只要在每个坐标后加上相关字符串,就可实 现它们的功能。 - 2 - 表5.1.1 绘图参数表 色彩字符颜色线型字符线型格式标记符号数据点形式标记符号数据点形式 y 黄- 实线. 点<小于号 m 紫:点线o 圆s 正方形 c 青-. 点划线x 叉号 d 菱形 r 红- - 虚线+ 加号h 六角星 g 绿* 星号p 五角星 b 蓝v 向下三角形 w 白^ 向上三角形 k 黑>大于号 例如,在上例中输入 >>plot(x,y1,'r+-',x,y2,'k*:') 则得图5.1.2 图5.1.2 使用不同标记的plot 函数绘制的正弦曲线 5.1.2 图形修饰 MATLAB 软件为用户提供了一些特殊的图形函数,用于修饰已经绘制好的图形。 表5.1.2 图形修饰函数表

matlab基本函数的用法

一. Matlab中常见函数基本用法 1.sum (1 )sum(A)A为矩阵得出A矩阵每列的和组成的一个矢量; A为矢量得出A的各元 素之和 (2)sum(diag(A))得矩阵A的对角元素之和 (3)sum(A,dim) A为矩阵,sum(A,1)按列求和;sum(A,2)按行求和 2.max(min) (1)max(A) 若A为矩阵则得出A矩阵每列的最大元素组成的一个矢量 若A为矢量则得出A中最大的元 (2)max(A,B) A与B为同维矩阵得出取A 与B中相同位置元素中较大者组成的新矩阵 (3)max(A,[],dim) max(a,[ ],1),求每列的最大值;max(a,[ ],2)求每行的最大值 3.find (1)find(X)若X为行向量则得出X中所有非零元素所在的位置(按行)若X为列向量或矩阵则得出X中所有非零元素的位置(按列)(2)ind = find(X, k)/ind = find(X,k,'first') 返回前k个非零元的指标ind = find(X,k,'last') 返回后k个非零元的指标 (3)[row,col] = find(X) row代表行指标,col代表列指标 [row,col,val] = find(X) val表示查找到对应位置非零元的值 [row,col] = find(A>100 & A<1000) 找出满足一定要求的元素 4.reshape (1)B = reshape(A,m,n) 把A变成m*n的矩阵 5.sort (1)B = sort(A) 把A的元素按每列从小到大的顺序排列组成新矩阵

(2)B = sort(A,dim) dim=1同(1); dim=2 把A按每行从小到大的顺序排列组成新矩阵 6.cat (1)C = cat(dim, A, B) dim=1相当于[A;B];dim=2相当于[A,B] (2)C = cat(dim, A1, A2, A3, A4, ...) 类推(1) 7.meshgrid (1)[X,Y] = meshgrid(x,y) 将向量x和y定义的区域转换成矩阵X和Y,矩阵X的行向量是向量x的简单复制,而矩阵Y的列向量是向量y的简单复制。(2)[X,Y] = meshgrid(x) (1)y=x中情形 8.diag (1)X = diag(v,k) 向量v作为X的第k对角线上的元素X的其他元素为零(2)X = diag(v) (1)中k=0的情况 (2)v = diag(X,k) v为矩阵X的第k对角线的元素组成的列向量 (4)v = diag(X) (3)中k等于零的情况

Matlab入门基础知识整理

MATLAB基础知识 MATLAB的主要功能 1.数值计算和符号计算功能 例如,求解线性方程组 在MATLAB命令窗口输入命令: a=[2,3,-1;3,-5,3;6,3,-8]; b=[7;8;9]; x=inv(a)*b 也可以通过符号计算来解此方程 syms x1 x2 x3 [x1,x2,x3]=solve(2*x1+3*x2-x3-7,3*x1-5*x2+3*x3-8,6*x1+3*x2-8*x3-9) 2.绘图功能 例如,分别绘制函数y=300sinx/x和y=x2的曲线 x=-20:0.1:20; plot(x,300*sin(x)./x,':',x,x.^2); 3.程序设计语言功能 MATLAB是解释性语言,程序执行速度较慢,而且不能脱离MATLAB环境而独立运行。MathWorks公司提供了将MATLAB源程序编译为独立于MATLAB集成环境运行的EXE文件以及将MATLAB程序转化为C语言程序的编译器。4.扩展功能 MATLAB包含两部分内容:基本部分和各种可选的工具箱。 基本部分构成了MATLAB的核心内容,也是使用和构造工具箱的基础。 工具箱扩展了MATLAB的功能。 功能性工具箱 学科性工具箱 MATLAB的集成开发环境 命令窗口(Command Window)用于输入命令并显示除图形以外的所有执行结果。一般来说,一个命令行输入一条命令,命令行以回车或分号结束 但一个命令行也可以输入若干条命令,各命令之间以逗号或分号隔开 如果一个命令行很长,一个物理行之内写不下,可以在第1个物理行之后加上3个小黑点并按下回车键,然后接着下一个物理行继续写命令的其他部分。3个小黑点称为续行符,即把下面的物理行看作该行的逻辑继续。例如: z=1+1/(1*2)+1/(1*2*3)+1/(1*2*3*4)+ … 1/(1*2*3*4*5) 工作空间(Workspace)是MATLAB用于存储各种变量的内存空间。 当前目录(Current Directory)是指MATLAB运行时的工作目录,只有在当前目录下的文件、函数才可以被运行或调用。 如果没有特殊指明,数据文件也将存放在当前目录下。 命令历史窗口 自动保留自安装起所有用过的命令的历史记录,并且还标明了使用时间,从而方便用户查询。而且,通过双击命令可进行历史命令的再运行。 MATLAB的帮助功能 进入MATLAB帮助界面可以通过以下方法。 ●单击MATLAB主窗口工具栏中的Help按钮。

2matlab基本使用方法

(12+2*(7-4))/3^2 ans = 2 format short;pi ans = 3.1416 format long;pi ans = 3.141592653589793 format rat;pi ans = 355/113 format long;vpa(pi,50) ans = 3.141592653589793115997963468544185161590576171875 who Your variables are: ans a=randn(4) a = -0.1241 0.6715 0.4889 0.2939 1.4897 -1.2075 1.0347 -0.7873 1.4090 0.7172 0.7269 0.8884 1.4172 1.6302 -0.3034 -1.1471 whos Name Size Bytes Class Attributes a 4x4 128 double ans 1x1 8 double who Your variables are: a ans what M-files in the current directory E:\Matlab2010\智能仿生算法\遗传算法TSP_SuiJiSuanFa ZhuanJiaXiTongP167 fun_SuiJiSuanFa TSPrun_SuiJiSuanFa f fun_SuiJiSuanFa0

ZhuanJiaXiTongP162 f1 fun_SuiJiSuanFa2 MAT-files in the current directory E:\Matlab2010\智能仿生算法\遗传算法 my27city dir . ZhuanJiaXiTongP162.asv f.m my27city.mat .. ZhuanJiaXiTongP162.m f1.m temp 3d.asv ZhuanJiaXiTongP167.asv fun_SuiJiSuanFa.asv temp.prj 3d.m ZhuanJiaXiTongP167.m fun_SuiJiSuanFa.m zia03836 New Folder bou2_4l.shp fun_SuiJiSuanFa0.asv TSP_SuiJiSuanFa.m da fun_SuiJiSuanFa0.m TSPrun_SuiJiSuanFa.m da.prj fun_SuiJiSuanFa2.m type 3d clf; x=-3:0.1:3; y=-3:0.1:3; [X Y]=meshgrid(x,y); Z=f(X,Y)+4; mesh(X,Y,Z); hold on; plot3(-0.7,-1,f(-0.7,-1)+4,'g*'); contour(X,Y,Z,'r'); which rand built-in (D:\Program Files\MATLAB\R2010a\toolbox\matlab\randfun\rand) which 3d.m E:\Matlab2010\智能仿生算法\遗传算法\3d.m help exist EXIST Check if variables or functions are defined. EXIST('A') returns: 0 if A does not exist 1 if A is a variable in the workspace 2 if A is an M-file on MATLAB's search path. It also returns 2 when A is the full pathname to a file or when A is the name of an ordinary file on MATLAB's search path 3 if A is a MEX-file on MATLAB's search path 4 if A is a MDL-file on MATLAB's search path 5 if A is a built-in MATLAB function 6 if A is a P-file on MATLAB's search path 7 if A is a directory 8 if A is a Java class

MATLAB基础知识考试复习总结

第一章MATLAB基础 1系统仿真是根据被研究的真实系统的数学模型研究系统性能的一门学科,现在尤指利用计算机去研究数学模型行为的方法,即数值仿真。 2MATLAB集计算,可视化及编程于一身。其主要产品模块构成:(1)MATLAB(2)MATLABtoolbox(3)MATLAB Compiler(4)simulink(5)stateflow(6)Real-Time Workshop。 3MATLAB语言被称为第四代计算机语言。有以下几个主要特点:编程效率高;使用方便;高效方便的科学计算;先进的可视化工具;开放性、可扩展性强;运行时动态连接外部C或FORTRAN应用函数;在独立C或FORTRAN程序中调用MATLAB 函数;输入输出各种MATLAB及其他标准格式的数据文件;创建图文并茂的技术文档;特殊应用工具箱;高效仿真工具Smulink。 4变量命名规则:变量名、函数名对字母大小写敏感;变量名第一个字母必须是英文字母(只能是英文、数字和下连线)。 5 real(z)求复数Z实部 imag(Z)求复数Z虚部 abs(z) 求复数Z的模angle(Z)求复数Z的相角(单位是弧度) callback回校函数mdata=csvread(‘engdata.txt’) clc清除指令窗 clf清除图形窗 cd设置当前工作目录clear清除工作空间保存的变量 edit打开M文件编辑器exit、quit关闭、退出MATLAB 6 c=3+5i c=3+5*i (a=3;b=5;c=a+b*i) 1.3e-4 2.78e23 A.’转置S.*B S./B B.\S A.^n 7Command History(历史指令)窗记录着用户在命令指令窗中所输入过的所有指令行,且所有这些被记录的指令行都能被复制,并送到指令窗中再运行。 8Workspace Browser(工作空间浏览器)也叫内存浏览器,他保存了指令窗所使用过的全部变量(除非有意删除),可通过该浏览器对内存变量进行操作。 10点击MATLAB桌面工具条上的?图标,或选择下拉菜单项【Help】,都能提供帮助;MATLAB还提供现场帮助,用鼠标点亮指令并点击右键,在弹出的菜单中选择【Help On Selection】。 第二章数据及其运算 1简单数组生成方法:逐个元素输入法;冒号生成法[x=a:intc:b]; [x=linspace(a,b,n)]=[a:(b-a)/(n-1):b];logspace(w1,w2,n) 2>> diag([3,3,3])产生对角形数组 ans =3 0 0 0 3 0 0 0 3 >> eye(3) 产生单位数组 ans =1 0 0 0 1 0 0 0 1 >> magic(3) 产生魔方数组 a ns =8 1 6

matlab软件的使用方法

MATLAB 软件使用简介 默认分类2007-03-15 21:26:49 阅读4106 评论8 字号:大中小订阅 MATLAB 软件使用简介 MATLAB 是一个功能强大的常用数学软件, 它不但可以解决数学中的数值计算问题, 还可以解决符号演算问题, 并且能够方便地绘出各种函数图形。MATLAB自1984年由美国的MathWorks公司推向市场以来,历经十几年的发展和竞争,现已成为国际最优秀的科技应用软件之一。这里主要以适用于Windows操作系统的MATLAB5.3版本向读者介绍MATLAB 的使用命令和内容。 一、MATLAB 的进入/退出 MA TLAB 的安装成功后, 系统会在Windows【开始】菜单的【程序】子菜单中加入启动MATLAB命令的图标, 用鼠标单击它就可以启动MATLAB系统,见图2.1。 图2.1 启动MA TLAB 启动MATLAB后, 屏幕上出现MATLAB命令窗口: 图2.2 MA TLAB命令窗口 图2.2的空白区域是MATLAB 的工作区(命令输入区), 在此可输入和执行命令。 退出MATLAB系统像关闭Word文件一样, 只要用鼠标点击MATLAB系统集成界面右上角的关闭按钮即可。 二、MATLAB 操作的注意事项 l 在MA TLAB工作区输入MATLAB命令后, 还须按下Enter键, MA TLAB才能执行你输入的MA TLAB命令, 否则MA TLAB不执行你的命令。 l MATLAB 是区分字母大小写的。 l 一般,每输入一个命令并按下Enter键, 计算机就会显示此次输入的执行结果。(以下用↙表示回车)。如果用户不想计算机显示此次输入的结果,只要在所输入命令的后面再加上一个分号“;”即可以达到目的。如: x= 2 + 3 ↙x=5 x = 2 + 3 ; ↙不显示结果5 l 在MA TLAB工作区如果一个表达式一行写不下,可以用在此行结尾处键入三个英文句号的方法达到换行的目的。如: q=5^6+sin(pi)+exp(3)+(1+2+3+4+5)/sin(x)… -5x+1/2-567/(x+y) l MATLAB 可以输入字母、汉字,但是标点符号必须在英文状态下书写。 l MATLAB 中不需要专门定义变量的类型,系统可以自动根据表达式的值或输入的值

matlab基本使用方法

1-1、基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如:>> (5*2+1.3-0.8)*10/25 ans =4.2000 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。小提示: ">>"是MATLAB的提示符号(Prompt),但在PC中文视窗系统下,由於编码方式不同,此提示符号常会消失不见,但这并不会影响到MATLAB的运算结果。 我们也可将上述运算式的结果设定给另一个变数x: x = (5*2+1.3-0.8)*10^2/25 x = 42 此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。 小提示: MATLAB将所有变数均存成double的形式,所以不需经过变数宣告(Variable declaration)。MATLAB同时也会自动进行记忆体的使用和回收,而不必像C语言,必须由使用者一一指定.这些功能使的MATLAB易学易用,使用者可专心致力於撰写程式,而不必被软体枝节问题所干扰。 若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例: y = sin(10)*exp(-0.3*4^2); 若要显示变数y的值,直接键入y即可: >>y y =-0.0045 在上例中,sin是正弦函数,exp是指数函数,这些都是MATLAB常用到的数学函数。 下表即为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。 > 小整理:MATLAB常用的三角函数 sin(x):正弦函数 cos(x):馀弦函数 tan(x):正切函数

matlab 基础函数用法总结

1、Size 函数用法 例如:1,2,3;4,5,6]是一个2*3的矩阵,则: d = size(X); %返回矩阵的行数和列数,保存在d中 [m,n] = size(X)%返回矩阵的行数和列数,分别保存在m和n中 m = size(X,dim);%返回矩阵的行数或列数,dim=1返回行数,dim=2返回列数 2、Corrcoef 函数用法 corrcoef(x,y)表示序列x和序列y的相关系数,得到的结果是一个2*2矩阵,其中对角线上的元素分别表示x和y的自相关,非对角线上的元素分别表示x 与y的相关系数和y与x的相关系数,两个是相等的 3、sort函数用法 sort(X) 功能:返回对向量X中的元素按列升序排列的新向量。 [Y, I] = sort(A, dim, mode) 功能:对矩阵A的各列或各行重新排序,I记录Y中的元素在排序前A中位置,其中dim指明读A的列还是行进行排序。若dim=1,则按列排序;若dim=2,则按行排序。mode为排序的方式,取值'ascend'为升序,'descend'为降序 4、Legend 函数用法 legend(string1,string2,string3,┈) 分别将字符串1、字符串2、字符串3……标注到图中,每个字符串对应的图标为画图时的图标。 例如: plot(x,sin(x),?.b?,x,cos(x),?+r?) legend(…sin?,?cos?) //这样就可以把”.”标识为”sin”,把”+”标识为“cos” 5、find 函数用法 找到非零元素的索引和值 语法: 1. ind = find(X) 2. ind = find(X, k) 3. ind = find(X, k, 'first') 4. ind = find(X, k, 'last') 5. [row,col] = find(X, ...) 6. [row,col,v] = find(X, ...) 说明: 1. ind = find(X)

第一章MATLAB基础知识

第一章MATLAB基础知识 1.1 MATLAB开发环境 1.MATLAB操作桌面 MATLAB4.0以上版本都是在Windows以上环境支持下操作与运行的,因此,这里必须假定读者对Windows有一定的了解和掌握。本书以Windows98环境,MATLAB6.5版本为例介绍。书中绝大多数例子在MA TLAB5.3版本中亦能使用. 要想进入MATLAB系统,方法有二: (1)在Windows98的桌面上双击MATLAB快捷图标。 (2)单击Windows98的“开始”按钮,再依次单击:程序/MA TLAB/MA TLAB6.5; 图1-1 MATLAB6.5除保留了传统的命令窗口外,还增加了启动平台窗口、工作空间窗口、命令历史窗口、当前路径窗口等窗口,与新的M文件编辑器和新的在线帮助浏览器等共同构成了MA TLAB6.5的开发环境。 MATLAB的开发环境是MATLAB语言的基础和核心部分,MATLAB语言的全部功能都是在MA TLAB的开发环境中实现的,MA TLAB的仿真工具Simulink、MATLAB

的工具箱等其他附加功能的实现也必须使用MATLAB开发环境,因此,掌握MATLAB 的开发环境是掌握MATLAB语言的关键。 启动MA TLAB后,将显示包括命令窗口、启动平台窗口、工作空间窗口、命令历史窗口和当前路径窗口等5个窗口和主菜单组成的操作桌面(图1-1)。本节对操作桌面的各个窗口作简要介绍,部分窗口的功能和使用将在以后的章节中详细介绍。 操作桌面缺省状态下显示3个窗口,当前路径和工作空间窗口在同一位置显示,可以通过该窗口下方的箭头或窗口标签来切换,命令历史窗口和当前目录窗口在同一位置显示,可以通过该窗口下方窗口标签来切换。每个窗可以脱离操作桌面独立出来。也可以通过菜单View来选择显示哪些窗口。 MATLAB还设定了几种特定的窗口布局方式,在View菜单的Desktop Layout选项中,给定了6种布局方式: Default(缺省方式) Command Window Only(只显示命命令窗口方式) Simple(简单方式,只有命令历史窗口和命令窗口) Short History(低命令历史窗口方式) Tall History(高命令历史窗口方式) Five Panel(5个窗口平铺方式) 2.MATLAB的通用参数设置 MATLAB的通用参数和各功能窗口的参数可以通过主菜单中的file/Preferences项设置,这里先介绍通用参数的设置。 在主菜单中选择Preferences项,打开Preferences窗口(图1-2),缺省状态为通用参数设置,其选项包括: Display(显示选择)Show tooltips(显示相关信息),当单选框选择后,鼠标放在工具栏的快捷按钮上时显示相关信息。 Toolbox caching(工具箱缓冲区)对于远程使用MATLAB的用户,应选择单选框Enable Toolbox caching(打开工具箱缓冲区),建立一个高速缓冲区,以提高使用速度,对单机用户该选项作用不大。 Figure window printing(图形窗口打印)有3个选项,分别为Use printer default(按打印机缺省设置输出)、Always send as black and white(按黑白图形输出)和Always send as color(按彩色图形输出)。

matlab

1.x=input('请输入一个四位整数:'); a=fix(x/1000); b=rem(fix(x/100),10); c=rem(fix(x/10),10); d=rem(x,10); a=a+7; b=b+7; c=c+7; d=d+7; a=rem(a,10); b=rem(b,10); c=rem(c,10); d=rem(d,10); e=a; a=c; c=e; f=b; b=d; d=f; x=1000*a+100*b+10*c+d; x 2.(1)a=input(‘请输入一个数’); b=input(‘请输入一个数’); c=input(‘请输入一个数’); If x>=0.5&&x<1.5 y=ax^2+bx+c elseif x>=1.5&&x<3.5 y=a(sinb)^c+x elseif x>=3.5&&x<5.5 y=log[abs(b+c/x)] end

disp y end (2)a=input(‘请输入一个数’); b=input(‘请输入一个数’); c=input(‘请输入一个数’); Switch x case[0.5,1.5] y=ax^2+bx+c case[1.5,3.5] y=a(sinb)^c+x case[3.5,5.5] y= log[abs(b+c/x)] end disp y 3. x=fix(rand(1,20)*89)+10; x1=fix(sum(x)/20); if xmax max=m; end if m

Matlab用法大全

Matlab用法大全 1求取系统单位阶跃响应:step() step()函数的用法 y=step(num,den,t):其中num和den分别为系统传递函数描述中的分子和分母多项式系数,t为选定的仿真时间向量,一般可以由t=0:step:end等步长地产生出来。该函数返回值y为系统在仿真时刻各个输出所组成的矩阵 [y,x,t]=step(num,den):此时时间向量t由系统模型的特性自动生成, 状态变量x返回为空矩阵。 [y,x,t]=step(A,B,C,D,iu):其中A,B,C,D为系统的状态空间描述矩阵,iu用来指明输入变量的序号。x为系统返回的状态轨迹。 2h = tf([1 1],[1 2 5]); [num,den] = tfdata(h,'v') 3a(:,j)表示a的j列的所有行元素 a(i,:)表示i行的所有列元素 4a=[]创建空矩阵 5 eval ()函数的功能就是将括号内的字符串视为语句并运行 例如:eval ('y1=sin(2)')就是相当于在matlab命令窗口输入了y1=sin(2)这条命令。 多在循环中使用,可以对多个名字有规则的变量或文件进行操作, 例一: for x=1:5 eval (['y',num2str(x),'=',num2str(x^2),';']) end 以上语句等价于执行以下5句: ynum2str(1)=num2str(1^2); ynum2str(2)=num2str(2^2); ynum2str(3)=num2str(3^2); ynum2str(4)=num2str(4^2); ynum2str(5)=num2str(5^2); 例二: subplot(711);plot(t,y);title('原始信号’); for i=1:6 subplot(7,1,i+1); plot(t,imf(i,:)); eval (['title(''IMF',int2str(i),''');']); end ------------------------- 以上6行程序实际上是执行以下7条命令 subplot(711);plot(t,y);title('原始信号'); subplot(7,1,2);plot(t,imf(1,:));title('IMF1'); subplot(7,1,3);plot(t,imf(2,:));title('IMF2'); subplot(7,1,4);plot(t,imf(3,:));title('IMF3'); subplot(7,1,5);plot(t,imf(4,:));title('IMF4');

相关文档
最新文档