连续系统离散化处理基本方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在数字计算机上对连续系统进行仿真时,首先遇到的问题是如何解决数字计算机在数值及时间上的离散性与被仿真系统数值及时间上的连续性这一基本问题。

从根本意义上讲,数字计算机所进行的数值计算仅仅是“数字”计算,它表示数值的精度受限于字长,这将引入舍入误差;另一方面,这种计算是按指令一步一步进行的,因而,还必须将时间离散化,这样就只能得到离散时间点上系统性能。用数字仿真的方法对微分方程的数值积分是通过某种数值计算方法来实现的。任何一种计算方法都只能是原积分的一种近似。因此,连续系统仿真,从本质上是对原连续系统从时间、数值两个方面对原系统进行离散化,并选择合适的数值计算方法来近似积分运算,由此得到的离散模型来近似原连续模型。如何保证离散模型的计算结果从原理上确能代表原系统的行为,这是连续系统数字仿真首先必须解决的问题。

设系统模型为:),,(t u y f y

=&,其中u (t )为输入变量,y (t )为系统变量;令仿真时间间隔为h ,离散化后的输入变量为)(ˆk t u

,系统变量为)(ˆk t y ,其中k t 表示t=kh 。如果)()(ˆk k t u t u

≈,)()(ˆk k t y t y ≈,即0)()(ˆ)(≈-=k k k u t u t u t e ,0)()(ˆ)(≈-=k k k y t y t y t e (对所有k=0,1,2,…),则可认为两模型等价,这称为相似

原理(参见图)。

实际上,要完全保证0)(,0)(==k y k u t e t e 是很困难的。进一步分析离散化引的误差,随着计算机技术的发展,由计算机字长引入的舍入误差可以忽略,关键是数值积分算法,也称为仿真建模方法。相似原理用于仿真时,对仿真建模方法有三个基本要求:

(1)稳定性:若原连续系统是稳定的,则离散化后得到的仿真模型也应是稳定的。关于稳定性的详细讨论将在节中进行。

(2)准确性:有不同的准确性评价准则,最基本的准则是:

绝对误差准则:δ≤-=)()(ˆ)(k k k y t y t y

t e 相对误差准则:δ≤-=

)(ˆ)()(ˆ)(k k k k y t y

t y t y

t e 其中 规定精度的误差量。

原连续模型

仿真模型

)(≈k y t e

图 相

f (t,y )

f (t 0,y o )

t

t

t 0

t 1

图数值积分法

(3)快速性:如前所述,数字仿真是一步一步推进的,即由某一初始值)(0t y 出发,逐步计算,得到)(,),(),(21k t y t y t y Λ,每一步计算所需时间决定了仿真速度。若第k 步计算对应的系统时间间隔为,1k k k t t h -=+计算机由)(k t y 计算)(1+k t y 需要的时间为T k ,则,若T k =h k 称为实时仿真,T k h k 称为超实时仿真,而大多数情况是T k h k ,对应于离线仿真。

连续系统数字仿真中离散化最基本的算法是数值积分算法。对于形如),,(t u y f y

=&的系统,已知系统变量y 的初始条件y t y ()00=,现在要求y 随时间变化的过程y t ()。计算过程可以这样考虑(参见图):首先求出初始点y t y ()00=的f t y ()00,,微分方程可以写作:

y t y f t y dt t t

()(,)=+⎰00 ()

图所示曲线下的面积就是y t (),由于难以得到f(y,u,t)积分的数值表达式,人们对数值积分方法进行了长期探索,其中欧拉法是最经典的近似方法。

欧拉法用矩形面积近似表示积分结果,也就是当t=t 1时,y t ()1的近似值为y 1 :

y y t y t f t y 11000=≅+⋅()()∆,

重复上述作法,当t t =2时

y y t y t t f t y 2212111=≅+-⋅()()(), 所以,对任意时刻t k+1,有:

y y t y t t f t y κκκκκκκ+++=≅+-⋅111()()(), () 令t t h κκκ+-=1称为第κ步的计算步距。若积分过程中步距不变h h κ=,可以证明,欧拉法的截断误差正比于h 2

为进一步提高计算精度,人们提出了“梯形法”。 梯形法近似积分形式如式所示,令:

t t h h κκκ+-=1=已知:t t =κ时y t ()κ的近似值y κ,那么:

y y t y h f t y f t y κκκκκκκ++++=≅+

+11111

2

()[(,)(,)] 可见,梯形法是隐函数形式。采用这种积分方法最简单的预报校正方法是用欧拉法估计初

值,用梯形法校正,即:

y

y h f t y f t y i i κκκκκκ++++≅++1

11112

()()

[(,)(,)] y y h f t y i κκκκ+≅+⋅1()

(,)

式称作预报公式,采用欧拉法,式为校正公式,采用梯形法。用欧拉法估计一次y i κ+1()

的值,代入校正公式得到y κ+1的校正值y i κ++11()

。设是规定的足够小正整数,称作允许误差,若i =0, i +1=1

称作第一次校正;i i =+=112,称作第二次校正;通过反复迭代,直到满足y y i i

κκε+++-≤111,

这时y i κ++11()

是满足误差要求的校正值。

上述方法是针对式所示的微分方程在已知初值情况下进行求解,因此也称为微分方程初值问题数值计算法,为统一起见,本书中称为数值积分法。连续系统数字仿真的离散化方法有两类,它们是数值积分方法和离散相似方法,本文讨论数值积分法。

数值积分方法采用递推方式进行运算,而采用不同的积分方法会引进不同的计算误差,为了提高计算精度,往往会增加运算量。就同一种积分算法而言,为提高计算精度,减小积分步距h ,计算量增大,影响系统运算速度。因此,计算精度和速度是连续系统仿真中常迂到的一对矛盾,也是数字仿真中要求解决的问题之一。也就是说,选择合适的算法、合适的软、硬件环境,在保证计算精度的前提下,考虑怎样提高仿真的速度。

相关文档
最新文档