ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

信号与系统考研复习:典型题分析如何构建解题模型

2026/9/1 17:19:38 拓冰建站 浏览量
信号与系统考研复习:典型题分析如何构建解题模型 如果你正在复习成都信息工程大学803《信号与系统》大概率会接触一套叫“典型题分析”的资料。有的人把它当成参考答案做完一道核对一道然后继续往下刷也有的人把它当成讲义逐字逐句读但合上书以后遇到新题还是不知道第一步写什么。我见过太多同学卡在这个环节不是不努力而是把典型题分析的定位理解窄了。典型题分析3要解决的核心问题不是“这道题怎么解”而是“你看到题目后怎样用最短路径走到正确方法上”。这也是我认为考研专业课复习最容易拉开差距的地方。1. 为什么典型题分析不是“对答案”而是“建模型”1.1 做题、读题、建模型三种姿势完全不同“对答案”的复习姿势是题目拿到手能算多少算多少算不出来就看答案解析看懂后觉得“我会了”然后做下一道。这种姿势在基础阶段有一定效果它能帮你模拟考试节奏也能暴露出知识点漏洞。但在强化阶段以后它的效率会明显下降因为你只是在记忆“这一道题”的路径而不是在提炼“这一类题”的路径。更推荐的姿势是把典型题当作“样例”拆它的结构。这道题给出了什么条件它想让你求什么它涉及了系统的哪几个性质它有没有可以用不同方法验证的地方如果条件变一下解法会怎么变这个拆解过程就是建模型。所谓“模型”不是公式本身而是题目关键词和方法之间的映射关系。比如看到“连续时间LTI系统”和“微分方程”你首先要知道这题可以走时域经典法也可以走拉普拉斯变换看到“初始状态”和“输入”你要先判断它是否在考察零输入响应与零状态响应的分解。这个映射关系不建立起来后面刷再多题也只是重复劳动。1.2 典型题分析3在复习路线里的位置假设典型题分析是一个系列前面的内容在打基础那么到“分析3”的时候题目开始进入综合题类型。它不再只考单点知识而是把系统描述、响应求解、初始条件、稳定性判断串在一起。这种题最锻炼的恰恰是你对方法的选择能力。我个人的复习经验是做综合题时前30秒的判断比后面十分钟的计算更重要。如果一开始就决定用错方法计算再仔细也会偏离方向。典型题分析最有价值的部分不是后面的答案而是它揭示的那条“从条件到方法的路径”。你要做的是把这条路径提取出来做成自己的判断依据。1.3 一个明确的判断刷题数量不等于方法结构有人会问只看典型题会不会不够当然不够但问题不在“看题多少”而在“有没有把题目归类成方法结构”。如果一个人做了一百道题每道题都是独立记忆那么他面对第一百零一道新题时仍然要重新试错如果一个人只认真拆了十道典型题但每一道都能说出“我看到哪个条件会选哪条路”那他面对新题时会有更强的迁移能力。所以我建议把典型题分析看作“方法样本”而不是“题库”。尤其是成都信息工程大学803这种专业课复习的核心是建立稳定的解题反射而不是寄托在押中原题上。2. 先理解803这类专业课到底在考什么2.1 表面考计算实际考系统观无论叫“信号与系统”还是“信号与线性系统”这门课的主线都很清晰信号怎么表示系统怎么描述信号通过系统之后发生了什么。围绕这条主线所有考点都能被归位。比如“给定微分方程和输入求响应”表面是考微分方程求解但更深一层是在考你是否理解系统对输入的响应可以拆成两部分一部分由系统的初始储能决定另一部分由外部输入决定。你如果只记住了零输入响应和零状态响应两个名词却不知道它们为什么这么拆遇到稍复杂的题目还是会乱。2.2 响应分析题为什么是典型题里的常客一个很常见的现象是不管是哪本考研复习资料到了连续系统分析这一块都会出现“求零输入响应、零状态响应、完全响应”的例题。原因很简单这类题能同时覆盖好几个核心考点。它考你微分方程的特征根也就是系统本身的自然频率它考你初始条件的处理也就是 t0 时刻的状态它考你输入信号和系统函数的乘积也就是频域或复频域的代数运算它还考你最后能不能把结果整理成物理意义清晰的表达式。一道题串起四个知识点这种性价比在考卷里并不常见。2.3 顺序比计算量更值得练我观察到的现象是很多同学不是不会求特征根也不是不会做部分分式展开而是在拿到题目后多花了时间在“试方向”上。这其实是判断顺序没有养成。拿到响应类题目你应该先回答三个问题第一系统是连续的还是离散的第二题目让你在时域里算还是允许用变换域第三它求的是完全响应还是某一项响应分量这三个问题回答完方法和公式基本就确定了。剩下的才是计算。这就是为什么典型题分析不能跳过。它不是用来增加你的工作量而是用来帮你缩短“从题目到方法”的时间。3. 一道响应类典型题的完整拆解过程3.1 示例题目的设定下面我用一道很常见的连续系统响应题来说明分析方法。这道题不是成都信息工程大学某年真题而是信号与系统课程里被反复使用的经典样子。它的结构和很多院校的题型是通用的。题目设定已知一个连续时间 LTI 系统输入输出关系由微分方程 $$ y(t)3y(t)2y(t)x(t) $$ 描述。初始条件为 (y(0)1,\ y(0)0)输入信号为 (x(t)e^{-3t}u(t))。求系统的零输入响应、零状态响应和完全响应。这道题计算量不大但每一步都值得讲清楚为什么这样写。3.2 第一步先写系统模型再决定解法拿到题目后不建议直接代入公式。应该先把微分方程写成系统函数形式。对两边做拉普拉斯变换并假设初始状态为零得到系统函数 $$ H(s)\frac{1}{s^23s2}\frac{1}{(s1)(s2)}. $$ 写这一步的意义是你马上能看到系统有两个负实极点说明系统是稳定的自然模态会随 t 增大衰减。这个信息在最后验证结果时会用到。如果题目没有特别要求方法拉普拉斯变换是响应分解题比较顺手的路径因为它把微分方程变成了代数方程。当然时域经典法也能得到同样结果但是对“零输入/零状态”的分解没有变换域这么直观。3.3 第二步求零输入响应所谓零输入响应是令输入 (x(t)0) 时仅由初始状态产生的响应。此时系统满足齐次方程 $$ y(t)3y(t)2y(t)0. $$ 特征方程是 $$ r^23r20 $$ 特征根为 (r_1-1,\ r_2-2)。所以零输入响应的通解是 $$ y_{zi}(t)C_1 e^{-t}C_2 e^{-2t},\quad t\ge0. $$ 这里特别要注意零输入响应使用的初始条件就是题目给定的 (y(0)1,\ y(0)0)不需要再在右边减去输入项。代入后得到 $$ C_1C_21,\quad -C_1-2C_20 $$ 解得 (C_12,\ C_2-1)。因此 $$ y_{zi}(t)2e^{-t}-e^{-2t},\quad t\ge0. $$这里最容易错的点不要把输入信号引入到零输入响应里。零输入是整个过程中右边都等于 0输入只是不参与而已。3.4 第三步求零状态响应零状态响应是初始状态全部为 0、仅由输入产生的响应。用拉普拉斯变换时直接把输入变换 (X(s)) 和系统函数相乘 $$ X(s)\mathcal{L}{e^{-3t}u(t)}\frac{1}{s3}. $$ 于是 $$ Y_{zs}(s)H(s)X(s)\frac{1}{(s1)(s2)(s3)}. $$ 对它做部分分式展开 $$ \frac{1}{(s1)(s2)(s3)} \frac{A}{s1}\frac{B}{s2}\frac{C}{s3}. $$ 逐个求系数 $$ A\left.\frac{1}{(s2)(s3)}\right|{s-1}\frac12, $$ $$ B\left.\frac{1}{(s1)(s3)}\right|{s-2}-1, $$ $$ C\left.\frac{1}{(s1)(s2)}\right|{s-3}\frac12. $$ 所以 $$ Y{zs}(s)\frac{1/2}{s1}-\frac{1}{s2}\frac{1/2}{s3}. $$ 反变换得到 $$ y_{zs}(t)\left(\frac12 e^{-t}-e^{-2t}\frac12 e^{-3t}\right)u(t). $$这里有个实操建议求部分分式系数时与其背公式不如先确定分母的留数形式。每算完一个系数都可以先把 s 设成对应极点来消去一项不容易出错。3.5 第四步合并并验证结果完全响应是零输入响应与零状态响应之和 $$ y(t)\left(2e^{-t}-e^{-2t}\right)u(t) \left(\frac12 e^{-t}-e^{-2t}\frac12 e^{-3t}\right)u(t). $$ 合并同类项 $$ y(t)\left(\frac52 e^{-t}-2e^{-2t}\frac12 e^{-3t}\right)u(t). $$ 验证初始条件 $$ y(0)\frac52-2\frac121 $$ $$ y(0)\left.-\frac524-\frac32\right|_{t0}0. $$ 两个初值都对上了。还有一个验证维度当 (t\to\infty) 时输入 (e^{-3t}u(t)) 衰减到 0系统是稳定的所以完全响应也应趋近于 0。上面结果中所有指数项都是衰减的说明结果是合理的。如果想用代码验证可以用 Python 的 scipy.signal 做数值仿真也可以直接用 sympy 做符号推导。下面只是一个验证思路# 示例验证思路利用 scipy.signal.lsim 对状态空间模型求数值响应 # 具体版本和接口以你本机环境为准这里只展示步骤框架 import numpy as np from scipy import signal # 将微分方程转为状态空间不是唯一方式 # y 3 y 2 y x A [[0, 1], [-2, -3]] B [[0], [1]] C [[1, 0]] D [[0]] sys signal.lti(A, B, C, D) t np.linspace(0, 10, 1000) u np.exp(-3 * t) # 初始状态对应 y(0)1, y(0)0 x0 [1, 0] t, y, _ signal.lsim(sys, u, t, X0x0) print(y[0], y[-1])注意这里把状态定义为 (x_1y,\ x_2y)初始状态为 [1,0]。代码中的y[0]应接近 1y[-1]应接近 0。实际输出会受到数值积分精度影响但量级应该一致。这样就把一道题完整拆完了。关键不是记住这几个系数而是记住每一步在问什么、为什么这样处理。4. 拿到题目后怎样快速判断该用哪种方法4.1 先做三件事而不是先动笔很多人在考场上浪费时间的点不是计算而是对方法犹豫。我建议拿到任何信号与系统题目先做三步定位判断系统类型连续还是离散LTI还是非线性/时变判断求解域题目有没有限定时域、频域或复频域如果没限定就从最顺手的工具开始。判断求解对象是要完整的完全响应还是零输入/零状态中的一个还是稳态响应、暂态响应、冲激响应、阶跃响应这三步做完方法一般就确定了。4.2 一个简单的方法选择表下面这个表不是放之四海而皆准但对常见考研题型是够用的。题目特征推荐方法为什么连续LTI系统、微分方程、求响应经典法或拉普拉斯变换拉普拉斯变换能把微分方程变为代数方程响应分解也直观给定系统函数求稳态响应频率响应法 (H(j\omega))直接计算幅度和相位变化求冲激响应/阶跃响应系统函数反变换输入变换简单乘积后反变换即可离散LTI系统、差分方程Z变换把差分方程变为代数方程和连续情况类似卷积积分/卷积和需要分段图形法或直接用卷积定义分段点容易出错时图形法能帮上忙判断BIBO稳定性极点位置、劳斯判据从系统函数看极点稳定系统极点必须在左半平面离散系统在单位圆内这个表的价值是让你在动笔前先建立一个默认路径而不是每次现想。4.3 一个真实的建议选方法时以“可验证”为优先我认为刷典型题时还应该养成一个习惯选择一种主方法后想一想有没有第二种方法可以验证。比如上面例题用拉普拉斯变换求出了零状态响应你也可以用卷积积分再推一遍看两个结果是否一致。这种验证不一定要每次做但至少每类题做一次可以帮你找到自己最容易出错的那个环节。这个方法选择表如果能熟练使用你会发现很多题不是“难题”只是“判断题”。你花30秒判断可能比盲目算十分钟更值。5. 典型题最容易卡住的地方一条排查链路5.1 卡住不等于不会而是某个边界没处理好做题做多了会发现大家真正不会的点往往集中在几个边界上初始条件是 (y(0)) 还是 (y(0^-))输入信号是否在 t0 处有跳变卷积积分的积分上限要不要分段这些边界问题没有处理好就会出现“看答案懂自己做就错”的现象。所以一条固定的排查链路非常重要。5.2 一条适合响应类题目的排查链路建议按下面这个顺序排查不要一上来就怀疑自己公式记错了先看输出还不满足初始条件。如果结果在 t0 时和题目给定初值对不上先检查零输入响应的系数有没有算错再看完全响应里是否漏了某一项。再看指数项的趋势。系统若是稳定的响应应该随时间衰减或趋于常数。如果出现指数增长多半是特征根求错或部分分式系数符号有误。再看输入信号是否被正确处理。特别是输入带 (u(t)) 时拉普拉斯变换的收敛域、卷积积分的积分限都要重新确认。再看变换域里的初始状态。如果用了拉普拉斯变换的微分性质题目给的 (y(0)) 到底对应 (y(0^-)) 还是 (y(0^))不同教材定义会有差别要按你所报考院校习惯处理。最后看系统本身。如果系统函数出现零极点相消系统的可观测性或可控性会变差但响应计算本身仍可继续。这种情况在基础题里不常见一旦遇到要格外小心。5.3 一个可复用的“三查四看”框架把上面的思路压缩成一个记忆框架就是“三查四看”。三查查输入输入信号的形式、作用时刻、有无跳变。查初值用的是零时刻之前还是之后的状态。查系统特征根、极点位置、稳定性、是否零极点相消。四看看量纲响应、输入、系统函数之间是否一致。看边界t0 处、分段点处是否连续或是否有跳变。看趋势t→∞ 是否符合物理直觉。看代码/图表用数值仿真或绘图验证中间结果。这个框架不复杂但能让你在卡住时快速定位问题层级。先用三查确定哪个大环节出错再用四看缩小范围。6. 从一道典型题到一类题的复习方法6.1 先跑通一道题再归纳成模板我不太建议