MATLAB期末考试复习总结
- 格式:doc
- 大小:358.50 KB
- 文档页数:5
MATLAB复习知识点MATLAB,即Matrix Laboratory的缩写,是一种高级的计算和开发语言。
它是由MathWorks公司开发的一种专为数值计算和科学计算设计的工具。
在工程和科学领域中,MATLAB广泛应用于算法开发、数据可视化、数据分析和数值计算等方面。
在复习MATLAB的知识点时,我们可以从以下几个方面展开讨论:1.MATLAB的基础知识:-MATLAB的基本语法:包括变量的定义、赋值和操作符的使用等。
-MATLAB的数据类型:包括数值型、字符型和逻辑型数据等。
-MATLAB的常用函数:包括数学函数、统计函数和字符串处理函数等。
-MATLAB的控制流语句:包括条件语句、循环语句和函数的使用等。
2.MATLAB的矩阵和向量操作:-矩阵和向量的定义和使用:包括矩阵和向量的表示、创建和访问等。
-矩阵和向量的运算:包括矩阵和向量的加法、减法、乘法和除法等。
-矩阵和向量的转置和逆矩阵:包括矩阵和向量的转置和逆矩阵的计算等。
-矩阵和向量的索引和切片:包括对矩阵和向量的元素进行索引或切片操作等。
3.MATLAB的图形操作:-绘图函数的使用:包括绘制二维和三维图形的函数等。
-图形属性设置:包括修改图形的颜色、线型和坐标轴等属性设置等。
-图形的保存和导出:包括将图形保存为图片或其他格式的文件等。
4.MATLAB的数据处理和分析:-数据导入和导出:包括从文件导入数据和将数据保存到文件等操作。
-数据处理和变换:包括数据排序、筛选、去重和去空值等操作。
-数据统计和分析:包括计算数据的均值、标准差、相关系数和回归等统计分析操作。
5.MATLAB的函数和脚本文件编写:-函数的定义和调用:包括编写自定义函数和调用已有函数等操作。
-脚本文件的编写和调试:包括编写和执行MATLAB脚本文件等操作。
-变量的作用域和数据传递:包括全局变量和局部变量的作用域和数据传递等。
以上只是MATLAB复习的一些基本知识点,实际上,MATLAB还有很多高级功能和工具,如符号计算、图像处理、信号处理和控制系统等。
matlab期末复习题及答案1. MATLAB基础操作在MATLAB中,如何创建一个名为"myMatrix"的3x3矩阵,其元素分别为1, 2, 3, 4, 5, 6, 7, 8, 9?答案:在MATLAB中,可以通过直接输入矩阵元素来创建矩阵。
例如,要创建一个名为"myMatrix"的3x3矩阵,可以使用以下命令:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```这样,MATLAB就会创建一个3x3的矩阵,其元素按照行顺序排列。
2. 矩阵运算给定两个矩阵A和B,其中A = [1 2; 3 4],B = [5 6; 7 8],计算矩阵A和B的和。
答案:在MATLAB中,可以使用加号(+)来计算两个矩阵的和。
对于给定的矩阵A和B,可以使用以下命令来计算它们的和:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A + B;```执行上述命令后,矩阵C的结果将是:```C = [6 8;10 12];```3. 条件语句编写一个MATLAB脚本,判断一个给定的数n是否为质数,并输出相应的信息。
答案:在MATLAB中,可以使用if-else语句来判断一个数是否为质数。
以下是一个简单的脚本示例:```matlabn = input('请输入一个数:');if mod(n, 2) == 0 && n > 2disp('该数不是质数');elseif n == 1disp('1不是质数');elseisPrime = true;for i = 2:sqrt(n)if mod(n, i) == 0isPrime = false;break;endendif isPrimedisp('该数是质数');elsedisp('该数不是质数');endend```该脚本首先接收用户输入的数n,然后通过一个for循环检查n是否有除了1和它自身以外的因数,从而判断n是否为质数。
matlab期末考试复习资料如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出的窗口重新集成在桌面?MATLAB 操作桌面有几个窗口?答:MATLAB的默认操作桌面包括命令窗口(Command Window)、启动平台窗口(Launch Dad)、工作空间窗口(Workspace)、命令历史窗口(Command History)和当前路径窗口(Current Directory)等5个窗口。
每个窗口的右上角都有按钮,可以使该窗口脱离操作桌面独立出来;2、 who和whos命令有什么不同之处?答:查看工作空间中有哪些变量名,可以使用who命令完成;若想了解这些变量具体细节,可以使用whos命令查看。
3、分别使用help命令和lookfor命令查找plot函数的帮助信息。
答:>> help plot>> lookfor plot4、一些命令在matlab中的应用1.clf 清除图对象clear清除工作空间内的所有变量clc 清除当前屏幕上显示的所有内容,但不清除工作空间中的数据2.ceil 沿+∞方向取整factor符号计算的因式分解3.box on 打开框状坐标轴开grid off网格关一些4.logspace 对数分度向量cat 串接成高维数组5.sym2poly 符号多项式转变为双精度多项式系数向量poly2sym 双精度多项式系数转变为向量符号多项式6.plot3 三维线图poly2str 以习惯方式显示多项式7.bar 二维直方图pie 二维饼图8.zoom on打开图形缩放模式 edit M文件编辑9.whos 对当前工作空间变量的信息进行列表figure 生成图形窗口10.cart2sph 直角坐标变为球坐标pol2cart 极或柱坐标变为直角坐标11.diff数值差分、符号微分dsolve 符号计算解微分方程12.ezplot3画三维曲线的简捷指令fix向零取整factor 符号计算的因式分解5. 在MATLAB中有几种获得帮助的途径?答:(1)help 命令:在命令窗口输入help命令,也是MATLAB 寻找在线帮助的一种方便而快捷的方式。
matlab考试总结重点第一章1.MATLAB的典型应用:通用的数值计算、算法设计、自动控制技术、数字信号处理、统计信号处理、电力系统仿真。
2.MATLAB的显著优点:程序非常简洁。
3.MATLAB的主要特色:(1)面向对象特性:图形、窗口等都是对象,可以通过属性改变它们(2)只存在单一的数据结构:矩阵(3)矩阵的大小可以是任意大,只与内存有关且可以自动改变大小。
(4)变量不用定义(5)功能强大的图形处理与数值计算功能(6)系统扩充方便:允许用户自行建立完成指定功能的M文件,可以随时向系统增加函数,从而可以构成适合于某一领域的工具箱(7)先进的帮助系统(8)与WORD有机结合,WORD里可直接使用MATLAB功能。
(9)与C++等语言的接口(10)MATLAB 简单易学(11)不仅提供了编程环境,又提供了设计语言与C语言有很多共性,编程简单。
4.MATLAB的主要功能:(1)数据运算功能,提供了大量的数学函数更接近于数学表示(2)图形操作功能:提供了大量的图形函数使数据可视化。
提供了图形用户界面(3)符号运算功能:其操作对象和运算结果都是数学符号的表达式可用来推导公式。
5.MATLAB文件类型及功能:1.M文件:分为脚本M文件和函数M文件,脚本M,文件创建的变量都是MATLAB工作空间中的变量,工作空间的其他程序和函数可以共享。
函数M,文件可以传递参数,所以函数M文件的调用式中可以有输入参数和输出参数。
2.MAT文件:用于保存MATLAB系统所使用的数据。
3.MEX文件:可以被直接调入MATLAB中直接运行。
执行速度快还可以把较大的M文件编译成MEX 文件4.图形文件:用来存储由MATLAB得到的图形文件并不能被其他的图形编辑器编辑。
5.模型文件:用来存储建立的模型。
6.两种M文件的异同共性:在MATLAB命令窗口中键入文件名,可以执行M文件中的规定的计算任务或某种功能。
区别一:程序M文件中创建的变量都是MATLAB工作空间中的变量,工作空间的其他程序或函数可以共享;而函数M文件中创建的所有变量除了全程变量外,均为局限于函数运行空间内的局部变量;——类似于主程序区别二:函数M文件可以使用传递参数,所以函数M文件的调用式中可以有输入参数和输出参数,而程序M文件则没有这种功能。
Matlab知识点总结(精选5篇)第一篇:Matlab知识点总结符号积分变换傅里叶变换及其反变换1.傅里叶变换f=f(x) F=F(w)syms x w u v f=sin(x)*exp(-x^2);F1=fourier(f)F1 = transform::fourier(sin(x)/exp(x^2), x,-w)>> f=x;F2=fourier(f)F2 = pi*dirac(w, 1)*2*i >> h=x*exp(-abs(x));F3=fourier(h)F3 =-(w*4*i)/(w^2 + 1)^2 >> h=x*exp(-abs(x));F3=fourier(h,u)F3 =-(u*4*i)/(u^2 + 1)^22.傅里叶反变换syms w v x t g=exp(-abs(x));IF2=ifourier(g)IF2 = 1/(pi*(t^2 + 1))拉普拉斯变换及其反变换 1.拉普拉斯变换syms x s t vf1=sqrt(t);L1=laplace(f1)L1 =pi^(1/2)/(2*s^(3/2))2.拉普拉斯反变换syms a s t u v xf=exp(x/s^2);IL1=ilaplace(f)IL1 =ilaplace(exp(x/s^2), s, t)Z变换及其反变换方程的解析解线性方程组的解析解包括求解线性方程组和非线性方程组的函数solve(),也有求解常微分方程组的函数dsolve()L1='x+y+z=10';L2='3*x+2*y+z=14';L3='2*x+3*y-z=1';%L1、L2、L3分别是三个字符串 g=solve(L1,L2,L3)g =x: [1x1 sym]y: [1x1 sym]z: [1x1 sym]%表明g是一个结构数组,其中每个元素为一>> g.x%符号类型的量,用如下方法查看方程解的具体值ans =1 一般求解方法:L1='x+y+z=10';L2='3*x+2*y+z=14';L3='2*x+3*y-z=1';[x y z]=solve(L1,L2,L3)x =1 y =2 z =7 线性方程组的解析解>> f=sym('a*x^2+b*x+c=0');xf=solve(f)xf =-(b +(b^2(b^24*u*w)^(1/2))/(2*u)(v^2 + 4*u*w*vw z =-(v + 2*u*w +(v^2 + 4*u*w*v(v^2 + 4*u*w*v(a*x^2)/2 >> y=dsolve('D2y+2*x=2*y','x')y = x + C4*exp(2^(1/2)*x)+ C5/exp(2^(1/2)*x)>>y=dsolve('D2y+2*x=2*y','y(2)=5','Dy(1)=2','x')y =x +(exp(2^(1/2)*x)*(6*exp(2^(1/2))+2^(1/2)))/(2*exp(2^(1/2))*(exp(2*2^(1/2))+1))3*2^(1/2)))/(2*exp(2^(1/2)*x)*(exp(2*2^(1/2))+ 1))MATLAB程序设计全局变量 global A B C变量名区分大小写脚本文件是m文件中最简单的一种输入顿号输出参数,用命令语句可以控制MATLAB命令工作空间的所有数据。
Matlab课程复习总结第一章1冒号表达式t=a:b:c a:初始值b:步长c:终止值步长即公差步长为1时可以省略类似表述:linspace(a:b:n)a:初始值b:终止值c:元素总数2拆分序号(ind)下标(sub)【记忆方法:sub为下的意思】序号的编排:第一列——第二列……相互转换关系:sub2ind ind2sub【2联想为’ to ’】Length(A):给出行数和列数中的较大者,如行向量给出总列数ndims(A):给出A的维数try...reshape(A,m,n)总元素和存储结构保持不变的前提下,将A重新排列成m*n的矩阵【记忆:re-重置shape-形状】在对矩阵进行命令时冒号“:”表示“到”,逗号或空格表示“和”X=[]即删除某指定的行或列3 算术运算矩阵相加减维数必须相等,但是,标量可以和不同维数矩阵加减矩阵乘法第一个矩阵的列数等于第二个矩阵的行数,交换律不成立【这…太…常…识…了…】矩阵除法:/ and \ 【判断谁除谁的方法看谁压谁,被压的是分母,压的是分子】A/B=A*inv (B)A\B=inv(A)*B 这里需要考虑分母不为零即分母是非奇异方阵的问题。
注意:对于含有标量的运算,两种除法运算的结果相同,如3/4=3\4。
矩阵的乘方前提:方阵A^x x为正整数:A自乘x次x=0:得到与A维数相同的单位矩阵x<0且A可逆,A^x=inv(A)^(-x)点运算【易错点】共有四种./ .* ./ .^ 两矩阵的点运算指对应元素进行运算【即数组的运算】前提:位数相等对于点指数运算,指数和底数可以任意为标量或未知量【既x.^y,x.^2,2.^x,2.^[x,(;)y]均OK~,其中x,y为矩阵】(小小的提醒一下:在Matlab中,只要看到“[]”就是和矩阵有关的)常用数学函数表P25.补充:abs实数绝对值复数的模字符串的ASCⅡfix向零方向取整floor不大于自变量的最大整数高斯ceil不小于自变量的最小整数round四舍五入到最邻近的整数rem和mod的区别。
MATLAB学习总结总结我在学习MATLAB期间,经历了各种挑战和收获。
在此我将对我学习MATLAB的经历进行总结。
首先,MATLAB是一种功能强大的编程语言和数值计算环境。
它为我提供了许多有用的工具和功能,以解决各种数学、工程和科学问题。
通过MATLAB,我能够进行矩阵计算、数据可视化、模拟和建模等各种操作。
其次,我在学习MATLAB的过程中获得了编程技能的提高。
通过编写MATLAB代码,解决各种问题,我学会了如何使用不同的语法和功能来实现特定的任务。
我也经常通过参考MATLAB的文档和查找资料来提高我的编程技能和解决问题的能力。
此外,MATLAB还提供了许多工具箱和应用程序接口(API),可以扩展其功能。
通过使用这些工具箱,我能够进行信号处理、图像处理、机器学习等复杂任务。
这使得我可以更深入地研究和应用MATLAB在不同领域的应用。
在学习MATLAB的过程中,遇到了一些困难和挑战。
一开始,我对MATLAB的语法和功能不够熟悉,常常遇到错误和困惑。
然而,通过不断练习和学习,我逐渐掌握了MATLAB的基本知识和技能。
此外,MATLAB的大部分功能都需要一定的数学和编程知识,这对于我来说是一个挑战。
但是,通过借助MATLAB的文档和学习资源,我成功地克服了这些困难。
在学习MATLAB的过程中,我还发现了一些学习技巧和策略。
首先,我发现反复练习和实践对于学习MATLAB非常重要。
通过不断编写代码,解决问题,我能够更好地理解和应用MATLAB的知识和技能。
其次,我经常与其他学习MATLAB的同学和朋友交流和讨论,分享经验和解决问题。
这不仅有助于加深我的理解,还能够加强我的学习动力和兴趣。
总而言之,学习MATLAB是一段充满挑战和收获的旅程。
在学习MATLAB的过程中,我不仅提高了我的编程技能和解决问题的能力,还为我未来的学习和职业发展打下了坚实的基础。
我相信,通过不断学习和实践,我将能够在MATLAB中取得更高的成就,并将其应用于更广泛的领域。
matlab的期末课堂总结本学期的Matlab课程即将结束了,回顾这个学期的学习,我觉得这门课程对我来说是非常有价值的。
通过这门课程的学习,我不仅学到了Matlab编程的基础知识和技巧,还学会了如何运用Matlab来解决实际问题。
在这篇总结中,我将对本学期的学习内容进行回顾和总结。
一、课程内容回顾在本学期的Matlab课程中,我们首先学习了Matlab的基本操作,包括变量的定义和赋值、数组的创建和操作、控制语句和函数的使用等。
这些基本操作对我来说非常重要,它们是我后续学习Matlab的基础。
接下来,我们学习了Matlab的数学计算和数据处理功能。
我们学会了如何使用Matlab进行矩阵运算、符号计算、数值计算和数据拟合等。
这些知识对于我在其他学科中的应用非常有帮助,尤其是在工程和科学领域中。
在本学期的课程中,我们还学习了Matlab的图形绘制功能。
我们学会了如何使用Matlab来创建二维和三维图形,以及如何对图形进行美化和定制。
通过这些学习,我不仅提高了自己的数据可视化能力,还学会了如何利用图形来展示复杂数据之间的关系。
此外,我们还学习了Matlab在信号处理和图像处理领域的应用。
我们学会了如何使用Matlab来读取和处理音频信号和图像,以及如何进行滤波、傅里叶变换和图像增强等操作。
这些内容非常有趣,让我对信号处理和图像处理这两个领域产生了浓厚的兴趣。
二、课程收获总结通过本学期的学习,我收获了很多。
首先,我提高了自己的计算机编程能力。
在课堂上,我们经常进行编程实践,这让我掌握了Matlab的编程技巧,并且学会了如何利用编程解决实际问题。
其次,我提高了自己的问题解决能力。
在学习Matlab的过程中,我们经常遇到各种问题和困难,但是通过努力和不断的尝试,我们总能找到问题的解决方法。
这让我学会了如何从多个角度思考问题,并且拥有了解决问题的耐心和毅力。
最后,我也了解了Matlab在科学计算、工程应用和数据处理方面的重要性。
MATLAB考试要点整理1.查询语法基本函数友情提醒:help第9页2.MATLAB中显示维数(19页),类型的基本函数3.掌握分号不显示运行结果,还有什么符号表示注释行4.掌握M文件调用方法(2种)5.掌握If语句的使用6.掌握MATLAB中提取矩阵对角元素的函数的语句7.掌握求矩阵上三角的函数8.已知多项式的系数矢量,求根的命令9.已知根,建立多项式的指令10.在同一坐标中画出2个函数(一些样式的设置,详见第三章)11.添加网格线的命令12.掌握计算秩的函数13.工作变量如何保存到文件,用什么命令将某文件读取到MATLAB工作空间中14.计算矩阵的大小(size,length)到时候给2个矩阵填写执行结果15.掌握求矩阵的标号与序号的转换命令16.掌握在【a,b】产生一个随机的矩阵m*n,产生特定均值,特定方差使用命令17.掌握Z=xy,求2阶偏导18.保证总元素不变的情况下,重新按几行几列排列的命令19.MATLAB变量定义规则20.掌握求矩阵的特征值和特征向量21.掌握清空命令指令22.掌握MATLAB中取整函数(简单求结果)23.掌握MATLAB符号运算(积分,极限)24.排序函数如何将原本列优先改为按行排列降序改为升序,如何写程序24.掌握算术平均值和中值25.掌握diff函数26.求解非线性方程(内联和匿名)27.多项式拟合(画图的时候是有一些样式要求,还有xlabel,ylabel 之类的)重点掌握28.求解常微分方程(符号法和数值法)重点掌握29.掌握预定义变量(12页)ans,eps,pi,i,j,inf,nan(就左边一列的)考试题型:1填空2选择3.程序阅读4.编程考试形式:笔试时间:第12周周1(2013-05-13)第8,9节友情提醒:试卷不会很难,但是建立在你之前将书上基本知识都搞懂的基础上,一般来说题目都很基础,建议最好将书好好梳理一下,然后在对照考点看看。
祝大家考试顺利!!!。
matlab期末总结体会在本学期的Matlab课程中,我学习了许多有关Matlab编程语言以及其应用的知识。
通过课堂教学和实践项目,我对Matlab的各种功能和应用有了更深入的了解。
下面是我对本学期学习Matlab的体会和总结。
首先,我认为Matlab是一种非常强大的编程语言和工具。
它提供了许多内置的函数和工具箱,可以帮助我们进行各种数学和工程计算。
无论是处理数据、实现算法还是进行模拟和可视化,Matlab都能够提供相应的功能和工具。
通过Matlab,我学会了如何使用矩阵和向量进行计算,如何绘制图形和曲线,并且还学到了如何编写自定义函数和脚本来解决问题。
其次,我发现Matlab对于数据处理和分析非常方便。
在本学期的实践项目中,我学习了如何使用Matlab来处理大量的数据,并进行统计和分析。
通过使用Matlab的数据导入和处理函数,我能够轻松地将数据从外部文件导入,并对其进行清理和格式化。
然后,我可以使用Matlab的各种统计函数来计算数据的均值、方差和相关性等统计量。
最后,我还学会了如何使用Matlab的绘图函数来可视化数据,并根据需要调整图表的样式和格式。
另外,我发现Matlab在信号处理和图像处理方面也非常出色。
在课堂教学中,我学习了一些常见的信号处理技术,例如滤波、频谱分析和数字滤波器设计等。
通过Matlab,我可以轻松地应用这些技术,并对信号进行处理和分析。
此外,Matlab还提供了各种图像处理函数,使我能够对图像进行滤波、增强和分割等操作。
这些功能对于我来说非常有用,因为我经常需要在我的研究工作中处理信号和图像数据。
最后,我认为Matlab还是一个非常有用的工具,可以帮助我们更好地理解和应用数学和工程理论。
通过编写Matlab代码,我可以将抽象的数学和工程概念转化为具体的计算和结果。
这使得我能够更好地理解课堂上学到的理论,并将其应用于实际问题的解决。
此外,通过使用Matlab,我还能够更深入地了解某些复杂的算法和模型,并对其进行实验和验证。
MATLAB复习知识点MATLAB是一种高级编程语言和环境,广泛应用于科学和工程领域。
它具有强大的数值计算和数据分析功能,在各种领域如控制系统设计、图像处理、信号处理、机器学习等都有广泛的应用。
下面是一些MATLAB的重要知识点,对于复习和巩固MATLAB的使用都是非常重要的。
一、MATLAB基本语法:1.变量和常量:变量用于存储数据,常量是不变的值。
2.运算符:包括数学运算符、逻辑运算符和关系运算符等。
3.控制结构:如条件语句、循环语句和函数等。
4. 数据类型:包括数值类型(int,double)、逻辑类型(logical)、字符类型(char)等。
5.数组:一维数组、二维数组等,可以进行向量化运算。
6.字符串操作:字符串的拼接、查找、替换等。
二、MATLAB函数与脚本:1.函数:定义函数、调用函数、函数传参等。
2.脚本:编写MATLAB脚本程序,批量执行一系列的命令。
三、MATLAB图形绘制:1.二维绘图:绘制线性图、散点图、柱状图等。
2.三维绘图:绘制三维曲线、曲面、散点图等。
四、MATLAB数据处理与分析:1.数据导入与导出:导入外部数据文件、保存变量至文件。
2.数据清洗:缺失值处理、异常值处理等。
3.数据统计:均值、标准差、方差、离散系数等。
4.数据可视化:绘制直方图、散点图、盒图等。
五、MATLAB算法和编程:1.数值计算方法:迭代法、插值法、数值积分等。
2.信号处理:滤波、谱分析、频谱绘制等。
3.控制系统设计:传递函数模型建立、系统响应分析等。
4.图像处理:灰度图像处理、二值化处理、滤波、边缘检测等。
5.机器学习:分类、回归、聚类、神经网络等。
六、MATLAB编程技巧:1.向量化运算:使用矩阵运算代替循环,提高计算效率。
2.调试技巧:断点调试、输出调试信息等。
3.优化技巧:算法优化、代码优化等,提高程序执行效率。
4.常见问题解决:MATLAB常见错误、报错信息解读和解决方法。
七、MATLAB常用工具箱:以上是MATLAB的一些重要知识点,对于复习和巩固MATLAB的使用都是非常重要的。
总结一、小知识点MATLAB全称Matrix laboratory变量 who:变量 whos:数据类型矩阵的生成和提取、取代、运算+ - * / ’点运算、点幂运算向量的生成b=1:2:10 c=1:5% ...特殊数字的表示(p21)inf eps piM文件的两种类型:脚本文件和函数文件(区别)(p16)生成、区别、调用M脚本文件与M函数文件的区别:M脚本文件:(1)执行方式:按文件所写的指令执行,存放于M文件中,这种文件的构成比较简单;(2)调用:执行方式简单,键入文件名即可;(3)变量存储方式:脚本文件运行后,所产生的变量贮存在MATLAB基本工作空间。
(base workspace)。
M函数文件:(1)执行方式:function[]=函数名()与脚本文件不同,函数文件犹如一个“黑箱”,从外界只看到传给它的输入量和传送出去的计算结果,而内部动作是看不见的。
(2)调用:c=mfun(a,b)。
(3)变量存储方式:MATLAB专门开辟一个临时工作空间(context workspace),存放所有中间变量,执行完文件指令,中间变量被清除。
[例1-3] 在雨水管道中(满管流),已知流量和管径,求水力坡度。
Q=v*A v=1/n*R^(2/3)*I^(1/2)脚本文件clear;clcn=0.013;D=0.5;Q=0.05;A=pi/4*D^2;v= Q/ A;R=D/4;i=(v*n/R^(2/3))^2;函数文件function i=getslope(Q,D)n=0.013;A=pi/4*D^2;v= Q/ A;R=D/4;i=(v*n/R^(2/3))^2;系统搜索文件的过程(p15)二、函数(命令)clear(p14) clc(p20) fprintf(p32) sum(50)max min mean(p77) ones zeros eyes(p78) find(p110) roundlinspace(p48) logspace length(p49)三、常用数学方法应用的函数插值 interp1(x,y,’method’)(例2-1)( P19)拟合:多项式拟合 p=polyfit(x,y,n) polyval(例2-2 3-2)最小二乘拟合k=lsqcurvefit(@fun,k0,x,y,[],[],opt,P) (例2-3 2-4,习题1-1 1-3)匿名函数形式(p43)非线性方程求解 x=fsolve(@fun,x0) (例2-5 2-6 3-4 3-5 3-12__3-18)创建函数的形式、参数的传递 global常微分方程数值解 [t,y]=ode45(@fun,tspan,y0,options,P)(p58)方差分析(p67)anova1(x) anova2(x,reps)左除ax=b;x=a\b解析解 dsolve(51) vpa(p55小数点形式表达)eval(‘string’)(p57)solve(3-3)四、绘图命令1、plot(x1,y1,x2,y2) (p22)xlabel ylabel title legend textgrid on box on axis hold onsubplotset(H,’属性名’,’属性值’)gca gcf xscale xtick xlim xticklabel2、boxplot(x,notch)(p66)3、stem pie bar (p84)4、contour(x,y,z,n) clabel colorbar meshgrid griddata(p116 c3_16)5、semilogy plotyy五、管网平差(解环、解节点思路、难点认识)xlsread xlswrite。
》》 A=1:9;B=10-A;L1=A==BL2=A>3&A<7L4=find(A>3&A<7)L1 =0 0 0 0 1 0 0 0 0 L2 =0 0 0 1 1 1 0 0 0 L4 =4 5 6》》x=linspace(0,4,3);y=0.5*x;stem(x,y);axis([0 5 -1 3]);title('A');text(2,1.2,'y=0.5*x')》》x=sym('x');y=x+1;int(x)diff(y)symadd(x,y)ans =x^2/2ans =1》》ch='ABCpiEF';k=ch(4:5)rev=ch(end:-1:1)k1=[k,sin(k)];k2=eval(k1)k =pirev =FEipCBA》》A=[1,2,3;4,5,6];a=A(3)b=sub2ind(size(A),2,2)c=A(1:2,2:3)d=A(:)a =2b =4c = [2 3;5 6]d =[1 4 2 5 3 6]》》A=[1,2,;3,4];B=eye(2)a=A*Bb=A.*Bc=A/BB =[1 0;0 1] a =[1 3;2 4] b =[1 0;0 4] c =[1 2;3 4]>>x=[0,1,0,2,0,3,0,4];for k=1:8if x(k)==0x(k)=k;elsex(k)=2*k+1;endenddisp(x)1 5 3 9 5 13 7 17三、2. 输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。
其中90分~100分为A,80分~89分为B,79分~79分为C,60分~69分为D,60分以下为E。
要求:(1) 分别用if语句和switch语句实现。
(2) 输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
运算(1)1.save sample M——把变量M保持到文件sample.mat中save sample.txt M -ascii——把变量M以ascii码保持到文件sample.txt 中(-append 表示在文件末尾添加;load 文件名:载入)2.type fin.txt——显示文件内容3.Who——列出当前变量名清单Whos——列出当前变量名、大小、类型、字节数4.which fin.txt——定位函数和文件5.clear——从内存中清除变量和函数;clear global——清除所有的全局变量6.path——显示搜索路径path(path,’c:\TEMP’) = addpath c:\TEMP –endpath(’c:\TEMP’, path) = addpath c:\TEMP –begin7.cd 'E:\Program Files'——显示或改变当前工作目录8.dir——目录列表9.delete fin.txt——删除文件10.clc——清空命令窗口(2)clear是清变量,clc只清屏,clf清除图形窗口上的旧图形(3)矩阵:zeros()全0;ones()全1;rand()随机eye()——单位矩阵(对角线全1);inv()——是求逆矩阵det(A)——求行列式的值rank(x)——求矩阵的秩(不为零的最大方正边长)diag(A)——是矩阵对角元素的提取,以竖向量输出[v,d]=eig(A)——计算方阵A的特征值和特征向量的函数[q,r]=qr(x)——x=q*r,q正交方阵,r同阶上三角矩阵triu(x)——产生上三角矩阵triu(A,-1)——-1表示为主对角线下一条对角线一下的数全变为0tril(x)——产生下三角矩阵logical(A)——转换为逻辑型size()——返回x y 即行数、列数;length()——返回列数数组:flipud() 上下翻转;fliplr() 左右翻转flipdim(x,dim)——特定轴翻转,dim=1行,2列rot90(x,k)——x逆时针转k*90度clf——用来清除图形的命令primes(n)——n以内的素数;length(a)——向量a的长度;nargin(‘fun’)——获取fun函数的输入参数个数;(4)程序文件(.M)、图形文件(.fig)、模型文件(.mdl,在Simulink环境中生成)、数据文件(.mat,用来保存变量)、可执行文件(.mex)、项目文件(.prj)(5)disp(’xxxx’)——显示字符串(6)A/B=A*B^-1 , A\B=A^-1*B(7)1 / 0 = INF, 0 / 0 = NaN,realmin最小正实数,realmax最大可用正实数,eps浮点数的相对误差编程:(1)分支:if-elseif-else-end,switch-case{9,10}-otherwise-end循环:for n = -1:0.1:1 %循环21次;a=eye(2,3);for n=a %循环3次,n为列向量while x<5 - ……-end(break和continue同C)错误控制:try-catch-end流程控制:return:返回;keyboard:等待键盘命令;r = input(’str…’):接受用户输入;disp(’str…’):显示字符串;pause(n):暂停n秒,n省略时等待键盘按任意键(2)M脚本文件和M函数文件,区别:有无函数声明;M脚本文件可以使用工作空间的变量,为了避免同名覆盖,一般在开头用clear 清楚工作空间的变量M函数文件可以有多个函数,主函数为最上面的一个,子函数为其他只能被本文件的函数调用;(3)匿名函数:fhandle=@(arg1,arg2,……)(expr) 句柄=@(参数列表)(表达式)内置函数:inline_fun=inline(‘expr’,arg1,arg2)(4)创建函数句柄:fhandle=@fun;调用:直接调用或feval(句柄,参数列表)使用句柄调用函数的好处:不在搜索路径上也可以调用;不用每次调用函数都去搜索一遍,所以节约时间。
《MATLAB》期末考试题型及分值
(1)简答题4题*5分=20分简要回答要点
(2)计算题6题*5分=30分命令(程序文件)
(3)绘图题2题*10分=20分二维及三维
(4)编程题2题*10分=20分
(一)函数-程序文件
(二)矩阵最大元素
(5)综合题1题*10分计算并绘图
题目1. 设计一个函数,用于求数组A的最大值、最小值以及平均值,其中,A的维数未知。
2. 写一个函数,用于求n元一次方程组的解.已知系数矩阵A和常数向量b,且A*x=b(要求处理无解和无穷解的情况)。
3. 有一组测量数据(xi,yi),已知x与y成线性关系,用最小二乘原理拟合y=f(x)的关系并绘图,同时求出直该直线的斜率。
4. 绘制三维曲面z=sin(r)/r,其中r=sqrt(x*x+y*y),要求使用灰度图,且黑色表示最高点,白色表示最低点,并使曲面光滑。
解(1)function y=suzu(A);
A=input('请输入任意数组:');
y=max(A);
function y=suzu(A);
A=input('请输入任意数组:');
y=min(A);
function y=suzu(A);
A=input('请输入任意数组:');
y=mean(A);
//function[Ax]=Amax(A)
Ax=max(max(max(A)))
w=rand(4,5)%生成随即数组
%w1=input('请输入你的数组')%该数组具有普遍性
[a b ]=size(w); x=1;
for k=1:a
for d=1:b
w1(x)=w(k,d);
x=x+1;
end end
maxw=w1(1);
for t=1:length(w1)
if maxw<w1(t)
maxw=w1(t);
end end
disp(['最大值为:'] )
maxw
(2)function [y,n]=jacobi(A,b,x0,eps)
If nargin==3
eps=1.0e-6;
elseif nargin<3
error
return
end
D=diag(diag(A));
L=-tril(A,-1);
U=-triu(A,1);
B=D\(L+U);
f=D\b;
y=B*x0+f;
n=1;
while norm(y-x0)>=eps
x0=y;
y=B*x0+f;
n=n+1;
End
(3)xi=[0.1 0.2 0.15 0 -0.2 0.3];
yi=[0.95 0.84 0.86 1.06 1.50 0.72];
p=polyfit(xi,yi,2)
x=-0.2:0.01:0.3
y=polyval(p,x)
plot(xi,yi,'o',x,y,'k')
(4)[x,y]=meshgrid([-10:0.2:10]);
z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2); surf(x,y,z)
colormap(gray);
subplot(1,1,1);surf(z);shading flat;。