关于数学建模的相关数学实验

发布 2023-05-17 21:23:28 阅读 5177

第1章 matlab简介与入门。

1.1 简介。

matlab是矩阵实验室matrix laboratory的简写,其基本数据单位为矩阵,它的指令表达式与数学及工程中的书写习惯十分类似,如矩阵方程,在matlab中写为,欲求x,只需输入指令x=a\b即可,这比c语言或其他语言要方便得多。

matlab经过多年发展,现已成为线性代数、自控理论、数理统计、数字信号处理、时间序列分析、动态系统**等现代课程的基本教学软件。在科研设计部门,matlab更是广泛用于各个领域而成为不可缺少的助手。

值得一提的是,除内部函数外,matlab所有主包文件与各工具箱文件都是可读可改的源文件,这无疑极大方便了读者的使用与学习。

还需说明的是,在matlab中所有数据单位作为矩阵处理带来的便利,使算法统一且便捷,这是c语言与其他语言所不具备的。例如,对实数x可看成1x1矩阵,对多项式。

其系数为阶矩阵,从而对其根的求解即可转化为求其伴随矩阵的特征值问题,关于矩阵球特征值的方法皆可使用。理论已证明此种求根方式无论精度还是可靠性都高于经典的迭代方式。

计算结果的可视化是matlab的重要特征。学生在学习一元函数微积分学时就有这样一个愿望,若对所给函数都能看到伴随它的图形该有多好,而这一愿望随着对多元函数微积分学的学习而变得愈加强烈。

从事数据整理与计算结果分析的科研人员往往要面对一大堆离散数据,而这些数据的内在关系的表现,莫过于图形手段。

同学们通过使用matlab会惊喜地发现,它的图形功能大大超出你的想像,其奇妙的近乎完美的图形会使你惊叹,进而想到,它的内核编程是如何做的,自己如也能编出这样的程序该多好!

在各专业领域,matlab提供了许多功能强大的工具箱,开列一些以供参考,动态**(simulink),控制(control),优化(optimization),神经网络(neural network),样条(spline),系统识别(system identification),符号演算(symbolic math),模糊控制(fuzzy control)等,关于它们的使用,已有很专业的书籍问世予以说明。

matlab为初学者提供了大量的演示例程,同学们可通过帮助窗口获得,亦可在命令窗口内直接键入要演示的例程文件名,这些例程展示了matlab的功能,亦是初学者的入门向导。

应注意的是,matlab对大、小写敏感,而其所有命令的键入均以小写形成给出。

1.2 应用入门。

matlab6.5版是一个高度集成的语言环境,在其命令窗口中(matlab command window)可编写、运行程序,其执行方式类似于basic程序的执行方式,但更快捷简便,命令窗口本身又是一个功能强大的计算器,输入要计算的表达式,按回车键即得结果。下面分几段介绍matlab的基本应用并约定用“↙”表示按下回车键。

1.启动。假设快捷方式已经建立,只需用鼠标即可方便启动。若未建立快捷启**标,可在目录c:\matlab\bin下运行文件。

2.对输入指令的编辑(表1.1)

表1.1matlab工作窗中部分通用指令见表1.2。

表1.2的帮助功能。

matlab的命令很多,功能各异,为帮助用户使用,它提供了广泛的**帮助功能,主要指令为help,lookfor及交互式的help菜单。

help命令。

如果用户要寻求已知标题的帮助,可键入如下命令:

help sqrt↙

其中sqrt是你想使用的一个函数名,但用方法不详,即可借助help命令,具体显示内容。同学们可上机实习。需要说明的是,帮助信息中sqrt的形式为大写的sqrt,具体使用时要用小写。

在大多数情形下当你不知道具体标题时,若键入。

help↙你会发现这一命令形式会帮助你找到所需的确切标题。而命令。

help general↙

返回matlab的一般命令列表。

lookfor命令。

lookfor命令提供的帮助方式是通过搜索所有matlab help标题及matlab路径中m文件的第一行,返回包含指定关键词的那些项。最重要的是关键词不必是matlab的命令。如下面的指令;

lookfor complex↙

关键词complex不是matlab命令,但在显示的6条内容中都会有这个词,此时再结合命令help即可显示某一特定指令的帮助。

菜单驱动的帮助。

对pc机,用户可直接选择help菜单中的help desk项获得,此时会打开一个帮助窗口,用户可在显示列表中双击鼠标以选择任何标题或函数。matlab帮助窗口采用标准格式,允许用户搜索主体,设置书签,注释主题及打印帮助屏幕。

4.数**算。

在matlab指令窗口下,可方便进行演草纸式的数**算,分别介绍以下几种。

算术运算。包括最后一式表示a的b次方,a,b代表使运算有意义的实数。

复数运算为复数基本运算单位,其中,例如,在窗口中键入。

说明复数亦可记为,这里为副角,r是其模,关于输入指令的方式简要说明,几条语句可在同一行书写,语句与语句间可由“,”或“;”隔开,“;指明运算结果不显示,要注意虚部的输入可写ai(a与i之间无空格),或。如果表达式很长,一行写不下,可键入“…”续行号)后回车在下一行续写,如。

s=1-1/2+1/3-1/4+1/5-…

在任意情形中,同时按下ctrl+c键,都将终止程序运行。

在复数运算中,类似于求模运算,求复角运算,取虚、实部的运算方法要借助matlab所提供的数学函数。表1.3开列了一些常用的数学函数。

表1.3向量与矩阵的输入与运算,因向量与矩阵所含元素较多,一个一个地输入不但麻烦而且容易出错,matlab提供了一些有效的输入方法,现简介如下。

在matlab中,冒号“:”是一个重要字符,如键入x=1:4;则产生一个首元素为1,尾元素为4,步长是1的含4个元素的行向量。

此时,x=[1,2,3,4]。同学们在输入指令时省略分号看看会出现什么情形。再输入y=0:

0.5:3,产生的行向量y=[0,0.

5,1,1.5,2,2.5,3],当然可直接输入y,但要注意,作为行向量输入,元素之间要用逗号,或空格分隔。

下面给出一个例子,说明一些问题。键入显示:

说明 x=(0:0.2:

2.0)是一个行向量,“’表示转置,故是列向量,第一行为0,步长为0.2,最后一行数为2.

000,x是一个11维列向量。exp(-x)是对列向量x每项取负,再对每项进行指数运算而得到一个新的11维列向量,sin(x)同样,之后两个列向量作。*运算,即处于相同行的元素相乘组成新的11维列向量y。

第三条语句[x,y]构成一个2列11行的矩阵。再注意一些细节,在前两句输入,结束时有“;”所以不显示结果,第三句后无分号,所以显示了计算结果,又第三行不是输入z=[x,y],而是[x,y],故matlab自动将结果赋给内置变量ans,并显示之,关于其他一些内置变量见表1.4。

内置变量是matlab启动时自动定义的,不会被clear清除,最好不要将这些变量再重新定义为其他值,尽管可以重新定义。

下面给出几种矩阵的赋值形式。

a=[1 2 3;4 5 6;7 8 9] ↙

a=说明各元素间可用空格分隔,亦可用逗号“,”分隔,分号表示换行,式为显示的结果。

**=1:9;% 产生9个元素行向量。

c=[**(7:9);**(4:6);**(1:3)]

c=无论对矩阵还是向量,都可借助下标访问,c(1,1)=7,c=(3,3),**(1)=1,**(4)=4。顺便说明,“%后的文字部分为注释语句,且一个“%”只管一行。若注释语句过长需要换行,则必须再加“%”

数学建模实验

实用数学建模与软件应用实验报告。学院名称 理学院专业年级 信计142班姓名 高梓涵学号 2014014515 课程 实用数学建模与软件应用报告日期 2016.11.9 问题重述 设某团体有n个单位,每个单位有人数a,总席位为s 现有席位p个待分配。问 各单位分配多少个席位是公平的?这就是席位公平分配...

数学建模实验

1 计算 汽车刹车距离 中的k值。解答过程 用最小二乘法来计算,过程如下 我们已知该曲线方程为d kv2 bv 令s 0 得出 0 0 得出 0 用matlab计算,其程序如下 x 29.3,44,58.7,73.3,88,102.7,117.3 y 42,73.5,116,173,248,343,...

数学建模实验

实验题目 人口类型。实验类型 基本操作。实验目的 掌握聚类分析的基本原理及方法。实验内容 要求学生在学习 掌握一些数学模型之后,能够理论联系实际,给出实际问题的相关数学模型,并能够编程求解,给出其结果。本次数学建模实习题目为 问题一 分析我国人口普查公报的相关数据,利用所学数学模型给出我国人口特征。...