




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MATLAB算术运算初步一、 帮助l 一旦发现指令不知如何使用时,help命令将告诉你使用。例: help sin 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号()并按入Enter键即可。例如: (10*19+2/4-34)/2*3ans= 234.7500 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案,并显示其数值屏幕上。如果在上述的例子结尾加上”;”,则计算结果不会显示在指令视窗上,要得知计算值只须键入该变数值即可l MATLAB可以将计算结果以不同的精确度的数字格式显示,我们可以在指令视窗上的功能选单上的Options下选 Numerical
2、 Format,或者直接在指令视窗键入以下的各个数字显示格式的指令。 format short (这是默认的)MATLAB利用了二个游标键可以将所下过的指令叫回来重覆使用。按下则前一次指令重新出现,之后再 按Enter键,即再执行前一次的指令。而键的功用则是往后执行指令。其它在键盘上的几个键如, Delete, Insert,其功能则显而易见,试用即知无须多加说明。当要暂时执行作业系统(例如Dos)的指令而还要执行MATLAB,可以利用!加上原作业系统的指令,例如 !dir, !format a:。l Ctrl-C(即同时按Ctrl及C二个键)可以用来中止执行中的MATLAB的工作。l 有三种
3、方法可以结束MATLAB1.exit 2.quit 3.直接关闭MATLAB的命令视窗(Command window)变量及其命名规则l 变量1. 变量名的大小写是敏感。2. 变量的第一个字符必须为英文字母,而且不能超过31个字符。3. 变量名可以包含下连字符、数字,但不能为空格符、标点。预定义的变量ans预设的计算结果的变量名epsMATLAB定义的正的极小值=2.2204e-16pi内建的值inf值,无限大 ()NaN无法定义一个数目 ()i 或 j虚数单位i=j=-1nargin函数输入参数个数nargout函数输出参数个数realmax最大的正实数realmin最小的正实数flops浮
4、点运算次数而键入clear则是去除所有定义过的变量名称。MATLAB赋值语句l 表达式MATLAB书写表达式的规则与“手写算式”差不多相同。如果一个指令过长可以在结尾加上.(代表此行指 令与下一行连续),例如3*.6ans =18MATLAB常用数学函数l 三角函数和双曲函数名称含义名称含义名称含义sin正弦csc余割atanh反双曲正切cos余弦asec反正割acoth反双曲余切tan正切acsc反余割sech双曲正割cot余切sinh双曲正弦csch双曲余割asin反正弦cosh双曲余弦asech反双曲正割acos反余弦tanh双曲正切acsch反双曲余割atan反正切coth双曲余切at
5、an2四象限反正切acot反余切asinh反双曲正弦sec正割acosh反双曲余弦l 指数函数名称含义名称含义名称含义expE为底的指数log1010为底的对数pow22的幂log自然对数log22为底的对数sqrt平方根l 复数函数名称含义名称含义名称含义abs绝对值conj复数共轭real复数实部angle相角imag复数虚部l 圆整函数和求余函数名称含义名称含义ceil向+圆整rem求余数fix向0圆整round向靠近整数圆整floor向-圆整sign符号函数mod模除求余l 矩阵变换函数名称含义名称含义fiplr矩阵左右翻转diag产生或提取对角阵fipud矩阵上下翻转tril产生下三
6、角fipdim矩阵特定维翻转triu产生上三角Rot90矩阵反时针90翻转l 其他函数名称含义名称含义min最小值max最大值mean平均值median中位数std标准差diff相邻元素的差sort排序length个数norm欧氏(Euclidean)长度sum总和prod总乘积dot内积cumsum累计元素总和cumprod累计元素总乘积cross外积MATLAB系统命令命 令含 义help在线帮助helpwin在线帮助窗口helpdesk在线帮助工作台demo运行演示程序ver版本信息readme显示Readme文件who显示当前变量whos显示当前变量的详细信息clear清空工作间的变量
7、和函数pack整理工作间的内存load把文件调入变量到工作间save把变量存入文件中quit/exit退出MATLABwhat显示指定的matlab文件lookfor在HELP里搜索关键字which定位函数或文件path获取或设置搜索路径echo命令回显cd改变当前的工作目录pwd显示当前的工作目录dir显示目录内容unix执行unix命令dos执行dos命令!执行操作系统命令computer显示计算机类型MATLAB语言中的关系与逻辑运算在执行关系及逻辑运算时,MATLAB 将输入的不为零的数值都视为真 (True)而为零的数值则视为否 (False)。 运算的输出值将判断为真者以 1 表示
8、而判断为否者以 0 表示。各个运算元须用在二个大小相同的阵列或是矩阵中的比较l 关系运算指令含义小于大于=大于等于=等于=不等于例:a=1:2:11;b=2:1:7;abans =0 0 1 1 1 1a=bans = 0 1 0 0 0 0a=bans = 0 1 1 1 1 1a-(b4)ans = 1 3 5 6 8 10l 逻辑运算指令含义&逻辑 and|逻辑 or逻辑 not(a6)ans =1 0 0 0 0 1c=a+(a3)|(bisequal(a,b)ans =0isreal(a)ans =1isstudentans = 0矩阵的产生1. 简易阵列 MATLAB的运算事实上是
9、以阵列 (array) 及矩阵 (matrix) 方式在做运算,而这二者在MATLAB的基本运算性质不 同,阵列强调元素对元素的运算,而矩阵则采用线性代数的运算方式。而宣告一变数为阵列或是矩阵时,如果是要个别键入元素,须用中括号 将元素置于其中。阵列为一维元素 所构成,而矩阵为多维元素所组成,例如 x=1 2 3 4 5 6 7 8 ;% 一维 1x8 阵列 x = 1 2 3 4 5 6 7 8; 4 5 6 7 8 9 10 11 ; % 二维 2x8 矩阵,以;区隔各列的元素 x = 1 2 3 4 5 6 7 8 % 二维 2x8 矩阵,各列的元素分二行键入4 5 6 7 8 9 10
10、 11 ; x(3) % x的第三个元素ans = 2 x(1 2 5)% x的第一、二、五个元素ans = 1 4 3x(1:5)% x的第前五个元素ans = 1 4 2 5 3 x(10:end)% x的第十个元素后的元素ans = 8 6 9 7 10 8 11 x(10:-1:2)% x的第十个元素和第二个元素的倒排ans = 8 5 7 4 6 3 5 2 4 x(find(x5)% x中大于5的元素ans = 6 7 8 6 9 7 10 8 11 x(4)=100%给x的第四个元素重新给值x = 1 2 3 4 5 6 7 8 4 100 6 7 8 9 10 11 x(3)=
11、% 删除第三个元素x = Columns 1 through 12 1 4 100 3 6 4 7 5 8 6 9 7 Columns 13 through 15 10 8 11 x(16)=1% 加入第十六个元素x = Columns 1 through 12 1 4 100 3 6 4 7 5 8 6 9 7 Columns 13 through 16 10 8 11 12 建立阵列上面的方法只适用于元素不多的情况,但是当元素很多的时候,则须采用以下的方式: x=(0:0.02:1); % 以:起始值=0、增量值=0.0.2、终止值=1的矩阵 x=linspace(0,1,100); %
12、利用linspace,以区隔起始值=0终止值=1之间的元素数目=100a=%空矩阵a = zeros(2,2)%全为0的矩阵ans = 0 00 0 ones(3,3) %全为1的矩阵ans = 1 1 1 1 1 11 1 1 rand(2,4);随机矩阵a=1:7, b=1:0.2:5;%更直接的方式c=b a; %可利用先前建立的阵列 a 及阵列 b ,组成新阵列 a=1:1:10; b=0.1:0.1:1; a+b*I%复数阵列ans = Columns 1 through 4 1.0000 + 0.1000i 2.0000 + 0.2000i 3.0000 + 0.3000i 4.0
13、000 + 0.4000i Columns 5 through 8 5.0000 + 0.5000i 6.0000 + 0.6000i 7.0000 + 0.7000i 8.0000 + 0.8000i Columns 9 through 10 9.0000 + 0.9000i 10.0000 + 1.0000i在MATLAB的内部资料结构中,每一个矩阵都是一个以行为主(Column-oriented)的阵列(Array)因此对於矩阵元素的存取,我们可用一维或二维的索引(Index)来定址l 子矩阵通过一个矩阵产生另一个矩阵的方法(上面已经有例子)假如一个矩阵A 则 A(m1:m2 ,n1:n
14、2)矩阵的运算经 典 的 算 术 运 算 符运 算 符MATLAB表达式加+a+b减-a-b乘*a*b 除/ 或 a/b或ab 幂abl 经典的算术运算符。l 前面我们已经把经典的算术运算符告诉大家了,在这里同样也可以使用。 a=1:1:10; b=0:10:90; a+bans =1 12 23 34 45 56 67 78 89 100 a-bans =1 -8 -17 -26 -35 -44 -53 -62 -71 -80 a.*b%注意这里a后加了个“.”ans = 0 20 60 120 200 300 420 560 720 900 a/bans =0. 1158 abans =
15、0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 1 2 3 4 5 6 7 8 9 b./aans = Columns 1 through 7 0 5.0000 6.6667 7.5000 8.0000 8.3333 8.5714 Columns 8 through 10 8.7500
16、 8.8889 9.0000 a.bans = Columns 1 through 7 0 5.0000 6.6667 7.5000 8.0000 8.3333 8.5714 Columns 8 through 10 8.7500 8.8889 9.0000 a.2ans = 1 4 9 16 25 36 49 64 81 100说明:在这里特别要注意一下有没有加点“.”之间的区别,这些算术运算符所运算的两个阵列是否需要长度一致。l 矩阵转置运算通过在矩阵变量后加的方法来表示转置运算a=1:1:10;b=0:10:90;aans = 1 2 3 4 5 6 7 8 910c=a+b*i;can
17、s = 1.0000 2.0000 -10.0000i 3.0000 -20.0000i 4.0000 -30.0000i 5.0000 -40.0000i 6.0000 -50.0000i 7.0000 -60.0000i 8.0000 -70.0000i 9.0000 -80.0000i 10.0000 -90.0000i矩阵函数l MATLAB常用数学函数这些数学函数一般都可以作为矩阵函数。a=1:1:10;b=0:10:90;sin(a)exp(b)l 求矩阵的长度的函数a=10,2,12;34,2,4;98,34,6;size(a)ans =3 3length(a)ans =3好好的
18、看一下两者之间的区别。l 矩阵的几种基本变换操作1. 通过在矩阵变量后加的方法来表示转置运算a=10,2,12;34,2,4;98,34,6;aans = 10 34 98 2 2 3412 4 62. 矩阵求逆inv(a)ans = -0.0116 0.0372 -0.0015 0.0176 -0.1047 0.0345 0.0901 -0.0135 -0.00453. 矩阵求伪逆pinv(a)ans = -0.0116 0.0372 -0.0015 0.0176 -0.1047 0.0345 0.0901 -0.0135 -0.00454. 左右反转fliplr(a)ans = 12 2
19、10 4 2 34 6 34 985. 矩阵的特征值u,v=eig(a)u = -0.2960 0.3635 -0.3600 -0.2925 -0.4128 0.7886 -0.9093 -0.8352 0.4985v = 48.8395 0 0 0 -19.8451 0 0 0 -10.99436. 上下反转flipud(a)ans = 98 34 6 34 2 410 2 127. 旋转90度rot90(a)ans = 12 4 6 2 2 3410 34 988. 取出上三角和下三角triu(a)ans = 10 2 12 0 2 4 0 0 6tril(a)ans = 10 0 0 3
20、4 2 098 34 6字符串的基本操作在matlab工作空间中,字符串是以向量形式来存储的,我们把用所包含的内容来表示该字符串。s=students =student字符串也可以作为矩阵来连接。s1=whos1 = whos=s,s1s = studentwho求字符串的长度length(s)ans = 10 size(s)ans = 1 10字符串函数字 符 串 转 换abs字符串到ASCII转换dec2hex十进制数到十六进制字符串转换fprintf把格式化的文本写到文件中或显示屏上hex2dec十六进制字符串转换成十进制数hex2num十六进制字符串转换成IEEE浮点数int2str整
21、数转换成字符串lower字符串转换成小写num2str数字转换成字符串setstrASCII转换成字符串sprintf用格式控制,数字转换成字符串sscanf用格式控制,字符串转换成数字str2mat字符串转换成一个文本矩阵str2num字符串转换成数字upper字符串转换成大写eval(string)作为一个MATLAB命令求字符串的值blanks(n)返回一个n个零或空格的字符串deblank去掉字符串中后拖的空格feval求由字符串给定的函数值findstr从一个字符串内找出字符串isletter字母存在时返回真值isspace空格字符存在时返回真值isstr输入是一个字符串,返回真值l
22、asterr返回上一个所产生MATLAB错误的字符串strcmp字符串相同,返回真值strrep用一个字符串替换另一个字符串strtok在一个字符串里找出第一个标记l 这里函数num2str用来把数值转换成字符串,字符串连接用来把所转换的数嵌人到一个字符串句子中。按类似方式,int2str把整数转换成字符串。无论是num2str还是int2str都调用函数sprintf,它用类似C语言语法把数值转换成字符串。请注意函数str2num不能接受用户定义的变量,也不能执行转换过程的算术运算。s=he is a student;a=abs(s)a = Columns 1 through 12 104
23、101 32 105 115 32 97 32 115 116 117 100 Columns 13 through 15 101 110 116num2str(a)ans =104 101 32 105 115 32 97 32 115 116 117 100 101 110 116int2str(s)ans =104 101 32 105 115 32 97 32 115 116 117 100 101 110 116l 函数disp允许不打印它的变量名而显示一个字符串。disp(s)he is a studentl 函数find用来找出小写字符的下标值,然后,从小写元素中只减去小写与大写之差,最后,用setstr把求得的数组转换成它的字符串表示。find(sm)ans = 5 9 10 11 14 15l 函数input能输入一个字符串: x=input( Enter anything , s ) 。这里,在函数input里的附加参量s告诉MATLAB,作为一个字符串,只要把用户输入传送到输出变量,就不需要引号。事实上,如果将引号包括进去,它们就变成返回字符串的一部分。l 无论fprintf还是sprintf以同样方式处理输入参量,但fprintf把输出送到显示屏或文件中,而sprintf把输出返回到一个字符串中。l 函数f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉林省长春市绿园区经开实验小学2024-2025学年小升初数学综合练习卷含解析
- 湖北省襄樊市2024-2025学年高三一模金卷物理试题分项解析版含解析
- 浙江商业职业技术学院《精算数学》2023-2024学年第二学期期末试卷
- 上海市闵行八校2025年高三下学期第一次周考英语试题含解析
- 山东化工职业学院《电机原理及其运行与维护》2023-2024学年第二学期期末试卷
- 郑州理工职业学院《数学模型与数学实验》2023-2024学年第二学期期末试卷
- 江西应用技术职业学院《建筑给排水工程课程设计》2023-2024学年第二学期期末试卷
- 山东省临沂市19中2024-2025学年高考二轮物理试题1-4月复习专号数理报含解析
- 专题24 四边形压轴综合(3大考点)2022-2024年中考数学真题分类
- 审计个人工作述职报告(7篇)
- LOTO上锁挂牌培训资料课件
- DB63-T 1800-2020盐湖卤水矿堤坝工程施工技术规范
- 公路工程施工现场安全检查手册
- 初三任务型阅读公开课一等奖省优质课大赛获奖课件
- 财务会计费用原始凭证分割单
- 清淤工程施工记录表
- 矩阵理论讲义第四章内积空间
- 货物采购服务方案
- 初中英语 沪教牛津版 8B U6-1 Reading Head to head 课件
- GB∕T 20808-2022 纸巾
- 祖国不会忘记合唱谱(1)
评论
0/150
提交评论