nbhkdz.com冰点文库

Matlab 学习笔记

时间:


Matlab 教程
命令+指定参数
表 3-1

命令 doc help helpbrowser helpwin lookfor web

说明 在帮助浏览器中显示指定函数的参考信息 在命令窗口中显示 M 文件帮助 打开帮助浏览器,无参数 打开帮助浏览器,并且见初始界面置于 MATLAB 函数的 M 文件帮 助信息 在命令窗口中显示具有指定参数特征函数的 M 文件帮助 显示指定的网络页面,默认为 MATLAB 帮助浏览器

3.3 数据交换系统 MATLAB 提供了多种方法将数据从磁盘或剪贴板中读入 MATLAB 工作空间。具体的读写 方法可依据用户的喜好以及数据的类型来选择。这里主要介绍文本数据的读入。 对于文本数据 (ASCII) 而言, 最简单的读入方法就是通过 MATLAB 的数据输入向导 (Import Wizard) ,也可以通过 MATLAB 函数实现数据读入。 例如,对于文本文件 test.txt: students’ scores English Chinese Mathmatics Wang 99 98 100 Li 98 89 70 Zhang 80 90 97 Zhao 77 65 87 下面通过上述两种方法将该文件数据读入 MATLAB 工作空间, 先介绍 MATLAB 数据交换 系统对文本数据的识别。 此时文件的前几行 (此处为 “students’ scores” 将被识别为文件头, ) 文件头可以为一行或几行,也可以识别出数据的列头(此处为: “English” 、“Chinese”、和 “Mathmatics” )和行头(此处为“wang”“li”“zhang”和“zhao”,其余的为可分断数 、 、 ) 据(此处为“99”“98” 、 、和“100”等) 。 首先是通过数据输入向导编辑器读入数据,通过桌面平台上的【File】菜单中的【Import Data】选项打开输入向导编辑器,按向导提示进行操作完成整个文本数据的输入,则用户可 以在 MATLAB 开发环境中使用该文本数据。 例如: >>whos Name Data

Size 4?3

Bytes 96

Class double array

Grand total is 12 elements using 96 bytes >>Data Data = 99 98 98 89 100 70

80 77

90 65

97 87

“whos”用于显示当前 MATLAB 工作空间的变量,而在命令窗口中输入 data 后,将显示该 数据。在命令窗口或 M 文件中调用相应的函数也可以实现数据的读入。 例如: >> [a,b,c,d]=textread(‘text.txt’, ‘%s %s %s %s’, ‘headlines’, 2) (读者可亲自上机看结果) 4.2.1 矩阵的生成 1. 直接输入法 从键盘上直接输入矩阵是最方便、 最常用的创建数值矩阵的方法, 尤其适合较小的简单 矩阵。在用此方法创建矩阵时,应当注意以下几点: ● 输入矩阵时要以“[ ]”为其标识符号,矩阵的所有元素必须都在括号内。 ● 矩阵同行元素之间由空格或逗号分隔,行与行之间用分号或回车键分隔。 ● 矩阵大小不需要预先定义。 ● 矩阵元素可以是运算表达式。 ● 若“[ ]”中无元素表示空矩阵。 另外,在 MATLAB 语言中冒号的作用是最为丰富的。首先,可以用冒号来定义行向量。 例如: >>a=1:0.5:4 a= Columns 1 through 7 1 1.52 2.5 3 3.5 其次,通过使用冒号,可以截取指定矩阵中的部分。 例如: >>A=[123;456;789] A= 1 2 3 4 5 6 7 8 9 >>B=A (1:2, : ) B= 1 2 3 4 5 6 通过上例可以看到 B 是由矩阵 A 的 1 到 2 行和相应的所有列的元素构成的一个新的矩 阵。在这里,冒号代替了矩阵 A 的所有列。 2.外部文件读入法 MATLAB 语言也允许用户调用在 MATLAB 环境之外定义的矩阵。可以利用任意的文本编 辑器编辑所要使用的矩阵,矩阵元素之间以特定分断符分开,并按行列布置。读入矩阵的一 种方法可参考 3.3 节数据交换系统。另外也可以利用 load 函数,其调用方法为: Load+文件 名[参数] Load 函数将会从文件名所指定的文件中读取数据,并将输入的数据赋给以文件名命名的变 量,如果不给定文件名,则将自动认为 matlab.mat 文件为操作对象,如果该文件在 MATLAB 搜索路径中不存在时,系统将会报错。 例如:事先在记事本中建立文件: 1 1 1 4

(并以 data1.txt 保存)

1

2 1

3 3 6

在 MATLAB 命令窗口中输入: >>loaddata1.txt >> data1 data1= 1 1 1 1 2 3 1 3 6 3.特殊矩阵的生成 对于一些比较特殊的矩阵(单位阵、矩阵中含 1 或 0 较多) ,由于其具有特殊的结构, MATLAB 提供了一些函数用于生成这些矩阵。常用的有下面几个: zeros(m) 生成 m 阶全 0 矩阵 eye(m)生成 m 阶单位矩阵 ones(m)生成 m 阶全 1 矩阵 rand(m)生成 m 阶均匀分布的随机阵 randn(m)生成 m 阶正态分布的随机矩阵

1.常量 Pi,lnf(无穷大) ,NaN(不确定值) ,eps(浮点数的相对误差) ,ans(默认变量 名) 。 2.变量 Matalab 区分大小写,长度不超过 31 位,format 控制显示格式,不影响运算结 果。 format short(短格式,5 位定点数) 、Format long (长格式,15 位定点数) 。 format short e,Format short e (短/长格式 e 方式) , format bank (2 位十进制) format hex(十六进制格式) 、 , save<文件名>,将工作空间中全部变量存到<文件名>.mat 文件中去;用 load 命 令可将变量从磁盘文件读入 matlab 的工作空间; clear 可以清除现存变量。 用 floaps %浮点预算数 nargin/nargout %所有函数的输入/出变量数 realmin/ realmax 最小/大可用正实数 angle(z) 复数 z 的相角 real/imag(z)提取实/虚部
??为续行符,在命令需要换行输出时用。

3.数据的存取 mkdir(’c:\’,’my_dir’); cd c:\my_dir (使此为当前目录) save saf x %选择内存中的变量保存为 saf.mat 文件 dir %显示目录上的文件 clear load saf x %导入 saf 中的* 变量。

who %检查内存中的变量。 4.常用命令
clcClear Command Window homeSend cursor home clearRemove items from workspace, freeing up system memory whoList variables in workspace whosList variables in workspace, with sizes and types

基本矩阵函数 A = [1 2 0; 2 5 -1; 4 10 -1] A = 1 2 4 2 5 10 0 -1 -1

We can easily find the transpose of the matrix A. B = A' B = 1 2 0 2 5 -1 4 10 -1

Now let's multiply these two matrices together. Note again that MATLAB doesn't require you to deal with matrices as a collection of numbers. MATLAB knows when you are dealing with matrices and adjusts your calculations accordingly. C = A * B C = 5 12 24 12 30 59 24 59 117

Instead of doing a matrix multiply, we can multiply the corresponding elements of two matrices or vectors using the .* operator.

C = A .* B C = 1 4 0 4 25 -10 0 -10 1

(点乘,内部的各个元素相乘)

Let's find the inverse of a matrix ... X = inv(A) X = 5 -2 0 2 -1 -2 -2 1 1

... and then illustrate the fact that a matrix times its inverse is the identity matrix. I = inv(A) * A I = 1 0 0 0 1 0 0 0 1

MATLAB has functions for nearly every type of common matrix calculation. There are functions to obtain eigenvalues ... eig(A) ans = 3.7321 0.2679 1.0000 特征值

... as well as the singular values. svd(A) ans =

12.3171 0.5149 0.1577 The "poly" function generates a vector containing the coefficients of the characteristic polynomial. The characteristic polynomial of a matrix A is

p = round(poly(A)) p = 1 -5 5 -1

We can easily find the roots of a polynomial using the roots function. These are actually the eigenvalues of the original matrix. roots(p) ans = 3.7321 1.0000 0.2679

MATLAB has many applications beyond just matrix computation. To convolve two vectors ... q = conv(p,p) q = 1 -10 35 -52 35 -10 1

... or convolve again and plot the result. r = conv(p,q) plot(r); r =

1

-15

90

-278

480

-480

278

-90

15

-1

At any time, we can get a listing of the variables we have stored in memory using the who or whos command. whos Name A B C I X a ans b p q r

Size 3x3 3x3 3x3 3x3 3x3 1x9 3x1 1x9 1x4 1x7 1x10

Bytes 72 72 72 72 72 72 24 72 32 56 80

Class double double double double double double double double double double double

Attributes

You can get the value of a particular variable by typing its name.

A A = 1 2 4 2 5 10 0 -1 -1

You can have more than one statement on a single line by separating each statement with commas or semicolons. If you don't assign a variable to store the result of an operation, the result is stored in a temporary variable called ans. sqrt(-1) ans = 0 + 1.0000i

As you can see, MATLAB easily deals with complex numbers in its calculations.


Matlab学习笔记(全).doc

Matlab学习笔记(全) - matlab,GUI,matlab图像处理等... Matlab学习笔记(全)_计算机软件及应用_IT/计算机_专业资料。matlab,GUI,matlab图像处理等 ...

MATlAB学习笔记.doc

MATlAB学习笔记 - sys=tf(400,[1,50,0]) sys =

MATLAB学习笔记整理.doc

MATLAB学习笔记整理_工学_高等教育_教育专区。MATLAB 笔记摘录: 1

Matlab 学习笔记.doc

Matlab 学习笔记_英语学习_外语学习_教育专区。Matlab 学习过程中形成的笔记,便于快速入门 Matlab 学习笔记 %matlab 是区分大小写的,M 文件不要用纯数字作为名称 %...

matlab学习笔记.doc

matlab学习笔记_计算机软件及应用_IT/计算机_专业资料。matlab学习笔记1). >> x=-2*pi:0.1:2*pi; >> y1=sin(x); >> y2=sin(x+pi/3)+2; >> y3...

MATLAB学习笔记.doc

MATLAB学习笔记 - 目录 6.1 复数 ...

matlab学习笔记.doc

matlab学习笔记 - MATLAB 学习笔记 目录 1、续行 ...

MATLAB学习笔记_图文.doc

MATLAB学习笔记 - 协方差的涵义理解,bp神经网络学习... MATLAB学习笔记_其它语言学习_外语学习_教育专区。协方差的涵义理解,bp神经网络学习 关于协方差的计算 A=[1 ...

matlab学习笔记(入门).doc

matlab学习笔记(入门) - 数据类:double,unit8,unit16,unit32,int8,int16,int32,single,char,logical! Matlab 中所有数...

matlab学习笔记_图文.doc

matlab学习笔记 - matlab学习笔记,不断更新... matlab学习笔记_数学_自然科学_专业资料。matlab学习笔记,不断更新 MATLAB 软件操作 基本数学计 基本运算 算 基本函数 ...

matlab学习笔记.txt

matlab学习笔记 - 自己在大学里面玩MATLAB时候记下的笔记部分 里面有

MATLAB数学建模算法学习笔记_图文.doc

MATLAB数学建模算法学习笔记 - 关于 MATLAB 的数学建模算法学习笔记 目录 线性规划中应用:...

MATLAB学习笔记.doc

MATLAB学习笔记 - 1. 有矩阵 A、矩阵 B 和矩阵 X 其关系为 A*X=B,来求 X,在 MATLAB 中的语句为 X=A\B 2. 矩阵 A 的分析 求行列式 det(A) 求...

MATLAB学习笔记.doc

MATLAB学习笔记 - MATLAB 学习笔记 1inf 表示+∞,-inf

Matlab学习笔记.doc

Matlab学习笔记 - 河南省开封市禹王台区五福路祥通嘉园 3 号楼 2 单元

matlab7.0学习笔记2.ppt

matlab7.0学习笔记2_理学_高等教育_教育专区。一边学习一边记下重点,大家可以参考啊 数值计算学习笔记 向量 ? 1,在命令窗口中直接输入向量 >> a1=[11 14 17 ...

MATLAB学习笔记.doc

MATLAB学习笔记 - Matlab 学习笔记 《第一章》 矩阵及基本运算 1

matlab学习笔记.doc

matlab学习笔记matlab学习笔记隐藏>> matlab 的数组编辑器与 Excal 很接近,也可以直接从 Excal 电子表格中将数据直接拷贝到 matlab 的数组编辑器中,而 在编辑多个...

Matlab 学习笔记.doc

Matlab 学习笔记 - Matlab 教程 命令+指定参数 表 3-1 命令

MATLAB学习笔记.txt

MATLAB学习笔记 - 第一章 概述...