版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1matlab基础尚涛,电子信息工程学院尚涛,电子信息工程学院tel:010-823172222 通过本课程的学习,使学生初步掌握初步掌握当前流行的matlab语言的基础知识基础知识,学会运用matlab进行科学数据处理、计算和建模的基本基本技能技能,为今后从事毕业设计、工程设计、产品开发和科学研究打下较好的基础。 课程任务3教学内容与学时安排第一节第一节 概述及运算基础(概述及运算基础(2 2)第二节第二节 数值运算和符号运算数值运算和符号运算 (2 2)第三节第三节 matlabmatlab绘图和程序设计(绘图和程序设计(2 2)第四节第四节 guigui设计和神经网络应用(设计和神经网络
2、应用(2 2)考试成绩总学时:16(其中上机学时8)平时成绩(10%)+实验成绩(上机10%+报告20%)+期末考试(60%) 上课时间地点安排4周一周一周二周二周三周三周四周四周五周五12节上课j3-106上课j0-001上课j0-00134节上机上机上机考试56节上课j0-00178节上机班级班级上机地点上机地点140221/22实601140223/24实602140225/26/27实603140228/29/其他实7035具体安排平时成绩:出席,每节由教辅统计实验内容上机时从大班邮箱下载。实验: 实验结果和实验报告(周一-周四),周五下午2点之前由各班学委将实验报告电子版收齐提交给教
3、辅。考试:7月17日周五上午3 4节地点(j0-001 j0-002 j0-003)*若个别学生不在名册,与我联系!郭双郭双140221 赵健赵健140224 张晓宇张晓宇140227吴绪悦吴绪悦 140222 黄宇晴黄宇晴140225 佘昌洋佘昌洋140228张明张明140223 张文秋张文秋140226 杜岗杜岗140229周修文周修文 其他其他6参考书目l尚涛尚涛, matlab, matlab基础及其应用教程基础及其应用教程, ,北京:电子工业出版北京:电子工业出版社,社, 20142014年年8 8月。月。l张学敏,倪虹霞,张学敏,倪虹霞,matlab基础及应用,北京:中国基础及应用
4、,北京:中国电力出版社,电力出版社,2009 年年2月。月。l刘同娟,郭键,刘军,刘同娟,郭键,刘军,matlab建模、仿真及应用,建模、仿真及应用,北京:中国电力出版社,北京:中国电力出版社,2009 年年4月。月。l胡良剑,孙晓君,胡良剑,孙晓君,matlab数学实验,北京:高等教数学实验,北京:高等教育出版社,育出版社,2006年年6月。月。l马莉,马莉,matlab数学实验与建模,北京:清华大学出数学实验与建模,北京:清华大学出版社,版社,2010年年1月。月。lhttp:/ learning matlab using the control system toolbox. 什么是仿真
5、什么是仿真?生活中有没有生活中有没有?78仿真的定义9仿真(仿真(simulationsimulation):利用模型复现实际系统中发生的本质过程,并通过对系统模型的实验来研究存在的或设计中的系统,又称模拟。10仿真的分类v 按模型分类按模型分类1、物理仿真:利用实物或者它的物理模型进行研究、物理仿真:利用实物或者它的物理模型进行研究l具有效果逼真,精度高等优点,但造价高或耗时长,具有效果逼真,精度高等优点,但造价高或耗时长,大多在一些特殊场合下采用(如导弹、卫星一类飞行大多在一些特殊场合下采用(如导弹、卫星一类飞行器的动态仿真,发电站综合调度仿真与培训系统等),器的动态仿真,发电站综合调度仿
6、真与培训系统等),优点是直接、形象、可信;缺点是模型受限、易破坏、优点是直接、形象、可信;缺点是模型受限、易破坏、难以重复利用。难以重复利用。2、计算机仿真:根据相似性原理,利用计算机模拟研究、计算机仿真:根据相似性原理,利用计算机模拟研究系统。系统。l计算机仿真的三个基本要素:系统、模型、计算机。计算机仿真的三个基本要素:系统、模型、计算机。l与计算机仿真要素相对应工作是:模型的建立、系统与计算机仿真要素相对应工作是:模型的建立、系统的组装、仿真实验。的组装、仿真实验。11具体的工作过程:具体的工作过程:1、建立系统的数学模型;、建立系统的数学模型;2、仿真系统的组装,包括设计仿真算法、编制
7、计算机、仿真系统的组装,包括设计仿真算法、编制计算机程序使仿真系统的数学模型能为计算机所接受并在计程序使仿真系统的数学模型能为计算机所接受并在计算机上运行;算机上运行;3、运行仿真模型,进行仿真试验,再根据仿真试验的、运行仿真模型,进行仿真试验,再根据仿真试验的结果进一步修正系统的数学模型和仿真系统。结果进一步修正系统的数学模型和仿真系统。121 1、程序编程阶段: 所有问题(如:微分方程求所有问题(如:微分方程求解、矩阵运算、绘图等)都是用高级算法语言解、矩阵运算、绘图等)都是用高级算法语言(如(如c c、fortranfortran等)来编写。等)来编写。2 2、程序软件包阶段: 出现了出
8、现了“应用子程序库应用子程序库”。3 3、交互式语言阶段(仿真语言:仿真语言可用一仿真语言可用一条指令实现某种功能,如条指令实现某种功能,如“系统特征值的求系统特征值的求解解”,使用人员不必考虑什么算法,以及如何,使用人员不必考虑什么算法,以及如何实现等低级问题。实现等低级问题。4、模型化图形组态阶段:符合设计人员对基于模符合设计人员对基于模型图形化的描述。型图形化的描述。仿真软件的发展13常见的几种仿真软件lpspice、orcad:通用的电子电路仿真软件,适:通用的电子电路仿真软件,适合于元件级仿真。合于元件级仿真。lsystem view:系统级的电路动态仿真软件:系统级的电路动态仿真软
9、件lns2 opnet globesim:网络协议仿真软件网络协议仿真软件lmatlab:具有强大的数值计算能力,包含各种工:具有强大的数值计算能力,包含各种工具箱,其程序不能脱离具箱,其程序不能脱离matlab环境而运行,所以环境而运行,所以严格讲,严格讲,matlab不是一种计算机语言,而是一种不是一种计算机语言,而是一种高级的科学分析与计算软件。高级的科学分析与计算软件。lsimulink:是:是matlab附带的基于模型化图形组附带的基于模型化图形组态的动态仿真环境。态的动态仿真环境。14电子信息工程学院 信息与网络安全实验室ad hoc 网络安全协议仿真软件网络安全协议仿真软件 15
10、计算机学院虚拟现实技术与系统国家重点实验室 l支持异地分布式虚拟现实研究与开发的支撑环支持异地分布式虚拟现实研究与开发的支撑环境境dvenet、分布交互仿真开发与运行平台、分布交互仿真开发与运行平台bh hla/rti 16仿真技术的应用1、航空与航天工业、航空与航天工业2、电力工业、电力工业3、原子能工业、原子能工业4、石油、化工及冶金工业、石油、化工及冶金工业5、非工程领域、非工程领域l医学医学l社会学社会学l宏观经济与商业策略的研究宏观经济与商业策略的研究17应用仿真技术的意义1、经济,采用仿真实验仅需成本的、经济,采用仿真实验仅需成本的1/101/5,而且,而且设备可以重复使用。设备可
11、以重复使用。2、安全,采用仿真实验可以有效降低危险程度,对、安全,采用仿真实验可以有效降低危险程度,对系统的研究起到保障作用。系统的研究起到保障作用。3、快捷,提高设计效率:比如电路设计,服装设计、快捷,提高设计效率:比如电路设计,服装设计等等。等等。4、具有优化设计和预测的特殊功能、具有优化设计和预测的特殊功能18仿真技术的发展趋势1、硬件方面:基于多、硬件方面:基于多cpu并行处理技术的全数字仿真并行处理技术的全数字仿真将有效提高仿真系统的速度,大大增强数字仿真的实将有效提高仿真系统的速度,大大增强数字仿真的实时性。时性。2、应用软件方面:直接面向用户的数字仿真软件不断、应用软件方面:直接
12、面向用户的数字仿真软件不断推陈出新,各种专家系统与智能化技术将更深入地应推陈出新,各种专家系统与智能化技术将更深入地应用于仿真软件开发之中,使得在人机界面、结果输出、用于仿真软件开发之中,使得在人机界面、结果输出、综合评判等方面达到更理想的境界。综合评判等方面达到更理想的境界。3、分布式数字仿真:充分利用网络技术,协调合作,、分布式数字仿真:充分利用网络技术,协调合作,投资少,效果好。投资少,效果好。4、虚拟现实技术:综合了计算机图形技术、多媒体技、虚拟现实技术:综合了计算机图形技术、多媒体技术、传感器技术、显示技术以及仿真技术等多学科,术、传感器技术、显示技术以及仿真技术等多学科,使人置身于
13、真实环境之中。使人置身于真实环境之中。19第第1讲讲 matlab概述及运算基础概述及运算基础l尚涛,电子信息工程学院尚涛,电子信息工程学院ltel:010-8231722220本讲目标l了解matlab的基本知识l熟悉matlab的开发环境l掌握利用matlab进行基本运算的方法21主要内容l1.1 科学工程计算与科学工程计算与matlabl1.2 基本运算功能基本运算功能l1.3 基本数据类型基本数据类型l1.4 数学函数数学函数221.1 科学工程计算与matlabl科学研究和工程实践中的计算问题科学研究和工程实践中的计算问题l简单问题:计算器或直接手工推导l复杂问题:计算机编程l计算机
14、编程计算机编程l高级编程语言 lmicrosoft: visual c+、visual basiclborland: delphi、c+builderlsun: javal科学计算软件工具lmathworks: matlab23科研和工程技术人员的首选 matlablmatlab具有用法简单、灵具有用法简单、灵活、结构性强、延展性好等优活、结构性强、延展性好等优点,逐渐成为科技计算、视图点,逐渐成为科技计算、视图交互系统和程序中的首选语言交互系统和程序中的首选语言工具。工具。l功能强大的数值运算功能 l强大的图形处理能力 l高级但简单的程序环境l丰富的工具箱与模块集 l易于扩充 24matla
15、b是什么? matlab( matrix laboratory)是一种以矩)是一种以矩阵运算为基础的交互式程序语言,着重针对科阵运算为基础的交互式程序语言,着重针对科学计算、工程计算和绘图的需求。学计算、工程计算和绘图的需求。首创者首创者 cleve moler 教授曾在密西根大学、斯坦教授曾在密西根大学、斯坦福大学和新墨西哥大学任数学与计算机科学教福大学和新墨西哥大学任数学与计算机科学教授授,和和 john little 等人成立了等人成立了 the mathworks 公司。公司。该公司于该公司于1984年推出年推出matlab,1988年年3.0版,版,1992年年4.0版,版, 199
16、7年年5.0版,版, 2000年年6.0版,版, 2001年年6.5版,最新版本版,最新版本8.0(matlab2015)。)。matlab环境介绍环境介绍命令窗口命令窗口command window当前文件夹窗口当前文件夹窗口current folder工作空间工作空间workspace命令历史窗口命令历史窗口command history 命令窗口工作空间窗口 用户可以在提示符后输入各种matlab命令,并显示命令执行后的结果显示变量的名称、数值和类型,对matlab计算环境中从外部导入的数据和计算过程产生的数据变化进行可视化显示。当前文件夹窗口显示在当前工作目录下包含的所有文件命令历史窗
17、口记录了在命令窗口中执行的每个命令27matlab特色举例例例1 矩阵生成与运算矩阵生成与运算射雕英雄传射雕英雄传中的一个中的一个“数学问题数学问题”,该问题用半数学语该问题用半数学语言描述就是:如何生成一个言描述就是:如何生成一个 3x3 矩阵矩阵, 并将自然数并将自然数 1, 2, ., 9 分别置成这分别置成这 9 个矩阵元素,才能使得每一行、每个矩阵元素,才能使得每一行、每一列、且主、反对角线上元素相加都等于一个相同的数。一列、且主、反对角线上元素相加都等于一个相同的数。 魔方矩阵(即九宫算术) a=magic(3) 求矩阵的行列式和特征值求矩阵的行列式和特征值det(a) eig(a
18、) 思考:?求解数独的简单求解数独的简单c语言程序(适合仅有唯一解的数独)语言程序(适合仅有唯一解的数独)#include void print(int a99) /*格式化输出数独格式化输出数独*/ int i,j; for(i=0;i9;i+) for(j=0;j9;j+) printf(%d ,aij); printf(n); 28void ini_logo(int logo1099,int arr99) /*初始化标志数组*/ int i,j,k,p,r,s,t; for(i=0;i9;+i) for(j=0;j9;+j) if(arrij!=0) for(k=1;k=9;+k)log
19、okij=1; for(i=0;i9;+i) for(j=0;j9;+j) if(arrij!=0) p=arrij; for(r=0;r9;+r) logopir=1;logoprj=1; for(s=(i/3)*3;s(i/3)*3+3;+s) for(t=(j/3)*3;t(j/3)*3+3;+t) logopst=1; 29int add(int arr99,int logo1099,int m,int n,int k) /*arrmn插入数字,修改arr,logo数组*/ int i,s,p,t; arrmn=k; for(p=1;p=9;+p) logopmn=1; for(i=0
20、;i9;+i) logokmi=1; logokin=1; for(s=(m/3)*3;s(m/3)*3+3;+s) for(t=(n/3)*3;t(n/3)*3+3;+t) logokst=1; int check(int logo1099,int arr99) /*检测行列和小九宫格*/ int i,j,k,p,q,r,s,t,m,n,tag=0; /*tag标志本轮是否修改*/ for(k=1;k=9;+k) for(i=0;i9;+i) p=0;q=0; for(j=0;j9;+j) if(logokij=0)r=j;p+; /*检测行*/ if(logokji=0)s=j;q+; /
21、*检测列*/ if(p=1)tag=1;add(arr,logo,i,r,k); if(q=1)tag=1;add(arr,logo,s,i,k); /*满足一个添加的条件,修改arr,logo数组和标志tag*/ for(i=0;i9;i=i+3) /*检测小九宫格*/ for(j=0;j9;j=j+3) t=0; for(m=i;mi+3;+m) for(n=j;n x,y = meshgrid(-3:1/8:3); z =3*(1-x).2.*exp(-(x.2) - (y+1).2)- 10*(x/5 - x.3 - y.5). .*exp(-x.2-y.2)- 1/3*exp(-(x
22、+1).2 - y.2); surf(x,y,z), shading interp; colorbar 222222)1(31535)1(2)(10)1 (3yxyxxyxeeyxexz例例2 考虑一个二元函数,如何用三维图形的方式考虑一个二元函数,如何用三维图形的方式表现出这个曲面?表现出这个曲面?-4-2024-4-2024-10-50510-6-4-2024632matlab特色举例例例3 微分方程的数值解法。微分方程的数值解法。著名的著名的 lorenz 模型(蝴蝶效应)模型(蝴蝶效应)10203040-20-1001020-20-100102033求解该微分方程,绘制出时间曲线与相空
23、间曲线,如下所示。 t_final=100; x0=0;0;1e-10; t,x=ode45(lorenzeq,0,t_final,x0); plot(t,x), figure; plot3(x(:,1),x(:,2),x(:,3); axis(10 40 -20 20 -20 20);描述微分方程: function xdot = lorenzeq(t,x)xdot=-8/3*x(1)+x(2)*x(3); -10*x(2)+10*x(3); -x(1)*x(2)+28*x(2)-x(3);endmatlab特色举例由下面的语句生成一组数据由下面的语句生成一组数据 x x 和和 y y,用神
24、经网络进,用神经网络进行数据拟合行数据拟合 x=0:.1:10; y=0.12*exp(-0.213*x)+0.54*exp(-0.17*x).*sin(1.23*x);可知可知( (x,x, y y) )是曲线上的点。是曲线上的点。matlab特色举例35第一种解法:程序第一种解法:程序x=0:.1:10;x=0:.1:10;y=0.12y=0.12* *exp(-0.213exp(-0.213* *x)+0.54x)+0.54* *exp(-0.17exp(-0.17* *x).x).* *sin(1.23sin(1.23* *x);x);net=newff(0,10,5,1,tansig
25、,tansig);net=newff(0,10,5,1,tansig,tansig);net.trainparam.epochs=1000;net.trainparam.epochs=1000;net=train(net,x,y);net=train(net,x,y);x0=0:.1:10;x0=0:.1:10;figure(1)figure(1)y1=sim(net,x0);y1=sim(net,x0);plot(x,y,o, x0,y1,r)plot(x,y,o, x0,y1,r)0246810-0.4-0.6matlab特色举例 第二种解法:交互式界面第二种解法:交互
26、式界面nntoolnntool命令产生神经网络图形交互界面如下命令产生神经网络图形交互界面如下matlab特色举例010203040506070809010010-710-610-510-410-310-210-1100100 epochstraining-blueperformance is 1.53643e-007, goal is 038matlab知识点定位mamatltlabab基基础础基本运算数组和矩阵数值运算符号运算图形绘制程序设计gui设计建模应用m文件为基础注意区分图形和图像从数值到符号的引申工具箱391.2 基本运算功能lmatlab的基本运算可分为三类:的基本运算可分为三
27、类:l算术运算l关系运算l逻辑运算401.2.1 算术运算41使用变量来进行更复杂的问题求解 a=15+20-50+3*9a = 12b=30 b = 30 c=a*bc = 360 d=a3-b*cd = -907242逗号或分号的区别 x=2, y=3 %逗号隔开,屏幕有回显逗号隔开,屏幕有回显x = 2y = 3m=2; n=3;%分号隔开,无回显分号隔开,无回显m %在提示符后直接输入变量名可查看变量的值在提示符后直接输入变量名可查看变量的值m = 243基本算术运算符 运运 算算符符 号号运运 算算符符 号号加+减-乘*数组相乘.*左除数组左除.右除/数组右除./幂次方数组幂次方.4
28、4例1 求解算术表达式的值 (12+2*(7-4)/33 ans = 0.666733)47(21245format命令 matlabmatlab命令命令含含 义义范范 例例format short短格式3.1416format short e短格式科学格式3.1416e+000format long长格式3.14159265358979format long e长格式科学格式3.141592653589793e+000format rat有理格式355/113format hex十六进制格式400921fb54442d18format bank银行格式3.14461.2.2 关系运算运运 算
29、算符符 号号运运 算算符符 号号大于小于=小于等于 x=2; x3ans = 0 x z1=1+2iz1 = 1.0000 + 2.0000i z2=3+4jz2 = 3.0000 + 4.0000i511.3.2 字符串类型l字符串:包含在一对单引号中的字符集合字符串:包含在一对单引号中的字符集合 s=hello, matlab%定义字符串变量定义字符串变量ss =hello, matlab52matlab中的字符串运算功能非常丰富,特别是中的字符串运算功能非常丰富,特别是符号运算功能的加入,使得字符串函数功能得符号运算功能的加入,使得字符串函数功能得到了极大增强。到了极大增强。在在matl
30、ab中,所有字符串都用英文单引号标识,中,所有字符串都用英文单引号标识,字符串和字符数组是等价的字符串和字符数组是等价的,字符串中的每个,字符串中的每个字符字符(包括空格包括空格)都是字符数组的一个元素。都是字符数组的一个元素。53字符串与数值数组的相互转换详情请参阅帮助(help)函数名函数名可实现的功能可实现的功能函数名函数名可实现的功能可实现的功能num2str数字转换为字符数字转换为字符串串str2num字符串转换为数字字符串转换为数字int2str整数转换为字符整数转换为字符串串sprintf将格式数据写为字将格式数据写为字符串符串mat2str矩阵转换为字符矩阵转换为字符串串ssc
31、anf在格式控制下读字在格式控制下读字符串符串54字符串的操作与执行详情请参阅帮助(help)函数名函数名可实现的功能可实现的功能函数名函数名可实现的功能可实现的功能strcat串连接串连接strrep串替换串替换strvcat串垂直连接串垂直连接strtok找串记号找串记号strcmp串比较串比较upper转换串为大写转换串为大写strncmp串比较串比较(前前n个字符个字符)lower转换串为小写转换串为小写findstr串中查找字串串中查找字串blanks生成空串生成空串strjust微调字符串微调字符串deblank去除串空格去除串空格55串检验与进制转换函数详情请参阅帮助(help)
32、函数名函数名可实现的功能可实现的功能函数名函数名可实现的功能可实现的功能ischar字符串检验字符串检验isletter字母检验字母检验iscellstr串单元阵检验串单元阵检验isspace空格检验空格检验hex2dec1610转换转换dec2bin102转换转换hex2num16双精转换双精转换base2decn10转换转换dec2hex1016转换转换dec2base10n转换转换bin2dec210转换转换strings字串帮助字串帮助563.单元型变量 单元型变量是单元型变量是matlab中较为特殊的一种数据中较为特殊的一种数据类型,本质上也是一种数组,但这种数组和传类型,本质上也是
33、一种数组,但这种数组和传统数组的区别是:传统数组中所有元素只能是统数组的区别是:传统数组中所有元素只能是同一种数据类型,而单元型数组可以同一种数据类型,而单元型数组可以把不同的把不同的数据类型组合在一起数据类型组合在一起,从而形成一种比较复杂,从而形成一种比较复杂的数组。的数组。57(1) 单元型变量的定义单元型变量的定义(a)直接赋值法:单元型变量使用直接赋值法:单元型变量使用大括号大括号标识,元素之间标识,元素之间用逗号分隔。也可以直接对单元型变量的元素直接赋用逗号分隔。也可以直接对单元型变量的元素直接赋值单元型变量的下标用值单元型变量的下标用大括号索引大括号索引。如如a(1,1)=mat
34、lab, a1,1=matlab 。(a)由由cell函数预先分配存储空间,然后逐个元素进行赋函数预先分配存储空间,然后逐个元素进行赋值。例如:值。例如:bcell(2,3),可在内存空间中建立一个单,可在内存空间中建立一个单元型空变量元型空变量b,然后可逐个对其每个元素赋值。,然后可逐个对其每个元素赋值。58值得注意的是:单元型变量的存储并不是以指针的方式来存储的,因此改变元素的值是不会影响到原来所引用的变量值的。单元型变量还可以嵌套,即单元型变量的元素也可以是单元型变量。(2) 单元型变量的相关函数单元型变量的相关函数函数名函数名说明说明函数名函数名说明说明cell生成单元型变量生成单元型
35、变量deal输入输出处理输入输出处理cellfun单元型变量元素的作用单元型变量元素的作用cell2struct单元型量单元型量结构型量结构型量celldisp显示单元型变量内容显示单元型变量内容struct2cell结构型量结构型量单元型量单元型量cellplot图形显示单元型变量图形显示单元型变量iscell判断是否为单元型变量判断是否为单元型变量num2cell数值数值单元型变量单元型变量reshape改变数组结构改变数组结构594.结构型变量 结构型变量是另外一种可以将不同的数据类结构型变量是另外一种可以将不同的数据类型组合在一起的特殊数据类型。与单元型数据型组合在一起的特殊数据类型。
36、与单元型数据类型相同它也不是以指针方式传递数据的。不类型相同它也不是以指针方式传递数据的。不同的是其作用相当于数据库中的记录,可存储同的是其作用相当于数据库中的记录,可存储一系列相关数据。同一个数据字段(一系列相关数据。同一个数据字段(field)必)必须具有相同的数据类型,而单元型数据每个元须具有相同的数据类型,而单元型数据每个元素彼此可以不同。素彼此可以不同。60(1) 结构型变量的定义结构型变量的定义(a)直接赋值法:结构型变量的使用必须指出结构的属直接赋值法:结构型变量的使用必须指出结构的属性名,并以操作符性名,并以操作符“.”来连接结构变量名与属性名。来连接结构变量名与属性名。对该属
37、性直接赋值,对该属性直接赋值,matlab 会自动生成该结构变会自动生成该结构变量。如量。如a.b1,b(2,3).a3等。结构型数组的不同元素等。结构型数组的不同元素类型可不同。类型可不同。(b)由由struct函数预先分配存储空间方法是:函数预先分配存储空间方法是: 结构型变量结构型变量struct(元素名元素名1,元素值,元素值1,元素名,元素名2,元素值,元素值2,) 例如:例如:c=struct(c1,1,c2,b,c3,abcd)61值得注意的是:结构型变量的存储也不是以指针方式存储的。因此改变元素的值就不会影响到所引用变量的值。结构型变量也可以嵌套使用,即结构型变量的元素也可以是
38、结构型变量。(2) 结构型变量的相关函数结构型变量的相关函数函数名函数名说明说明函数名函数名说明说明struct创建或改变结构型变量创建或改变结构型变量rmfield删除结构型变量属性删除结构型变量属性fieldnames取得结构型变量属性名取得结构型变量属性名isfield判断结构型变量属性判断结构型变量属性getfield取得结构型变量属性值取得结构型变量属性值isstruct判断结构型变量判断结构型变量setfield设置结构型变量属性值设置结构型变量属性值621.3.3 变量和表达式l变量的命名方式:变量的命名方式: l变量名由字母、数字和下划线组成;l变量名中的英文字母大小写是有区别
39、的; l变量名的最大长度是有规定的l不同版本的系统规定不同:19个字符、31或63个字符等l可调用namelengthmax函数得到系统规定长度63matlab系统的特殊变量和常数特殊变量特殊变量意意 义义 ans如果用户未定义变量名,系统用于计算结果存储的默认变量名 pi圆周率(= 3.1415926.) inf或inf无穷大值,如1/0 eps浮点运算的相对精度2(-52)realmax最大的正浮点数,2(1024)-1realmin最小的正浮点数,2(-1022)nan或nan不定量,如0/0或inf/inf i或j虚数单位nargin函数输入参数个数nargout函数输出参数个数las
40、terr存放最新的错误信息lastwarn存放最新的警告信息64变量的使用clear%删除工作区中所有定义过的变量whos%查看当前工作区内变量信息,无显示表示没有定义的变量 xy=1; yx=2; %对变量赋值 xy%查看变量xy的当前数值xy = 1 whos name size bytes class xy 1x1 8 double array yx 1x1 8 double arraygrand total is 2 elements using 16 bytes clear xy yx%删除变量xy及yx whos xy%这时变量xy已经不存在了? undefined functio
41、n or variable xy.651.4 数学函数类型类型函函 数数含含 义义三角函数sin(x)正弦值asin(x)反正弦值cos(x)余弦值acos(x)反余弦值tan(x)正切指数函数exp(x)指数运算log(x)自然对数sqrt(x)求平方根复数函数abs(x)求绝对值imag(x)取出复数的虚部real(x)取出复数的实部conj(x)复数共轭数论函数round(x)四舍五入mod(x,y)求余数lcm(x,y)整数x和y的最小公倍数gcd(x,y)整数x和y的最大公约数66使用函数须注意以下几点l函数一定要出现在等式的右边函数一定要出现在等式的右边l函数对其自变量的个数和格式都有一定的要求函数对其自变量的个数和格式都有一定的要求l函数允许嵌套函数允许嵌套 67例 计算下式的结果,其中a=5.67, b=7.811a=5.67; b=7.811;exp(a+b)/log10(a+b)ans = 6.3351e+005baeba10)(log68扩展阅读lmatlab背景背景lmatlab历史lmatlab组成lmatlab特点lmatlab应用开发环境应用开发环境上机指导lmatlab的安装和使用的安装和使用 l安装matlab系统l使用matlab系统lmatlab帮助功能帮助功能一一 “纯文本纯文本”帮助
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北师大版一年级下册数学第五单元 加与减(二) 测试卷及参考答案(黄金题型)
- 煤炭开采引发地质灾害调查报告(6篇)
- 关于大学生暑假实习心得
- 湖南省常德市2023-2024学年五年级上学期语文期末试卷(含答案)
- 解除租房合同需要哪些条件
- 诚信代理服务合同机构
- 诚恳道歉自白书
- 语文大专班试题
- 语文要素教学的策略与实践
- 购房合同中的交房时间
- 《出口退税培训》课件
- pcba外贸合同范例
- 2024年成都港汇人力资源管理限公司面向社会公开招聘国企业工作人员管理单位遴选500模拟题附带答案详解
- 家政保洁搬家合同范例
- 2024-2030年中国游梁式抽油机行业供需趋势及投资战略研究报告
- 山东省临沂市2024届高三第二次模拟考试语文试题(解析版)
- 2024国家开放大学电大专科《学前儿童健康教育》期末试题及答案
- 医疗器械产品推广策划书
- 信息安全测试员(高级)职业技能鉴定备考试题库-上(单选题)
- 2024年中国光固化树脂市场调查研究报告
- 缤纷舞曲-《青年友谊圆舞曲》教学课件-2024-2025学年人音版(简谱)(2024)七年级音乐上册
评论
0/150
提交评论