Matlab语言基础

合集下载

第二章 MATLAB基础

第二章 MATLAB基础
27
3 )向量是一个数学量,一般高级语言中也未引入, 它可视为矩阵的特例。从MATLAB的工作区可以查 看到:一个 n 维的行向量是一个 1 × n 阶的矩阵,而 一个n维的列向量则当成n×1阶的矩阵。 如A=[1 2 3 4]就是一个4维的行向量。也可看成是 一个一维数组,还要看成是一个1×4阶的矩阵。
3
数据类型转换函 数 uint8 uint16 uint32 uint64 int8 int16 int32 int64
说 明 无符号8位整数 无符号16位整数 无符号32位整数 无符号64位整数 有符号8位整数 有符号16位整数 有符号32位整数 有符号64位整数
字节数 1 2 4 8 1 2 4 8
22
【例 2.8】变量赋值 >> a=3.14 a= 3.1400 >> class(a) %函数class用来是判断变量数据类 型的 ans = double %变量a是双精度的浮点型数据
23
>> a='hello!' hello! >> class(a) ans = char
%变量a重新赋值
13
>> whos Name Size a 1x1 x 1x1 y 1x1 z 1x1
Bytes Class Attributes 16 double complex 4 int32 4 int32 8 int32 complex
14
2.2MATLAB的常量及变量
2.2.1常量 常量是程序语句中取不变值的那些量。如表达式 y=0.314*x,其中就包含一个0.314这样的数值常数,它 便是一个数值常量。而在另一表达式s='Hello'中,单引 号内的英文字符串“Hello”则是一个字符串常量。

MATLAB初学者语言基础

MATLAB初学者语言基础
❖ help命令
▪ 在命令窗口使用help组合命令。当用户知道函数名称想了解其具体用法时,可 以在命令窗口使用help命令,调用方法是help 函数名,例如:
>> help inv
❖ lookfor命令
▪ 在命令窗口使用lookfor组合命令。注意,help 命令要求函数名的精确匹配,而 lookfor只要求与每个函数中的总结信息有匹配。所以当用户不知道函数的确切 名称时可以使用lookfor命令 ,例如找矩阵求逆函数可以输入:
>> 3.14*3^2
ans =
28.2600
▪ 当遇到较为复杂的问题时,可以采用给变量赋值的方法,例如:可以用变量r来表示圆的
半径,用变量S来表示圆的面积,百分号“%”是MATLAB中的注释符
>> r=3
%圆的半径r=3
r=
3
>> S=3.14*r^2 %求圆的面积S
S=
28.2600
▪ 在命令窗口输入r=3并按下Enter键后,MATLAB会在命令窗口直接显示这条命令的计算 结果,若要禁止显示计算的中间结果,则可以通过分号“;”来实现,例如:
❖ 产生与发展
▪ 雏形——基于特征计算的程序库EISPACK和线性代数程序库LINPACK ▪ 免费软件->MathWorks公司 ▪ 演变成为一种具有广泛应用前景的全新的计算机高级编程语言
❖ 优势
▪ 强大易用的科学计算语言 ▪ 全面的图形功能 ▪ 独立开放的平台 ▪ 实用的程序接口
命令窗口 当前目录窗口
❖ 编辑搜索路径的常用命令
>> path
%显示所有搜索路径
>> addpath
%增加目录到MATLAB搜索路径。

Matlab基础知识点

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基础2.1 MATLAB快速入门(1)搜索路径搜索路径也被看作是MATLAB的路径,其包含的文件被认为在路径上。

Matlab基础知识点

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基础2.1 MATLAB快速入门(1)搜索路径搜索路径也被看作是MATLAB的路径,其包含的文件被认为在路径上。

第二章_MATLAB语言基础_第1节-赵亦欣

第二章_MATLAB语言基础_第1节-赵亦欣
ans的值将在下一条表达式语句执行后被刷新。
第2章 MATLAB语言基础
【例2.8】 表达式语句。 >> sqrt(2)*exp(-1*3) ans = 0.0704 >> 8*3+6/4 ans = 25.5000
表达式语句 运算结果 执行下一条 表达式语句 后,结果将 被刷新
第2章 MATLAB语言基础
第2章 MATLAB语言基础
2.1 基础知识
2.1.3 变量和语句
变量名区分字母大小写;不超过31个字 符,31个以后的字符将被忽略,字符之间不 能有空格;必须以字母打头,之后可以是任意 字母、数字或下画线;不允许使用标点符号。
第2章 MATLAB语言基础
MATLAB的一条命令行就是一条语句,
格式与书写数学表达式相近。 在命令窗输入语句,该语句可被解释运 行并给出运行结果。
第2章 MATLAB语言基础
(1)永久变量不能用clear命令清除; (2)永久变量不响应Who, Whos命令; (3)永久变量可以等于表2-1中的值; (4)被赋值的永久变量,在clear命令清除内 存或命令窗关闭再打开后,将被设为默认值;
(5)允许被0除。
第2章 MATLAB语言基础
2.1 基础知识
第2章 MATLAB语言基础
【例2.11】复数矩阵的生成及运算。 >> A=[1 2; 3 4]+[5 6; 7 8]*I % 复数矩阵的输入。 分别由实部矩阵和虚部矩阵组合而成 A= 1.0000 + 5.0000i 2.0000 + 6.0000i 3.0000 + 7.0000i 4.0000 + 8.0000i >> B=[1+2i 3+4i; 5+6i 7+8i] % 复数矩阵的输入。 直接由复数构成矩阵 B= 1.0000 + 2.0000i 3.0000 + 4.0000i 5.0000 + 6.0000i 7.0000 + 8.0000i >> C=A*B % 复数矩阵相乘。 复数矩阵乘法, 1.0e+002表 示标量100,矩阵运算中,存在直 C= 角坐标和极坐标之间的转换 1.0e+002 * -0.3500 + 0.4900i -0.5100 + 0.7700i -0.3900 + 0.7700i -0.5500 + 1.2100i

第一章MATLAB基础知识

第一章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-1MATLAB6.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项设置,这里先介绍通用参数的设置。

第二章 MATLAB语言基础(10)

第二章  MATLAB语言基础(10)

第二章 MATLAB语言基础教学重点:矩阵运算、MATLAB程序设计教学难点:基本算术运算与点运算、switch语句、try语句、for语句MATLAB是英文MATrix LABoratory(矩阵实验室)的缩写。

矩阵是MATLAB最基本、最重要的数据对象,MA TLAB的大部分运算或命令都是在矩阵运算的意义下执行的,而且这种运算定义在复数域上。

一、MATLAB编程基础1.变量MATLAB对变量名称有以下三个规定:●变量名称开头必须是英文字母,后面可以接英文字母、下划线、数字●区分大小写●变量名称长度应不超过31个字符2.预定义变量在MA TLAB中,有一些预先定义好的保留数值和函数供用户使用,这些特殊函数和数3.基本赋值语句MATLAB最基本的赋值语句结构为:变量名列表=表达式表达式可以用分号结束,也可以用逗号或换行号结束,但它们的含义不同。

如果用分号结束,则程序运行时等式左边的变量的运行结果将不在屏幕上显示出来,否则将把左边变量的运行结果全部显示出来。

4.工作空间的管理1)who和whos可以用who或whos命令来查看程序中使用的变量表,who命令只返回一个简单的变量列表,whos命令返回全部变量的变量名(Name)、大小(Size)、元素数(Element)、字节数(Byte)、表现密度(Density)、有无复数(Complex),除了对单个变量给出相应的信息外,还将给出整个变量空间的占用情况。

2)clear可以调用clear命令来删除其中的一些不再使用的变量,这样可以使得整个工作空间更简洁。

3)exist如果用户想查询在当前的工作空间中是否存在一个变量时,可以使用exist命令来实现,改函数的调用格式为:i=exist(‘A’);返回值i表示变量名存在的形式,含义如下:i=1:表示在当前工作空间中存在一个变量名为A的矩阵i=2:表示在MA TLAB的工作路径下存在一个名为A.m的文件i=3:表示在MA TLAB的工作路径下存在一个名为A.mex的文件i=4:表示存在一个编译号的名为A.m的SIMULINK文件i=5:表示存在一个MATLAB函数A( )i=0:表示不存在和A有关的变量和文件4)size( )、length( )、ndims( )size( )返回矩阵的行数和列数length( )返回矩阵行数和列数的最大值ndims( )给出矩阵的维数5.字符串在MA TLAB中,字符串是用单撇号括起来的字符序列。

1第一章 Matlab语言概述

1第一章 Matlab语言概述

(Ⅰ)基础篇第一章 Matlab语言概述§1.语言特点MATLAB是Mathworks公司于20世纪80年代推出的数值计算软件。

得到了广泛的应用。

MATLAB的全称是Mateix Laboratory,意思是矩阵实验室。

它是以矩阵运算为基础的新一代程序语言。

MATLAB是集数学运算、图形处理、程序设计和系统建模为一体的著名编程语言软件,它具有功能强大、使用简单等优点,是进行科学研究和工程实践的有力工具。

与Fortran和C相比,MATLAB语句更简洁、明了,更加符合人们的思维习惯。

并且还具有良好的数据可视化功能。

MATLAB包括两部分:基本部分-主要指数据计算和可视化功能。

扩展部分-主要指工具箱。

§2 基本操作和简单语句输入1. 简单语句输入(简单计算器用法)例1:计算a⨯y÷⨯=(a = 2,b =3,c = 5 )+acbb[程序] 在命令窗口输入>> a=2;b=3;c=5;>> y=a*b+c*b/a 回车[输出] y =13.5000例2:计算64(tan3⨯+45)/2760cos[程序] >> (tan(pi/4)+cos(pi/3))*27^(1/3)/sqrt(64)ans =0.56252. 变量表达式数值(1)变量* matlab语句一般形式为:变量=表达式(或数),若变量和“=”省略,输出时自动建立“ans”默认变量。

* 对大小写敏感,如sqrt(平方根)对,而SQRT,Sqrt全错。

* 变量名第一个字符必须是英文字母,最多可包含31个字符,(含英文、数字、下连符)。

不得包含空格和标点。

* 系统遇到一个新变量名时,它会自动生成变量,若该变量早已存在,系统会自动更新内容。

表1-1 默认预定义变量(永久变量)例3:无穷大的使用>> x =1/0Warning: Divide by zero.x =Inf* 在MATLAB中这样的操作不会引起程序执行中断,只是在给出警告信息的同时,用一个特殊的符号Inf来表示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、Matlab的变量与常量
Matlab中变量与常量存储都就是相应的数据。

数据类型:基本类型、构造类型、符号对象
基本类型:数字型、字符串型
数字型:整型、浮点型
整形:无符号、有符号(int8、int16、int32、int64 1位、2位、4位、8位)
浮点型:单精度(32位)、双精度(64位)
基本类型:数组类型(常见)、细胞类型、结构类型、类类型
符号对象(比较少见)
变量:在运算过程中其数值可以改变的量;
常量:在运算过程中其数值不改变的量。

变量命名规则:
变数名称就是由一个字母开头,其后可以有任意数量的字母、数字或下划线。

在变量命名时尽量使用小写字母,名字要有实在的意义,不要与系统保留的关键字(常量)与函数名相同的名字,容易出错。

MATLAB就是区分大小写的,变量名可以就是任意长度。

Matlab语言就是一种弱类型语言,C语言就是强类型语言,变量在复制之前要对它的类型进行严格的申明,不同就会出错,而matlab不需要事先申明。

变量初始化:
1、采用赋值语句初始化变量;
2、用input函数从键盘输入初始化变量,如下:
3、matlab已经定义好了的一些常量:
I、j虚数;Inf无穷大;NaN不定式;pi圆周率;ans特殊的变量。

二、matlab的基本数据结构
标量、向量、数组、矩阵的概念:标量、向量、数组本质上就是特殊的矩阵形式;matlab 常用的就是二维矩阵;标量1*1的矩阵;向量可以瞧成就是1行或者1列的矩阵;向量就是数学中的说法,数组就是matlab语言中的说法,但向量与数组在这里指的就是同一种数据结构,可以互用。

手动生成矩阵:
行矩阵:a = [1 2 3]
列矩阵:b = [1 2 3]’或 b = [1;2;3]
2*2矩阵:c = [1 2;3 4]
使用内置函数生成矩阵:常用的有 o nes,eye,zeros,size,length、
利用冒号表达式生成矩阵:
冒号:用来生成向量,定义数组下标,数组的循环迭代。

生成航向量:
生成列相量:
引用矩阵或矩阵中的元素:
举证可以瞧成一个一位数组,按列从左至右,从上往下依次排列。

冒号当作下标
e(:,2) :代表全部行元素,2代表第2列
引用第3列2-4行:
指定生成某种矩阵
矩阵的行拼接列拼接:
Size函数:返回矩阵行列对应的维数;length函数返回行列维数最大的那个值
三、matlab中的空数组与子数组
子数组的概念
子数组的赋值与数组直接赋值的区别
end的用法
Linspace,logspace,reshape
预定义变量:date,clock,year,month,now,today(与日期处理有关)
空数组
子数组
Linspace函数
用法:linspace(x1,x2,N) (linspace(x1,x2)默认生成包括x1与x2的100个数)
功能:linspace就是Matlab中的均分计算指令,用于产生x1,x2之间的N点行线性的矢量。

其中x1、x2、N分别为起始值、终止值、元素个数。

若默认N,默认点数为100。

注:linspace(5,100,20)与5:5:100的区别在于前者已知元素总个数而不知道步长,后者已知步长不知元素个数,这两者的效果就是一样的。

logspace函数
用法:x=logspace(a, b, n)
功能:logspace(a, b, n)生成一个(1xn)数组,数据的第一个元素值为a,最后一个元素为b,n就是总采样点数。

需要注意的就是,此时产生的数组元素在10^a 到10^b上并不就是均匀分布的,而形成一个对数曲线。

reshape的用法
date,clock,year,month,now,today的用法
四、matlab中的算术运算符
标量运算
矩阵预算
数组运算
运算优先级
标量:亦称“无向量”。

有些物理量,只具有数值大小,而没有方向,部分有正负之分。

物理学中,标量(或作纯量)指在坐标变换下保持不变的物理量。

用通俗的说法,标量就是只有大小,没有方向的量。

+ - * / \ ^
矩阵:由 m × n 个数aij排成的m行n列的数表称为m行n列的矩阵,简称m × n矩阵。

magic函数:生成魔方矩阵
矩阵运算:
A+B A-B A*B A/B A、*B A、/B
五、matlab中常见的运算函数
三角、反三角函数,指数、对数函数,圆整函数、绝对值,sum, prod, max, min 复数取实部、虚部、取模
Cross, dot, compan, inv, det, rank, eig, trace (对矩阵进行运算)
圆整
ceil 朝着正无穷圆整
floor 朝着负无穷圆整
fix 朝着0圆整
round 四舍五入整
mod 取模函数
rem 除取余
mod 除取整
mean按列求平均值
prob接地
Sum(x,dim)dim=1按列 2按行求与
conv 可以做多项式乘法
比如,(X^6+X^4+7X+4)*(X^5+X^3+3X+1)用conv函数展开:
复数
六、matlab的字符串及其运算
ASCII码:American Standard Code for Information Interchange的缩写
字符串的数组本质
字符串的生成:单引号法,数组法
字符串的转换:abs, double, char, str2num, num2str, upper, lower
字符串:本质就是一个字符数组。

其她语言中也有。

字符经过编码以数字的形式编在电脑里,这种编码形式就就是ASCII码。

字符串的生成:单引号法,数组法。

字符串的转换:
abs 将字母转成数字。

double 功能类似。

char 将字母转成字母。

str2num, num2str, upper, lower
这种方法比较迂回,matlab中有函数直接转换
七、字符串函数及二维字符串
Strcmp(S1,S2), findstr(S, S), strcat(S1, S2), disp(str)
Fprint(format, data)
二维字符串
Strvcat, str2mat
Strcmp(S1,S2) S1,S2两个函数相同则为1,不同则为0 Strcmp(S1,S2,n)比较前n个字符
findstr(S1, S) 将S1中所有的S以形式的形式返回
strcat(S1, S2) 将两个字符进行拼接;利用矩阵形式进行拼接也可以;当两个字符串长度不一样就是不可以[S1, S2]这样拼接。

disp(str) 将字符串原样输出
二维字符串的生成:
维度不一的时候用空格补齐,这种方法比较麻烦。

Strvcat 字符串纵向拼接 str2mat与之类似,区别在于str2mat会将空字符生成空行,而前者会直接将其忽略。

八、绘图入门
其她语言绘图特别繁琐,而matlab绘图特别方便简洁。

plot,semilogx,semilogy,loglog,legend,title,grid,xlabel,ylable,hold plot:matlab 中最简单的绘图命令。

legend(‘在右上角对不同的曲线插入相应的图例’)
九、绘图属性的控制
plot,semilogx,semilogy,loglog,legend,title,grid,xlabel,ylable,hold 线型,颜色,线宽的控制
十、图形窗口菜单及其对数坐标
Semilogx,semilogy,loglog。

相关文档
最新文档