文档库 最新最全的文档下载
当前位置:文档库 › matlab基本知识

matlab基本知识

matlab基本知识
matlab基本知识

一、打开、显示、保存图像命令

f = imread(‘图像路径+图像全名’);

imshow(f)

imwrite(f,’保存路径’);

whos f //查看f详细信息,包括尺寸、大小、数据类型

help ××× //查看系统函数的用法。

二、矩阵变量处理

A = zeros(100,200); //定义100×200的全零矩阵,其中100是列数、200是行数

B = ones(100,200); //定义全1矩阵。

C= A+1; //矩阵与常量相加

D = A+B; //矩阵相加,其中两个矩阵的尺寸和数据类型必须一致

三、图像不同类型间的转换

B = rgb2gray(A); //将彩色图像A转换成灰度图像B。

B = im2uint8(B); //将B转换成整数型。

B = im2double(B); //将B转换成小数型。

C = im2bw(B,0.5); //将B转换成二值图像,以0.5为阈值。

四、图像像素、区域、通道的选择

Ar = A(:,:,1); //选择彩色图像A的red通道数据,存储为Ar灰度图。

Ag= A(:,:,2); //选择彩色图像A的green通道数据,存储为Ag灰度图。

Ab= A(:,:,3); //选择彩色图像A的blue通道数据,存储为Ab灰度图。

Ar(3,5); //选取图像Ar中第三列第五行的像素,并返回其灰度值。Ar是灰度图像。

A(3,5) //选取图像A中第三列第五行的像素,并返回其灰度值,因为A是彩色图像,故A(3,5)是包含三个元素的数组,不是常数!

Ar(1:100, 50:150); //选取图像的部分区域。

五、开辟窗口显示多图

Subplot(2,1,1),imshow(f) //创建显示两幅图像的窗口,并在上半部分显示f Subplot(2,1,2),imshow(g) //创建显示两幅图像的窗口,并在下半部分显示g

MATLAB复习知识点汇总

MATLAB 复习 1、实现符号函数 运算功能的函数m 文件为: function y=sgn(x) if x<0 y1=-1; elseif x==0 y1=0; else y1=1; end y=y1; 2、求满足1+2+3+…n<100的最大正整数n 的MATLAB 程序为: sum=0;n=0; while sum<100 n=n+1; sum=sum+n; end 1,0,sgn()0,0, 1,0x y x x x >?? ===??-

sum=sum-n; n=n-1; n,sum 3、m文件有两种形式,一种称为命令文件(Script File),另一种称为函数文件(Function File),两种文件的扩展名都是m。 4、反馈控制系统品质要求:稳定性、准确性、快速性 5、按不同系统的特征方程式,可将自动控制系统分为线性系统和非线性系统。 6、MATLAB控制相关的工具箱 (1)控制系统工具箱 (2)系统辨识工具箱 (3)模型预测控制工具箱 (4)鲁棒控制工具箱 (5)神经网络工具箱 7、MATLAB系统的构成 (1)开发环境(2)数学函数库(3)MATLAB语言(4)图形处理系统(5)应用程序接口 8、常用工具箱 (1)控制类工具箱(2)应用数学类工具箱(3)信号处理类工具箱(4)其他常用工具箱 9、MATLAB语句形式:>>变量=表达式 10、MATLAB常用命令 quit 关闭MATLAB

exit 关闭MATLAB clc 清除MATLAB 命令窗口中的所有显示内容 clear 清除工作空间中保存的所有变量 11、MATLAB 基本数据类型:双精度数组、字符串数组、元胞数组、结构数组 12、矩阵的创建 (1)直接输入法(2)通过数据文件创建矩阵(3)通过m 文件创建矩阵(4)通过函数创建矩阵(5)冒号法 13、冒号法 [1]冒号法构造向量 冒号表达式的一般格式为:向量名=初值:步长:终值 [2]冒号法构造矩阵 一般格式为: A(:,j ):表示矩阵A 的第j 列; A(i ,:):表示矩阵A 的第i 行。 A(i,j)表示取矩阵A 的第i 行第j 列交叉位置的元素 14、矩阵的运算 /(矩阵的右除)或\(矩阵的左除) A -1=inv(A) 矩阵的逆 15、求下面方程组的根 1231231 2323532255316 x x x x x x x x x +-=?? -+=??--=?

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基础知识点汇总

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入门基础知识整理

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按钮。

Matlab仿真常用知识及参考程序

实验一 三、 5.设计M 文件计算: x=0:0.1:10 当sum>1000时停止运算,并显示求和结果及计算次数。 参考程序: x=0:0.1:10; i=1; sum=x(i)*x(i)-2*x(i); while(sum<=1000) i=i+1; sum=sum+x(i)*x(i)-2*x(i); end if(sum>1000) sum=sum-x(i)*x(i)+2*x(i); i=i-1; end sum i 实验二 二、6、编写验证魔方矩阵的函数文件,输出要求如下: (1) 如果输入矩阵的维数小于3,输出显示’error’ (2) 如果输入矩阵的不是方阵,输出显示’the size of matrix X must be N-by-N matrix’ (3) 显示行、列和及其对角线求和后的值,并判断其和是否相同。若不同,显示‘No ’,相同显示‘Yes ’。 参考程序: function mofang_test(data) [Row,Com]=size(data); dimen=min(Row,Com); if(dimen<3) msgbox('error','Warning'); elseif(Row~=Com) msgbox('the size of matrix X must be N-by-N matrix','Warning'); else )x 2x (sum i 1000i 2 i -=∑=

j=Com:-1:1; SumRC=0; SumCR=0; for i=1:Row SumRC=SumRC+data(i,i); SumCR=SumCR+data(j(i),i); end if( SumRC~=SumCR) msgbox('No-1','Sorry'); else SumRow=zeros(Row); for i=1:Row for j=1:Com SumRow(i)=SumRow(i)+data(i,j); end end SumCom=zeros(Com); for j=1:Com for i=1:Row SumCom(j)=SumCom(j)+data(i,j); end end Value=SumRow(1); flag=0; for i=1:Row if(Value~=SumRow(i)) msgbox('No-2','Sorry'); flag=1; break; end end if(flag~=1) for i=1:Com if(Value~=SumCom(i)) msgbox('No-2','Sorry'); flag=1; break; end end end if(flag==0) msgbox('Yes','Prosit'); end end

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基础知识(二)

Experiment 1. Fundamental Knowledge of Matlab (II) 【Experimental Purposes】 1、熟悉并掌握MATLAB的工作环境。 2、运行简单命令,实现数组及矩阵的输入输出,了解在MATLAB下如何绘图。【Experimental Principle】 1. Vectors Let's start off by creating something simple, like a vector. Enter each element of the vector (separated by a space) between brackets, and set it equal to a variable. For example, to create the vector a, enter into the MATLAB command window (you can "copy" and "paste" from your browser into MATLAB to make it easy): a = [1 2 3 4 5 6 9 8 7] MATLAB should return: a = 1 2 3 4 5 6 9 8 7 To generate a series that does not use the default of incrementing by 1, specify an additional value with the colon operator (first:step:last). In between the starting and ending value is a step value that tells MATLAB how much to increment (or decrement, if step is negative) between each number it generates. To generate a vector with elements between 0 and 20, incrementing by 2(this method is frequently used to create a time vector), use t = 0:2:20 t = 0 2 4 6 8 10 12 14 16 18 20 Manipulating vectors is almost as easy as creating them. First, suppose you would like to add 2 to each of the elements in vector 'a'. The equation for that looks like: b = a + 2 b = 3 4 5 6 7 8 11 10 9 Now suppose, you would like to add two vectors together. If the two vectors are the same length, it is easy. Simply add the two as shown below: c = a + b c = 4 6 8 10 12 14 20 18 16 Subtraction of vectors of the same length works exactly the same way. MATLAB sometimes stores such a list in a matrix with just one row, and other times in a matrix with just one column. In the first instance, such a 1-row matrix is called a row-vector; in the

matlab入门教程文献

MATLAB入门教程 1.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是指数函数,这些都是MA TLAB常用到的数学函数。 下表即为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):地板函数,即舍去正小数至最近整数

第一章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 函数 按字母顺序排列的列表按类别语言基础知识 输入命令 ans最近计算的答案 clc清除命令行窗口 diary将命令行窗口文本保存到文件中 format设置命令行窗口输出显示格式 home发送光标复位 iskeyword确定输入是否为 MATLAB 关键字 more控制命令行窗口分页输出 矩阵和数组 数组的创建和串联 accumarray使用累加构造数组 blkdiag根据输入参数构造分块对角矩阵 diag创建对角矩阵或获取矩阵的对角元素 eye单位矩阵 false逻辑 0(假) freqspace频率响应的频率间距 linspace生成线性间距矢量 logspace生成对数间距矢量 meshgrid二维和三维空间中的矩形网格 ndgrid N 维空间中的矩形网格 ones创建全部为 1 的数组 rand均匀分布的随机数 true逻辑值 1(真) zeros创建全零数组 cat沿指定维度串联数组 horzcat水平串联数组 vertcat垂直串联数组 索引 colon创建矢量、数组下标和 for 循环迭代

end终止代码块或指示最大数组索引ind2sub线性索引的下标 sub2ind将下标转换为线性索引 数组维度 length最大数组维度的长度ndims数组维度数目 numel数组元素的数目 size数组维度 height表行数 width表的变量数 iscolumn确定输入是否为列矢量isempty确定数组是否为空ismatrix确定输入是否为矩阵 isrow确定输入是否为行矢量isscalar确定输入是否为标量isvector确定输入是否为矢量 数组排序和调整 blkdiag根据输入参数构造分块对角矩阵circshift循环偏移数组ctranspose复共轭转置 diag创建对角矩阵或获取矩阵的对角元素flip翻转元素顺序 fliplr将数组从左向右翻转 flipud将数组从上向下翻转ipermute N 维数组的逆置换维度permute重新排列 N 维数组的维度repelem重复数组元素副本repmat重复数组副本 reshape重新排列数组 rot90将数组旋转 90 度shiftdim移动维度 issorted确定集元素是否处于排序顺序sort对数组元素排序sortrows对数组行排序squeeze删除单一维度transpose转置矢量或矩阵vectorize矢量化表达式

实验一matlab基础知识练习

本次实验包括四部分: 一、MATLAB语言矩阵运算 二、MATLAB的绘图 三、数字图像处理初步 四、Matlab的可视化界面设计 实验要求: 1、内容较多,课内做不完可以课外完成,要求写到实验报告上的内容包括: ●二、MATLAB的绘图的1、3 ●三、数字图像处理初步2、3 2、实验报告要求 ●实验目的 ●实验内容与步骤 ●实现代码与实验结果(实验效果图要求打印并贴在实验报告册上) ●实验分析 3、实验效果图上要求添加做实验同学的姓名,以防抄袭,效果如三、2所示 4、实验报告在下周上课前交上

一、MATLAB 语言矩阵运算 1、下列运算是否合法,为什么?如合法,结果是多少? ? ? ????=654321a ? ? ????-=531142b ????? ?????-=201c ?? ?? ? ?????=063258741d (1)result1=a'(2)result2=a *b (3)result6=a .*b (4)result7=a ./b (5)result8=a .*c (6)result9=a .\b (7)result10=a .^2 2、用MATLAB 求下面的的方程组。 (1)?? ? ??? ??????-=???????????????????? ?? ???----01741323151122231592127 4321x x x x 3、已知? ? ??? ???? ???----=132315112223159 2127A (1)求矩阵A 的秩(rank) (2)求矩阵A 的行列式(determinant)(3)求矩阵A 的逆(inverse) (4)求矩阵A 的特征值及特征向量(eigenvalue and eigenvector)4、关系运算与逻辑运算 已知a=20,b=-2,c=0,d=1 (1)r1=a >b (2)r2=a >b &c >d (3)r3=a ==b*(-10)(4)r4=~b |c

西安电子科技大学版matlab知识要点

1. 下列关于MATLAB变量和运算说法不正确的是:(C) (A)每个变量代表一个矩阵,变量中的每个元素都看做复数 (B)MATLAB中所有的运算都对矩阵和复数有效 (C)MATLAB程序中使用的矩阵行列数必需事先定义 (D)MATLAB中使用的变量名对大小写敏感 MATLAB中提供了一些常用的常数作为常量,程序不允许对其值进行改变(错)Matlab变量名中第一个字符可以是英文字母,数字或其他符号(错) Matlab的数据仅有双精度(即64位,8字节)二进制,运算和存储时都用双精度格式 Matlab单个变量看做1×1元的矩阵 Matlab使用同一个数组名称和不同的下标来惟一确定数组中的元素 临时变量ans的作用,暂存结果,下一次运算将前一次结果冲销 一般数组的每一个元素都属于同一种数据类型 从编程语言的角度上看,向量其实就是一维数组 可以使用Matalb开发环境中的Workspace窗口对内存中数据进行查看和修改 函数中的全局变量应在程序的起始部分注明 disp是Matlab中字符串和数据的输出函数: 2 关于图形的说法 只要执行了任一种绘图命令,就会自动产生图形窗 建一个或几个图形窗,则可键入figure,MATLAB会新建一个图形窗,并自动给它依次排序图形窗上的工具按钮,可以用来对图形进行修改或注释 MATLAB图形通过剪贴板与其他Windows软件进行数据交换 MATLAB的图形文件可以转存为多种标准图形格式 Matlab图形有【Metafile】(矢量模式)和【Bitmap】(点阵模式) 3 写成运算结果 有赋值语句x = 1:0.5:2.5则x的值为 1.0000 1.5000 2.0000 2.5000,它是一个行向量 x = 1:-0.5:-1,则x的值为1.0000 0.5000 0 -0.5000 -1.0000,它是一个行向量 有赋值语句x = linspace(1,2,3),则x的值为1.0000 1.5000 2.0000,它是一个行向量

MATLAB基础知识

一、 1、数学建模基础知识及常用命令 一、界面窗口介绍: 1 命令窗口(command window),窗口中输入命令,回车实现计算或绘图功能。 2 工作空间窗口(work space)运行matlab命令时所产生的变量都被加入到工作空间,该窗口可以显示命令窗口中已输入的变量的名称,数值等。 3 命令历史窗口(command history)显示所有执行过的命令,选定某个命令时可以双击或按F9执行。 4 当前目录窗口(Current folder)显示当下目录下的文件信息。 二、常用运算 1、算术运算符 加 + 减 - 乘 * 左除 / 右除 \ 乘方 ^ 注意:在普通的数值运算中,左除为我们常用的除法形式,左除右除结果比较像逆运算,如1/2 和1\2结果互为倒数,但在矩阵的运算中,结果完全不一样,类似于左乘和右乘结果一般会不一样。 运算的优先级:从左到右,幂运算最高优先级,乘除法具有相同次优先级,加减法具有相同的低优先级,括号可以用来改变优先次序。 大家可以进行几个普通计算(练习10分钟) 1、 2、3752?+4? 4(59+986)?29-2.7+(55-103) 3.5+202、数据显示格式

命令改变显示format可以利用位小数,4显示小数点后matlab默认情况下, 格式(一般写在要改变的数值的命令前): format short 小数点后4位 format long 小数点后15位 format bank 小数点后2位(以上为三个常用的) format rat 最接近的有理数 如以为例:>> pi?= >> format long >> pi >> format rat >> pi ans =355/113 >> format bank >> pi ans = >> format short >> pi ans = 三、matlab变量 1、变量赋值形式 变量=表达式(数值)或表达式(数值)

(完整word版)matlab_gui初学者教程

什么是GUI呢? GUI是Graphical User Interface 图形用户界面的意思。象很多高级编程语言一样。Matlab也有图形用户界面开发环境。随着计算机技术的飞速发展。人与计算机的通信方式也发生的很大的变化。从原来的命令行通讯方式(例如很早的DOS系统)变化到了现在的图形界面下的交互方式。而现在绝大多数的应用程序都是在图形化用户界面下运行的。 记得读书的时候。大学开学不久。学校很多同学就开始报考全国计算机等级考试了。当然我也是其中的一分子。其中C语言是大多数人选择的科目。当时在学C语言的时候。经常也会遇到人机交互的例子。譬如一个计算两个数相加的程序。运行程序后便切换到了Dos模式。然后在此模式下输入两个数。再回车。才能返回运算结果。当时就觉得很不方便。也不友好。后来才得知C语言是面向过程的语言。是非面向对象的语言(VC++,VB,Matlab等是面向对象的)。那么下面我们就来看看Matlab是如何简单、快速而友好地解决这类问题的吧。 Matlab GUI编程教程(适用于初学者) 1.首先我们新建一个GUI文件:File/New/GUI 如下图所示; 选择Blank GUI(Default) 2.进入GUI开发环境以后添加两个编辑文本框。6个静态文本框。和一个按钮。布置如下图所示;

布置好各控件以后。我们就可以来为这些控件编写程序来实现两数相加的功能了。3.我们先为数据1文本框添加代码; 点击上图所示红色方框。选择edit1_Callback。光标便立刻移到下面这段代码的位置。function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double 然后在上面这段代码的下面插入如下代码: %以字符串的形式来存储数据文本框1的内容. 如果字符串不是数字。 则现实空白内容 input = str2num(get(hObject,'String')); %检查输入是否为空. 如果为空,则默认显示为0 if(isempty(input)) set(hObject,'String','0')

MATLAB基础知识习题

MATLAB 基础知识部分习题 1、使用help 命令,查看基本操作的有关命令,请输入help general ,熟悉通用的操作命令,如:General information 共有以下几项: helpbrowser - Bring up the help browser Managing the workspace Managing commands and functions Managing the search path Controlling the command window. Operating system commands Debugging M-files. Profiling M-files. Tools to locate dependent functions of an M-file. 2、可使用MA TLAB 进行计算,试计算下列各小题: 1)、|2+e 2| 2)、 arctg (0.75) 3)、sin(45o )+sin(60o ) 4)、lg (1000*arcsin (0.5)) 5)、若A=5+3i ,求A 的实、虚、复相角、共轭复数 3、对有关矩阵的计算 A=[4 2 3 2 3 4 3 4 5] B=[2 3 5 1 3 2 8 7 6] 分别用矩阵运算和数组运算计算A 、B 的加减乘除结果,并分析有和异同。它们的转置、逆、秩、特征值特征向量。 4、 绘制下列曲线 1)绘出y=e -1/2T sin (5t ),t 取值范围是0~4*pi ; 2)在一个窗口中,画y1=sin (2X )、y2=cos (2x )、y3=y1+y2;且线型颜色要求均不同,不同标注等,x 在0~3*pi 内; 5、编制程序求下列各题,要求编写M 文件: 1) 试计算1+2+……+n 〈2000时的最大n 值; 2) 试编制任一矩阵各元素累加和与连乘的函数; 3) 编函数计算1!+2!+……30! 4) 有两个矩阵A 、B 如下: A=[1 4 6 8 B=[-3 –7 6 -5 2 3 7 0 -2 1 3 -1 -2 –1 5 7 0 0 1 3 1 1 –1 0] 2 6 –1 0] 将A 中所有等于-1的元素改为-2,将B 中所有小于0的元素改为1,然后将B 中等于0的元素的值改为A 的相应位置元素的值。提示:可用A (find (A==-1))=-2这样的命令,此方法交互式即可。 5) 画出f=x 2+e Y *x ,x 在[-2,2]区间,分别取y=0、1、2、3、4、5;将这五条曲线画在同一窗口。 6) 根据阻尼系数绘制不同二阶系统的时域响应,当欠阻尼时,0<ζ<1 当临界阻尼时,ζ=0 当过阻尼时ζ>=1 1cos )x y a ??-=-+1(1)x y x e -=- +((1x x y ??--???=--??

Matlab的有关知识与操作2

实验项目1:Matlab的有关知识与操作 一、实验目的 1、会安装、启动、退出Matlab系统 2、熟悉Matlab 软件环境,对向量、数组和矩阵处理的基本方法 3、会使用Matlab作图 4、会简单编程和 m 文件的使用 二、实验要求 熟悉Matlab系统的运行环境、掌握该系统的一些基本符号运算与数值计算,掌握Matlab函数的定义及Matlab的作图的一些基本命令;能独立地运用命令作图并学会循环、选择控制结构编程调试。 三、实验内容 >> plot(y) 生成的图形见图5-1,是以序号6, ,2,1 为横坐标、数组y的数值为纵坐标画出的折线。 >> x=linspace(0,2*pi,30); % 请同学讲解此语句的意思 >> y=sin(x); >> plot(x,y) 生成的图形见图5-2,是] 2,0[ 上30个点连成的光滑的正弦曲线。 图5-1 图5-2 多重线 在同一个画面上可以画许多条曲线,只需多给出几个数组,例如

>> x=0:pi/15:2*pi; >> y1=sin(x); >> y2=cos(x); >> plot(x,y1,x,y2) 则可以画出图5-3。 多重线的另一种画法是利用hold命令。在已经画好的图形上,若设置hold on,MATLA将把新的plot命令产生的图形画在原来的图形上。而命令hold off 将结束这个过程。 例如: >> x=linspace(0,2*pi,30); y=sin(x); plot(x,y) 先画好图5-2,然后用下述命令增加cos(x)的图形,也可得到图5-3。 >> hold on >> z=cos(x); plot(x,z) >> hold off %注意hold on与hold off的配对使用 图5-3 线型和颜色 线型线方式:- 实线:点线-.虚点线- - 波折线。 数据点图标:.圆点+加号* 星号x x形o 小圆pentagram (五角星)。颜色:y黄;r红;g绿;b蓝;w白;k黑;m 在一个图形上可以加网格、标题、x轴标记、y轴标记,用下列命令完成这些工作。 >> x=linspace(0,2*pi,30); y=sin(x); z=cos(x); >> plot(x,y,x,z) >> grid %加网格 >> xlabel ('Independent Variable X') %加x轴标记 >> ylabel ('Dependent Variables Y and Z') %加y轴标记 >> title ('Sine and Cosine Curves') %加标题 它们产生图5-4:

相关文档