MATLAB 使用入门 (II)

合集下载

MATLAB实验答案(桂电)

MATLAB实验答案(桂电)

实验一 MATLAB入门(1)1.实验目的:(1)了解MATLAB的体系结构与特点,熟悉其集成开发环境。

(2)熟悉MATLAB界面窗口的功能和使用方法。

(3)熟悉MATLAB的帮助系统及使用方法。

(4)了解MATLAB的的数据类型、基本形式和数组的产生方法。

(5)掌握MATLAB基本的数学运算操作。

2.实验原理(1)MATLAB简介MATLAB是美国MathWorks公司开发的高性能的科学与工程计算软件。

它在数值计算、自动控制、信号处理、神经网络、优化计算、小波分析、图像处理等领域有着广泛的用途。

近年来, MATLAB在国内高等院校、科研院所的应用逐渐普及,成为广大科研、工程技术人员必备的工具之一。

MATLAB具有矩阵和数组运算方便、编程效率极高、易学易用、可扩充性强和移植性好等优点,俗称为“草稿纸式的科学计算语言”。

它把工程技术人员从繁琐的程序代码编写工作中解放出来,可以快速地验证自己的模型和算法。

经过几十年的扩充和完善,MATLAB已经发展成为集科学计算、可视化和编程于一体的高性能的科学计算语言和软件开发环境,整套软件由MATLAB开发环境、MATLAB语言、MATLAB数学函数库、MATLAB图形处理系统和MATLAB应用程序接口(API)等五大部分组成。

MATLAB的主要特点包括强大的计算能力(尤其是矩阵计算能力)、方便的绘图功能及仿真能力、极高的编程效率。

另外,MATLAB还附带了大量的专用工具箱,用于解决各种特定领域的问题。

通过学习软件的基本操作及其编程方法,体会和逐步掌握它在矩阵运算、信号处理等方面的功能及其具体应用。

通过本课程实验的学习,要求学生初步掌握MATLAB的使用方法,初步掌握M文件的编写和运行方法,初步将MATLAB运用于数字信号处理中。

循序渐进地培养学生运用所学知识分析和解决问题的能力。

(2)MATLAB的工作界面(Desktop)与操作MATLAB 安装成功后,第一次启动时,主界面如下图(不同版本可能有差异)所示:其中① 是命令窗口(Command Window ),是MATLAB 的主窗口,默认位于MATLAB界面的右侧,用于输入命令、运行命令并显示运行结果。

MATLAB的基本使用教程

MATLAB的基本使用教程

MATLAB的基本使用教程MATLAB是一种强大的数学计算软件,广泛应用于科学、工程和技术领域。

它提供了丰富的功能和工具,能够快速、有效地处理和分析各种数学问题。

本文将介绍MATLAB的基本使用方法,帮助初学者快速入门。

一、MATLAB的安装与启动1、下载和安装MATLAB软件:在MathWorks官方网站上下载适合自己操作系统的MATLAB软件,并根据安装提示进行安装。

安装完成后,会生成一个MATLAB的启动图标。

2、启动MATLAB:双击MATLAB的启动图标,或者在命令行中输入"matlab"命令,即可启动MATLAB。

二、MATLAB的基本操作1、工作环境:MATLAB提供了一个强大的集成开发环境(IDE),可以在其中编写和运行代码。

在MATLAB的界面中,包括主窗口、命令窗口、变量窗口、编辑器等。

2、命令窗口:在命令窗口中可以输入和执行MATLAB命令。

可以直接在命令窗口中输入简单的计算,例如输入"2+3"并按下回车键,即可输出计算结果。

3、脚本文件:MATLAB可以编写和运行脚本文件,将一系列命令组织起来,并按顺序执行。

在编辑器中编写MATLAB代码,并将文件保存为.m扩展名的脚本文件。

然后在命令窗口中输入脚本文件的文件名(不带扩展名),按下回车键即可执行脚本文件中的代码。

4、变量和赋值:在MATLAB中,可以创建和操作各种类型的变量。

例如,可以使用"="符号将一个值赋给一个变量,例如"A=5"。

在后续的计算和分析中,可以使用这个变量,例如输入"B=A+3",结果B 将被赋值为8。

5、矩阵和向量:MATLAB中的基本数据结构是矩阵和向量。

可以使用方括号[]来创建矩阵和向量,并使用逗号或空格来分隔不同的元素。

例如,"[1,2,3]"表示一个包含3个元素的行向量。

6、矩阵运算:MATLAB提供了丰富的矩阵运算符和函数,可以对矩阵进行各种运算。

matlab教程ppt(完整版)

matlab教程ppt(完整版)

控制流语句
使用条件语句(如if-else)和 循环语句(如for)来控制程序 流程。
变量定义
使用赋值语句定义变量,例如 `a = 5`。
矩阵运算
使用矩阵进行数学运算,如加 法、减法、乘法和除法等。
函数编写
创建自定义函数来执行特定任 务。
02
MATLAB编程语言基础
变量与数据类型
变量命名规则
数据类型转换
编辑器是一个文本编辑器 ,用于编写和编辑 MATLAB脚本和函数。
工具箱窗口提供了一系列 用于特定任务的工具和功 能,如数据可视化、信号 处理等。
工作空间窗口显示当前工 作区中的变量,可以查看 和修改变量的值。
MATLAB基本操作
数据类型
MATLAB支持多种数据类型, 如数值型、字符型和逻辑型等 。
04
MATLAB数值计算
数值计算基础
01
02
03
数值类型
介绍MATLAB中的数值类 型,包括双精度、单精度 、复数等。
变量赋值
讲解如何给变量赋值,包 括标量、向量和矩阵。
运算符
介绍基本的算术运算符、 关系运算符和逻辑运算符 及其优先级。
数值计算函数
数学函数
列举常用的数学函数,如 三角函数、指数函数、对 数函数等。
矩阵的函数运算
总结词:MATLAB提供了许多内置函 数,可以对矩阵进行各种复杂的运算

详细描述
矩阵求逆:使用 `inv` 函数求矩阵的 逆。
特征值和特征向量:使用 `eig` 函数 计算矩阵的特征值和特征向量。
行列式值:使用 `det` 函数计算矩阵 的行列式值。
矩阵分解:使用 `factor` 和 `expm` 等函数对矩阵进行分解和计算指数。

MATLAB基本使用方法(标点、数据类型、快捷键等)

MATLAB基本使用方法(标点、数据类型、快捷键等)

MATLAB基本使用方法MATLAB基本操作1、MATLAB的Command Window中运行的所有命令都共享一个相同的工作空间2、cd命令用于确定当前workspace3、help+确切函数名4、lookfor+搜索关键字5、doc+确切函数名基本数值计算的方法1、直接输入法4*30+3*352、存储变量法grade1=4*30grade2=3*35total=grade1+grade2标点的使用1、分号(;):禁止显示计算的中间结果2、百分号(%):注释3、逗号(,):一行输入多个命令语句,结果显示(用分号不显示,如下只显示x,z,w的结果)x=sin(1),y=cos(1);z=tan(1),w=atan(1)4、续行号(…): 多行书写grade1=4*...30错误:(1)、grade2=...3*35(2)、total=grade1+gra...de2续行号不能放在变量名中间常用操作命令clc清除工作窗clear清除内存变量clf清除图形窗口hold图形保持命令load加载指定文件的变量quit退出MATLABsave保存内存变量到指定文件type显示文件内容常用快捷键上:调用上一行下:调用下一行左:光标左移一个字符右:光标右移一个字符ctrl+左:光标左移一个单词ctrl+右:光标右移一个单词Home:光标置于当前行开头End:光标置于当前行结尾Esc(ctrl+u):清除当前输入行Del:删除光标处字符Backspace:删除光标前字符alt+Backspace:恢复上一次删除MATLAB的数据类型1、常量(1)、inf:超过MATLAB允许的最大数2^1024时1/0(2)、eps:判断浮点数是否为0(3)、pi:圆周率(4)、i或j:纯虚数sqrt(-1),若程序中对i或j有了新的定义,则这两个变量将保留新值i=1;i也可以定义任意变量为纯虚数(5)、realmax:最大浮点数xushu=sqrt(-1)2、变量变量名规则:(1)、长度不超过31,超过部分忽略不计(2)、区分大小写(3)、字母开头,可包含字母、数字或下划线若对某个变量赋值时,该变量已存在,则会自动用新值替代旧值MATLAB变量显示格式默认:整数显示整数,实数显示小数点后4位short:系统默认long:小数点后14位short e:5位指数形式long e:15位指数形式format long e1.2format long1.23、常用函数(1)、三角三角函数:sin、cos、tna、cot、sec、csc反三角函数:a+三角函数双曲函数:三角函数+h反双曲函数:a+三角函数+h(2)、指数exp:e的n次方log:以e为底log10:以10为底log2:以2为底pow2:2的n次方sqrt:开根(3)、复数abs:绝对值,模conj:共轭angle:相角real:实部image:虚部(4)、取整、求余ceil:向上取整floor:向下取整fix:向0取整round:四舍五入mod:模除求余rem:求余sign:符号函数(5)、补矩阵tril:取下三角triu:取上三角flipdim:矩阵特定维翻转(6)、其他minmaxstd:标准差diff:相邻元素的差sort:排序norm:范数length:长度sum:求和prod:求积cumsum:累计求和cumprod:累计求积dot:内积cross:外积4、浮点数a=0.33+0.17-0.5b=0.33-0.50+0.17c=0.17-0.5+0.33在几乎所有情况下,MATLAB的数据都是以双精度数值来表示的如上列由于使用二进制存储,会带来一些误差,这些误差小于eps 5、复数(1)、复数的表示方法a1=pi+3.14ia2=pi+3.14b=4*(1+3/sqrt(-1))c=sin(pi)i %报错d=sin(pi)*i(2)、复数的运算a=1+2ib=3-4ic=pi+sin(pi/2)*id=a+be=a*df=a/eg=a^f。

Stephen J.Chapman《MATLAB 编程(第二版) 》第二章

Stephen J.Chapman《MATLAB 编程(第二版) 》第二章
郑碧波翻译 Matlab 中文论坛首发
目录
第二章 MATLAB 基础 ....................................................................................................................1 2.1 变量和数组........................................................................................................................1 2.2 MATLAB 变量的初始化 ...................................................................................................3 2.2.1 用赋值语句初始化变量.........................................................................................3 2.2.2 用捷径表达式(short expressions)来赋值 .........................................................4 2.2.3 用内置函数来初始化.............................................................................................5 2.2.4 用关键字 input 初始化变量.................................................................

MATLAB基础使用教程

MATLAB基础使用教程

MATLAB基础使用教程一、什么是MATLAB?MATLAB是一款强大的数学计算软件,广泛应用于科学研究、工程设计和数据分析等领域。

它以其简单易用的编程语言和丰富的功能,成为了许多科研工作者和工程师的首选工具。

在本篇文章中,将介绍MATLAB的基础使用方法,帮助初学者快速入门。

二、MATLAB的安装与入门1. 下载和安装MATLAB软件在MathWorks官方网站上下载适用于您的操作系统版本的MATLAB,然后按照安装向导的提示进行安装。

2. MATLAB的界面介绍在打开MATLAB后,您将看到一个包含命令窗口、编辑器和变量编辑器等组件的界面。

命令窗口是最常用的组件,您可以在其中输入MATLAB的命令并执行。

3. 基本操作在命令窗口中,可以输入简单的算术运算,如加减乘除,以及一些内置函数。

例如,输入"2+3"并按下Enter,MATLAB将返回结果5。

三、MATLAB的变量与数据类型1. 变量的定义与赋值在MATLAB中,可以使用一个变量来存储一个数值或一个数据矩阵。

要定义一个变量并赋值,只需输入变量名和等号,然后再输入数值或矩阵。

例如,输入"A=5",即可定义一个名为A的变量,并将其赋值为5。

2. 数据类型MATLAB支持多种数据类型,包括整数、浮点数、字符串和逻辑类型。

您可以使用"whos"命令查看当前可用的变量及其数据类型。

3. 矩阵与数组操作在MATLAB中,矩阵和数组是最常用的数据结构之一。

您可以使用方括号来创建矩阵或数组,并使用索引来访问其中的元素。

例如,输入"A=[1 2 3; 4 5 6]",即可创建一个2行3列的矩阵。

四、MATLAB的数学运算与函数1. 基本数学运算MATLAB支持各种基本的数学运算,包括加、减、乘、除、幂运算等。

您可以直接在命令窗口中输入相应的表达式,并按下Enter键进行计算。

matlab7.0 自学教程第二章(1)

matlab7.0 自学教程第二章(1)

A(:)=[1,4,7,2,5,8,3,6,9]'
A=[1, 2, 3, 4, 5]; 3) 逻辑1标识法 L=logical([1, 0, 1, 0, 1]) 【例2.2-6】数组标识与寻访 A(L) ans=[1,3,5] A=zeros(2,6) A(2,1:2:5)=[-1,-3,-5] A =0 0 0 0 0 0 A =1 3 5 7 9 11 0 0 0 0 0 0 -1 4 -3 8 -5 12 A(:)=1:12 B=A([1,2,2,2],[1,3,5] ) A =1 3 5 7 9 11 B =1 5 9 2 4 6 8 10 12 -1 -3 -5 A(2,4) -1 -3 -5 ans = 8 -1 -3 -5 A(8) L=A<3 ans = 8 A([1,2,5,6]') L = A(:,[1,3]) 1 0 0 0 0 0 ans = ans =1 5 1 0 1 0 1 0 1 2 6 A(L)=NaN 2 A(:,4:end) A= 5 ans =7 9 11 NaN 3 5 7 9 11 6 8 10 12 NaN 4 NaN 8 NaN 12
plot(t,Sx,'.k','MarkerSize',12) xlabel('x'),ylabel('Sx'),grid on
syms t x ft=t^2*cos(t) sx=int(ft,t,0,x) ft = t^2*cos(t) sx = x^2*sin(x) - 2*sin(x) + 2*x*cos(x)
函数 f (.) 的数组运算规则
函数数组运算规则的定义 x11 x12 … x1n
x21 x22 … x2n

最新MATLAB入门及进阶教程

最新MATLAB入门及进阶教程

若对 MATLAB 函数用法有疑问, 可随时使用 help 来寻求线上支援 (on-line help) : help linspace 小整理:MATLAB 的查询命令 help:用来查询已知命令的用法。例如已知 inv 是用来计算反矩阵,键入 help inv 即可得知有关 inv 命令的用法。 (键入 help help 则显示 help 的用法,请试看看! ) lookfor:用来寻找未知的命令。例如要寻找计算反矩阵的命令,可键入 lookfor inverse,MATLAB 即会列出所有和关键字 inverse 相关的指令。找到所需的命令 後 ,即可用 help 进一步找出其用法。 (lookfor 事实上是对所有在搜寻路径下的 M 档案进行关键字对第一注解行的比对,详见後叙。 ) 将列向量转置(Transpose)後,即可得到行向量(Column vector) : z = x' z = 4.0000 5.2000 6.4000 7.6000 8.8000 10.0000 不论是行向量或列向量,我们均可用相同的函数找出其元素个数、最大值、最小 值等: length(z) % z 的元素个数 ans = 6 max(z) % z 的最大值 ans = 10 min(z) % z 的最小值 ans = 4 小整理:适用於向量的常用函数有: 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 的外积(大部份的向量函数也可适用於矩阵, 详见下述。 )
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB 使用入门 (II)
矩阵创建的常用方法 二元函数图形绘制方法 三元函数、复变函数可视化
马鞍面绘图实验
1/17
例1.17 用直接方法创建3阶希尔伯特矩阵
1 1 / 2 1 / 3 H 1 / 2 1 / 3 1 / 4 1 / 3 1 / 4 1 / 5
10/17
例1.23 使用slice()命令绘三元函数 u = x e
在 D ={(x, y, z) | –2≤ x ≤2, –2≤ y ≤2, –2≤z≤2 } 上的切片色图
x2 y2 z2
[x,y,z]=meshgrid(-2:.2:2); %创建空间网格点 u=x.*exp(-x.^2-y.^2-z.^2); %计算三元函数值 sx=[-1.2,0.8,2];sy=2;sz=[-2,-0.2]; %确定切片位置 slice(x,y,z,u,sx,sy,sz) %绘切片图
6/17
创建平面网格点(棋盘)原理和方法 x=1:6; y=1:8; X=ones(8,1)*x; Y=y‘*ones(1,6); %扩充x为8x6矩阵 %扩充y为8x6矩阵
[X,Y]=meshgrid(1:6,1:8) %直接创建两个矩阵X和Y
X= 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6
13/17
马鞍面绘图实验 2 2 正方形区域上马鞍面 z x y
D {( x, y ) | 6 x 6, 6 y 6}
[x,y]=meshgrid(-6:0.5:6); z1=x.^2-y.^2; figure(1),meshz(x,y,z1) figure(2), contourf(x,y,z1,20)
4. 命令A=-1+2*rand(5,5)创建了 5阶矩阵A,如何求 A的绝对值最大元素?
17/17
生成平面网格点命令: [X, Y]=meshgrid(x, y)
例1.19 计算二元函数 z = x exp( –x2 – y2)网格点值 [X,Y]=meshgrid(-2:2,-2:2) Z=X.*exp(-X.^2-Y.^2) X= Y= -2 -1 0 1 2 -2 -2 -2 -2 -2 -2 -1 0 1 2 -1 -1 -1 -1 -1 -2 -1 0 1 2 0 0 0 0 0 -2 -1 0 1 2 1 1 1 1 1 -2 -1 0 1 2 2 2 2 2 2
5/17
%求列和 %求行和 %求A对角和 %矩阵旋转 %求B对角和
A= 16 5 9 4 B= 13 3 2 16
2 3 13 11 10 8 7 6 12 14 15 1
8 12 1 10 6 15 11 7 14 5 9 4
空间曲面绘制的三个基本步骤: 生成平面网格、计算网格点上函数值、绘制网面
6 4 2 0 -2 -4 -6 -6 -4 -2 0 2 4 6
14/17
正方形区域上马鞍面
z xy
D {( x, y ) | 6 x 6, 6 y 6}
[x,y]=meshgrid(-6:0.5:6); z2=x.*y; mesh(x,y,z2) %自动创建1号图形窗口 colormap([1,0 0]) figure %创建编号增1的图形窗口 plot3(x,y,z2,’b’)
A= 1 1/2 1/2 1/3 1/3 1/4 1/3 1/4 1/5
%用函数创建希尔伯特矩阵 %创建希尔伯特矩阵的逆阵 %验证B为A的逆
B= 9 -36 30 -36 192 -180 30 -180 180
ans = 1 0 0 1 0 0
0 0 1
3/17
——特殊矩阵函数表
——
zeros(m,n) eye(m,n) ones(m,n) rand(m,n) randn(m,n) magic(n) hilb(n) invhilb(n) pascal(n) vander(C)
11/17
圆域上的复变函数图形
例 复变量 z exp( i ) 满足 | z | 1 分别以函数 u = z 的实部和虚部为二元函数绘图
r=linspace(0,1,20); theta=linspace(-pi,pi,25); z=r'*exp(i*theta); x=real(z);y=imag(z); mesh(x,y,x),hold on mesh(x,y,-ones(size(x))) colormap([0 0 1]) figure,mesh(x,y,y) colormap([1,0 0])
Y= 1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
7/17
绘网面命令mesh()使用格式: mesh(x,y,z) 或 mesh(z) 绘曲面图命令surf()与mesh()使用格式相同。 例1.20 绘二元函数 z = x exp( –x2 – y2)的图形。 [x,y]=meshgrid(-2:0.2:2); z=x.*exp(-x.^2-y.^2); surf(x,y,z) 注记: x,y分别为两个维数 相同的矩阵;函数表达式中 用到“.*”和“.^”运算;最 后z也是与x,y维数相同矩 阵。
16/17
练习与思考题
1.命令V=vander([1;2;3]); V+V’将创建3阶矩阵,试 写出最后矩阵ans 的元素 2.命令[x,y]=meshgrid(1:3);H=1./(x+y-1)执行结果是 三阶矩阵,写出x和y的数据以及H的数据。
3.命令J=[1;1;1]*[1,2,3];A=1./(J+J’-1)将创建3阶矩 阵A,写出A的元素。
50
0
-50 10 0 -10 -10 0
10
15/17
圆域上的马鞍面
z x2 y2
D {( x , y ) | x 2 y 2 r 2 }
t=linspace(0,2*pi,60); r=0:0.1:2; [t,r]=meshgrid(t,r); x=r.*cos(t);y=r.*sin(t); z=x.^2-y.^2; figure(1),surfc(x,y,z) figure(2),mesh(x,y,z) colormap([0 0 1])
H=[1,1/2,1/3;1/2,1/3,1/4;1/3,1/4,1/5] format rat %以分数格式显示数据 H %显示变量H的数据 H= 1.0000 0.5000 0.3333 0.5000 0.3333 0.2500 0.3333 0.2500 0.2000 H=
1 1/2 1/2 1/3 1/3 1/4
8/17
例1.16 绘制一元函数y= sin x / x 在[-8,8]上图形。 x=-8:8;y=sin(x)./x; Warning: Divide by zero. plot(x,y)
零除错误导致图形残缺
sin x 2 y 2 x2 y2
例1.21 绘二元函数
z
图形
[x,y]=meshgrid(-8:0.5:8); r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; mesh(x,y,z) colormap([1,0,0])
12/17
圆域上的复变函数图形
例1.28 复变量 z exp( i ) 满足 | z | 1 以复变函数
u z 的实部为二元函数绘图
r=linspace(0,1,20);r=r'; theta=linspace(-2*pi,2*pi,50); z=r*exp(i*theta); u=r.^(1/2)*exp(i*theta/2); x=real(z);y=imag(z); s=real(u); mesh(x,y,s) colormap([0 0 1]) axis off view(-74,0)
1/3 1/4 1/5
2/17
————矩阵创建常用方法————
直接输入法 特殊矩阵函数法 1.直接输入法; 2.特殊矩阵函数法; 3. 数据文件输入 注意事项 矩阵元素必须在方括号[ ]之内; 同一行相邻元素间用逗号或空格分隔; 矩阵的行与行之间用分号分隔. A=hilb(3) B=invhilb(3) A*B
m×n阶零矩阵 m×n阶单位矩阵 m×n阶全1矩阵 m×n阶随机矩阵 正态随机数矩阵 n阶魔方矩阵 n阶Hilbert矩阵 逆Hilbert矩阵 n阶Pascal矩阵 由向量C生成范德蒙矩阵
4/17
例: 创建4阶幻方矩阵A,并验证矩阵A各列元素之和、 各行元素之和以及各对角元之和均为常数 34 。 A=magic(4); sum(A,1) sum(A,2) sum(diag(A)) B=rot90(A) sum(diag(B)) ans = 34 34 34 34
9/17
例1.22 用contour() 命令绘二元函数z = x exp( –x2 – y2) 等高线 [X,Y]=meshgrid(-2:0.2:2); Z=X.*exp(-X.^2-Y.^2); figure(1),contour(Z) %创建1号图形窗口 figure(2), contourf(Z,20) %创建2号图形窗口
相关文档
最新文档