Singer模型与CT模型状态转移矩阵的求解

Singer模型与CT模型状态转移矩阵的求解

文章目录

  • Singer模型与CT模型状态转移矩阵的求解
    • 前言
    • 状态方程
    • 矩阵指数函数
      • 泰勒展开
      • 拉普拉斯变换
    • Singer模型
    • CT模型

前言

回想起来,第一次接触Singer模型与CT模型时的状态转移矩阵时,对求解过程一知半解。现在,将推导过程记录下来,温故知新。若有纰漏,欢迎讨论。

状态方程

当我们对一个线性时不变系统的输入输出与状态变量感兴趣时,状态空间方程是一种常用的手段。状态空间方程由状态方程输出方程构成,可以表述为
{ x ˙ = A x + B u 状态方程 y = C x + D u 输出方程 \left\{\begin{matrix} \dot{ \mathbf{x}} = \mathbf{Ax}+\mathbf{Bu}& 状态方程\\ \mathbf{y} = \mathbf{Cx} + \mathbf{Du} & 输出方程\\ \end{matrix}\right. {x˙=Ax+Buy=Cx+Du状态方程输出方程
其中,状态方程是一个一阶微分方程 x \mathbf{x} x x ˙ \dot{\mathbf{x}} x˙表示状态向量及其一阶导数。 u \mathbf{u} u为系统的外部输入。 A \mathbf{A} A表示系统矩阵。 B \mathbf{B} B表示输入矩阵。 y \mathbf{y} y为系统输出。 C \mathbf{C} C为输出矩阵。 D \mathbf{D} D为直接输出矩阵。

我们只对状态方程感兴趣。现在为了简化问题,我们并不考虑外部输入对系统的影响,因此,状态方程简化为
x ˙ = A x \dot{\mathbf{x}} = \mathbf{A}\mathbf{x} x˙=Ax

使用拉普拉斯变换对上述一阶微分方程进行求解。这里补充几个常用的拉普拉斯变换对
L ( x ( t ) ) = X ( s ) L ( x ˙ ( t ) ) = s X ( s ) − x ( 0 ) L ( e a t ) = 1 s − a L ( 1 ) = 1 s L ( t ) = 1 s 2 L ( c o s ω t ) = s s 2 + ω 2 L ( s i n ω t ) = ω s 2 + ω 2 L ( e − α t s i n ( ω t ) ) = ω ( s + α ) 2 + ω 2 \begin{aligned} \mathcal{L}(x(t)) &= X(s) \\ \mathcal{L}(\dot{x}(t)) &= sX(s) - x(0) \\ \mathcal{L}(e^{at}) &= \frac{1}{s-a} \\ \mathcal{L}(1) &= \frac{1}{s} \\ \mathcal{L}(t) &= \frac{1}{s^2} \\ \mathcal{L}(cos\omega t) &= \frac{s}{s^2 + \omega ^2} \\ \mathcal{L}(sin\omega t) &= \frac{\omega}{s^2 + \omega ^2} \\ \mathcal{L}(e^{-\alpha t}sin(\omega t)) &= \frac{\omega}{(s + \alpha)^2 + \omega ^2} \end{aligned} L(x(t))L(x˙(t))L(eat)L(1)L(t)L(cosωt)L(sinωt)L(eαtsin(ωt))=X(s)=sX(s)x(0)=sa1=s1=s21=s2+ω2s=s2+ω2ω=(s+α)2+ω2ω

现在对简化的状态方程的等式两端进行拉普拉斯变换并进行变换,可得状态方程的解
L ( x ˙ ( t ) ) = L ( A x ( t ) ) s X ( s ) − x ( 0 ) = A X ( s ) ( s − A ) X ( s ) = x ( 0 ) X ( s ) = x ( 0 ) s − A L − 1 ( X ( s ) ) = L − 1 ( x ( 0 ) s − A ) x ( t ) = e A t x ( 0 ) \begin{aligned} \mathcal{L}\left (\dot{\mathbf{x}}(t) \right )&= \mathcal{L}\left (\mathbf{A}\mathbf{x}(t) \right )\\ s\mathbf{X}(s) - \mathbf{x}(0) &= \mathbf{A}\mathbf{X}(s) \\ (s - \mathbf{A})\mathbf{X}(s) &=\mathbf{x}(0) \\ \mathbf{X}(s) &=\frac{\mathbf{x}(0)}{s - \mathbf{A}} \\ \mathcal{L}^{-1}\left (\mathbf{X}\left (s\right ) \right ) &=\mathcal{L}^{-1}\left (\frac{\mathbf{x}(0)}{s - \mathbf{A}}\right ) \\ \mathbf{x}(t) &= e^{\mathbf{A}t}\mathbf{x}(0) \end{aligned} L(x˙(t))sX(s)x(0)(sA)X(s)X(s)L1(X(s))x(t)=L(Ax(t))=AX(s)=x(0)=sAx(0)=L1(sAx(0))=eAtx(0)

现在我们得到了线性时不变系统的状态方程的解
x ( t ) = e A t x ( 0 ) \mathbf{x}(t) = e^{\mathbf{A}t}\mathbf{x}(0) x(t)=eAtx(0)
该解表述了 t t t时刻的状态向量 x ( t ) \mathbf{x}(t) x(t)与初始状态向量 x ( 0 ) \mathbf{x}(0) x(0)的关系。 e A t e^{\mathbf{A}t} eAt矩阵指数函数。该解是在连续时间系统下的解。通常,我们更关心在离散时间系统下的解。假设离散时间系统的时间维度采样率为 Δ T \Delta T ΔT,则 T T T时刻与 T + Δ T T+\Delta T T+ΔT时刻的状态向量分别为

x ( T ) = e A T x ( 0 ) x ( T + Δ T ) = e A ( T + Δ T ) x ( 0 ) \begin{aligned} \mathbf{x}(T) &= e^{\mathbf{A}T}\mathbf{x}(0) \\ \mathbf{x}(T+\Delta T) &= e^{\mathbf{A}(T+\Delta T)}\mathbf{x}(0) \end{aligned} x(T)x(T+ΔT)=eATx(0)=eA(T+ΔT)x(0)

对上述两式求比值可得 x ( T ) {x}(T) x(T) x ( T + Δ T ) {x}(T+\Delta T) x(T+ΔT)的关系
x ( T + Δ T ) = e A Δ T x ( T ) \mathbf{x}(T + \Delta T) = e^{\mathbf{A}{\Delta T}}\mathbf{x}(T) x(T+ΔT)=eAΔTx(T)
这就是我们熟知的状态转移方程,其中 e A Δ T e^{\mathbf{A}{\Delta T}} eAΔT状态转移矩阵

矩阵指数函数

现在我们已经推导出了离散时间系统下的状态转移方程,但是矩阵指数函数的存在妨碍我们在实际应用中的使用。矩阵指数函数的解法有许多种,这里简单介绍其中的两种。

泰勒展开

实数的泰勒展开我们已经十分熟悉,
e a t = 1 + ( a t ) + 1 2 ! ( a t ) 2 + 1 3 ! ( a t ) 3 + 1 4 ! ( a t ) 4 + . . . . . . e^{at} = 1 + (at) + \frac{1}{2!}(at)^2+ \frac{1}{3!}(at)^3+ \frac{1}{4!}(at)^4 + ...... eat=1+(at)+2!1(at)2+3!1(at)3+4!1(at)4+......
矩阵指数函数的泰勒展开的形式类似
e A t = 1 + ( A t ) + 1 2 ! ( A t ) 2 + 1 3 ! ( A t ) 3 + 1 4 ! ( A t ) 4 + . . . . . . e^{\mathbf{A}t} = 1 + (\mathbf{A}t) + \frac{1}{2!}(\mathbf{A}t)^2+ \frac{1}{3!}(\mathbf{A}t)^3+ \frac{1}{4!}(\mathbf{A}t)^4 + ...... eAt=1+(At)+2!1(At)2+3!1(At)3+4!1(At)4+......

注意,如果用有限项求和的方式代替矩阵指数函数的解,则只能得到近似解

拉普拉斯变换

使用拉普拉斯变换的形式,同样可以得到矩阵指数函数的解。

e A t = L − 1 ( 1 s I − A ) e^{\mathbf{A}t} = \mathcal{L}^{-1}(\frac{1}{s\mathbf{I}-\mathbf{A}}) eAt=L1(sIA1)

Singer模型

Singer模型的状态方程可以表述为
X ˙ = A X + V ~ \dot{\mathbf{X}} = \mathbf{A}\mathbf{X}+\tilde{\mathbf{V}} X˙=AX+V~
其中,状态向量 X = [ x , x ˙ , x ¨ ] ′ \mathbf{X} = [x,\dot{x},\ddot{x}]^{'} X=[x,x˙,x¨] x x x表示位置信息。系统矩阵为
A = [ 0 1 0 0 0 1 0 0 − α ] \mathbf{A} = \begin{bmatrix} 0 & 1& 0\\ 0 & 0& 1\\ 0 & 0& -\alpha\\ \end{bmatrix} A= 00010001α
其中, α \alpha α为机动频率。过程噪声矩阵为
V ~ = [ 0 0 v ~ ] \tilde{\mathbf{V}} = \begin{bmatrix} 0\\ 0\\ \tilde{v}\\ \end{bmatrix} V~= 00v~
因此,状态方程可以重写为
[ x ˙ x ¨ a ˙ ] = [ 0 1 0 0 0 1 0 0 − α ] [ x x ˙ x ¨ ] + [ 0 0 v ~ ] \begin{bmatrix} \dot{x}\\ \ddot{x}\\ \dot{a}\\ \end{bmatrix} = \begin{bmatrix} 0 & 1& 0\\ 0 & 0& 1\\ 0 & 0& -\alpha\\ \end{bmatrix} \begin{bmatrix} x\\ \dot{x}\\ \ddot{x}\\ \end{bmatrix} + \begin{bmatrix} 0\\ 0\\ \tilde{v}\\ \end{bmatrix} x˙x¨a˙ = 00010001α xx˙x¨ + 00v~
其中, x ¨ = a \ddot{x} = a x¨=a。使用拉普拉斯变换求解状态方程的解,可得
e A t = L − 1 ( 1 s I − A ) = L − 1 ( [ s − 1 0 0 s − 1 0 0 s + α ] − 1 ) = L − 1 ( [ 1 s 1 s 2 1 s 2 ( s + α ) 0 1 s 1 s ( s + α ) 0 0 1 s + α ] ) = [ 1 1 s 2 α t − 1 + e − α t α 2 0 1 1 − e − α t α 0 0 e − α t ] \begin{aligned} e^{\mathbf{A}t} &= \mathcal{L}^{-1}(\frac{1}{s\mathbf{I}-\mathbf{A}}) \\ &=\mathcal{L}^{-1}(\begin{bmatrix} s & -1& 0\\ 0 & s& -1\\ 0 & 0& s+\alpha\\ \end{bmatrix}^{-1}) \\ &=\mathcal{L}^{-1}( \begin{bmatrix} \frac{1}{s} & \frac{1}{s^2}& \frac{1}{s^2(s+\alpha)}\\ 0 & \frac{1}{s}& \frac{1}{s(s+\alpha)}\\ 0 & 0& \frac{1}{s+\alpha}\\ \end{bmatrix}) \\ &=\begin{bmatrix} 1 & \frac{1}{s^2}& \frac{\alpha t - 1 + e^{-\alpha t}}{\alpha ^ 2}\\ 0 & 1& \frac{1-e^{-\alpha t}}{\alpha}\\ 0 & 0& e^{-\alpha t}\\ \end{bmatrix} \end{aligned} eAt=L1(sIA1)=L1( s001s001s+α 1)=L1( s100s21s10s2(s+α)1s(s+α)1s+α1 )= 100s2110α2αt1+eαtα1eαteαt

在离散时间系统下,假设采样间隔为 T T T,则状态转移矩阵为
F = [ 1 1 s 2 α T − 1 + e − α T α 2 0 1 1 − e − α T α 0 0 e − α T ] \mathbf{F} = \begin{bmatrix} 1 & \frac{1}{s^2}& \frac{\alpha T - 1 + e^{-\alpha T}}{\alpha ^ 2}\\ 0 & 1& \frac{1-e^{-\alpha T}}{\alpha}\\ 0 & 0& e^{-\alpha T}\\ \end{bmatrix} F= 100s2110α2αT1+eαTα1eαTeαT

CT模型

二维目标运动学方程为
{ x ˙ ( t ) = v ( t ) c o s ϕ ( t ) y ˙ ( t ) = v ( t ) s i n ϕ ( t ) v ˙ ( t ) = a t ( t ) ϕ ˙ ( t ) = a n ( t ) v ( t ) \left\{\begin{matrix} \dot{x}(t) = v(t)cos\phi(t)\\ \dot{y}(t) = v(t)sin\phi(t)\\ \dot{v}(t) = a_{t}(t)\\ \dot{\phi}(t) = \frac{a_{n}(t)}{v(t)}\\ \end{matrix}\right. x˙(t)=v(t)cosϕ(t)y˙(t)=v(t)sinϕ(t)v˙(t)=at(t)ϕ˙(t)=v(t)an(t)
其中, x , y x,y x,y为笛卡尔坐标系下的坐标, v v v为空间速度, a t ( t ) a_{t}(t) at(t)为切向加速度(沿着速度方向), a n ( t ) a_{n}(t) an(t)为法相加速度, ϕ \phi ϕ为航向角。若令 a n ( t ) ≠ 0 , a t ( t ) = 0 a_{n}(t)\neq 0,a_{t}(t) = 0 an(t)=0,at(t)=0,则此时目标进行匀速曲线运动。若此时 a n ( t ) a_{n}(t) an(t)为一常数,则此时目标进行匀速转弯运动。令状态向量 X = [ x , x ˙ , y , y ˙ ] ′ \mathbf{X} = [x,\dot{x},y,\dot{y}]^{'} X=[x,x˙,y,y˙],且角速度 ω = ϕ ˙ \omega = \dot{\phi} ω=ϕ˙ x x x维度的加速度可以表示为
x ¨ ( t ) = a t ( t ) c o s ϕ ( t ) − ω v ( t ) s i n ϕ ( t ) = − ω y ˙ ( t ) \begin{aligned} \ddot{x}(t) &= a_{t}(t)cos\phi(t) - \omega v(t)sin\phi(t) \\ &=-\omega\dot{y}(t) \end{aligned} x¨(t)=at(t)cosϕ(t)ωv(t)sinϕ(t)=ωy˙(t)
同理 y ¨ ( t ) = ω x ˙ ( t ) \ddot{y}(t) = \omega \dot{x}(t) y¨(t)=ωx˙(t)
因此系统矩阵可以写为
A = [ 0 1 0 0 0 0 0 − ω 0 0 0 1 0 ω 0 1 ] \mathbf{A} = \begin{bmatrix} 0 & 1& 0& 0\\ 0 & 0& 0& -\omega\\ 0 & 0& 0& 1\\ 0 & \omega& 0& 1\\ \end{bmatrix} A= 0000100ω00000ω11
使用拉普拉斯变换求解状态方程的解,可得
e A t = L − 1 ( 1 s I − A ) = L − 1 ( [ s − 1 0 0 0 s 0 ω 0 0 s − 1 0 − ω 0 s ] − 1 ) = L − 1 ( [ 1 s 1 s 2 + ω 2 0 − ω s 3 + s ω 2 0 s s 2 + ω 2 0 − ω s 2 + ω 2 0 ω s 3 + s ω 2 1 s 1 s 2 + ω 2 0 ω s 2 + ω 2 0 s s 2 + ω 2 ] ) = [ 1 s i n ω t ω 0 − 1 − c o s ω t ω 2 0 c o s ω t 0 − s i n ω t 0 1 − c o s ω t ω 1 s i n ω t ω 0 s i n ω t 0 c o s ω t ] \begin{aligned} e^{\mathbf{A}t} &= \mathcal{L}^{-1}(\frac{1}{s\mathbf{I}-\mathbf{A}}) \\ &=\mathcal{L}^{-1}(\begin{bmatrix} s & -1& 0& 0\\ 0 & s& 0& \omega\\ 0 & 0& s& -1\\ 0 & -\omega& 0& s\\ \end{bmatrix}^{-1}) \\ &= \mathcal{L}^{-1}(\begin{bmatrix} \frac{1}{s} & \frac{1}{s^2+\omega^2}& 0& \frac{-\omega}{s^3+s\omega^2}\\ 0 & \frac{s}{s^2+\omega^2}& 0& \frac{-\omega}{s^2+\omega^2}\\ 0 & \frac{\omega}{s^3+s\omega^2}& \frac{1}{s}& \frac{1}{s^2+\omega^2}\\ 0 & \frac{\omega}{s^2+\omega^2}& 0& \frac{s}{s^2+\omega^2}\\ \end{bmatrix}) \\ &= \begin{bmatrix} 1 & \frac{sin\omega t}{\omega}& 0& -\frac{1-cos\omega t}{\omega^2}\\ 0 & cos\omega t& 0& -sin\omega t\\ 0 & \frac{1-cos\omega t}{\omega}& 1&\frac{sin\omega t}{\omega}\\ 0 & sin\omega t& 0& cos\omega t\\ \end{bmatrix} \end{aligned} eAt=L1(sIA1)=L1( s0001s0ω00s00ω1s 1)=L1( s1000s2+ω21s2+ω2ss3+sω2ωs2+ω2ω00s10s3+sω2ωs2+ω2ωs2+ω21s2+ω2s )= 1000ωsinωtcosωtω1cosωtsinωt0010ω21cosωtsinωtωsinωtcosωt

在离散时间系统下,假设采样间隔为 T T T,则状态转移矩阵为
F = [ 1 s i n ω T ω 0 − 1 − c o s ω T ω 2 0 c o s ω T 0 − s i n ω T 0 1 − c o s ω T ω 1 s i n ω T ω 0 s i n ω T 0 c o s ω T ] \mathbf{F} = \begin{bmatrix} 1 & \frac{sin\omega T}{\omega}& 0& -\frac{1-cos\omega T}{\omega^2}\\ 0 & cos\omega T& 0& -sin\omega T\\ 0 & \frac{1-cos\omega T}{\omega}& 1&\frac{sin\omega T}{\omega}\\ 0 & sin\omega T& 0& cos\omega T\\ \end{bmatrix} F= 1000ωsinωTcosωTω1cosωTsinωT0010ω21cosωTsinωTωsinωTcosωT

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/14733.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 上除了shell、python脚本以外,还有什么脚本语言用得比较多?

在开始前我有一些资料,是我根据网友给的问题精心整理了一份「 Linux的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!说到在 Linux下的编程&#xf…

柯桥成人商务英语“​cold”是“冷”,“shoulder”是“肩膀”,​cold shoulder可不是冷肩膀!

英文中有很多俚语(idioms)都与身体部位有关,非常有趣。 今天,英语君就为大家介绍一些和身体部位有关的俚语,一起来看看吧! cold shoulder “cold shoulder”不能用字面意思理解为“冷肩膀”,我们…

学习毛概思想(自用)

一、单项选择题 毛泽东思想的主要创立者是( A ) A、毛泽东 B、刘少奇 C、周恩来 D、朱德中国共产党内第一个提出“毛泽东思想”科学概念的是( D  )    A、周恩来   B、刘少奇   C、朱德…

CommonJS 和 ESM 在模块加载和处理依赖关系的方式上的不同点理解

模块加载: CommonJS:当执行到 require() 函数时,Node.js 会同步地加载模块文件,即立即读取模块文件并执行其中的代码,然后返回模块的导出值。这就意味着,直到运行时我们才知道具体导入了哪些模块&#xff0…

智慧校园学工管理系统的部署

学工体系思政服务该怎么规划建造?思政作为高校育人的中心使命,在做到让学生健康高兴生长的一起,也应满意学生生长成才的各类需求。使用技术为学生供给优质的信息化服务,是其间的有效途径。大数据让个性化教育成为可能,…

【题解】AB33 相差不超过k的最多数(排序 + 滑动窗口)

https://www.nowcoder.com/practice/562630ca90ac40ce89443c91060574c6?tpId308&tqId40490&ru/exam/oj 排序 滑动窗口 #include <iostream> #include <vector> #include <algorithm> using namespace std;int main() {int n, k;cin >> n &…

css中弹性布局使用方法

最近写企业家用到许多弹性&#xff0c;感觉到弹性的重要性&#xff0c;今天给大家总结一下 弹性布局&#xff08;Flexbox&#xff09;是一种在 CSS 中用来实现灵活的布局方式&#xff0c;它能够方便地调整容器中子元素的尺寸、顺序和对齐方式。以下是一些常见的弹性布局属性及…

【探索数据结构】线性表之顺序表

&#x1f389;&#x1f389;&#x1f389;欢迎莅临我的博客空间&#xff0c;我是池央&#xff0c;一个对C和数据结构怀有无限热忱的探索者。&#x1f64c; &#x1f338;&#x1f338;&#x1f338;这里是我分享C/C编程、数据结构应用的乐园✨ &#x1f388;&#x1f388;&…

Vue3按顺序调用新增和查询接口

Vue3按顺序调用新增和查询接口 一、前言1、代码 一、前言 如果你想将两个调用接口的操作封装在不同的方法中&#xff0c;你可以考虑将这两个方法分别定义为异步函数&#xff0c;并在需要时依次调用它们。以下是一个示例代码&#xff1a; 1、代码 <template><div>…

丰田精益生产的模板

丰田精益生产&#xff0c;也被称为丰田生产方式&#xff08;Toyota Production System, TPS&#xff09;&#xff0c;是一套完整的生产和管理系统&#xff0c;其核心目标是最大化效率、消除浪费&#xff0c;并通过持续改进来提升产品质量。 学习优秀企业 学习福特 丰田精益生产…

C语言之函数指针(持续更新)

C语言精髓是指针&#xff0c;指针知识深似海&#xff0c;遇到一些学习一些~ 文章目录 1. typedef 定义函数指针类型2. void* 空指针的解引用 1. typedef 定义函数指针类型 函数参数化是指通过函数指针将函数的某些行为参数化。这样&#xff0c;我们可以在调用函数时动态地指定…

【每日刷题】Day48

【每日刷题】Day48 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 872. 叶子相似的树 - 力扣&#xff08;LeetCode&#xff09; 2. 114. 二叉树展开为链表 - 力扣&…

react中怎么为props设置默认值

在React中&#xff0c;你可以使用ES6的类属性&#xff08;class properties&#xff09;或者函数组件中的默认参数&#xff08;default parameters&#xff09;来定义props的默认值。 1.类组件中定义默认props 对于类组件&#xff0c;你可以在组件内部使用defaultProps属性来…

如何撰写EI会议的投稿信?

撰写EI会议的投稿信&#xff08;Cover Letter&#xff09;是向会议组织者介绍你的论文和研究工作的一个重要环节。以下是撰写投稿信的一些关键步骤和建议&#xff1a; 投稿信的结构 信头 你的信息&#xff1a;包括姓名、职位、单位名称、通讯地址、电子邮件和电话号码。日期&am…

力扣652. 寻找重复的子树

Problem: 652. 寻找重复的子树 文章目录 题目描述思路复杂度Code 题目描述 思路 1.利用二叉树的后序遍历将原始的二叉树序列化&#xff08;之所以利用后序遍历是因为其在归的过程中是会携带左右子树的节点信息,而这些节点信息正是该解法要利用的东西&#xff09;&#xff1b; 2…

js积累二(web页面实现 时间走秒)

<tr><td class"ys04"><span class"ys02">当前时间&#xff1a;</span></td><td colspan"2"><span class"showTime"></span><script>var t null;t setTimeout(time, 1000); /…

【ai】chatgpt的plugin已经废弃

发现找不到按钮,原来是要申请: https://openai.com/index/chatgpt-plugins/ 发现申请已经跳转了,好像是废弃了? 不接受新插件了,但是openai的api 是可以继续用的。 https://openai.com/waitlist/plugins/We are no longer accepting new Plugins, builders can now create…

Windows11的这个地方暴露着你的隐私,把它关掉避免尴尬

前言 现在的电脑真的是越来越智能化&#xff01;现在有很多小伙伴都是用着Windows11的吧&#xff01;用习惯了Windows11之后&#xff0c;突然发现它还是挺顺手的。 但不知道你有没有发现&#xff0c;Windows11上面有个地方暴露着你的隐私。这个隐私可能是某个小姐姐的图片&am…

XSS---DOM破坏

文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 一.什么是DOM破坏 在HTML中&#xff0c;如果使用一些特定的属性名&#xff08;如id或name&#xff09;给DOM元素命名&#xff0c;这些属性会在全局作用域中创建同名的全局变量&#xff0c;指向对…

算法:最大连续子序列和

53. 最大子数组和 给你一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 子数组是数组中的一个连续部分。 class Solution:def maxSubArray(self, nums: List[int]) -> int:a…