计算机仿真技术1.绪论自我介绍:张绍阳,交通信息工程系,课程名称:系统仿真技术。1.1.关于教材不进行指定,广泛的参考,大多教材都是介绍性的,应用型的可以参考具体的软件的帮助,理论性的研究大多在最新的论文中。1.2.导论大家都听过的名次:仿真、模拟,已经成为一门学科。美国国家关键技术委员会1991年确定仿真技术为影响美国安全和繁荣的22个关键技术之一。在军事、航空、航天、原子能、工程、交通、制造行业等已经具有了广泛的用途。仿真技术种类繁多,大家听说过的matlab仿真、有限元仿真、虚拟现实仿真、离散系统仿真等都是仿真,1、他们之间有什么样的规律,如何认识,2、在进行应用时如何去选取合适的工具,3、如果研究仿真技术,其研究领域是什么这些都将在本门课中进行解决。1.3.研究生教学的特点本门课程是导论性的课,虽然是学位课,但是希望大家了解研究生教学的特点:研究生培养目标是独立解决问题的能力,而不是纯粹的知识或者技能,用一个例子来理解:挖金子,对于本科生培养的是认识金子、认识工具、使用工具的方法;对于研究生则是金矿的形成规律、工具的选择、方法的选择等;对于博士生,则是为什么要挖的问题了。1.4.系统仿真定义从认识论角度,仿真是对现实世界的模拟,但是现实世界是庞大的,无界的,在科学研究过程中,我们经常把研究内容界定在一定的范围,这个范围我们称之为系统,在仿真研究中,我们也是对现实世界中的某个系统进行仿真。称之为:系统仿真。定义:系统仿真是一相似原理、系统技术、信息技术及应用领域的有关专业技术为基础,以计算机、仿真器和各种专用物理效应设备为工具,利用系统模型对真实的或设想的系统进行动态研究的多学科的综合性技术。1.5.基础和工具(1)相似原理,研究事物之间相似规律及其应用的科学。相似:是指事物之间某些共性的客观存在。相似是相对的,在某些层面是相似的,但从其他角度来看又是不同的。例如:男女同学,从人性来讲是相似的,从微观来讲是不同的。计算机中的一个点和足球,从视觉来讲是不同的,从运动规律来看又是相似的。作的不好的动画与文学巨著,从视觉来讲是相似的,但表现力方面又是不同的。仿真是利用模型对现实世界的一种模拟,需要让人感觉到模型象是现实世界,因此,需要对相似性进行研究。相似性的研究包括:几何相似:将实体按比例缩小或者放大。大楼的模型和楼实体离散相似:连续曲线和取样曲线采样系统等效相似:输入输出相同风洞实验室,用来模拟风吹桥梁的效果。感觉相似:三位虚拟现实系统,视觉、听觉、嗅觉、味觉、触觉等多方面感觉思维相似:人工神经网络,仿真大脑的计算方法(2)系统技术系统的定义:系统是指具有某些特定功能,按照某些规律结合起来、互相作用、互相依存的所有物体的集合或总和。系统的特征:整体性,不可分割相关性:各物体相互有关系统的内容:实体:存在于系统中的每一项确定的物体。属性:实体的每一项有效的特征活动:导致系统状态发生变化的一个过程。其中,实体是关键,研究系统最终应以实体来检验。系统状态:由系统内部的实体、属性和活动组成的整体称为系统的状态。静态系统:处于平衡状态的系统称为静态系统,动态系统:状态随时间变化的系统称为动态系统。系统的分类:按生命特征:生命,非生命按物理特征:工程系统,非工程系统按状态变化:a)连续系统,状态变化是连续的(动力学系统、生态系统、场)b)离散系统,b1)离散时间系统(采样系统)、b2)离散事件系统混合系统从技术角度,分为连续系统(a+b1):用方程描述,研究方法为控制论。连续系统的例子:负反馈系统其状态是连续变化的。即器件两端的电压、电流等是连续变化的。离散事件系统(b2):不能用方程描述,研究方法为:排队轮、运筹学等例子:研究一个汽车加油站的服务水平,其中汽车、油泵、操作人员、收银员等构成了一个离散系统,其状态的变化是由于汽车的来到,即受到一个离散事件的影响,所以称为离散事件系统。系统中的关键名词:系统环境:影响系统而不受系统控制的外界因素的集合举例:天气、气温、突发事件,系统边界:为了限定所研究问题涉及的范围。举例:开发软件系统时给出的边界。Uml总体图首先对外部角色与系统的交互进行建模。内生活动:内部发生的活动外生活动:外部发生(边界以外、环境)的活动开放系统:含有外生活动的系统封闭系统:没有外生活动的系统大系统、复杂系统:规模庞大、功能结构复杂关联信息多的系统。注:-大系统理论专门研究相对而言的。(3)信息技术主要指计算机技术。这是我们的特长。(4)应用领域的专业知识风洞试验室,不是把模型吹动,而是根据重量、结构等物理规律对理论进行验证。即系统中实体的运动规律要符合本专业的运动规律。又如:挖掘机仿真,其挖掘速度要符合挖掘机的特性,不能是模型本身的速度。这些都是专业领域的知识,同时也是我们从事仿真的瓶颈。(5)仿真器仿真器一般是软件或者在特定硬件平台上运行的软件。例如ARM仿真器,通常开发的程序需要在真实的环境中运行才能检验,而在仿真器里即可实现调试。一个专用的仿真软件,用户把所建立的模型放入即可开始仿真,也可以叫做仿真器。(6)物理效应设备研究的热点之一,也是花钱最多的地方。其作用是产生与真实环境相似的效果。例如风洞试验室,鼓风机,功率非常大,因为要模拟自然风,电费的问题。振动压路机试验室,土槽,也是对真实环境的模拟。1.6.现代仿真的基本框架第二次课:回顾,上节课了解了系统仿真的概念,对系统仿真的基础进行了初步认识,并将系统分为了连续系统和离散事件系统。从系统仿真的概念可知,系统仿真是以。。。为基础,使用。。。工具,利用系统模型对系统进行研究。那么系统仿真的框架是什么呢?1984年,Oren提出现代仿真的基本概念框架:建模----试验----分析。同时也表达了系统仿真的流程。那么下面我们对模型和建模的基本知识进行了解。1.7.模型和建模基础知识模型是对实际系统的一种抽象,是系统本质的描述,能够准确地反映实体的主要特征和运动规律,因此优于实体。人们认识事物也是从特殊到一般,模型符合人类认识事物的规律。模型的分类:(1)实体模型,例如宇宙模型、大楼模型,根据相似性建立(2)数学模型(3)可视化模型,虚拟现实模型一般研究的是数学模型,数学模型用来分析,而实体模型和可视化模型是看的。静态系统:代数方程动态系统:从技术角度系统分为(1)离散事件系统,其对应模型有排队论模型、Petri网模型、网络计划模型(CPM、Pert、GERT),流程图;建模方法分别为:面向事件的建模方法\面向活动的建模\面向进程的建模;对应的仿真方法有:事件调度法、活动扫描法、进程交互法。(2)连续系统,对应模型有集中参数:微分方程、状态方程、传递函数;常用的仿真算法:数值积分法、离散相似法、置换法、根匹配法、增广矩阵法。分布参数:偏微分方程(有限元);常用的仿真算法:有限差分法、线上求解法,有限元法。系统仿真就是在模型基础上对系统进行的试验。数学建模过程:确定模型类型、建立模型结构(方程阶次)、给定参数建模遵循的原则:模型的详细程度与目的相适应。建模的信息源包括:建模目的、先验知识(球是圆的,前人的研究成果)、试验数据(系统自身的表现)。建模方法:归纳法(从被观测的行为进行总结,从特殊到一般)、演绎法(根据先验知识,如果先验知识不对,则推导是错误的,例如欧式几何的先验知识是平行公理,如果平行公理改变,则得出不同的几何)模型分析方法:解析法和实验法解析法求解困难,实验法即仿真的方法。1.8.系统仿真研究内容(1)相似理论(2)模型论:建模方法,模型的体系结构、建模工具、软件等,creator,3DMAX(3)仿真系统理论:仿真系统的体系和构成,系统设计,研制等,例如CPN,renew,Matlab,Simulink,(4)仿真方法论:根据应用领域的需求,研究仿真基本思想和方法,例如使用定量还是定性仿真、人在回路仿真、交互仿真(5)仿真方法的可信性VV&A(Varification,Validation,Accredation,校核,验证和确认)校核:确定仿真系统是否准确地代表了开发这的概念描述和设计的过程验证:从仿真系统的应用目的出发,确定仿真系统代表真实世界准确程度的过程。一般从统计的方法着手,例如确认:官方正式接受仿真系统能够为专门的应用目的服务的资格认可。(6)仿真系统的应用2.连续系统仿真定义:连续系统:系统状态变化是连续的。2.1.集中参数系统的建模前面讲过:连续系统的模型集中参数、分布参数。以微分方程表示。微分方程属于数学内容,不属于本门课程范围。我们以几个例子来说明连续系统的建模。例1:一个培养盒中有100单位细菌,已知细菌增长速度和细菌总数成正比,24小时候细菌总数量是400单位,求任意时刻t细菌总数模型N(t).解:dN(t)/dt=kN(t)N(0)=100N(24)=400例2:RLC电路,求输入和输出关系。IO由电压定律得:Ldi(t)/dt+1/Cfi(t)dt+Ri(t)=Ui(t)消去中间变量i(t)=duo(t)/dt*CLCdU02(t)/dt2+RCdU0(t)/dt+U0(t)=Ui(t)另外,速度、加速度、运动阻尼等存在变的问题等都可以用微分方程表示出来。还有没有更复杂问题的建模?有,例如世界经济模型、人口增长模型2.2.集中参数系统的仿真方法2.2.1.数值积分法2.2.1.1.简介数值积分就是对常微分方程建立离散形式的数学模型---差分方程,并求出其数值解。例如:dy=f(y,t),y(t0)=y0一阶微分方程。数值积分就是求出t0----tn一系列离散点对应的y值。h=tn-tn-1,称为步长。常用的积分方法:(1)欧拉法对方程进行积分(t0-t1),可以得到y(t1)=y0+ff(y,t)dt当步长足够小时,用矩形面积表示积分可以得到y(t1)=y0+hf(y0,t0)进一步可以写出一般形式。n+1,n(2)梯形法使用梯形面积代替矩形面积。(3)龙格----库塔法使用泰勒级数展开在tn点。高阶导数不好求,用几个点上的函数值f的线性组合来确定其中的系数。实质上是将欧拉法/折线法再进一步细化。消除误差。(4)其他方法:亚当穆斯法,是一种线性多步法。不能自启动,需要先用其他方法计算出k-1个点,然后才能启动k步的亚当穆斯法。根据这K-1个值,利用牛顿后插值公式近似计算f(y,t)2.2.1.2.数值积分法中的几个问题(1)变步长在保证仿真过程满足一定精度的前提下,为使计算量尽可能小,尽可能采用较大的步长。两个问题:误差的估计,计算量的估计。常用的方法:对分策略,计算局部误差,如果最大误差步长减半;如果最小误差,步长加倍;否则不变。另外还有:最优步长法,估计下一步的最大步长;Gear方法。这些方法都是构造出来的方法,在数学中,构造是数学学科发展的一个重要的方法。从数的发展历史可以看出。正数(正整数、分数、正有理数)很好理解,计数的需要,负数是什么概念呢?后来,又出现了虚数,虚数的物理意义在数学界一直没有很好的解释。众所周知,实数具有物理指称性,比如称某物质量为5千克,体积为15立方厘米等等,都是用实数作为物理指称的。一般认为,只有具有实数物理指称性的对象才可能具有可运算性、可观察性、可分性、可延性、有序性等等物理性质,因而是物理实在,否则就是非物理实在,是虚幻的乌有。因此,按照这样的观点,虚数在物理中是没有地位的,因为没有虚数的物理指称性,即虚数的物理指称性的事物是不存在,如果谁说有存在,那肯定是假的。所以,虽然虚数早在16世纪就被卡尔丹发现,但是至今仍然是卡迪尔的观点:“虚数的本意是指它是假的”在人们物质观中占统治地位。今天,如果说虚数是具有物理指称性的,可能为时尚早,但是,说这种可能性已经初现端倪,却不是空穴来风。虽然虚数早已通过复数形式“半推半就”地进入物理学,但是被指称为虚过程(如跃迁)和虚粒子(如虚光子)事实上是越来越多了。尽管目前这些事例大多还集中在微观物理中,但是不能否认它们是具有虚数的物理指称性的事实。因此,我想难道我们就不能大胆地推进一步,设想夸克、暗能量和真空都是具有虚数的物理指称