线性化与泰勒级数

这一次学习的内容为非线性系统的线性化,首先我们需要明确何为线性系统,其必须符合叠加原理,其所需条件如下

android BrightnessInfo 非线性计算的换算_二维

那么什么是叠加原理呢?简单来说就是一个输出的结果是由若干个输入独立影响且叠加产生的作用,就像是合力是由多个单独作用在作用点上的力经过合成得到的

为了将一个非线性系统转换为线性系统,我们需要用到泰勒级数,这是一个高数的知识,比如       

android BrightnessInfo 非线性计算的换算_解方程_02

,而由于我们需要的是线性系统,所以取泰勒公式的前两项即可

android BrightnessInfo 非线性计算的换算_线性系统_03

上述公式为ex在x = 0处的展开式(麦克劳林公式),而在非线性系统中我们要找的展开点应为系统的平衡点,其定义为使x‘’、x‘= 0时x对应的点,其性质如下:

1·当系统的状态到达平衡点x*后系统此后的状态将一直保持在x*且不发生变化

2·如果一个平衡点附近没有其他的平衡点,则称其为孤立平衡点,反之称为连续平衡点

3·线性系统的平衡点只能有一个,非线性系统的平衡点可以有多个,这就表明线性系统最终的结果会收敛到一个点上,而在非线性系统中,如果起始点位置不一样,最终结果可能会收敛到不同的平衡点上

接下来先来分析一维系统的线性化,题目给出的方程如下,可见存在一个非线性项android BrightnessInfo 非线性计算的换算_二维_04 ,因此我们需要将其线性化,步骤如下

1·令

android BrightnessInfo 非线性计算的换算_解方程_05

 = 0,求得平衡点x0 = 1

2·在x = 1处泰勒展开得到

android BrightnessInfo 非线性计算的换算_线性系统_06

 

3·将线性化的方程带回原式得到结果

android BrightnessInfo 非线性计算的换算_二维_07

下面来看看二维的系统如何线性化

不难想到,一般的二维非线性系统如果要线性化,我们需要找到两个不同的平衡点,我们不妨先定义两个结构:

x1=f1(x1,x2)

android BrightnessInfo 非线性计算的换算_二维_08

x2=f2(x1,x2)

android BrightnessInfo 非线性计算的换算_线性系统_09

继续用上面的例子,在解题之前,我们需要提前了解非线性系统线性变换时的雅各比矩阵求法

由于上面两个式子在不同的点(a,b)处平衡,那么我们只能分别对其线性化,具体回到泰勒公式中展开就是

android BrightnessInfo 非线性计算的换算_二维_10

android BrightnessInfo 非线性计算的换算_二维_11

又因为平衡点处

android BrightnessInfo 非线性计算的换算_线性系统_12

则上面的式子转换为矩阵形式即为

android BrightnessInfo 非线性计算的换算_解方程_13

这个含有一阶偏导数的矩阵即为雅各比矩阵(详见百度)

android BrightnessInfo 非线性计算的换算_解方程_14

于是我们终于可以来解方程了,照着式子中的描述,我们令x1 = x,x2 =android BrightnessInfo 非线性计算的换算_解方程_15

就可以得到

android BrightnessInfo 非线性计算的换算_二维_16

android BrightnessInfo 非线性计算的换算_解方程_17

于是按照前面的步骤

1·找出平衡点,令f1、f2 = 0得到x10 = 1、x20 = 0

2·将平衡点带回f1、f2解出结果

android BrightnessInfo 非线性计算的换算_解方程_18