北京交通大学Matlab31ok

上传人:桔**** 文档编号:589771156 上传时间:2024-09-11 格式:PPT 页数:38 大小:636KB
返回 下载 相关 举报
北京交通大学Matlab31ok_第1页
第1页 / 共38页
北京交通大学Matlab31ok_第2页
第2页 / 共38页
北京交通大学Matlab31ok_第3页
第3页 / 共38页
北京交通大学Matlab31ok_第4页
第4页 / 共38页
北京交通大学Matlab31ok_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《北京交通大学Matlab31ok》由会员分享,可在线阅读,更多相关《北京交通大学Matlab31ok(38页珍藏版)》请在金锄头文库上搜索。

1、第三章第三章 Matlab语言语言程序设计基础程序设计基础第三章第三章 Matlab语言语言程序设计基础程序设计基础Matlab语言 N o .1M a t l a b语言 N o .2学什么?第三章 Matlab语言程序设计基础 1 1Matlab的基本数据类型 2 2Matlab的基本运算与输入输出 3 3Matlab的程序流程语句 4 4Matlab函数的编写规范与技巧Hands-OnM a t l a b语言 N o .3第三章 Matlab语言程序设计基础 1 1 Matlab基本数据类型8字节64位 -1.710308 1.7103088字节64位 虚部double() 8字节ui

2、nt8() 1字节int8() 1字节uint16() 2字节int16() 2字节uint32() 4字节int32() 4字节charcellstructUnsigned integerSigned integerM a t l a b语言 N o .4第三章 Matlab语言程序设计基础 1 1 Matlab基本数据类型1. 变量、常量与赋值语句结构 2. 矩阵的表示3. 多维数组的定义4. 字符串变量及其处理5. 稀疏矩阵M a t l a b语言 N o .5第三章 Matlab语言程序设计基础1. 变量、常量与赋值语句结构 ATsys12 AT_Sys12 AtsyS12_12At

3、sys _AtSys12 A a MyDocu赋值变量=赋值表达式返回变量表=函数名(输入变量表)直接赋值语句a=2+b 2+b a=b2; b2;函数调用语句row, col=size(A)buit-in func-file subfunc ans=2+b ans=b2;M a t l a b语言 N o .6第三章 Matlab语言程序设计基础特定常数epsi j2.2210-16x=(-6:0.1:6)*pi;y=sin(x)./x;plot(x,y)edit teach04for i=1:10x=i2endi=sqrt(-1)M a t l a b语言 N o .7第三章 Matlab

4、语言程序设计基础2. 矩阵的表示Matlab 的基本单元:复数矩阵A=1 2 3; 4 5 6; 7 8 9B=1,3,5; 7,9,2; 4,6,8v1=1 2 3 4v2=1;2;3;4A=A;1 3 5?M a t l a b语言 N o .8第三章 Matlab语言程序设计基础A=A;1 2A(2,3)A(1 3 4,1 3)A(2,6)=1.5A(2,4:5)=Inf; A(3,4:6)=NaNInfpiNaNanslasterrlastwarn Not a Numbera=0:0.1:1.16M a t l a b语言 N o .9第三章 Matlab语言程序设计基础a=s1:s2

5、:s3?a(:,1 3) a(:) M a t l a b语言 N o .10第三章 Matlab语言程序设计基础reshape(ans,4,2)ans(3:end,3)B=1 2 3; 4 5 6; 7 8 0;B=B+9 8 7; 6 5 4; 3 2 1*1i M a t l a b语言 N o .11第三章 Matlab语言程序设计基础3. 多维数组的定义自定义 edit teach05 p39cat(n,A1,A2,) A2AmA1size(A)length(A)concatenateM a t l a b语言 N o .12第三章 Matlab语言程序设计基础4. 字符串变量及其处

6、理edit teach06字符串比较字符串比较k = strcmp(s1,s2)1/0 串1 串2字符串查找字符串查找k = findstr(s1,s2)位置下标/ 串1 串2M a t l a b语言 N o .13第三章 Matlab语言程序设计基础取字符串长度取字符串长度k = length(s)长度 串字符串替换字符串替换s = strrep(s1, s2, s3)新串 原串 弃串 补串与双精度互换与双精度互换d = double(s)s = char(d)删去空格删去空格s = s(find(s= )s = deblank(s)strF( 下下 标标 )strF(find( 条条 件

7、件 )strF(find(strF= )数字变字符串数字变字符串s = mat2str(A)s = int2str(n)s = num2str(x)字符串变数字字符串变数字A = eval(s)如果如果s全是数字、小数点、全是数字、小数点、指数等组成指数等组成M a t l a b语言 N o .14第三章 Matlab语言程序设计基础5. 稀疏矩阵比较比较I = eye(100);S = speye(100);转换转换S = sparse(A);A = full(S);M a t l a b语言 N o .15第三章 Matlab语言程序设计基础 2 2 Matlab的基本运算与输入输出1.

8、 变量类型的测试 2. 矩阵的代数运算3. 矩阵的逻辑运算4. 矩阵的比较关系5. 矩阵元素的数据变换6. 输入与输出语句1. 变量类型的测试k = isa(A,待测类型) double|char|.k = isnan(A)k = isfinite(A)k = isinf(A)k = isempty(A)any(A)all(A)M a t l a b语言 N o .16第三章 Matlab语言程序设计基础2. 矩阵的代数运算M a t l a b语言 N o .17第三章 Matlab语言程序设计基础矩阵转置矩阵转置C = transpose(A);C = ctranspose(A);C =

9、A;C = transpose(conj(A);矩阵加减法矩阵加减法C = plus(A,B);C = A + B;C = minus(A,B);C = A - B;矩阵乘法矩阵乘法C = mtimes(A,B);C = A * B;C = times(A,B);C = A .* B;矩阵左除(高斯消去法)矩阵左除(高斯消去法)C = mldivide(A,B);C = A B; C = ldivide(A,B);C = A . B;矩阵右除矩阵右除C = mrdivide(A,B);C = A / B;C = rdivide(A,B);C = A ./ B;矩阵乘方矩阵乘方C = mpowe

10、r(A,x);C = A x;C = power(A,x);C = A . x;矩阵翻转矩阵翻转C = fliplr(A);C = flipud(A);C = rot90(A);C = transpose(A);M a t l a b语言 N o .18A*BA.*B第三章 Matlab语言程序设计基础3. 矩阵的逻辑运算M a t l a b语言 N o .19第三章 Matlab语言程序设计基础矩阵的矩阵的与与运算运算C = and(A, B);C = A & B;矩阵的矩阵的或或运算运算C = or(A,B);C = A | B;矩阵的矩阵的非非运算运算C = not(A);C = A;

11、矩阵的矩阵的异或异或运算运算C = xor(A,B);A,B大小相同大小相同 | 其中之一为标量其中之一为标量4. 矩阵的比较关系M a t l a b语言 N o .20第三章 Matlab语言程序设计基础矩阵的比较运算矩阵的比较运算A B A = B A = = BA B A bi j维数相同维数相同特殊比较函数特殊比较函数find(C=1)find(isnan(C)help . M a t l a b语言 N o .21第三章 Matlab语言程序设计基础5. 矩阵元素的数据变换M a t l a b语言 N o .22第三章 Matlab语言程序设计基础取整函数取整函数floor(A)

12、 - ceil(A) + round(A) integerfix(A) 0有理化函数有理化函数n,d = rat(A)取余函数取余函数rem(A,x) mod(A,n)6. 输入与输出语句M a t l a b语言 N o .23第三章 Matlab语言程序设计基础输出语句输出语句;disp(A) disp(s)error(s)warning(s)写文件语句写文件语句输入语句输入语句A = input(提示字符串提示字符串)A = input(提示字符串提示字符串,s)读文件语句读文件语句M a t l a b语言 N o .24第三章 Matlab语言程序设计基础 3 3 Matlab的程序

13、流程语句1. 循环结构 2. 条件转移结构3. 开关结构4. 试探式语句结构M a t l a b语言 N o .25第三章 Matlab语言程序设计基础1. 循环结构循环结构(1)for i=1:n x(i)=k*pi; y(i)=log(i);end s1:s3:s2M a t l a b语言 N o .26第三章 Matlab语言程序设计基础循环结构(2)while max(y)=0 k=k/2; x=k*pi; y=log(x);end M a t l a b语言 N o .27第三章 Matlab语言程序设计基础2. 条件转移结构条件转移结构(1)if A=B x=B*A; y=A.

14、*B;endM a t l a b语言 N o .28第三章 Matlab语言程序设计基础条件转移结构(2)if A=B x=B*A;else x=B.*A;endedit teach07M a t l a b语言 N o .29第三章 Matlab语言程序设计基础条件转移结构(3)if A=B x=A*B;elseif AB y=A.*B;elseif A0 x=A-B;else x=0;endM a t l a b语言 N o .30第三章 Matlab语言程序设计基础3.开关结构switch 2*k+1case 1 statement 1case 3,9,27 statement 2ot

15、herwise statement nend edit teach08M a t l a b语言 N o .31第三章 Matlab语言程序设计基础 4 4 Matlab的函数编写规范与技巧1. 函数的基本结构 2. 全局、局部变量、子函数与私有目录3. 函数的跟踪调试4. 函数输入和返回变量的其他信息(略)5. 工具箱编写技巧(略)M a t l a b语言 N o .32第三章 Matlab语言程序设计基础脚本文件M-Script (主程序)函数文件M-Function(子程序)1. 函数的基本结构function 返回变量列表=函数名(输入变量列表)%注释说明段检验输入变量和返回变量的属

16、性函数体语句edit teach09 + logsinM a t l a b语言 N o .33第三章 Matlab语言程序设计基础edit teach10a + volumeaM a t l a b语言 N o .34第三章 Matlab语言程序设计基础2. 全局、局部变量、子函数 global x y zedit teach10b + volumeb subfunction edit losM a t l a b语言 N o .35第三章 Matlab语言程序设计基础3. 函数的跟踪调试debugging teach09F12 Set-break-point设置断点F5 Run执行到当前断

17、点F10 Single-step单步执行F11 Step-in 调用函数内单步执行M a t l a b语言 N o .36第三章 Matlab语言程序设计基础 蜀之鄙,有二僧,其一贫,其一富。贫者语于富者曰:吾欲之南海,何如?富者曰:子何恃而往?曰:吾一瓶一钵足矣。富者曰:吾数年来欲买舟而下,犹未能也,子何恃而往!M a t l a b语言 N o .37第三章 Matlab语言程序设计基础 越明年,贫者自南海还,以告富者,富者有惭色。 西蜀之去南海,不知几千里也,僧富者不能至而贫者至焉。呜呼,人之立志,固不如蜀鄙之僧哉!M a t l a b语言 N o .38第三章 Matlab语言程序设计基础 7 7 Hands Onlogologo2

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号