基于Matlab常系数微分方程求解方法分析.pdfVIP

  • 3
  • 0
  • 约2.25万字
  • 约 12页
  • 2025-12-12 发布于北京
  • 举报

基于Matlab常系数微分方程求解方法分析.pdf

1常系数常微分方程分析

Matlab包含许多用于求解具有常系数的常微分方程(ODE)的有用程序。本文档将说明

LSIM、IMPULSE和FREQS的用法。

假设你得到了如下常微分方程

NnMm

XdyXdx

aN−nbM−m

dtndtm

n=0m=0

其中a和b是已知常数,x(t)是一个已知函数。我们进一步假设一个“静默起始”状态,使

nm

得当t0时y=0。

Matlab程序LSIMS可用于计算y(t)的时间演化。输入形式为LSIMS(bb,aa,tt),其

中aa是一个包含向量值的数组a,bb是一个包含b的数组,tt是一个包含等间距时

nn

间增量t的数组。输出时,LSIM返回一个数组y(t)(在时间t处计算的y)。必须谨慎

nnn

选择足够小的时间步长,以避免求解器中出现数值误差。通常,这意味着选择的时间步长

要比解的预期时间尺度小5到10倍。

示例,考虑以下一阶系统

dy

+y(t)x(t),(1)

dt

其中

x(t)ce−ct

并且其中c是一个常数。假设y(0)=0,解析解为(你应该能够求解这个解)

c£¤

−ct−t

y(t)e−e

1−c

因此,解将从零开始偏离,其时间尺度为1/c,然后以时间尺度1衰减(除非c小于1)。请注意,

当c→1时,我们得到y→texp(−t)。

要使用LSIM模拟此问题,请设置aa=[1.1.]、bb=1.,并使用命令

LINSPACE(0.,10.,1001)定义tt。这将生成一个包含1001个等间距元素的时间数组,起

始时间为t0,结束时间为t10,间隔(时间步长)为0.01。

在图1中,我们绘制了y随时间变化的曲线,对应于三个不同的c值。生成此图的

Matlab代码可在文档末尾找到。顶部的图是使用线性刻度绘制的,而底部的图则使用对

数刻度显示y。

接下来考虑微分方程

dy

+y(t)δ(t),(2)

dt

1AnalysisofODEswithConstantCoefficients

Matlabcontainsanumberofusefulroutinesforevaluatingordinarydifferentialequations

(ODEs)withconstantcoefficients.WewillillustratetheusageofLSIM,IMPULSE,andFREQS

inthisdocument.

Assumethatyouaregiventheordinarydifferentialequation

N

文档评论(0)

1亿VIP精品文档

相关文档