计算机仿真与建模实验报告
- 格式:doc
- 大小:125.00 KB
- 文档页数:9
一、实验内容:实验三 利用欧拉法、梯形数法和二阶显式Adams 法对RLC 串联电路的仿真1前向欧拉法状态方程:Du CX y Bu AX X m +=+=+•1 然后根据前向欧拉法(其中h 为步长)•++=m m m hX X X 1即可得到系统的差分方程2后向欧拉法根据前向欧拉法得到的系统状态方程,结合后向欧拉法(其中h 为步长)•+++=11m m m hX X X 即可得到系统的差分方程3梯形法由前面的系统状态方程,结合梯形法)(211+••+++=m m m m X X h X X 即可得到系统的差分方程4二阶显式Adams 方法由前面的状态方程,结合二阶显式Adams 方法)51623(12211--++-+=m m m m m F F F h X X 即可得到系统的差分方程但是二阶显式Adams 法不能自起步,要使方程起步,需要知道开始的三个值,但是我们只知道第一个值。
经过分析后,二阶显式Adams 方法精度是二阶的,而梯形法精度也是二阶的,因此我们可以先借助梯形法得到输出的前三个值,以达到起步的目的,然后借助上面得到的差分方程对其进行求解。
二、实验波形:下图为前向欧拉法、后向欧拉法、梯形法、二阶显式Adams 方法的系统差分方程得到相应的输出波形:图1 h=410 时四种方法的输出波形图2 h=56-⨯时四种方法的输出波形10图3 h=510-时四种方法的输出波形图4 h=610-时四种方法的输出波形三、实验分析:由输出波形可以看到各种方法的特点(在图中蓝色线均表示连续系统模型的实际输出波形,红色线表示在对应方法下系统的输出波形。
):1前向欧拉法和二阶显式Adams方法对步长的要求很强。
步长太大,最后的到的结果不是绝对收敛,而是发散。
在小步长下才显得收敛,这也从另一方面验证,步长越小,截断误差越小;2步长不能太小,太小的步长相应的舍入误差和累积误差也会增大;3前向欧拉法也可称为显式欧拉法,后向欧拉法也可称为隐式欧拉法,可以看到,后向欧拉法的稳定域要比前向欧拉法大,计算精度也要高一些。
计算机仿真技术实验报告实验一 利用替换法构建系统仿真模型实验一.实验目的a) 熟悉MATLAB 的工作环境;b) 掌握在MATLAB 命令窗口调试运行程序;c) 掌握M 文件编写规则及在MATLAB 命令窗口运行程序; d) 掌握利用替换法构造离散模型的方法。
e)二.实验内容电路如图1所示电路进行仿真试验。
元件参数:V E 1=,Ω=10R ,H L 01.0=,F C μ1=。
初始值:A i L 0)0(=,V u c 0)0(=。
输出量电容电压)(t u c 。
DC)(t u c 图1 RLC 串联电路三、实验要求a) 利用替换法建立图1电路的离散数需模型; b)建立计算机仿真模型;c) 选择一组离散时间间隔值,进行仿真试验; d)分析仿真结果,从仿真模型实现的难易性、模型的稳定性、模型的精度及离散时间间隔等方面,对两种方法构造的离散系统模型进行对比分析,并给出分析结论。
四、实验原理及方法系统的数学模型根据计算可知:该连续系统的传递函数为2(s)1(s)(s)1c U G U LCs RCs ==++ 下面对系统的离散仿真模型进行分析:1. 简单替换法由简单替换法计算方法可知,将1z s T-=带入上式得到下面的传递函数方程: 22221()11111()*[2()]*(1())G z LC z RC LC z LC RC T T T T T=+-++- 由此得到该传递函数的差分方程:338282(n 2)(210T)y(n 1)(10T 110T )y(n)10y T +=-++--+2. 双线性替换法根据计算,得到该种方式下的传递函数方程:222222*1()11111[4()2()1]*[28()]*[4()2()1]z z G z LC RC z LC z LC RC T T T T T++=+++-+-+并由此得到差分方程:82823828231(n 2)((8210T )y(n 1)(10T 102T 4)y(n)410T )101024y T T +=-⨯+--⨯++⨯+⨯+五、实验结果根据以上理论编程并得到以下结果:利用简单替换法和双线性替换法仿真数据,依次为采样时间增加的图像。
第1篇实验名称:仿真软件操作实验实验目的:1. 熟悉仿真软件的基本操作和界面布局。
2. 掌握仿真软件的基本功能,如建模、仿真、分析等。
3. 学会使用仿真软件解决实际问题。
实验时间:2023年X月X日实验地点:计算机实验室实验器材:1. 仿真软件:XXX2. 计算机一台3. 实验指导书实验内容:一、仿真软件基本操作1. 打开软件,熟悉界面布局。
2. 学习软件菜单栏、工具栏、状态栏等各个部分的功能。
3. 掌握文件操作,如新建、打开、保存、关闭等。
4. 熟悉软件的基本参数设置。
二、建模操作1. 学习如何创建仿真模型,包括实体、连接器、传感器等。
2. 掌握模型的修改、删除、复制等操作。
3. 学会使用软件提供的建模工具,如拉伸、旋转、镜像等。
三、仿真操作1. 设置仿真参数,如时间、步长、迭代次数等。
2. 学习如何进行仿真,包括启动、暂停、继续、终止等操作。
3. 观察仿真结果,包括数据、曲线、图表等。
四、分析操作1. 学习如何对仿真结果进行分析,包括数据统计、曲线拟合、图表绘制等。
2. 掌握仿真软件提供的分析工具,如方差分析、回归分析等。
3. 将仿真结果与实际数据或理论进行对比,验证仿真模型的准确性。
实验步骤:1. 打开仿真软件,创建一个新项目。
2. 在建模界面,根据实验需求创建仿真模型。
3. 设置仿真参数,启动仿真。
4. 观察仿真结果,进行数据分析。
5. 将仿真结果与实际数据或理论进行对比,验证仿真模型的准确性。
6. 完成实验报告。
实验结果与分析:1. 通过本次实验,掌握了仿真软件的基本操作,包括建模、仿真、分析等。
2. 在建模过程中,学会了创建实体、连接器、传感器等,并能够进行模型的修改、删除、复制等操作。
3. 在仿真过程中,成功设置了仿真参数,启动了仿真,并观察到了仿真结果。
4. 在分析过程中,运用了仿真软件提供的分析工具,对仿真结果进行了数据分析,并与实际数据或理论进行了对比,验证了仿真模型的准确性。
本次实训的主要目的是通过实际操作和项目实践,使我对计算机算法及建模有更深入的了解和掌握。
通过实训,我将学习到算法的基本原理、常用算法的实现方法,以及建模的基本步骤和技巧。
同时,通过实际项目操作,提高我的编程能力和解决实际问题的能力。
二、实习内容1. 算法学习在本次实训中,我学习了以下几种常用算法:(1)排序算法:冒泡排序、选择排序、插入排序、快速排序、归并排序等。
(2)查找算法:顺序查找、二分查找、斐波那契查找等。
(3)动态规划:最长公共子序列、最长递增子序列等。
(4)贪心算法:背包问题、最小生成树等。
2. 建模学习在本次实训中,我学习了以下建模步骤和技巧:(1)明确问题背景:分析问题的性质,确定问题的类型。
(2)建立数学模型:根据问题背景,选择合适的数学工具,建立数学模型。
(3)求解模型:使用算法求解数学模型,得到问题的解。
(4)结果分析:对求解结果进行分析,评估模型的适用性和准确性。
3. 实践项目本次实训中,我参与了以下项目:(1)图书管理系统:使用Java编程语言,实现了图书的借阅、归还、查询等功能。
(2)学生成绩管理系统:使用C++编程语言,实现了学生成绩的录入、查询、统计等功能。
(3)背包问题求解器:使用Python编程语言,实现了背包问题的贪心算法和动态规划算法求解。
1. 理论知识掌握通过本次实训,我对计算机算法及建模的基本原理和常用方法有了更深入的了解。
我能够熟练掌握排序、查找、动态规划、贪心算法等基本算法,并能够根据实际问题选择合适的算法进行求解。
2. 编程能力提高在实训过程中,我参与了多个项目的实际开发,提高了我的编程能力。
我学会了使用Java、C++、Python等编程语言进行项目开发,并掌握了基本的编程规范和技巧。
3. 解决实际问题能力增强通过实际项目操作,我学会了如何将实际问题转化为数学模型,并使用算法进行求解。
这使我能够更好地解决实际问题,提高我的解决实际问题的能力。
四、实习总结1. 算法及建模在计算机科学中的应用非常广泛,是计算机专业学生的必备技能。
计算机仿真技术实验报告今天我要给大家讲一讲我做的计算机仿真技术实验。
这个实验可有趣啦,就像玩一场超级神奇的游戏。
我做这个实验的目的呢,就是想看看计算机怎么能像变魔术一样模拟出真实的东西。
我用到的工具就是学校电脑室里的电脑,那电脑的屏幕大大的,闪着光,好像在等着我去探索它的秘密。
实验开始的时候,我打开了一个专门做仿真的软件。
这个软件的界面花花绿绿的,有好多小图标。
我点了一个看起来像小房子的图标,屏幕上就出现了一个简单的小房子模型。
这个小房子就像我们用积木搭起来的一样,方方正正的,还有个三角形的屋顶。
我可以用鼠标拖着它转来转去,从各个角度看这个小房子,就像我真的围着小房子在走一样。
然后呢,我想让这个小房子变得更像真的。
我就在软件里找到了一个可以给小房子加颜色的功能。
我给房子的墙涂成了白色,就像我们家的房子一样。
屋顶呢,我涂成了红色,就像圣诞老人的帽子。
这时候的小房子看起来漂亮多了,就像从童话里走出来的一样。
接着,我又想给小房子周围加点东西。
我就在软件里找啊找,发现了可以加树的工具。
我在小房子前面加了几棵大树,那些大树有粗粗的树干和绿绿的树叶。
我还在树下加了一些小花,五颜六色的小花在风中好像还会轻轻晃动呢。
现在小房子看起来就像是住在森林里的小木屋,感觉特别温馨。
在这个实验里,我还发现了一些特别有趣的事情。
比如说,我可以让太阳在小房子的上空移动。
当太阳慢慢升起的时候,阳光洒在小房子和树上,小房子和树的影子就会慢慢变短。
当太阳慢慢落下的时候,影子又会变长。
这就像我们在外面玩的时候,早上和傍晚影子长长的,中午影子短短的一样。
我还能让天空中的云动起来。
我加了一些白白的云,那些云就像棉花糖一样。
我让风一吹,云就慢慢地飘走了,有的云还会变成各种形状,像小兔子,像小绵羊。
这个计算机仿真技术实验真的太好玩了。
它就像一个魔法世界,我可以在这个世界里创造出我想要的东西。
通过这个实验,我也明白了计算机好厉害呀,它能做出这么像真的东西。
计算机仿真技术实验报告1. 引言计算机仿真技术是一种基于计算机模型的虚拟实验手段,通过对真实系统的建模和仿真运行,可以模拟系统在不同条件下的行为和性能,从而实现系统优化、预测和决策支持等目的。
本实验旨在通过一个简单的例子,介绍计算机仿真技术的基本原理和应用。
2. 实验目的掌握计算机仿真技术的基本原理和方法,通过实际操作了解模型建立、参数设置和结果分析等相关内容。
3. 实验过程3.1 模型建立选择一个适合的仿真软件,如Arena、Simulink等,并根据实际需要,在软件中建立相应的仿真模型。
模型的建立包括确定系统的输入、输出、变量和参数,并定义其关系和约束条件。
3.2 参数设置为了保证仿真结果的准确性和可靠性,需要对模型中的参数进行设置。
根据实际情况,选择合适的参数值,并考虑不同参数对仿真结果的影响。
3.3 仿真运行设置好参数后,可以运行仿真程序,观察系统在不同条件下的运行情况。
可以通过改变输入、输出、变量和参数等相关参数,来模拟不同的系统行为。
3.4 结果分析根据仿真运行的结果,进行相应的数据分析和结果评估。
可以通过绘制柱状图、折线图、散点图等,直观地展示系统的性能和行为。
4. 实验结果与讨论根据实际情况,展示实验的结果,并进行相应的讨论。
可以比较不同参数下的仿真结果,分析其差异和影响因素。
在讨论时,可以考虑系统的稳定性、效率、安全性等方面。
5. 实验结论通过本次实验,我们深入了解了计算机仿真技术的基本原理和方法,并通过实际操作,掌握了模型建立、参数设置和结果分析等相关技能。
计算机仿真技术具有广泛的应用领域,包括交通运输、物流管理、生产调度、风险评估等,可以帮助我们理解和优化现实系统的运行和性能。
6. 参考文献[1] Robert, J. (2007). Simulation Modeling and Analysis. Boston: McGraw-Hill.[2] Banks, J., Carson, J., Nelson, B. L., & Nicol, D. M. (2000). Discrete-Event System Simulation. New Jersey: Prentice Hall.7. 致谢感谢实验指导教师对本次实验的支持和指导,也感谢实验中的所有参与人员的付出和帮助。
实验1 Witness仿真软件认识一、实验目的熟悉Witness 的启动;熟悉Witness2006用户界面;熟悉Witness 建模元素;熟悉Witness 建模与仿真过程。
二、实验内容1、运行witness软件,了解软件界面及组成;2、以一个简单流水线实例进行操作。
小部件(widget)要经过称重、冲洗、加工和检测等操作。
执行完每一步操作后小部件通过充当运输工具和缓存器的传送带(conveyer)传送至下一个操作单元。
小部件在经过最后一道工序“检测”以后,脱离本模型系统。
三、实验步骤仿真实例操作:模型元素说明:widget 为加工的小部件名称;weigh、wash、produce、inspect 为四种加工机器,每种机器只有一台;C1、C2、C3 为三条输送链;ship 是系统提供的特殊区域,表示本仿真系统之外的某个地方;操作步骤:1:将所需元素布置在界面:2:更改各元素名称:如;3:编辑各个元素的输入输出规则:4:运行一周(5 天*8 小时*60 分钟=2400 分钟),得到统计结果。
5:仿真结果及分析:Widget:各机器工作状态统计表:分析:第一台机器效率最高位100%,第二台机器效率次之为79%,第三台和第四台机器效率低下,且空闲时间较多,可考虑加快传送带C2、C3的传送速度以及提高第二台机器的工作效率,以此来提高第三台和第四台机器的工作效率。
6:实验小结:通过本次实验,我对Witness的操作界面及基本操作有了一个初步的掌握,同学会了对于一个简单的流水线生产线进行建模仿真,总体而言,实验非常成功。
实验2 单品种流水线生产计划设计一、实验目的1.理解系统元素route的用法。
2.了解优化器optimization的用法。
3.了解单品种流水线生产计划的设计。
4.找出高生产效率、低临时库存的方案。
二、实验内容某一个车间有5台不同机器,加工一种产品。
该种产品都要求完成7道工序,而每道工序必须在指定的机器上按照事先规定好的工艺顺序进行。
计算机仿真实验报告计算机仿真实验报告引言:计算机仿真是一种利用计算机模拟实际系统行为的方法。
它通过建立数学模型,运用计算机算法和技术,模拟和分析系统的运行过程,以便更好地理解和预测系统的行为。
本文将探讨计算机仿真实验的概念、目的、方法和应用。
一、概念与目的计算机仿真实验是指利用计算机技术对实际系统进行模拟和分析,以研究系统的行为、性能和优化方法的一种实验方法。
其目的在于通过模拟实验,提供对实际系统的理解和预测,以便进行决策和改进。
二、方法与技术1. 建立数学模型:计算机仿真实验的第一步是建立数学模型,即将实际系统抽象为数学表达式或算法。
这需要对系统的结构、行为和性能进行深入分析和理解。
2. 数据采集与预处理:收集实际系统的数据,并对数据进行预处理,以便在计算机中进行仿真实验。
这包括数据清洗、数据转换和数据校正等步骤。
3. 编程与算法设计:根据建立的数学模型,使用计算机编程语言编写仿真程序,并设计相应的算法。
这需要熟悉计算机编程和算法设计的基本原理和方法。
4. 参数设置与验证:根据实际系统的特点和需求,设置仿真实验的参数,并进行验证。
这需要对实际系统的数据进行分析和比对,以确保仿真实验的准确性和可靠性。
5. 仿真运行与结果分析:运行仿真程序,观察和分析仿真结果。
这包括对系统行为、性能和优化方法的分析,以及对仿真结果的可视化和统计。
三、应用与案例计算机仿真实验在各个领域都有广泛的应用。
以下是一些典型的案例:1. 交通仿真:通过模拟城市交通流量和交通信号灯的运行,优化交通信号配时方案,提高交通效率和减少拥堵。
2. 生物仿真:通过模拟生物系统的行为和进化过程,研究生物多样性、环境适应性和生物进化机制。
3. 金融仿真:通过模拟金融市场的价格波动和交易行为,预测市场趋势和风险,辅助投资决策和风险管理。
4. 工程仿真:通过模拟工程系统的设计和运行过程,优化工程结构和工艺参数,提高工程效率和质量。
5. 医学仿真:通过模拟人体器官的结构和功能,研究疾病的发生机制和治疗方法,辅助医学研究和临床决策。
一、实习背景随着建筑行业的发展,建筑信息模型(BIM)技术逐渐成为我国建筑行业的重要组成部分。
为了提升我的专业技能,了解BIM技术的实际应用,我参加了为期一个月的建模仿真实习。
本次实习旨在通过实际操作,掌握BIM建模的基本流程,熟悉相关软件的使用,并了解BIM技术在建筑工程中的应用。
二、实习内容1. BIM基础知识学习实习初期,我重点学习了BIM的基本概念、发展历程、应用领域以及在我国的发展现状。
通过学习,我了解到BIM技术是一种以三维数字技术为基础,对建设工程项目的设计、施工和运营全过程进行管理和优化的方法。
BIM技术具有可视化、协同性、模拟性、优化性和可出图性等特点,在建筑行业具有广泛的应用前景。
2. BIM建模软件学习在实习过程中,我主要学习了Autodesk Revit软件,该软件是目前应用最广泛的BIM建模软件之一。
通过学习,我掌握了Revit软件的基本操作,包括界面布局、建模命令、族创建、参数化设计等。
同时,我还学习了如何利用Revit软件进行建筑模型的创建、编辑、修改和渲染。
3. BIM建模实践在实习过程中,我参与了实际项目的BIM建模工作。
首先,我根据项目图纸和设计要求,创建了建筑模型的基本框架;然后,我利用Revit软件的族库和参数化设计功能,对建筑模型进行了细化和完善;最后,我根据项目需求,对建筑模型进行了渲染和出图。
4. BIM协同工作在实习过程中,我了解到BIM技术在协同工作中的应用。
通过Revit软件,我们可以实现多专业之间的协同设计,提高设计效率。
同时,BIM技术还可以应用于施工阶段的进度管理、成本控制和资源调配等方面。
三、实习收获1. 提升了专业技能通过本次实习,我掌握了BIM建模的基本流程和Revit软件的使用方法,为今后的工作打下了坚实的基础。
2. 增强了团队协作能力在实习过程中,我与团队成员共同完成了BIM建模任务,提高了自己的团队协作能力。
3. 了解了BIM技术在建筑行业中的应用通过实际操作,我深刻认识到BIM技术在建筑行业中的重要作用,为今后的职业发展指明了方向。
计算机仿真实验报告《计算机仿真实验报告》摘要:本实验利用计算机仿真技术对某一特定系统进行了模拟实验,通过对系统的运行状态、性能参数等进行观测和分析,得出了一系列有意义的结论。
本报告将详细介绍实验的背景、目的、方法、结果和结论,以及对实验过程中遇到的问题和解决方法进行总结。
1. 背景随着计算机技术的不断发展,计算机仿真技术已经成为了科学研究和工程实践中不可或缺的一部分。
通过对实际系统的建模和仿真,可以更好地理解系统的运行规律,优化系统设计,提高系统的性能和可靠性。
2. 目的本实验旨在利用计算机仿真技术对某一特定系统进行模拟实验,通过观测和分析系统的运行状态和性能参数,得出有意义的结论,为系统的优化设计提供参考。
3. 方法本实验选取了某一特定系统作为研究对象,首先对系统进行了建模,并利用计算机软件进行了仿真实验。
在实验过程中,通过改变系统的参数和条件,观测系统的运行状态和性能参数的变化,并记录实验数据。
4. 结果通过实验观测和数据分析,得出了一系列有意义的结论:系统在不同参数和条件下的运行状态、系统的性能参数随时间的变化趋势等。
这些结论为系统的优化设计提供了重要的参考依据。
5. 结论本实验利用计算机仿真技术对某一特定系统进行了模拟实验,通过观测和分析系统的运行状态和性能参数,得出了一系列有意义的结论。
这些结论为系统的优化设计提供了重要的参考依据,具有一定的理论和实际意义。
6. 实验过程中遇到的问题和解决方法在实验过程中,我们遇到了一些问题,如系统建模的复杂性、仿真实验的参数选择等。
通过认真分析和讨论,我们采取了一些解决方法,最终顺利完成了实验。
综上所述,本实验利用计算机仿真技术对某一特定系统进行了模拟实验,通过观测和分析系统的运行状态和性能参数,得出了一系列有意义的结论,为系统的优化设计提供了重要的参考依据。
同时,我们也总结了实验过程中遇到的问题和解决方法,为今后的研究和实践提供了一定的借鉴。
建模与仿真实验报告建模与仿真实验报告一、引言建模与仿真是现代科学研究和工程设计中不可或缺的工具。
通过建立数学模型和进行仿真实验,我们可以更好地理解和预测复杂系统的行为,优化设计方案,降低成本和风险。
本实验旨在通过一个实际案例,介绍建模与仿真的基本原理和应用。
二、案例背景我们选择了一个机械系统的案例,以便更好地说明建模与仿真的过程。
该机械系统是一个简化的汽车悬挂系统,由弹簧和减震器组成。
我们的目标是通过建模和仿真,分析不同参数对系统性能的影响,以优化悬挂系统的设计。
三、建模过程1. 系统分析:首先,我们对悬挂系统进行了详细的分析,了解其工作原理和关键参数。
通过研究相关文献和实际数据,我们确定了弹簧刚度和减震器阻尼系数等参数。
2. 建立数学模型:基于系统分析的结果,我们使用牛顿第二定律建立了数学模型。
假设车辆在垂直方向上的运动可以近似为简谐振动,我们得到了如下的微分方程:m * x''(t) + c * x'(t) + k * x(t) = 0其中,m是车辆的质量,x(t)是车辆在垂直方向上的位移,c是减震器的阻尼系数,k是弹簧的刚度。
3. 参数估计:为了进行仿真实验,我们需要估计模型中的参数值。
通过实验测量和理论计算,我们得到了车辆的质量m,减震器的阻尼系数c和弹簧的刚度k的估计值。
四、仿真实验1. 车辆行驶过程仿真:我们使用Matlab/Simulink软件进行了悬挂系统的仿真实验。
通过设定初始条件和参数值,我们模拟了车辆在不同路况下的行驶过程。
通过分析仿真结果,我们可以得到车辆的位移、速度和加速度等关键性能指标。
2. 参数优化:为了优化悬挂系统的设计,我们进行了参数优化实验。
通过调整减震器的阻尼系数和弹簧的刚度,我们比较了不同参数组合下系统性能的差异。
通过与仿真结果的对比,我们可以选择最佳参数组合,以达到最佳的悬挂系统性能。
五、实验结果与讨论通过仿真实验,我们得到了悬挂系统在不同参数下的性能曲线。
目录实验一Matlab语言编程 (1)一.实验目的 (1)二.具体实验内容、步骤、要求: (1)实验二数值积分算法及函数调用练习 (3)一.实验目的 (3)二.实验实例介绍: (3)实验三控制工具箱与SIMULINK软件应用 (9)一.实验目的 (9)二.实验预习要求: (9)三.学会调出、运行已由SIMULINK建立的仿真模型。
(9)四.实验设计题目与要求: (10)实验一 Matlab 语言编程一. 实验目的熟悉Matlab 语言及其编程环境,掌握编程方法 要求认真听取实验指导老师讲解与演示二. 具体实验内容、步骤、要求:1.运行交互式学习软件,学习Matlab 语言2.在Matlab 的命令窗口下输入如下命令:INTRO,然后根据显示出来的幻灯片右面按钮进行操作,可按START —>NEXT —>NEXT 按钮,一步步运行,观察。
3.自编程序并完成上机编辑、调试、运行,存盘。
(1). 用Matlab 命令完成矩阵的各种运算,例如:⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=44434241343332312423222114131211A 求出下列运算结果,并上机验证。
A(:,1),A(2,:),A(1:2,2:3),A(2:3,2:3),A(:,1:2),A(2:3), A(:),A(:,:),ones(2,2), eye(2)⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=41312111A(:,1)[]24232221:)A(2,=⎥⎦⎤⎢⎣⎡=232213123):2,2:A(1 ⎥⎦⎤⎢⎣⎡=333223223):3,2:A(2⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=42413231222112112):A(:,1[]31213):A(2=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=44342414433323134232221241312111A(:)⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=44434241343332312423222114131211:)A(:,⎥⎦⎤⎢⎣⎡=1111)2,2(ones ⎥⎦⎤⎢⎣⎡=1001)2(eye(2). 绘制数学函数图形t=0:0.1:8;y=1-2*t.*sin(t); plot(t,y)12345678-15-10-551015时间t输出y绘制数学函数图形4.理解命令文件和函数文件的区别,并自编函数文件并调用。
《计算机仿真技术》实验指导书实验一 状态空间模型的仿真一、实验目的通过实验,学习4阶龙格-库塔法的基本思路和计算公式,加深理解4阶龙格-库塔法的原理和稳定域。
加深理解仿真的稳定性,仿真步长对仿真精度的影响。
二、实验内容1、线性定常系统[]1112223332010002001010060000600x x x x x u y x x x x -⎡⎤⎡⎤⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=-+=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦⎣⎦⎣⎦&&&;)(1000)0()0()0(321t u x x x =⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡2、非线性系统()()()()()()()()xt rx t ax t y t yt sx t bx t y t =-⎧⎨=-+⎩&& 其中:r=0.001, a=2⨯10-6, s=0.01, b=1⨯10-6, x(0)=12000, y(0)=600。
三、实验原理运用SIMULINK 仿真工具进行实验。
四、实验设备和仪器微型计算机、MATLAB 软件。
Sources(信号源),Sink(显示输出),Continuous(线性连续系统),Discrete(线性离散系统),Function & Table (函数与表格),Math(数学运算), Discontinuities (非线性),Demo (演示)五、实验方法运行MA TLAB ,在MA TLAB 窗口中按SimuLink 按钮,启动SimuLink 库浏览器,在浏览器窗口上选create a new modem 命令,得到一个空模型,从Library: SimuLink 窗口中找到需要的模块,将这些模块拖到空模型窗口中。
将空模型窗口中的排好,并按要求连接。
在保存好的模型窗口中,选Simulation\Paramters 命令设置各模块的参数和仿真参数。
实验报告13工业工程2班李伟航 13工业工程2班实验10一、实验目的:1.学习库存系统查库与订货处理的结构建模方法2.学习用Equation模块、Equation(I)模块读写数据库的方法3.学习用Equation模块、Equation(I)模块进行编程计算的方法二、实验问题1.打开上次实验你保存的文件(这个文件要保存好,下次实验还要使用),然后根据以上视频,进行操作实验。
2.简述用Equation模块计算订货量的程序逻辑。
3.简述用Equation(I)模块计算并累加总订货成本到数据库中的程序逻辑。
4.Equation模块与Equation(I)模块有何不同?5.在本案例的假设前提下,在一笔订货的在途货物运输期间(即提前期期间),会不会再次发出订货指令?或者换句话说,每次查库时,会不会有已订但未到的货?为什么?三.实验过程1.生成查库员(查库信号)用Create模块每天生成一个库存检查员实体(实际代表一个查库信号)Create 模块具体设置如下图:2.判断是否需要订货利用Select Item Out模块、Equation模块和Simulation Variable模块检查库存,并判断是否需要订货。
若需要,就将库存检查员实体发送到Select Item Out模块的上端口输出进行后续处理;若不需要订货,就将库存检查员实体发送到下端口输出,简单地离开系统。
其中,Equation模块的设置如下图。
3.无需订货的处理由上一步Equation中设置可知,当s=1时,即无需订货的情况下,直接将库存检查员实体从Select Item Out模块下端口输出,通过Exit模块离开系统。
Select Item Out模块设置如下,当s=0时从上端口输出,否则从下端输出。
4.订货处理-建立模型当s=0时,即需要订货的情况下,库存检查员实体有Select Item Out模块上端口输出,后续订货处理模型如下图:5.计算订货量用一个Equation模块获取数据库中的当前库存(kc)和最大库存(ds),计算订货量dh。
《仿真技术与应用》实验报告计算机仿真技术实验报告实验三利用数值积分算法的仿真实验实验三 利用数值积分算法的仿真实验实验目的1) 熟悉MATLAB 勺工作环境;2) 掌握MATLAB 勺.M 文件编写规则,并在命令窗口调试和运行程序;3)掌握利用欧拉法、梯形法、二阶显式Adams 法及四阶龙格库塔法构建系统仿 真模型的方法,并对仿真结果进行分析。
实验内容系统电路如图2.1所示。
电路元件参数:直流电压源E =1V ,电阻R=10门,电感L =0.01H ,电容C 二WF 。
电路元件初始值:电感电流i L (0) =0A ,电容电压u c (0) = 0V 。
系统输出量为电容电压u c (t)。
连续系统输出响应u c (t)的解析解为:u c (t)二 U s (1 — e_at (cos ■ t si nt a/ J)三、要求1) 利用欧拉法、梯形法、二阶显式 Adams 法及显式四阶Runge-Kutta 法构建系统仿真模 型,并求出离散系统的输出量响应曲线;(2-1)其中, a =2L图2.1 RLC 串联电路2) 对比分析利用欧拉法、梯形法、二阶显式 Adams 法及显式四阶Runge-Kutta 法构建系 统仿真模型的仿真精度与模型运行的稳定性问题;3) 分别编写欧拉法、梯形法、二阶显式 Adams 法及显式四阶Runge-Kutta 法的.m 函数文 件,并存入磁盘中。
.m 函数文件要求输入参数为系统状态方程的系数矩阵、仿真时间及仿 真步长。
编写.m 命令文件,在该命令文件中调用已经编写完成的上述 .m 函数文件,完成 仿真实验;4) subplot 和plot 函数将输出结果画在同一个窗口中,每个子图加上对应的标题。
四. 实验原理(1) 连续系统解析解连续系统输出响应u c (t)的解析解为:u c (t)二U s (1-e^t (cos t si nt x/ ,))(2) 原系统的传递函数根据所示电路图,我们利用电路原理建立系统的传递函数模型,根据系统的传递函数 是在零初始条件下输出量的拉普拉斯变换与输入量的拉普拉斯变换之比,可得该系统的传 递函数:(3) 系统的仿真模型在连续系统的数字仿真算法中,较常用的有欧拉法、梯形法、二阶显式Adams 法及显式 四阶Runge-Kutta 法等。
一、实习背景与目的随着科学技术的飞速发展,计算机建模已成为科学研究、工程设计、社会科学等领域不可或缺的工具。
为了提高我的计算机建模能力,加深对理论知识的应用理解,我参加了为期两周的计算机建模实训。
本次实训旨在通过实际操作,掌握计算机建模的基本原理和方法,提高解决实际问题的能力。
二、实训内容与过程1. 实训内容本次实训主要包括以下内容:(1)计算机建模的基本原理和方法;(2)常用建模软件的使用;(3)典型应用案例分析;(4)实际项目建模与优化。
2. 实训过程实训过程分为以下几个阶段:(1)理论学习:首先,通过阅读教材、参考书籍和上网查阅资料,了解计算机建模的基本原理和方法,掌握常用建模软件的基本操作。
(2)软件学习:学习并熟练掌握MATLAB、Python等常用建模软件,通过编程实现基本建模功能。
(3)案例分析:分析典型应用案例,了解不同领域中的建模方法,为实际项目建模提供借鉴。
(4)项目实践:结合所学知识,选择一个实际项目进行建模与优化,锻炼实际操作能力。
三、实训成果与体会1. 实训成果通过本次实训,我取得了以下成果:(1)掌握了计算机建模的基本原理和方法;(2)熟练掌握了MATLAB、Python等常用建模软件;(3)了解了不同领域中的建模方法,为实际项目建模提供了借鉴;(4)完成了一个实际项目的建模与优化,提高了解决实际问题的能力。
2. 实训体会(1)理论学习与实践操作相结合的重要性:通过本次实训,我深刻体会到理论学习与实践操作相结合的重要性。
只有将所学知识应用于实际操作中,才能真正掌握计算机建模的方法。
(2)建模软件的多样性:在实训过程中,我了解到不同建模软件在功能、操作方式等方面的差异,这使我更加认识到选择合适的建模软件对于提高建模效率至关重要。
(3)团队协作的重要性:在项目实践过程中,我与团队成员共同完成建模任务,这使我认识到团队协作在项目实施中的重要性。
(4)持续学习的重要性:计算机建模技术发展迅速,为了跟上时代步伐,我将继续学习相关知识,提高自己的建模能力。
中南大学计算机仿真与建模实验报告题目:理发店的服务过程仿真姓名:XXXX班级:计科XXXX班学号:0909XXXX日期:2013XXXX理发店的服务过程仿真1 实验案例 (2)1.1 案例:理发店系统研究 (2)1.1.1 问题分析 (3)1.1.2 模型假设 (3)1.1.3 变量说明 (3)1.1.4 模型建立 (3)1.1.5 系统模拟 (4)1.1.6 计算机模拟算法设计 (5)1.1.7 计算机模拟程序 (6)1实验案例1.1 案例:理发店模拟一个理发店有两位服务员A和B顾客随机地到达该理发店,每分钟有一个顾客到达和没有顾客到达的概率均是1/2 , 其中60%的顾客理发仅用5分钟,另外40%的顾客用8分钟. 试对前10分钟的情况进行仿真。
(“排队论”,“系统模拟”,“离散系统模拟”,“事件调度法”)1.1.1 问题分析理发店系统包含诸多随机因素,为了对其进行评判就是要研究其运行效率,从理发店自身利益来说,要看服务员工作负荷是否合理,是否需要增加员工等考虑。
从顾客角度讲,还要看顾客的等待时间,顾客的等待队长,如等待时间过长或者等待的人过多,则顾客会离开。
理发店系统是一个典型的排队系统,可以用排队论有关知识来研究。
1.1.2 模型假设1.60%的顾客只需剪发,40%的顾客既要剪发,又要洗发; 2.每个服务员剪发需要的时间均为5分钟,既剪发又洗发则花8分钟; 3.顾客的到达间隔时间服从指数分布; 4. 服务中服务员不休息。
1.1.3 变量说明u :剪发时间(单位:分钟),u=5m ;v: 既剪发又理发花的时间(单位:分钟),v=8m ;T : 顾客到达的间隔时间,是随机变量,服从参数为λ的指数分布,(单位:分钟)T 0:顾客到达的平均间隔时间(单位:秒),T 0=λ1;1.1.4 模型建立由于该系统包含诸多随机因素,很难给出解析的结果,因此可以借助计算机模拟对该系统进行模拟。
考虑一般理发店的工作模式,一般是上午9:00开始营业,晚上10:00左右结束,且一般是连续工作的,因此一般营业时间为13小时左右。
这里以每天运行12小时为例,进行模拟。
这里假定顾客到达的平均间隔时间T 0服从均值3分钟的指数分布,则有3小时到达人数约为603603=⨯人, 6小时到达人数约为1203606=⨯人, 10小时到达人数约为20036010=⨯人, 这里模拟顾客到达数为60人的情况。
(如何选择模拟的总人数或模拟总时间)1.1.5系统模拟根据系统模拟的一般方法,需要考虑系统的如下数据、参数。
1.状态(变量)(1)等待服务的顾客数;(2)A是否正在服务;(3)B是否正在服务;2.实体:两名服务员、顾客们3.事件:(1)一名新顾客的到达;(2)A开始服务;(3)A结束服务;(4)B开始服务;(5)B结束服务;4.活动:(1)顾客排队时间(2)顾客们到达的间隔时间(3)A的服务时间(4)B的服务时间;在系统模拟时,为了研究系统的整体情况,这里考虑顾客到达后不离开,且等待队长不限。
要考虑如果服务员均空闲时,顾客先选择谁服务?要考虑模拟的时间设置还有顾客数目。
模拟终止条件是根据顾客数目还是根据营业时间终止?1.1.6计算机模拟算法设计finished=0;初始化运行时钟while finished==0if 产生的顾客数不到规定数目时then,产生该顾客的有关数据;将顾客加入等待队列;else运行时钟继续;endif处理服务员的状态(包括工作状态,空闲时间);获得服务员的服务优先顺序;根据服务员优先顺序从等待队列中安排服务;endwhile参考算法为:离散系统仿真算法:事件调度法1.1.7 计算机模拟程序顾客到达的间隔时间T 的计算机产生方法,利用T=rand T rand ln ln 10-=-λ,%理发店系统的模拟(案例分析之一)%关键词:面向事件的计算机模拟技术clear allcurclock=0;%当前时刻,动态变化totalcustomer=0;%总共服务的顾客数numsrv=2;srvstatus=zeros(numsrv,5);%服务员有关数据%srvstatus 第1列:服务状态(0空闲,1正在服务);第2列:当前服务顾客编号;% 第3列:当前服务结束时刻;第4列:服务员空闲时间;第5列:服务的顾客总数endtime =0;%结束时间waiting=[];%等待队列数据%waiting 第1列:顾客编号;第2列:顾客到达时刻;第3列:顾客开始接受服务时刻;% 第4列:接受服务时间;第5列:顾客结束服务时刻;第6列:间隔时间 cur=zeros(1,6);%当前产生顾客的数据,对应关系同waitingavgwaitlen=[];%平均等待队长avgwaittime =[];% 平均等待时间ujiange=5;%平均间隔时间finished=0;numsimucustumer=yesinput('输入等待模拟的顾客数:',10,[101000]);while finished==0,if totalcustomer < numsimucustumer%产生一个顾客的到达及其有关性质的数据totalcustomer = totalcustomer+1;jiange= -log(rand)*ujiange;%与上一个顾客的到达的间隔时间curclock = curclock + jiange;cur(1)= totalcustomer ;% 第1列:顾客编号cur(2) = curclock;%第2列:顾客到达时刻cur(6) = jiange; 第6列:间隔时间%下面产生接受服务时间(可改进模型)if rand<0.6, %产生顾客有关性质:这里是产生接受服务时间cur(4) = 5;elsecur(4) = 8;end%放入等待队列if isempty(waiting),waiting= cur;else[m,n]=size(waiting);waiting(m+1,:)= cur;endelsecurclock = curclock + (-log(rand)*ujiange);end%if totalcustomer<%分配等待队列(看是否有服务员空闲,如果有则分配;否则继续执行)%处理服务员的服务状态for i=1:numsrv,if srvstatus(i,1)==1 & srvstatus(i,3) <= curclock,srvstatus(i,1)=0;%设置为空闲状态srvstatus(i,4)= curclock-srvstatus(i,3);%目前已经空闲的时间elseif srvstatus(i,1)==1 & srvstatus(i,3) > curclock, srvstatus(i,4)= 0;%没有休息(正在忙)elsesrvstatus(i,4)= curclock-srvstatus(i,3);%目前已经空闲的时间endend%处理服务员服务的先后顺序(依据空闲时间)(精细处理)tmp=srvstatus(:,4);for i=1:numsrv,[value,id]=max(tmp);b(i)=id;tmp(id)=0;%已经排序了end%此时等待队列必然不为空for j=1:numsrv,i=b(j);%确定服务员的序号if(srvstatus(i,1)==0)%找一个顾客开始服务,同时计算该顾客什么时候接受服务,结束服务;[m,n]=size(waiting);if m==0,break;endif waiting(1,5)==0,%还没有开始接受服务waiting(1,3)= curclock;waiting(1,5)= waiting(1,3)+waiting(1,4);%结束时刻srvstatus(i,1)=1;%设置为忙状态srvstatus(i,2)=waiting(1,1);%顾客编号srvstatus(i,3)= waiting(1,5);%结束时刻srvstatus(i,5)=srvstatus(i,5)+1;%又服务了一个顾客%计算等待时间avgwaittime(end+1) = waiting(1,3)-waiting(1,2); disp(sprintf('间隔时间(%8.2f) 顾客编号:%5d 接受服务员(%4d)服务(到达时刻%10.2f)',waiting(1,6),waiting(1,1),i,waiting(1,2)))endtime=max(endtime,waiting(1,5))waiting(1,:)=[];%从等待队列中离开endend%ifend%for[m,n]=size(waiting);%计算队长(这里的计算式子可以参考排队论有关术语进行确定)if totalcustomer < numsimucustumeravgwaitlen(end+1)=m;endif sum(srvstatus(:,5))>=numsimucustumer,%队列为空,结束finished=1;endend%whiledisp('服务顾客数:')disp(srvstatus(:,5)')disp('平均队长');disp(mean(avgwaitlen));disp('运行时间(分钟,小时)');disp(sprintf('%8.f%8.f',curclock,curclock/60));disp('平均等待时间(分钟)');disp(mean(avgwaittime ));disp('结束时间(分钟)');disp(endtime );figurehist(avgwaitlen)title('平均队长') figurehist(avgwaittime) title('平均等待时间');。