matlab数值分析实例

2024-06-21 版权声明 我要投稿

matlab数值分析实例

matlab数值分析实例 篇1

课程编号:02072006

适用专业:电子信息工程、信息对抗技术、电磁场与无线技术、电波传播与天线专业

学 时 数:56

学 分 数:3.5

开课学期:第3学期

先修课程:高等数学,线性代数,C语言与高级程序设计 执 笔 者:程建

编写日期:2012.04

审核人:吕明

一、课程性质和目标

授课对象:本科生 课程类别:学科基础课

教学目标:本课程主要介绍MATLAB软件平台的使用和编程技巧、数值计算方法的基础理论和基本算法,并在通用软件平台MATLAB上开展教学。通过该课程的学习,学生应了解MATLAB软件平台的基本特性、数值计算方法的基础理论,掌握MATLAB的使用、MATLAB的编程技巧和数值计算的基本方法,具备MATLAB软件平台的熟练编程能力和数值求解算法的MATLAB编程实现的能力。

二、课程内容安排和要求

(一)教学内容、要求及教学方法

本课程课堂教学内容主要包括两大部分:MATLAB软件平台及编程;数值分析基础理论与基本算法。

1.MATLAB软件平台及编程

(1)MATLAB概论 授课时数: 2学时 教学内容:

1)MATLAB软件平台简介

MATLAB软件平台的历程、影响、特点和功能等的介绍。2)MATLAB软件平台入门

MATLAB软件平台的命令窗口、当前目录浏览器窗口、工作空间浏览器窗口、历史命令窗口和数组编辑器窗口等的介绍。3)MATLAB的常量、运算符和基本操作

MATLAB使用的常量值、各种运算符、基本操作命令和帮组命令与帮助窗口等的介绍,并以范例形式加以说明。教学要求:

熟悉和了解MATLAB软件平台,掌握MATLAB的常量、运算符和基本操作。

(2)MATLAB基础知识 授课时数: 4学时 教学内容: 1)MATLAB的数组与矩阵

数组与矩阵的概念;数组或矩阵元素的标识、访问与赋值;数组与矩阵的输入法;矩阵的特有运算。

2)字符串和符号矩阵

字符串变量和函数求值;符号变量;符号矩阵的创建方法;符号矩阵的运算;符号矩阵运算中特有命令的应用。3)多项式及其运算

多项式运算函数;多项式运算举例。教学要求:

熟悉和了解MATLAB的字符串、符号矩阵和多项式的操作和运算,掌握MATLAB的数组与矩阵的操作和运算。

(3)MATLAB程序设计 授课时数: 2学时 教学内容:

1)M文件及函数编写

M文件的特点和编写技巧;MATLAB的函数特点和编写技巧;参数与变量;数据类型。2)程序结构

MATLAB的选择结构;MATLAB的循环结构。3)程序终止与异常

MATLAB程序的终止控制;MATLAB程序的异常处理。教学要求:

掌握M文件和函数的编写,掌握MATLAB的数据类型和程序结构,了解MATLAB程序的终止控制和异常处理语句。

(4)MATLAB数据的图形表示 授课时数: 2学时 教学内容: 1)MATLAB二维绘图

基本二维绘图;特殊的二维绘图函数;填充多边形。2)MATLAB三维绘图

三维图形的基本函数;绘制三维折线及曲线;绘制三维网格曲面。教学要求:

掌握MATLAB的二维绘图和三维绘图指令和编程技巧,了解MATLAB的二维绘图和三维绘图的应用。

(5)Simulink建模与仿真基础 授课时数: 4学时 教学内容: 1)Simulink的基本操作与模型窗口

介绍Simulink的启动、Simulink模型库的打开、Simulink仿真模型建立、仿真参数设置等基本操作,以及模型窗口的组成和功能等。2)模型创建与系统仿真

介绍模型创建的基本操作、信号线的操作、模型的文本注释,仿真模型库的基本模块和参数设置,以及复杂系统的仿真与分析。3)子系统创建与封装

介绍子系统的创建、条件执行子系统,以及子系统的封装。4)用MATLAB命令创建和运行Simulink模型

介绍用MATLAB命令创建Simulink模型的相关指令、模块和信号线添加的相关指令、模块参数与属性的操作指令等,以及用MATLAB命令运行Simulink模型的操作等。教学要求:

熟悉和了解Simulink的基本操作与模型窗口功能,掌握模型创建与系统仿真的基本方法、子系统创建与封装的基本方法,了解用MATLAB命令创建和运行Simulink模型。

2.数值分析基础理论与基本算法

(1)数值计算的基本概念 授课时数:3学时 教学内容:

1)数值分析简介

数值分析的原理和基本思想介绍;应用实例分析。2)误差与有效数字

误差、误差限、相对误差、相对误差限和有效数字的定义及相互关系;误差的来源和误差的基本特性;误差的计算(估计)的基本方法。3)算法的适定性问题与MATLAB中的数值计算精度

数值分析中的病态和不稳定性问题介绍;病态问题和不稳定算法的实例分析;避免误差危害的若干原则;MATLAB中的数值计算精度。教学要求:

熟悉和了解数值分析的基本概念,掌握误差分析的基本方法,了解数值计算算法设计中应当关注的基本问题。

(2)线性方程组的数值方法 授课时数: 6学时 教学内容:

1)高斯消元法

高斯消元法;主元方式的高斯消元法;MATLAB函数实现。2)矩阵分解

矩阵LU分解的一般计算公式;利用LU分解的线性方程组求解方法;Cholesky分解;MATLAB函数实现。

3)向量范数与矩阵范数

向量范数及其性质;矩阵函数及其性质;常用范数形式;MATLAB函数实现。4)线性方程组的迭代法求解 Jacobi迭代法;高斯_赛德尔迭代法;MATLAB函数实现;迭代法的收敛性。5)方程组的病态问题与误差分析

线性方程组解的误差分析;条件数和方程组的病态性。6)方阵的特征值和特征向量的计算

方阵特征方程的求解法;计算特征值和特征向量的迭代法;MATLAB函数实现。教学要求:

理解各种线性方程组数值求解,掌握求解方法和解的误差分析方法,掌握方阵的特征值和特征向量的数值求解方法,能MATLAB编程实现求解算法。

(3)函数的数值逼近授课时数: 5学时 教学内容:

1)代数多项式插值问题

插值多项式的存在唯一性;插值基函数和插值多项式的一般形式;插值的误差分析;多项式插值的Runge现象;MATLAB函数实现。2)分段低次插值

分段线性插值;Hermite插值和分段Hermite插值;MATLAB函数实现。3)

三次样条插值

样条插值的定义;三次样条函数的计算;MATLAB中的插值函数。4)曲线拟合的最小二乘法

曲线拟合的最小二乘法法;多项式拟合方法;MATLAB中的多项式拟合函数; 教学要求:

了解插值和曲线拟合方法的思路,掌握插值和曲线拟合及误差分析方法,能MATLAB编程实现插值和拟合算法。

(4)数值积分 授课时数: 4学时 教学内容:

1)插值型求积公式

线性和二次求积公式;求积公式的代数精度;插值型求积公式;MATLAB函数实现;求积公式的误差分析。2)复化求积公式

牛顿-科特斯求积公式;几个低次牛顿-科特斯求积公式;复化矩形公式;复化梯形公式;复化Simpson公式;MATLAB函数实现。3)高斯求积公式

高精度求积公式;高斯点的基本特性;高斯求积公式;MATLAB中的数值积分函数。教学要求:

了解各种数值积分方法的思路;掌握数值积分及误差分析方法;MATLAB编程实现数值积分算法。

(5)常微分方程初值问题 授课时数: 4学时 教学内容:

1)欧拉方法

基本理论和方程离散化;欧拉方法;改进的欧拉方法;MATLAB函数实现。2)稳定性与收敛性分析

欧拉方法的稳定性;欧拉方法的收敛性及收敛速度。3)龙格-库塔法

二阶龙格-库塔公式;三阶龙格-库塔公式;MATLAB函数实现。教学要求:

了解常微分方程初值问题数值求解方法的思路;掌握欧拉及改进欧拉方法和龙格-库塔法,能MATLAB编程实现算法,并进行算法的稳定性和收敛性分析。

(6)非线性方程求解 授课时数: 3学时 教学内容:

1)非线性方程的求解方法

非线性方程求解的基本原理;二分法、黄金分割法、迭代法、牛顿法。2)求解非线性方程数值解的MATLAB编程实现

代数方程求根指令;求函数零点指令。教学要求:

了解非线性方程数值求解方法的思路;掌握非线性方程求解的基本原理和基本方法,能MATLAB编程实现算法。

(7)课程总结 授课时数: 1学时

教学内容:

对课程教学内容进行归纳总结。

(二)自学内容和要求 1.MATLAB软件及编程

复习或自学MATLAB软件使用方法、自学MATLAB软件的工具箱使用方法,能使用MATLAB编程完成数值分析算法的程序设计。

2.课程设计 基本要求:

针对MATLAB编程、Simulink建模与仿真和数值分析的基本理论应用与仿真等相关内容进行课外的课题设计、实现和总结报告,提高学生对实际问题的分析能力、实现能力和文档编写能力。

命题形式:

(1)任课教师命题(2)学生自主命题

考查方式:(1)设计、分析与总结报告(2)MATLAB编程实现代码和仿真图

(三)实践性教学环节和要求

1.MATLAB软件平台与MATLAB程序设计实验

学时数: 4学时

实验项目的性质和任务:

通过上机编程实验,使学生熟悉对MATLAB软件平台的使用,使学生掌握MATLAB的编程技巧,让学生对MATLAB软件平台在科学计算中的重要作用有深入了解。实验题目涉及知识点:

MATLAB软件平台的基本操作、M文件编写、MATLAB程序设计。实验要求:

能熟练操作MATLAB软件平台,能利用M文件完成MATLAB的程序设计。

2.Simulink仿真实验

学时数: 4学时

实验项目的性质和任务:

通过上机编程实验,使学生对Simulink的重要作用和模型库有深入了解,能利用模型库完成复杂系统的建模和仿真,能根据实际问题需求完成子系统创建和封装。实验题目涉及知识点:

Simulink的基本操作、模型库、复杂系统建模与仿真、子系统创建和封装。实验要求:

能熟练操作Simulink和使用模型库的相关模块,能完成复杂系统建模与仿真,并能灵活使用子系统。

3.线性方程组求解和函数数值逼近方法实验

学时数: 4学时

实验项目的性质和任务:

通过上机编程实验,使学生对数值分析的病态问题、线性方程组求解、矩阵特征值与特征向量求解和函数的数值逼近方法有初步理解。实验题目涉及知识点:

病态方程求解、矩阵分解和方程组求解、矩阵特征值与特征向量求解、Lagrange插值和数据的多项式曲线拟合。实验要求:

能完成算法设计和MATLAB编程,并对实验结果进行分析。

4.数值求积、常微分方程和非线性方程求解方法实验

学时数: 4学时

实验项目的性质和任务:

通过上机实验,使学生熟悉和掌握数值积分、常微分方程和非线性方程求解知识及编程实现方法。

实验题目涉及知识点:

数值积分、常微分方程和非线性方程数值求解。实验要求:

能完成算法设计和MATLAB编程,并对实验结果进行分析。

三、考核方式

平时成绩+上机实验+课程设计+课程考试(开卷)成绩比例:

平时成绩+上机实验 30% 课程设计 20% 课程考试 50%

四、建议教材及参考资料 1.教材

《MATLAB数值计算方法》,张德丰等编著,机械工业出版社,2010。

2.参考资料

matlab数值分析实例 篇2

天线设计过程中,通常采用单个天线就能满足需求,但在一些特殊的情况下会对天线结构及参数提出更高的要求,例如高增益、低旁瓣,波束可控性等,此时就需要采用阵列天线的形式[1]。目前,阵列天线在军事通信、飞行遥测等方面得到了广泛的应用,随着通信的不断发展,如何完善阵列天线的结构以及提升天线的性能成为了研究的热点[2]。

Matlab是一款功能强大的数学软件,高效的数值计算功能使人们从繁杂的数学运算分析中解脱出来,同时可实现计算结果和编程的可视化[3]。Matlab以其卓越的数值计算能力和强大的绘图功能,近年来被广泛应用在天线的分析和设计中[4]。

本文将Matlab引入阵列天线设计中,利用其高效数值计算功能为天线设计提供依据。借助Matlab可以绘制出阵列天线的二维和三维方向图,直观地从方向图中看出天线性能随各参数的变化情况,从而为阵列天线设计提供依据。

1 阵列天线理论基础

阵列天线是由许多形式相同并按一定规律排列的辐射单元所组成的辐射系统,辐射单元称为阵元或单元天线。单元天线可以是贴片天线、印刷振子天线、缝隙天线等不同天线形式。阵列天线特性主要由阵元性质、阵元个数、阵元位置、阵元排列方式以及电流幅度和相位分布等因素决定[5]。阵列天线的形式多样,针对不同的工程需要。可以设计不同的阵列天线结构,阵列天线结构参数多,天线设计比较复杂。本文设计的阵列天线中天线单元如图1所示,图1是最常用的矩形微带天线及其辐射场,其所示的天线结构是阵列天线中最常用的单元天线形式[6]。

阵列天线的设计比较灵活,例如为了提高天线的增益,可以不断增加阵元的个数。阵列天线的设计过程中必须注意一些规范,例如阵列天线中阵元间的距离一般要满足在0.5个波长到1个波长之间,如果间距过小,阵元间的互耦会增大,如果间距大于1个波长,阵列天线又会出现栅瓣[7]。因此,如何设计一个理想的阵列天线结构,使其可以满足特定的设计需求,需要一个仔细调试的过程。天线的经典理论是天线设计过程中必须注意的部分[8],天线谐振时,谐振长度为:

式中:εe为等效的相对介电常数;h为基片厚度;L为贴片长度;W为贴片宽度。

以往人们在阵列天线设计过程中,阵列天线结构复杂、参数众多,天线模型的建立以及天线的调试都是基于设计者的经验,因此存在一定的弊端,很难综合考虑天线整体的参数性能。本文在经典天线理论的基础上,利用Matlab数值计算进行辅助设计,归纳天线的性能与各项参数之间的关系,从而高效地进行天线的设计。

2 阵列天线数值分析

2.1 天线单元分析

实际的天线设计过程中,天线性能与天线结构各项参数密切相关,随着天线领域的不断发展,对天线的尺寸、性能等都提出了更高的要求,但天线的各项性能与结构参数之间是相互制约的,因此结构参数与天线性能之间往往需要折中考虑[9]。阵列天线由于是许多天线单元组合的一个辐射系统,因此阵列天线的设计更加复杂。

图1中,W的尺寸影响天线整体尺寸的同时影响天线的辐射电阻、输入阻抗以及方向性函数,因此影响天线的频带宽度和辐射效率。适当增大W尺寸有利于天线的频带、效率及阻抗匹配,但当W尺寸大于半波长时将产生高次模,从而引起场的畸变。利用Matlab对天线理论公式进行数值计算,可以将复杂的函数关系直观的显示出来。

902~928 MHz频段是目前射频领域常用的频段,根据要求设计一个四单元阵列天线,要求天线尺寸不超过360 mm×360 mm的范围。根据上述设计需求,天线单元的贴片宽度必须满足w

mm

通过计算结果可以看出,在εr=1.0的情况下,W对L的影响不大,h值较小时,L值偏大。在考虑天线性能的同时还要考虑天线的尺寸限制,选取h为18 mm或19 mm时较为妥当。综合比较,h取18 mm,W为130 mm,L为140 mm,此时的天线单元结构比较理想。

2.2 阵列参数分析

阵列天线是多个天线单元共同作用的结果,考虑单个天线单元性能的同时必须考虑整体的性能。阵列天线结构复杂、参数繁多,因此阵列天线的设计过程中,如何在各个参数与性能之间折中考虑,往往花费大量的时间[10]。通过Matlab辅助分析阵列天线辐射方向图,可以将复杂的函数以二维、三维图形直观的展示出来,极大地方便了对阵列天线辐射场空间分布的理解,从而为阵列天线的设计提供参考思路。

在满足可生产性要求的前提下,为了使天线调试便捷、馈线网络简单,阵列天线采用等幅同相馈电网络。

通过运用Matlab进行阵列天线远场辐射方向图分析时,把单元天线当做点源来考虑。图2为四单元点源分布图,相位中心为天线阵列的几何中心,横向和纵向间距分别为2dx和2dy。

四个单元等幅并且同相馈电的情况下,四单元阵列天线的辐射远区总场可以表示为:

其中,E0为点源在无限远区形成的辐射场。

把单元天线当作点源来考虑,主要考虑天线单元的排列方式对天线性能的影响,排列方式是指天线单元之间的横向间距和纵向间距,通过Matlab对式(4)进行数值计算,运算的结果如图3所示。

数值计算结果直观的显示出了阵列天线辐射场的空间分布,由数值计算结果可以看出,间距dx,dy由80 mm增大到110 mm过程中,波瓣变窄,旁瓣电平随之抬升。在考虑天线性能以及天线尺寸的情况下,间距dx,dy取90~100 mm较为妥当。

3 天线仿真结果

根据Matlab对阵列天线结构的运算结果,在HFSS中按照运算结果进行阵列天线的模型设计,HFSS中仿真的四单元阵列天线图如图4所示。

HFSS中所建立的阵列天线仿真模型,单元天线为矩形微带天线,贴片与反射面之间为空气介质。通过对天线结构参数的适当调整,天线性能达到理想状态,此时天线结构参数h为18 mm,W为128 mm,L为140 mm,单元天线的间距dx=dy=96mm,此时天线增益达到12.94 dBi。天线的三维方向图以及回波损耗如图5所示。

由于仿真环境存在差别,对于Matlab数值计算的结果需要适当调整,由天线仿真结果来看,介质厚度h对天线的带宽影响比较大,带宽与h值成正比例关系。W的尺寸影响着天线的方向性函数,随着W尺寸的变大,天线的频带宽度和辐射效率都有所改善,相比之下,L对天线的影响较小。L,W共同决定天线的尺寸;在保持单元天线尺寸不变的情况下,随着单元天线间距dx,dy的变大,天线增益变大,带宽减小。

由仿真结果来看,HFSS仿真过程中天线的结构参数、天线性能的变化趋势与Matlab理论计算一致,Matlab的数值计算给天线设计提供了快速有效的指导意义。

4 结语

本文在阵列天线设计中引入Matlab进行辅助设计,利用其高效的数值计算能力和强大的绘图功能,从而把复杂的理论函数关系以数值曲线、方向图的形式直观的显示出来,因此可直观地了解阵列天线性能随着天线结构参数的变化情况,最终为阵列天线设计提供快速有效的指导意义。实验结果表明,利用Matlab进行辅助设计可以满足特定条件下阵列天线高效、快速的设计要求。

参考文献

[1]POZAR D M,SCHAUBERT D H.Microstrip antennas:Theanalysis and design of Microstrip Antennas and arrays[M].[S.l.]:Wiley IEEE Press,1995.

[2]邵一鹏,白明,马慧瑾,等.ETC用5.835GHz微带阵列天线的设计[J].现代电子技术,2012,35(4):148-151.

[3]陈天禄,郭燕红.阵列天线方向图的Matlab实现[J].西藏大学学报:自然科学版,2010,25(1):103-107.

[4]肖磊,蔡君.Matlab在相控阵天线中的应用[J].青海大学学报:自然科学版,2004,27(4):42-48.

[5]汪茂光,李周淼,吴黎明.阵列天线分析与综合[M].成都:电子科技大学出版社,1999.

[6]阮成礼.超宽带天线理论与技术[M].哈尔滨:哈尔滨工业大学出版社,2006.

[7]方大纲.天线理论与微带天线[M].北京:科学出版社,2006.

[8]林昌禄,聂在平.天线工程手册[M].北京:电子工业出版社,2002.

[9]刘燕.阵列天线方向图综合算法研究[D].西安:西北工业大学,2007.

matlab数值分析实例 篇3

1 关于MATLAB软件

MATLAB是矩阵实验室Matrix Laboratory的简写, 它是一款数学软件, 主要用于数值运算, 它可以实现矩阵的运算、绘制函数和数据, 同时, 它还具有实现算法、创建用户界面的功能, 它的语法简单, 编程易于学习, 对现在的学生操作起来较容易, MATLAB软件强大的符号运算功能, 几乎包括了高等数学所涉及到所有的运算, 是当代理工科大学生应熟练掌握的一款数学软件。

2 关于数值分析课程的特点

数值分析是大学理工科开设的一门专业课, 学习内容涉及的范围较广, 主要有误差分析, 线性方程组的解法, 插值法和数据拟合, 数值微分与积分, 非线性方程及方程组的解法, 常微分方程数值解。③通过该课程的学习, 学生应该能够掌握一些常见数值方法的构造原理并且能达到在实际问题中的正确使用, 对某些现象能利用所学的知识给出较为合理的解释, 比如说关于方法的误差、收敛性、所分析的问题的性态等, 同时还要求学生具有一定的计算机编程能力, 能将本课程中常见的数值方法编写成程序且在计算机上运行, 得出正确的结果。

3 数值分析课程教学中存在的问题

从数值分析的教科书上可以看出来, 这门课程中的公式推导和算法比较多, 计算量相对比较大, 若教师整堂课都在讲公式推导, 没有加丝毫的实际演示过程, 这样的教学过程很难调动学生主动学习的积极性, 繁琐枯燥的数学公式推导只会导致学生失去对该课程的学习兴趣, 严重影响到课堂教学中学生与教师的互动。例如, 我们在讲三次样条插值时, 关于三次样条插值函数的计算非常的繁琐和复杂, 但若结合MAT-LAB软件, 学生还知道, 直接调用软件中的库函数也是可以实现的, 当然他们也可以通过自编程序实现插值过程。

4 基于MATLAB软件的数值分析课程的教学

4.1 用MATLAB软件实现具体的实例来进行数值分析课程的教学

在数值分析课程的教学中, 由于本门课程较强的应用性和教学内容的复杂性, 如果对于课程中遇到的较难理解的基本概念和主要方法, 教师都能够用尽可能多的具体实例来给予诠释, 那么, 这便已经是对数值分析课程教学改革的一个很好的尝试。因此, 结合数值分析这门课程理论教学的特点和存在问题, 教师只有改进传统的单一的教学模式, 才能更好地提高这门课程的教学效果, 从而能够使学生对所学内容有一个完整的理解和掌握。

对于实例教学, 如果我们使用MATLAB则很容易地可以实现大量复杂的数值计算和图形, 但如果用传统教学方式则难以解决同样的问题。例如在讲曲线拟合时, 就可以用人口增长问题作为实例。关于人口增长有两个基本的模型:指数增长模型和阻滞增长模型, 按照以上两种模型再结合线性最小二乘法, 我们就可以分别拟合出美国1790至1990年的人口数据, 还可以让学生观察下我们拟合出的结果与真实数据之间的差异。④又如三次样条插值问题, 常微分方程数值解问题, 数值积分问题等等, 我们都可以很容易地使用MATLAB软件提供的现有的函数直接得出想要的结果。⑤

4.2 用MATLAB软件实现教学内容的直观化形象化来进行数值分析课程的教学

现在, 随着计算机技术的迅速发展以及各类教学演示软件的开发, 在我们的课堂教学中, 可视化教学必会成为数值分析课程教学改革的一个方向, 因此, 对于本课程中问题的引入, 算法的讲解以及最终的结果, 教师尽可能都将其转化成图形等可视的结果展示给学生, 从而更形象, 减轻学生的学习压力, 来更好地激发他们的学习兴趣, 而MATLAB这款数学软件, 正具备有良好的可视化功能, 若将其合理地应用到我们的教学中, 必定会产生良好的教学效果。

对本课程中许多问题的求解过程, 在课堂教学中, 教师若能应用MATLAB软件直接进行演示, 就可以将枯燥抽象的数学内容, 繁杂庞大的计算过程非常直观地呈现出来, 从而使学生有着非常鲜明的感性认识。例如, 在讲利用雅可比迭代、高斯—赛德尔迭代和超松弛迭代法求线性方程组的数值解时, 教师直观形象的展示后, 要求学生比较这三种不同的方法, 它们各自的收敛速度如何以及收敛和发散的区别, 这些问题的提出, 都能够大大地激发学生的学习兴趣, 同时, 还可以逐渐培养学生的科学计算能力。

4.3 用MATLAB软件来进行数值分析课程的实验教学

实验是数值分析课程教学的一个重要组成部分, 是学生从理论知识到实际应用的一个重要过程, 利用计算机进行数学实验成为学生加深对所学知识的认识的一个重要手段, 但如果用C语言来实现, 就比较困难, 而且如果算法选择不好, 还可能得出错误的结果, 况且绘制图形本身也是C语言的一个难点, 而如果我们用MATLAB软件来实现就会很容易, 因为ATLAB具有强大的计算功能、图形处理和良好的交互界面等功能, 因此它是进行数值实验理想的工具, 这样, 对于C语言很复杂的算法, 利用MATLAB, 只需要直接调用其现有的函数, 加上几个简单的语句, 就可以得出其图形, 而且得出的图形美观、准确, 在用MATLAB软件进行数值实验的过程中, 通过数形结合学生不仅掌握了教学内容, 而且也会深刻体会到现代计算工具的魅力, 减轻学生学习压力的同时, 让学生自己更积极地来学习该门课程。

注释

11 韩旭里, 万中.数值分析与实验[M].北京:科学出版社, 2006.

224万中, 罗汉.加强开放性数学实验课程研究推动数学教育改革[J].大学教育科学, 2003.84 (4) :52-53.

33 丁丽娟, 程杞元.数值计算方法.北京:北京理工大学出版社, 2005.8.

matlab数值分析实例 篇4

柴油机的燃油喷射系统即燃料供给系统,被公认为柴油机的“心脏”,燃油喷射特性与雾化质量对提高柴油机的做功能力和改善柴油机工作特性、降低燃油消耗率和减少排气污染等都有着极其重要的影响,因此对柴油机供油方面的研究就显得相当重要。喷射系统中有很多参数影响喷射性能,要想全面系统地论述它们对喷射过程的影响是比较复杂的问题,柴油机喷油系统的模拟计算是研究和改善柴油机燃油系统的一条重要途径[1,2,3,4,5,6,7]。它不仅能使我们对复杂的喷射过程获得深刻的理解,进而提出改进方案,而且能使我们在最短的时间内,以最低的费用,对大量的燃油系统结构所能产生的喷射特性进行比较,并从中选出最佳方案。本文的主要工作是根据泵-管-嘴式喷油系统的组成和各部件的特征,编写系统各部分的连续方程和运动方程,建立泵-管-嘴喷油系统的数学模型喷油泵和喷油嘴端作为其相应的边界条件进行求解。运用数值计算软件MATLAB进行编程模拟计算,程序运行后可得到相应喷油参数曲线。

1 物理数学模型

1.1 物理数学模型

本文模拟计算所采用的柴油机燃油喷射系统为柱塞泵式喷油系统,主要包括喷油泵、喷油嘴和高压油管等几部分。其喷油过程为:凸轮驱动燃油泵柱塞,压缩燃油;建立起高压克服出油阀弹簧力,油泵开始供油;燃油经高压油管到喷油器,克服喷油器启喷压力,向气缸内喷油,燃烧,做功。各工况要求的喷油量不同,油泵柱塞上必须加工有控制供油量的螺旋线。

为方便分析与计算,进行如下简化假设:

1)忽略高压油管接口处的集中容积、油管变截面等对喷射过程的影响。

2)喷油压力变化所引起的温度变化是微小的,因此不考虑温度随压力和时间的变化。

3)高压油管较细,其直径3mm,因此管内流动认为是一维有摩擦不稳定流动,流体流动阻力由稳定流动公式计算。

4)燃油在柱塞增压腔、出油阀外紧帽腔以及针阀腔中的流速很低,因此认为燃油在各腔中静止压缩、膨胀,状态变化瞬间达到平衡。

5)燃油通过各节流孔时的流动,在微小时间间隔内认为是定常流动,因此节流孔处的流量由伯努力方程计算。喷孔处的流量系数由实验确定,其它各孔处的流量系数取经验值。

6)不考虑喷油系统的弹性变形(当不考虑系统变形造成的计算误差在1%以内)。

7)不考虑运动件(出油阀和针阀)所受到的摩擦阻力,不考虑弹簧的自振。

由基本假定3)得知,燃油在管内的流动状态可以由一维不稳定流动方程确定,该方程为:

1.2 初始边界条件

关键即为初始条件和边界条件的确定。

1.2.1 初始条件

在喷射过程开始之前,油管中各点处的速度为零,压力为残余压力。即:

1.2.2 边界条件

高压油管的边界条件为:

PK和PN分别为出油阀腔压力和针阀腔压力,它们可由边界方程求出。

1)高压油泵侧边界条件的计算:即PK的求取。油泵边界可以写成如下通式:

其中:

η数值取决于出油阀的运动状态,即:

δ表示燃油流经出油阀时的运动方向,即:

γ表示燃油流经柱塞套筒上的油孔时的运动方向,即:

2)油嘴侧边界条件的计算,即PN的求取。油嘴边界可以写成如下通式:

式中,系数β表示针阀的运动状态,即:

系数ξ表示燃油流经喷孔的情况,即:

1.2.3 模型验证

为了验证设立模型的正确性,按照南车集团浦镇机车厂的试验条件进行了相应的计算,计算值与实验值的比较如图1,图中横坐标为时间,单位为ms,纵坐标为油泵压力,单位kPa。可以看出计算结果与实验结果趋势一致,数值误差也较小,可以认为所设立的模型是适用的。

2 计算结果分析

2.1 负荷对喷油系统性能影响

图2为不同负荷下油泵压力及喷油器压力的计算结果,横坐标为曲轴转角,单位为0(度),纵坐标为压力,单位kPa。

由图2可知喷油器压力滞后于油泵压力3~50左右,喷油器的最大压力略小于油泵的最大压力;随着负荷的增加,油泵最大压力和喷油器最大压力都显著增加,其中油泵最大压力由50%负荷的540kPa增加到100%负荷的800kPa,喷油器最大压力由50%负荷的520kPa增加到100%负荷的750kPa。

由图2还可以看出随着负荷的增加,油泵和喷油器升压曲线在低负荷时有所前移,但负荷大于75%负荷后升压曲线不再前移;而泄压曲线随着负荷的增加而后移;随着负荷的增加最大压力点压力增加,位置后移。

同样由图2可以看出喷油系统工作过程中出现了二次喷射,并且负荷越大,二次喷射现象越明显。

2.2 转速对喷油系统性能的影响

图3为不同转速下的油泵及喷油器压力计算结果,横坐标为曲轴转角,单位为0(度),纵坐标为压力,单位kPa。

由图3可知随着转速的提高,最大压力点的压力值明显增加,并且位置有所后移。升压曲线在不同转速下基本重合,而泄压曲线随着转速的提高有所后移。在所研究的转速范围内,均出现了二次喷射现象,并且转速越高,二次喷射现象越严重。

3 结论

本文在自己编程的基础上研究了负荷及转速对喷油系统工作性能的影响,得出了以下结论:

1)在所研究的50%以上负荷以及所研究的转速范围内均出现了二次喷射,并且二次喷射的严重程度随着负荷的增大以及转速的提高而增加。

2)负荷不同时,随着负荷的增加,在低负荷时油泵及喷油器的升压曲线略有前移,而高负荷时基本重合,泄压线随着负荷的增加逐步后移。

3)转速不同时,升压线位置基本不变,而泄压线随转速的增大而后移。

4)油泵及喷油器的最大压力出现位置随负荷的增加而后移,随转速的升高而后移,并且最大压力的压力值随着位置的后移而增大。

摘要:本文根据泵-管-嘴式喷油系统的组成和各部件的特征,编写系统各部分的连续方程和运动方程,建立泵-管-嘴喷油系统的数学模型。喷油泵和喷油嘴端作为其相应的边界条件进行求解。运用数值计算软件MATLAB进行编程模拟计算,程序运行后得到不同负荷、不同转速下的燃油压力参数曲线,并对之进行了比较分析。

关键词:柴油机,喷油过程,数值研究,MATLAB

参考文献

[1]虞金霞,胡先富.柴油机燃油喷射系统的计算机仿真及分析.上海海运学报,2001(2)

[2]方昌良,张宗杰,杨继红.柴油机喷油参数的优化.华中理工大学学报,2000(8):33-34

[3]徐家龙.论柴油机燃油喷射的计算研究.油泵油嘴技术,1994(4):1-25

[4][苏]и.В.阿斯达赫夫著.柴油机的供油与燃油雾化.米鹤颐译.北京:国防工业出版社,1977.7

[5][日]广安博之著.柴油机燃油喷射系统(译文集).贾锡印,田忠魁译.北京:国防工业出版社,1980.12

[6]颜龙,何勇灵,宗永平等.柴油机供油系统中压力波信号的小波分析.洛阳工学院学报,2001.9,vol.22(3):37-39

matlab数值分析实例 篇5

Matlab是矩阵实验室 (Matrix Laboratory) 的简称, 20世纪70年代, 美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担, 用Fortran编写了最早的Matlab。1984年由Little、Moler、Steve Bangert合作成立的Math Works公司正式把Matlab推向市场作为商业数学软件, 用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境, 主要包括Matlab和Simulink两大部分。到20世纪90年代, Matlab已成为国际控制界的标准计算软件, 在国际学术界, Matlab已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上, 尤其是信息科学刊物, 都可以看到Matlab的最前沿和尖端的应用。Math Works现有2800名员工, 其中有30%位于美国境外。在2012年营收为$7.5亿美元, 其中超过60%来自美国以外的市场, 自公司创立以来每年均盈利。自创立于1984年到现在全球有超过百万Matlab用户, 400个以Matlab和Simulink为基础而开发的第三方解决方案1500本Matlab基础书籍, 涵盖28种语言。Math Works的产品作为研究和开发的基础工具而在汽车、航空、通信、电子和工业自动化等领域得到广泛的应用。它们还被应用于金融服务和计算生物学等对建模和仿真有越来越高要求的技术领域。MathWorks软件可用来辅助许多尖端产品的设计和开发, 包括汽车系统、航空飞行控制和航空电子、通信和其他电子产品、工业机械和医疗器械等。全球有超过5000家的大专院校采用Math Works的解决方案来开展多种技术学科的教学和研究工作。在欧美大学里, 诸如应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教科书都把Matlab作为内容。这几乎成了90年代教科书与旧版书籍的区别性标志。在那里, Matlab是攻读学位的大学生、硕士生、博士生必须掌握的基本工具。因此, 高等专科院校微积分与数学实验教学中, 学生只要学会了Matlab, 就可以方便的处理诸如矩阵变换及运算、微积分运算、多项式运算、代数方程求解、微分方程求解、插值与拟合、概率统计及最优化等问题。现在, Matlab还可以与C、VC++、Excel、SPSS等语言进行连接, 以充分利用各种资源。

二、用Matlab首屈一指的可视能力, 触摸微积分教学中可望而不可及的概念

Matlab语言的传统优点自问世起, 就以数值计算称雄, 其基本数据单位是矩阵, 它的图形可视能力在所有数学软件中是首屈一指的, 图形系统有高层和低层两个部分组成。高层指令友善、简便;低层指令细腻、丰富、灵活。一般说来, 不管二元函数或隐函数多么复杂, 例如有实际应用研究价值和意义的三维爱的方程式和墨西哥曲线 (或墨西哥小帽) 的解析式分别如下:

它们的三维图形和性质, 仅需10条左右指令, 就能得到富于感染力的表现。

在Matlab7.1命令窗口输入>>Mxgqx, 运行结果如图1所示。

三、多关注Matlab的发展前景和影响力, 就对微积分教学多一点展望和期待

近几十年来随着计算机及科学技术的迅速发展, 求解各种数学问题的数值计算方法也愈来愈多的应用于科学技术的各个领域, 新的数值计算性交叉学科分支不断涌现, 如计算力学, 计算化学, 计算生物学和计算经济学等, 它们涉及数学的各个分支, 研究它们适合于计算机编程求解。这就对高等数学的教学工作提出了挑战和改革的新理念, 既要保持纯数学的高度抽象性与严密科学性, 又要有应用广泛性与实际数值计算实验高度技术性。过去传统式地微积分教学理念已不能满足当今社会复合型人才的需要。如今的教学理念不仅包括理论层面、操作层面和学科层面, 而且还需囊括交叉学科之间数值计算与软件实现层面。微积分教学需开设数学实验课程的主要目的是提高学生综合应用数学知识、数学软件和计算机技术解决实际问题的能力。从实际问题出发, 借助计算机, 通过学生亲自设计和动手, 体验解决问题的全过程, 从实验中去探索、学习和发现数学规律, 充分调动学生学习的主动性。培养学生的创新意识, 运用所学知识, 建立数学模型, 使用计算机并利用数学软件解决实际问题的能力, 最终达到提高学生数学素质和综合能力的目的。

Matlab软件是一门开阔视野, 扩大知识领域, 改善学习数学环境的锐利工具, 通过对它的接触和应用, 可以了解到Matlab发展之历程、功能之强大、语言之简单, 编程之高效、绘图之方便、工具箱之丰富、应用领域之广泛、版本更新之迅速、Math Works公司基本概况之壮观。本科四年学生真正学到了什么值得在今后的学习和工作晋升中思念和检验, 微积分教学训练了学生什么样的思维方式和什么样的动手操作能力值得我们教师反思和改进。对Matlab没有接触或深入了解学习的数学教师和学生, Matlab和Math Works公司的全球发展前景需要你们的关注。因为Matlab对数学教学的作用以及对毕业生今后工作的影响、发展深造、帮助创新、广泛应用、动手能力的培养值得深思和拭目以待。

摘要:本文源于笔者自身教学实践的感悟, 介绍了微积分教学离不开Matlab软件与数值计算的新理念, 既是深化微积分教学改革和推进复合型人才教育的需要, 又是促进新的计算性交叉学科教育的需要。

关键词:Matlab软件,MathWorks公司,数学实验,微积分,教学

参考文献

[1]贵州财经大学数学与统计学院.高等数学讲义[M].上、下册, 2010.

[2]同济大学数学系.高等数学[M].第六版.上、下册.北京:高等教育出版社, 2007.

[3]吴传生.经济数学——微积分[M].第二版.北京:高等教育出版社, 2009.

[4]隋如彬, 吴刚, 杨兴云.微积分[M].北京:科学出版社, 2007.

[5]杨一都, 陈震, 王华, 黄秋梅.Matlab6.5与数值计算[M].贵阳:贵州人民出版社, 2005.

上一篇:文化新闻出版局工作总结下一篇:村账乡镇代理工作

热门文章
    相关推荐