什么是线性化?
"线性化(linearization)"通常用于描述将一个非线性系统近似为一个线性系统的过程,它使得复杂系统更容易分析和设计。线性化的主要思想是在系统的操作点附近,使用一阶泰勒级数展开来近似非线性系统。这是通过计算系统在操作点附近的导数(雅可比矩阵)来实现的。对于一个具有状态变量的动力学系统,线性化可以写成以下形式:
其中是状态向量,
是输入向量,
是输出向量。矩阵 A、B、C 和 D 是在操作点附近计算的导数,可以理解为系数矩阵。在控制系统理论和动力学中,通常使用点表示时间导数。故
表示状态向量
对时间
的一阶导数。如果状态向量是一个函数
,那么
表示该函数对时间
的导数,其描述了状态变量随时间的变化率。 同理
表示状态向量
对时间的二阶导数,通常用于表示系统状态的加速度。
DR_CAN的工程数学基础部分有对线性化的详细讲解https://space.bilibili.com/230105574如下:
对于一个线性系统(Linear System)应该符合叠加原理,即若有一个系统 符合以下三点,那么这个系统则是线性的。
① 、
是解
② ,其中
、
为常数
③ 是解
举例判断是否线性化:
线性
非线性,因为其有
项,不符合叠加原理
非线性,因为其有
项,不符合叠加原理
线性化方法---泰勒公式简述:
是一个用函数在某点的信息去描述其附近取值的公式。如果函数满足一定的条件,泰勒公式可以用函数在某一点的各阶导数值做系数构建一个多项式来近似表达这个函数[1]。利用泰勒公式可以将非线性问题化为线性问题,且具有很高的精确度。
泰勒展开式:(其实在线性化的过程中只用到了一阶项,所以并不用考虑余项)
若函数 在包含
的某个开区间(a,b)上具有(n + 1)阶的导数,那么对于任一x∈(a,b),有
其中, =
, 此处的
为
与
之间的某个值,
称为n阶泰勒公式,
称为n阶泰勒余项。
根据泰勒展开式可知,如果非常接近于0时,那么
更接近于0,同理,更高阶项也会无限接近于0,数值非常小,因此在线性化的过程中高阶项全部忽略不计。
这里要注意:我们在线性化的过程中忽略了高阶项的影响,这是在 与
非常接近的情况下。所以也解释了为什么在定位过程中,将观测方程线性化解算后要更新
进行迭代,目的就是通过不断的迭代使
更接近于
,消除高阶项的影响,从而提升精度。
那么多元函数如何线性化?——以GNSS观测方程为例
[1]理学院基础数学教研室编;刘缵武,郭从洲主编;王耀革,张武军,姚红,郑治中,张冬燕,邢巧芳,孙铭娟副主编,高等数学同步自主学习指导 上 试行本,信息工程大学理学院,2013.03,第68页