线性时变系统状态方程的解
线性时变系统状态方程的解
鲁鹏
北京理工大学宇航学院
2019.10.11
文章目录
- 线性时变系统状态方程的解
- 线性时变系统齐次状态方程的解
- 线性时变系统的状态转移矩阵
- 线性时变系统非齐次状态方程的解
- 参考文献
随着学习的深入,线性定常系统(状态方程一般形式为 x˙(t)=Ax(t)+Bu(t)\dot{\boldsymbol{x}}(t)=Ax(t)+Bu(t)x˙(t)=Ax(t)+Bu(t))已经无法满足我的需求了。线性时变系统(状态方程一般形式为 x˙(t)=A(t)x(t)+B(t)u(t)\dot{\boldsymbol{x}}(t)=A(t)x(t)+B(t)u(t)x˙(t)=A(t)x(t)+B(t)u(t))更具一般性。非线性时变系统也可以通过泰勒展开简化为线性时变系统[1]。本文将总结线性时变系统的状态方程的解,主要参考了东北大学课件[2]。
线性时变系统齐次状态方程的解
系统描述:
x˙(t)=A(t)x(t)(1)\dot{\boldsymbol{x}}(t) = A(t)\boldsymbol{x}(t) \tag{1} x˙(t)=A(t)x(t)(1)
初始时刻为t0t_{0}t0,aij(t)a_{ij}(t)aij(t)分段连续
微分方程(1)解为
x(t)=[I+∫t0tA(τ)dτ+∫t0tA(τ1)∫t0tA(τ2)dτ2dτ1+∫t0tA(τ1)∫t0tA(τ2)∫t0tA(τ3)dτ3dτ2dτ1+⋯]x(t0)\begin{gathered} \boldsymbol{x}(t) = \bigg[ I + \int^{t}_{t_{0}}A(\tau)d\tau + \int^{t}_{t_{0}}A(\tau_{1})\int^{t}_{t_{0}}A(\tau_{2})d\tau_{2}d\tau_{1} + \\\int^{t}_{t_{0}} A(\tau_{1}) \int^{t}_{t_{0}} A(\tau_{2}) \int^{t}_{t_{0}} A(\tau_{3}) d\tau_{3} d\tau_{2} d \tau_{1} + \cdots \bigg]\boldsymbol{x}(t_{0}) \end{gathered} x(t)=[I+∫t0tA(τ)dτ+∫t0tA(τ1)∫t0tA(τ2)dτ2dτ1+∫t0tA(τ1)∫t0tA(τ2)∫t0tA(τ3)dτ3dτ2dτ1+⋯]x(t0)
特殊情况:
A(t)[∫t0tA(τ)dτ]=[∫t0tA(τ)dτ]A(t)⟺x(t)=exp[∫t0tA(τ)dτ]x(t0)A(t)\left[\int^{t}_{t_{0}}A(\tau)d\tau \right] = \left[\int^{t}_{t_{0}}A(\tau)d\tau \right]A(t) \\ \iff \boldsymbol{x}(t) = \exp\left[\int^{t}_{t_{0}}A(\tau)d\tau \right]\boldsymbol{x}(t_{0}) A(t)[∫t0tA(τ)dτ]=[∫t0tA(τ)dτ]A(t)⟺x(t)=exp[∫t0tA(τ)dτ]x(t0)
线性时变系统的状态转移矩阵
对于连续线性时变系统
x˙(t)=A(t)x(t)+B(t)u(t)(2)\dot{\boldsymbol{x}}(t) = A(t)\boldsymbol{x}(t) + B(t)\boldsymbol{u}(t)\tag{2} x˙(t)=A(t)x(t)+B(t)u(t)(2)
初始时刻为t0t_{0}t0,aij(t)a_{ij}(t)aij(t),bij(t)b_{ij}(t)bij(t)分段连续。
系统的状态转移矩阵是如下矩阵微分方程和初始条件的n×nn\times nn×n阶解矩阵Φ(t,t0)\Phi(t,t_{0})Φ(t,t0),如果如下初值问题(Initial Value Problem, IVP)无法解析求解可以使用数值积分求解
Φ˙(t,t0)=A(t)Φ(t,t0),Φ(t0,t0)=In(3)\dot{\Phi}(t,t_{0}) = A(t)\Phi(t,t_{0}), \quad \Phi(t_{0},t_{0}) = I_{n} \tag{3} Φ˙(t,t0)=A(t)Φ(t,t0),Φ(t0,t0)=In(3)
线性时变系统非齐次状态方程的解
设连续线性时变系统(2)的解为[3]
x(t)=Φ(t,t0)c(t)(4)\boldsymbol{x}(t)=\Phi(t,t_{0})\boldsymbol{c}(t) \tag{4} x(t)=Φ(t,t0)c(t)(4)
其中c(t)\boldsymbol{c(}t)c(t)为待定量,类比高等数学中的常数易变法(A method of constant variation)理解。
x˙(t)=Φ˙(t,t0)c(t)+Φ(t,t0)c˙(t)=A(t)Φ(t,t0)c(t)+Φ(t,t0)c˙(t)(5)\begin{aligned} \dot{\boldsymbol{x}}(t) =& \dot{\Phi}(t,t_{0})\boldsymbol{c}(t) + \Phi(t,t_{0})\dot{\boldsymbol{c}}(t) \\ =& A(t)\Phi(t,t_{0})\boldsymbol{c}(t) + \Phi(t,t_{0})\dot{\boldsymbol{c}}(t) \end{aligned} \tag{5} x˙(t)==Φ˙(t,t0)c(t)+Φ(t,t0)c˙(t)A(t)Φ(t,t0)c(t)+Φ(t,t0)c˙(t)(5)
将等式(2)带入等式(5)可得
A(t)Φ(t,t0)c(t)+Φ(t,t0)c˙(t)=A(t)Φ(t,t0)c(t)+B(t)u(t)(6)A(t)\Phi(t,t_{0})\boldsymbol{c}(t) + \Phi(t,t_{0})\dot{\boldsymbol{c}}(t) = A(t)\Phi(t,t_{0})\boldsymbol{c}(t) + B(t)\boldsymbol{u}(t) \tag{6} A(t)Φ(t,t0)c(t)+Φ(t,t0)c˙(t)=A(t)Φ(t,t0)c(t)+B(t)u(t)(6)
c˙(t)=Φ−1(t,t0)B(t)u(t)(7)\dot{\boldsymbol{c}}(t) = \Phi^{-1}(t,t_{0})B(t)\boldsymbol{u}(t) \tag{7} c˙(t)=Φ−1(t,t0)B(t)u(t)(7)
等式(7)两端积分得:
c(t)−c(t0)=∫t0tΦ−1(τ,t0)B(τ)u(τ)dτ(8)\boldsymbol{c}(t) - \boldsymbol{c}(t_{0}) = \int^{t}_{t_{0}}\Phi^{-1}(\tau,t_{0})B(\tau)\boldsymbol{u}(\tau)d\tau \tag{8} c(t)−c(t0)=∫t0tΦ−1(τ,t0)B(τ)u(τ)dτ(8)
由等式(4)可知t=t0t = t_{0}t=t0时有c(t0)=x(t0)\boldsymbol{c}(t_{0}) = \boldsymbol{x}(t_{0})c(t0)=x(t0),所以
c(t)=x(t0)+∫t0tΦ−1(τ,t0)B(τ)u(τ)dτ(9)\boldsymbol{c}(t) = \boldsymbol{x}(t_{0}) + \int^{t}_{t_{0}}\Phi^{-1}(\tau,t_{0})B(\tau)\boldsymbol{u}(\tau)d\tau \tag{9} c(t)=x(t0)+∫t0tΦ−1(τ,t0)B(τ)u(τ)dτ(9)
x(t)=Φ(t,t0)c(t)=⋯=Φ(t,t0)x(t0)+∫t0tΦ(t,τ)B(τ)u(τ)dτ(10)\begin{aligned} \boldsymbol{x}(t) =& \Phi(t,t_{0})\boldsymbol{c}(t) \\ =& \cdots\\ =& \Phi(t,t_{0})\boldsymbol{x}(t_{0}) + \int^{t}_{t_{0}}\Phi(t,\tau)B(\tau)\boldsymbol{u}(\tau)d\tau \end{aligned} \tag{10} x(t)===Φ(t,t0)c(t)⋯Φ(t,t0)x(t0)+∫t0tΦ(t,τ)B(τ)u(τ)dτ(10)
类比上述推导过程,非线性时变系统x˙(t)=A(t)x(t)+B(t)u(t)+z(t)\dot{\boldsymbol{x}}(t) = A(t)\boldsymbol{x}(t) + B(t)\boldsymbol{u}(t) + \boldsymbol{z}(t)x˙(t)=A(t)x(t)+B(t)u(t)+z(t)的解很好得到。
参考文献
[1] Szmuk M , Acikmese B . 2018 AIAA Guidance, Navigation, and Control Conference[C]. Successive Convexification for 6-DoF Mars Rocket Powered Landing with Free-Final-Time.
[2] 第三章 状态方程的解ppt(东北大学)
[3] 麻省理工学院公开课:微分方程
线性时变系统状态方程的解相关推荐
- 线性时变系统能用模型预测控制吗_线性系统理论(二)运动分析
根据控制理论的建立过程,一般是分为系统模型的建立.模型的求解与分析,模型的调配和改进,这是经典的系统学思路. 一.基本运动分析 上篇文章我们粗略建立了状态空间方程--这一用来描述系统的新模型,接下来要 ...
- c语言线性表库函数大全,数据结构(C语言版)-线性表习题详解
<数据结构(C语言版)-线性表习题详解>由会员分享,可在线阅读,更多相关<数据结构(C语言版)-线性表习题详解(23页珍藏版)>请在人人文库网上搜索. 1.数 据 结 构 ,线 ...
- 非线性系统【五】|线性时变系统和线性化,逆定理
非线性系统[五]|线性时变系统和线性化,逆定理 由线性时变系统 x ˙ ( t ) = A ( t ) x ( t ) \dot{x}(t) = A(t)x(t) x˙(t)=A(t)x(t),使用状 ...
- 移动机器人中的现代控制理论之状态方程的解
大部分现代控制理论习题都可以通过计算机辅助解决,如Matlab或Octave Online. 这里,重点推荐Octave Online,如下图所示,无需安装,直接打开网页使用: 在上一篇中讲述了最常见 ...
- 线性判别分析(LDA)详解
入门小菜鸟,希望像做笔记记录自己学的东西,也希望能帮助到同样入门的人,更希望大佬们帮忙纠错啦~侵权立删. 目录 一.LDA简介 二.数学原理(以二分类为例子) 1.设定 2.每一类的均值和方差 3.目 ...
- 二阶线性齐次微分方程的解与对应的二阶线性非齐次微分方程的解的关系
以下简称 二阶线性齐次微分方程 为 齐 二阶线性非齐次微分方程 为 非齐 重要的性质.定理(共6条): 证明1:若y1.y2.y3是非齐的解,a.b.c为常数且a+b+c=0,y=a y1+by2+c ...
- lda 协方差矩阵_线性判别分析LDA详解
1 Linear Discriminant Analysis 相较于FLD(Fisher Linear Decriminant),LDA假设:1.样本数据服从正态分布,2.各类得协方差相等.虽然这些在 ...
- 线性联立方程的雅可比迭代解(jacobi Iteration).(python,数值积分)
第八课 线性联立方程的雅可比迭代 迭代方法 在前面几节中,已经描述了线性代数方程组的"直接"解法.我们所说的"直接"是指求解方法是通过固定次数的运算得到答案.由 ...
- linux kernel基本构成的内容有下列哪些项_Linux下逻辑地址-线性地址-物理地址详解...
一.逻辑地址转线性地址 机器语言指令中出现的内存地址,都是逻辑地址,需要转换成线性地址,再经过MMU(CPU中的内存管理单元)转换成物理地址才能够被访问到. 我们写个最简单的hello world程序 ...
- 素数筛线性筛详细详解(个人总结思路超长版)
一.埃氏筛 由于传统的sqrt写法比较简单,直接进行相除看是否能整除即可,这里不想过多的介绍此种方法.大多数比赛中这种写法也只能用于判断少量数据或无需大表即可通过的题目.这里从此种埃氏筛开始介绍. 此 ...
最新文章
- Windows 7加域操作手册下
- 5.10 程序示例--模型选择-机器学习笔记-斯坦福吴恩达教授
- web02--jsp数据传递
- 快开宝PDA开单器出入库扫码:让批发零售变得更简单
- PowerShell渗透工具Nishang
- mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
- 阿里云发布vSphere虚拟机备份服务 ,网络带宽有限条件下依然能有效保护数据
- 深入理解K8S网络原理上
- javascript判断日期奇偶_JavaScript_简介学习4
- linux查看都哪口状态,linux c 查看网口状态
- iOS 浅复制和深复制的深层理解,含示例
- Elasticsearch Index Template(索引模板)
- ppt护理文书流程图_降低护理文件书写不完整率.ppt
- 计算机技术需要学单片机吗,手把手教你学51单片机
- HTTP 405错误解决方法
- Git使用小技巧【git reset和git revert, 你真的知道怎么用吗, 详细图解】
- IDEA 使用SequenceDiagram插件绘制时序图
- DVD-Video 解谜 - VOB文件
- ffmpeg 分离视频音频流 缺失sei信息
- 大学毕业4年-未来展望(1)-商业研究
热门文章
- 华为机试题HJ106
- VB.NET利用WMI获取操作系统所在硬盘序列号
- ie8兼容性视图灰色修复_win8系统设置IE8浏览器兼容性视图的方法
- 仿站和模板建站的区别_快速仿站工具,全能扒站助手
- UI实战教程之切图标注篇(UI必备)
- 如何看硬盘SMART参数----用HDtune工具查看
- android播放网页视频播放器下载,超酷网页视频播放器
- 【2019-2020春学期】数据库作业18:第八章: 数据库编程(实验课大作业)
- fseek函数c语言_在C / C ++中使用fseek()函数的指南
- VMware Ubuntu 18.04 搭建个人Hustoj教程