第3讲 MATLAB编程
- 格式:pdf
- 大小:300.49 KB
- 文档页数:18
西南科技大学本科生课程备课教案计算机技术在安全工程中的应用——Matlab入门及应用授课教师:徐中慧班级:专业:安全技术及工程第三章课型:新授课教具:多媒体教学设备,matlab教学软件一、目标与要求掌握matlab中内置的初等数学函数、三角函数、数据分析函数等函数的运用。
二、教学重点与难点本堂课教学的重点在于引导学生在命令窗口进行一些简单的计算,对matlab初等的数学函数能够熟练运用,并能写一些matlab的简单程序解决实际问题。
三、教学方法本课程主要通过讲授法、演示法、练习法等相结合的方法来引导学生掌控本堂课的学习内容。
四、教学内容一、课程内容回顾上节课主要学习了数据显示格式、复数的运算、算术运算等。
(1)短数据格式和长数据格式之间的显示切换(2)15+16i,求该复数的模和辐角,实部与虚部(3)[1:3;2:4;3:5],求矩阵的转置初等数学函数包括对数函数、指数函数、绝对值函数、四舍五入函数和离散数学中的函数。
我们今天课程的任务就是掌握这些函数的运用。
二、常用的数学函数练 习创建矢量x,在-9到12之间,步长为3 (1)求x 除以2的商 (2)求x 除以2的余数 (3)e x(4)求x 的自然对数ln(x) (5)求x 的常用对数lg(x)(6) 用函数sign 确定矢量x 中哪些元素为正 (7)将显示格式变为rat ,显示x 除以2的结果 Eg: x=-9:3:12;(1) x/2;(2) rem(x,2);(3)exp(x);(4)log(x );(5)log10(x);(6)sign(x);(7)format rat;x/2三、取整函数Matlab 中有几种不同的取整函数。
其中最常用的是四舍五入。
然而取上近似还是取下近似要根据实际情况而定。
例如,在杂货店买水果,苹果0.52美元一个,5美元能买几个?5.009.61540.52/=苹果苹果但是在现实生活中,显然不能买半个苹果,而且也不能四舍五入到10.所以,只能向下取近似值9.四、离散数学中的函数离散数学就是有关数的数学,也就是中学代数里的因式分解、求最大公因数和最小公倍数。
Matlab中的函数编程和脚本编程Matlab是一种广泛应用于科学与工程领域的高级编程语言和环境。
在Matlab 中,函数编程和脚本编程是两种主要的编程方式。
函数编程是通过封装一段可重复使用的代码作为函数来实现特定功能。
而脚本编程则是直接在Matlab中运行一系列的命令和操作来实现所需的任务。
在函数编程中,我们可以将程序中相对独立的功能模块封装成函数,以便在需要的时候可以反复调用。
函数的定义通常包括函数名、输入参数和输出参数。
通过在函数内进行计算、变量赋值等操作,将输入参数转化为输出参数,实现特定的功能。
例如,我们可以定义一个计算平方的函数:```matlabfunction y = square(x)y = x^2;end```在上述代码中,`square`函数接受一个参数`x`,将其平方并将结果赋给变量`y`,最后将`y`作为函数的输出。
使用函数编程的好处之一是可以提高代码的可重用性和模块化程度。
通过将相似的代码封装进一个函数,我们可以在不同的上下文中多次调用这个函数,避免重复编写相同的代码,提高开发效率。
此外,函数编程还有利于代码的维护和修改。
如果某个功能需要改变,我们只需要修改函数的定义,而不需要改动调用函数的地方。
除了函数编程,Matlab还支持脚本编程,这种编程方式更加灵活。
脚本由一系列的命令和操作组成,按照顺序执行。
与函数编程不同,脚本中的变量是全局的,可以在脚本的任何地方访问和修改。
脚本编程适用于一些简单的任务或者需要直接交互的情况。
例如,我们可以编写一个简单的脚本来生成随机数并计算其平均值:```matlabnums = randn(1, 100);average = mean(nums);disp(['The average is: ', num2str(average)]);```上述脚本通过`randn`函数生成含有100个随机数的数组,并使用`mean`函数计算其平均值,最后通过`disp`函数将结果打印出来。
本科生课程大纲课程属性:公共基础/通识教育/学科基础/专业知识/工作技能,课程性质:必修、选修一、课程介绍1.课程描述:“MA TLAB编程”是港口、航道及海岸工程专业本科生的一门专业选修课。
本课程重点介绍MA TLAB 的基础应用,包括MA TLAB的数据类型、矩阵输入和操作方法、语法结构、函数的使用以及利用MA TLAB进行数值计算、编写程序和图形处理等。
要求学生能够掌握Matlab的基本使用方法,并能熟练地将MA TLAB应用于工程实际,为解决后续专业课程中复杂的数学计算问题、工程设计和科学研究奠定基础。
2.设计思路:本课程将采用课堂讲授和上机实践相结合,边讲授边实践的教学形式。
课堂讲授注重锻炼学生的数学建模、分析能力等所需的基础知识和基本能力,强调实际操作性,培养学生实际动手的动力。
上机实践是本课程重要的教学环节,通过上机编程、调试,学生才能够掌握MA TLAB编程和MA TLAB处理图形的基本技能,为本专业后续课程奠定数值计算基础。
课后会适当提供一些有代表性地上机和实践任务,以培养学生实际动手操作能力,增强学生运用MA TLAB软件编程的能力。
3.课程与其他课程的关系:先修课程:《高等数学》、《线性代数》、至少一门程序设计语言。
- 1 -二、课程目标通过本课程的学习,学生将达到以下目标:(1)、知识获取(Ⅰ)、理解和掌握MA TLAB语言基本函数的运用;(Ⅱ)、掌握M语言的编程方法;(Ⅲ)、掌握MA TLAB处理图形的基本技能和方法;(2)、思维方法培养(Ⅰ)、一种从专业问题中抽象出数学模型进而运用MA TLAB 语言去求解的思维方法;(Ⅱ)、严谨、规范的思维方法。
(3)、能力培养(Ⅰ)、能够综合运用MATLAB语言和专业知识,正确理解问题的能力、分析问题能力和解决实际工程应用问题的能力;(Ⅱ)、具备运用MA TLAB帮助系统,不断提高MA TLAB语言编程水平和技能的能力。
三、学习要求学生在学习理论知识的同时,必须积极上机实践,以达到对理论知识的熟练应用。
数学建模matlab编程三水仙花数水仙花数是指一个3位自然数,其各位数字的立方和等于该数本身,输出1000以内的水仙花数,并求其个数。
y=[];%空矩阵count=0;for i=100:999a=rem(i,10);b=rem(fix(i/10),10);c=fix(i/100);if(a^3+b^3+c^3==i)y=[y,i];%不断扩充count=count+1;endendy,count突变素数当一个素数(只有两个正因数(1和自己)的自然数即为素数)与其前一个素数的差值大于等于5时,将其称之为“突变素数”(2不是“突变素数”),求10000以内的“突变素数”的个数.y=[];k=0;count=0;for i=1:10000if isprime(i)==1if (i-k)>=5y=[y,i];count=count+1;endk=i;endendy,count结果:count=820方差分析1试验3种猪饲料的饲养效果,得到9头猪的增重(单位:kg)如下:用matlab编程做作方差分析,估计各个总体的未知参数μi 和μ。
(不允许用anova1工具箱)先用sas得到结果方便后面检验:data ex;do a=1 to 3;input n@@;do i=1 to n;input x@@;output;end;end;cards;4 51 40 43 483 23 25 262 23 28;proc anova data=ex;class a;model x=a;run;sst——(每个因素的均值-总均值)^2的和ssa——每个水平的个数*(每个水平的均值-总均值)^2的和sse=sst-ssaf=(ssa/(r-1))/(sse/(n-r)) r为水平个数a1=[51,40,43,48];a2=[23,25,26];a3=[23,28];a=[a1,a2,a3];n=length(a);b=[1 1 1 1 2 2 2 3 3];sst=0;for i=1:nsst=sst+(a(i)-mean(a))^2;endssa=0;for i=1:3an=a(b==i);num=length(an);ssa=ssa+num*(mean(an)-mean(a))^2;endsse=sst-ssa;f=(ssa/2)/(sse/(n-3));p=1-fcdf(f,2,n-3);ssa,sse,sst,f,p可以看出和sas所得结果一样方差分析2测定4种种植密度下金皇后玉米的千粒重(单位:g)如下:用matlab编程做作方差分析,估计各个总体的未知参数mi和μ。
数学建模竞赛培训之编程MATLAB实用教程在当今的学术和工程领域,数学建模竞赛越来越受到重视,而MATLAB 作为一款强大的数学计算和编程软件,在其中发挥着至关重要的作用。
如果你正在为数学建模竞赛做准备,那么掌握 MATLAB 的编程技巧将为你在竞赛中取得优异成绩提供有力的支持。
接下来,让我们一起开启 MATLAB 编程的实用教程之旅。
一、MATLAB 基础首先,我们来了解一下 MATLAB 的基本操作界面。
当你打开MATLAB 时,会看到一个命令窗口,这是我们输入命令和查看结果的地方。
变量是编程中的重要概念,在 MATLAB 中,变量无需事先声明类型,直接赋值即可使用。
例如,我们可以输入`x = 5` ,此时`x` 就被赋值为 5 。
MATLAB 支持多种数据类型,如数值型(包括整数和浮点数)、字符型、逻辑型等。
二、矩阵操作矩阵在数学建模中经常用到,MATLAB 对矩阵的操作非常方便。
可以通过直接输入元素来创建矩阵,比如`A = 1 2 3; 4 5 6` 就创建了一个 2 行 3 列的矩阵`A` 。
矩阵的运算也十分简单,加法、减法、乘法等都有相应的运算符。
例如,两个矩阵相加可以直接使用`A + B` 。
三、函数的使用MATLAB 拥有丰富的内置函数,大大提高了编程效率。
比如求矩阵的行列式可以使用`det()`函数,求矩阵的逆可以使用`inv()`函数。
我们还可以自己定义函数,语法如下:```matlabfunction output_args = function_name(input_args)%函数体end```四、绘图功能在分析数据和展示结果时,绘图是必不可少的。
MATLAB 能够绘制各种类型的图形,如折线图、柱状图、饼图等。
以绘制简单的折线图为例,使用`plot()`函数,如`plot(x,y)`,其中`x` 和`y` 是数据向量。
五、数值计算在数学建模中,常常需要进行数值计算,如求解方程、求积分等。
MATLAB编程MATLAB编程是一种功能强大且广泛应用的科学计算语言和环境。
通过MATLAB,用户可以进行各种数值计算、数据分析、图像处理、信号处理、机器学习等任务。
本文将以非常规的方式为大家介绍MATLAB编程的一些基本概念和常用功能。
MATLAB的命名来源于Matrix Laboratory(矩阵实验室),这也揭示了MATLAB的一个重要特点——矩阵计算。
在MATLAB中,矩阵被视为基本数据类型之一,它们可以用来表示向量、矩阵和多维数据。
矩阵计算是MATLAB的基本操作之一,可以进行矩阵乘法、转置、求逆等运算。
除了矩阵计算外,MATLAB还提供了许多其他有用的功能。
其中之一是数值计算。
MATLAB可以进行各种数值计算,例如求解线性方程组、求解微分方程、数值积分等。
这些功能使得MATLAB成为科学计算和工程计算的重要工具之一。
另一个重要的功能是数据可视化。
MATLAB提供了许多强大的绘图功能,可以用于绘制二维和三维图形。
这包括线图、散点图、柱状图、曲线图等。
通过绘图,用户可以更直观地理解和展示数据。
此外,MATLAB还支持一些高级的可视化技术,例如表面绘图、等高线绘图、动画等。
MATLAB还提供了丰富的工具箱(Toolbox),这些工具箱包含了各种专业领域的工具和函数。
例如,MATLAB提供了信号处理工具箱,可以用于信号滤波、频谱分析、信号合成等任务。
MATLAB还提供了图像处理工具箱,可以用于图像增强、图像分割、图像压缩等任务。
这些工具箱使得MATLAB具有更广泛的应用范围。
除了现有的功能和工具箱,MATLAB还支持用户自定义函数和脚本。
用户可以编写自己的MATLAB函数和脚本,以满足特定的需求。
编写自定义函数和脚本可以使MATLAB的功能更加灵活和个性化。
在MATLAB编程中,一个简单但非常重要的概念是向量化。
向量化是指将循环结构替换为向量表达式的过程。
使用向量化的方式可以提高MATLAB程序的效率和运行速度。