- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数学建模之计算机模拟讲述
数学建模之计算机模拟 武汉理工大学理学院统计学系 李宇光 制作 数学建模之计算机模拟 什么是计算机模拟 为什么要进行计算机模拟 适用于计算机模拟解决的问题 计算机模拟步骤 计算机模拟应用举例 什么是计算机模拟 计算机模拟也叫计算机仿真,是用计算机对一个系统的结构和行为进行动态演示,以评价或预测一个系统的行为效果,为决策提供信息的一种方法,即:用计算机程序直接建立真实系统的模型,并通过计算了解系统随时间变化的行为或特性。 计算机模拟分为连续系统仿真和离散系统仿真两大类,这里只对离散系统作初步介绍。 为什么要进行计算机模拟 不在一个真实系统上实验而是在计算机上模拟,原因主要有以下几点 实际系统建立起来之前,要对系统的行为或结果进行分析研究,计算机模拟是行之有效的方法。 在一些真实系统上做实验可能会影响系统的正常运行,如生产中任意改变工艺参数可能会导致废品,在经济活动中随意将一个决策付诸行动可能会引起经济混乱。 当人是系统的一部分时,他的行为往往会影响实验的效果,这时最好对系统进行模拟研究。 在实际系统上实验无法保证每次操作条件完全相同,难以正确判断实验结果的好坏。 有些实验时间长、费用高、危险性大,使得实验不易进行 有的系统建立之后无法复原,事件发生不可逆。 鉴于以上原因,人们一般不直接对真实系统进行实验,而是根据系统的机理进行计算机模拟。 适用于计算机模拟解决的问题 下列情形中,计算机模拟能有效解决问题: 难以用数学公式表示的系统或没有建立和求解数学模型的有效方法。 虽然可用解析的方法解决问题,但数学计算和分析过于复杂,这时计算机模拟可能提供简单可靠的求解方法。 希望能在较短时间内观察到系统发展的全过程,以估计某些参数对系统行为的影响。 难以在实际环境中进行实验和观察时,计算机仿真是唯一可靠的方法,如太空飞行研究。 需对系统或过程进行长期运行比较,从大量方案中寻优时。 计算机模拟步骤 计算机模拟,大致可分为以下四个步骤: 系统分析:明确问题并提出总体方案。首先要把被模拟的系统内容表达清楚,弄清仿真的目的和系统边界(即所研究的问题涉及的范围,包括要把所研究的系统与影响系统的环境区分开来。)确定问题的目标函数和可控变量,并加以数量化,找出系统的实体、属性和活动,描述子系统与总系统的关系。 模型构造:包括建立模型、收集数据、编写程序、程序验证和模型确认等。建立模型就是选择合适的仿真方法,确定系统的初始状态,设计整个系统的仿真流程图。然后根据需要收集、整理数据,用通用语言或仿真语言编写、调试程序。 计算机模拟步骤 计算机模拟,大致可分为以下四个步骤: 模型运行和改进:首先确定一些具体的运行方案,如初始条件、参数、步长、重复次数等,然后输入数据,运行程序,将得出的仿真结果与实际系统比较,进一步分析和改进模型,直到符合实际系统要求为止。 设计格式输出仿真结果:包括提供文件的清单,记录重要的中间结果,输出格式要有利于用户了解整个仿真过程,分析和使用仿真结果。 计算机模拟应用举例 时间步长法:在系统仿真中,把整个仿真过程分成若干相等的时间间隔,在每一步长内,认为系统所处的状态相同,按照时间流逝顺序,一步一步地对系统活动进行模拟的方法。选取系统的初始状态为时钟零点,仿真时钟每进一次,就对系统状态的一次变化。这一过程,一直到仿真时钟结束为止。 计算机模拟应用举例 例1 池水含盐量问题 某水池有2000m3水,其中含盐2kg,以每分钟6m3的速率向水池内注入含盐率为0.5kg/m3的盐水,同时又以每分钟4m3的速率从水池流出搅拌均匀的盐水。欲使池中含盐率达到0.2kg/m3,需经过多少时间? 引入记号: 注水速率VI=6m3/min 排水速率VO=4m3/min 注入水含盐率SI=0.5kg/m3 最终含盐率SF=0.2kg/m3 T时刻水的体积VTm3 T时刻水的含正盐量STkg T时刻水的含盐率SR=ST/VT kg/m3 计算机模拟应用举例 例1 池水含盐量问题 仿真框图 计算机模拟应用举例 例1 池水含盐量问题 仿真程序:利用matlab 计算机模拟应用举例 例1 池水含盐量问题 仿真程序:利用matlab计算结果: 时间 池水体积 含盐量 含盐率 计算机模拟应用举例 例1 池水含盐量问题
文档评论(0)