
行波法的核心优势在于它不依赖稳态电气量而是利用故障瞬间产生的暂态行波信号。对于一个刚接触这个方向的人来说最难的不是看懂公式而是把理论模型落到Simulink里真正跑起来。这篇博文就是围绕这个“落地”的过程展开的从行波理论的基本逻辑讲起到Simulink分布式参数线路模型搭建、波头识别实现、双端测距算法集成再到我实际调试过程中踩过的坑。适合正在做相关课题的研究生、做继电保护整定的工程师以及准备复现论文但卡在仿真环节的朋友参考从理论到场景到代码逻辑尽量给你一条可以直接上手的路径。1. 为什么选行波理论故障诊断的核心痛点与方案选型1.1 传统故障测距方法的局限性输电线路故障诊断的核心任务之一就是故障测距——线路发生短路或接地后运维人员需要快速知道故障点在哪里才能安排巡线、抢修和恢复供电。传统工程中最常用的阻抗法原理是故障时测量端的电压电流可以计算出故障回路阻抗进而推算距离。但阻抗法有个先天问题它受过渡电阻、负荷电流、系统运行方式变化的影响很大。高压输电线路发生高阻接地时故障电流可能很小计算出来的阻抗误差可能达到百分之十几甚至更高。如果线路还带有串联补偿电容或者T接支路阻抗法的适用性就更差了。另外故障点两侧系统阻抗的比值变化也会直接干扰测距结果所以工程现场往往需要反复试探、人工修正。还有一个容易被忽略的问题阻抗法依赖的是稳态基波分量。但故障后的暂态过程里基波分量衰减需要时间如果保护动作速度快采样到的数据窗口很短稳态量还没建立起来测距误差自然就大。这就引出了行波法的要紧之处它天生基于暂态过程不依赖稳态量。1.2 行波法为什么能打原理概述行波法的物理基础其实不复杂输电线路发生故障时故障点会出现电压突变相当于在故障点注入了一个电压阶跃信号。根据电磁波传播理论这个阶跃会在线路两端来回反射形成高频暂态行波。行波的传播速度接近光速具体数值由线路参数决定通常在2.9×10^8 m/s到2.98×10^8 m/s之间。这个速度在架空线中非常稳定几乎不受故障类型、过渡电阻和系统运行方式的影响这是行波法比阻抗法稳健的关键原因。测距的基本思路是检测行波从故障点传播到测量端的时间。单端法靠捕捉故障点反射波和初始波之间的时间差利用Δt乘以波速再除以2得出故障距离。双端法则靠比较行波到达线路两端的时间差结合全线长度和波速计算故障点位置公式是d (L v×Δt) / 2。听起来很直接但实际实现有几个难点。第一行波信号是高频暂态分量幅值可能只有正常电压的百分之一左右需要高采样率的采集设备。第二怎么从混合信号中准确识别出“波头”到达时刻这需要信号处理算法最常用的就是小波变换模极大值法。第三双端测距需要两端时钟同步一般依赖GPS/北斗对时这在实验室仿真里可以通过设计实现但工程上是一个工程量很大的环节。1.3 论文复现的整体研究思路与技术选型论文复现的第一步是先搞清楚这篇文章的研究对象和验证路径。通常这类文章的结构是先介绍行波测距原理再建立输电线路仿真模型然后在不同故障条件下仿真最后用小波变换提取行波波头、计算故障距离、分析误差。我在复现时选择了Simulink而不是其他电磁暂态仿真工具是因为Simulink在分布式参数线路建模、电力系统元件库和MATLAB脚本联动方面非常成熟。不需要额外安装复杂的电磁暂态程序用Simulink里的Three-Phase Distributed Parameter Line模块就能搭建线路模型配合Three-Phase Fault模块模拟各种故障再用MATLAB脚本调用小波工具箱处理仿真结果。整个复现路径可以拆成四个环节模型搭建、故障仿真、行波提取与波头识别、测距结果分析。下面每个环节我都会详细展开把我实际跑通的参数配置、计算过程和踩坑经历写出来。2. Simulink仿真平台搭建从模型架构到参数设定2.1 系统整体架构设计我在Simulink里搭建的模型是一个典型的500 kV双端供电系统简化结构为左侧电源、左侧母线、输电线路、右侧母线、右侧电源。这条线路长度设定为300 km这是高压输电线路比较常见的规模也是我复现的那篇论文里采用的线路长度。电源用Three-Phase Source模块实现电压等级500 kV频率50 Hz两侧电源的相角差设置为20度模拟正常输电状态下的功角。线路用分布参数模型故障点设置在距离M端120 km处方便后续验证测距结果。模型里的关键测量点有两个M端和N端的电流、电压测量模块。行波信号主要从电流信号里提取。为什么用电流不用电压因为故障后电流行波的幅值变化更明显而且电压行波在母线处的折反射更复杂处理起来难度更大。模型的核心是一个分层设计思路第一层是供电系统含电源、断路器、母线。第二层是输电线路含分布式参数线路模块和故障模块。第三层是测量子系统用Scope、To Workspace模块把电流电压波形导入MATLAB工作区。用To Workspace导出数据是关键一步因为后续的小波分析和波头识别在MATLAB脚本里做比在Simulink里方便得多。每次仿真结束后变量存放在工作区脚本直接读取效率很高。2.2 输电线路分布式参数模型核心模块搭建Simulink里的Distributed Parameters Line模块是我这次仿真的核心。它是基于 Bergeron 模型实现的能模拟行波沿线传播的暂态过程与集中参数模型有本质区别。集中参数模型用串联阻抗、并联导纳来等效线路对工频稳态问题够用但无法反映故障产生的行波传播过程。分布式参数模型则把线路看成连续的分布参数系统可以模拟行波的折反射这正是行波法需要的。线路参数我参考了典型500 kV架空线路的参数正序电阻 R1 0.028 Ω/km正序电感 L1 0.89 mH/km正序电容 C1 0.013 μF/km零序电阻 R0 0.27 Ω/km零序电感 L0 3.3 mH/km零序电容 C0 0.0085 μF/km这些参数直接填进Distributed Parameters Line模块的对话框里即可。需要注意的是Simulink要求提供的是单位长度参数per km不是全线的总参数填错了仿真结果会完全失真。我用的线路模块是三相模型在参数设置里选择“Three-Phase Distributed Parameter Line”然后填入上述正序和零序参数。仿真开始前模块会基于这些参数计算波阻抗和波速。根据公式正序波速近似为1/√(L1×C1)代入上面的参数算出来大约是2.94×10^8 m/s很接近光速。2.3 故障模块与行波检测关键参数计算故障模块用的是Three-Phase Fault可以设置故障类型、故障时间、过渡电阻。我的设置是这样的A相接地故障故障起始时间0.02 s故障持续0.1 s过渡电阻分别测试了0.01 Ω、10 Ω、50 Ω和100 Ω四种情况用来分析过渡电阻对测距精度的影响。故障时间设置在0.02 s正好是电压基波过零后20 ms这样可以模拟故障发生在电压非过零点的典型情况产生的行波信号比较明显。行波检测的关键在于采样率。行波信号的频率成分很高理论上要达到微秒级的分辨率才能准确捕捉波头。Simulink仿真里采样率的设置会影响Simulink的仿真速度。我试过几组采样率最终选择的是1 MHz。在300 km线路场景下行波传播全程约1 ms1 MHz采样率相当于在每个毫秒内采1000个点波头到达时刻的分辨率可以达到1 μs。以波速2.94×10^8 m/s计算1 μs对应约294 m的测距分辨率。如果采样率降到100 kHz分辨率就只有2.94 km误差太大没法看。所以在仿真复杂度可接受的范围内采样率尽量高。这里有个重要提示Simulink的采样率设置需要平衡固定步长的选择。我使用的是固定步长求解器步长设为1 μs这样每个仿真时间步对应一个采样点数据导出后不需要重采样分析起来非常方便。如果你用变步长求解器导出的数据时间轴是不均匀的后面用小波分析会非常麻烦。2.4 仿真步长与解算器设置容易被忽视的细节这部分是很多初次复现的人最容易忽略的。我见过不少人在Simulink里搭好模型结果仿真出来的波形完全不对老是振荡发散最后发现问题是解算器设置错了。行波信号是高频暂态成分理论上需要用小步长才能准确仿真。Simulink默认的变步长求解器如ode45虽然能自适应调整步长但对高频行波信号的自适应能力有限有时候会在行波尖峰附近出现数值振荡。我的做法是Solver选项选“Fixed-step”求解器选“ode4”四阶龙格库塔步长设1 μs。仿真时长0.05 s50 ms这样总共产生50000个采样点既覆盖了故障后的暂态过程又不至于数据量太大导致内存爆炸。固定步长还有一个好处导出数据后用MATLAB分析时采样间隔均匀小波变换的时间轴对应关系一目了然。如果非要用变步长就得在导出后做插值重采样增加很多额外工作量还容易引入插值误差。另外电源模块和测量模块的采样时间也要统一设置。我把Three-Phase Source的Sample Time设置为0表示连续时间但测量模块的输出如果直接进To Workspace需要给它指定一个采样时间。我在To Workspace里设置Sample Time为1e-6确保导出的数据以1 μs为间隔。3. 行波提取、波头识别与故障定位的完整实现3.1 行波信号的提取与预处理模型跑通后M端和N端的电流波形会以矩阵形式存在工作区里。接下来的工作是把三相电流变换成行波信号。高压输电线路的故障暂态过程里电流中包含工频分量和高频行波分量。如果直接拿原始电流去做小波变换工频分量会淹没行波信号波头很难识别。我的处理流程是先做相模变换把三相电流转换为线模分量和零模分量。行波分析中通常用线模分量因为它受大地回路影响小波速稳定。相模变换的公式比较成熟可以采用Karenbauer变换矩阵来处理这个转换过程。然后对线模分量做高通滤波或小波分解提取高频细节分量。我用MATLAB的wavedec函数对线模电流做了5层小波分解小波基选择db4。为什么选db4因为它具有较好的正则性和紧支撑性对突变信号的检测效果比较好是行波波头识别文献里最常提到的小波基之一。高频细节分量d1或d2层对应行波波头的位置。当故障发生时线模电流的高频分量会出现一个明显的突变峰这个峰对应的时刻就是行波到达测量端的时刻。3.2 小波变换模极大值法识别波头波头识别的核心算法是小波变换模极大值法。原理是信号突变点对应小波变换系数的模极大值点通过检测模极大值的位置就能定位突变时刻。在MATLAB里的实现步骤是用wavedec对线模电流做小波分解得到近似系数cA和细节系数cD。取第一层或第二层细节系数找到其绝对值的最大值及其位置。把最大位置对应的时间索引换算成实际时间就是波头到达测量端的时刻。这里有一个实际经验不一定层数越多越好。层数越多细节分量的时间分辨率越低波头位置的误差越大。我对比了d1层和d5层的结果d1层的时间分辨率最高但容易受到噪声干扰d3层相对平滑但定位误差会增大。最终我选了d2层兼顾了抗噪和时间精度波头定位误差控制在2 μs以内。还有一个细节小波变换前要对信号做去趋势处理。因为原始线模电流里包含衰减的直流分量和工频分量如果不去趋势小波系数里会含有较大的低频谱泄漏影响模极大值检测。我用detrend函数先去除线性趋势再做小波分解效果提升明显。3.3 故障距离计算与双端测距实现波头识别得到两个关键时间tM行波到达M端的时刻tN行波到达N端的时刻双端测距公式为 dM (L v×(tM - tN)) / 2其中dM是故障点到M端的距离L是全线路长度300 kmv是行波波速。我把波速v设为2.94×10^8 m/s。这个值是从线路参数推导出的理论值也可以用仿真数据反推验证。做法是在已知故障距离120 km的情况下测量tM和tN的差反算波速看与理论值相差多少。我实测下来的结果和理论值偏差在1%以内说明Simulink的分布参数模型对行波传播的模拟是可靠的。计算前还要注意一个偏移问题故障发生在0.02 s但行波从故障点传播到M端需要一定时间。如果波形导出时间起点是0那么故障发生时刻到第一个波头到达时刻的时间差就是行波传播时间。这个时间差乘波速就是故障距离。所以计算时要用绝对时间差而不是直接用采样点的序号差。如果两个测量端的时间基准不同双端测距公式里会出现常数误差。在仿真里M端和N端的数据是同一个Simulink模型导出的时间基准天然同步所以这个误差项在仿真里是零。论文里通常会讨论时钟同步误差的影响仿真时可以通过人为给tN增加一个偏移来模拟分析这算是一个扩展研究方向。3.4 仿真结果与误差分析我按故障点设在120 km处、A相接地、过渡电阻10 Ω的参数跑了一组仿真。M端电流的线模分量在0.0204 s左右出现第一个突变峰对应初始行波到达M端N端在0.0208 s左右出现突变峰。两个时间差约为0.4 ms代入双端测距公式dM (300 2.94×10^8 × (0.0204 - 0.0208)) / 2注意这里要换算好单位tM - tN -0.0004 sv×(tM - tN) 2.94×10^8 × (-0.0004) -117600 m -117.6 kmdM (300 - 117.6) / 2 91.2 km这个结果明显不对。问题出在符号和插值上。细看后发现距离M端更近的故障行波应该先到M端所以tM应该小于tNtM - tN为负值。但公式里dM (L v×(tM - tN)) / 2代入tM - tN -0.0004 s得到dM 91.2 km正确值应该是120 km误差很大。我排查后发现真正的问题是波头识别的时刻不是第一个波头到达的绝对时刻而是小波系数模极大值对应的d2层中心点这个中心点有一定带宽偏移。我把小波系数最大值时刻做了校正用d1层的高分辨率位置做精细定位再结合d2层做抗噪确认最终得到的tM 0.02041 stN 0.02082 s时间差为-0.00041 sdM (300 - 120.54) / 2 ≈ 89.73 km还是不对。我停下来重新推导了一下发现自己把差值的符号和绝对值搞混了。双端测距公式的推导前提是如果故障离M端更近行波先到M端那么(tM - tN)为负值。而L v×(tM - tN)算出来应该是故障点到N端的距离与故障点到M端的距离之差。正确的关系应该是dM (L - v×(tN - tM)) / 2或者等价地写成 dM (L v×(tM - tN)) / 2代入时要严格使用符号。tN - tM 0.00041 sv×0.00041 ≈ 120.54 kmdM (300 - 120.54) / 2 89.73 km还不是120。我再检查发现其实是我把小波系数峰值对应的索引换算成时间时没有加上故障发生前的偏移时间而且我一度把故障时间0.02 s当作了基准但忘记加上波头到达时刻的索引时间。实际上用双端测距可以不依赖故障发生时间只需要tM、tN两个绝对时刻。我将tM0.02041 s、tN0.02082 s直接代入dM (300 2.94×10^8 × (0.02041 - 0.02082)) / 2 (300 - 120.54) / 2 ≈ 89.73 km还是89.73。我意识到这样不对因为0.02041 - 0.02082 -0.00041v×(-0.00041) -120.54 km300 (-120.54) 179.46除以2等于89.73。这说明我对公式的记忆需要修正。我查了文献双端测距的标准形式应该是 dM (L v×(tM - tN)) / 2这个公式本身没错但关键是tM和tN定义为行波到达M端和N端的绝对时刻。如果故障离M端更近行波先到M端则tM 小于 tNtM - tN为负所以v×(tM - tN)为负导致dM偏小。那公式难道是假设行波先到N端我重新翻阅论文论文里公式写作dM (L - v×(tN - tM)) / 2两式等价。代入tN - tM 0.00041v×0.00041 120.54dM (300 - 120.54)/2 89.73。还是不对。这说明波头识别的时间差本身就不对。我进一步检查发现小波d2层的峰值索引对应的不是波头起始时刻而是小波系数的最大值位置它和真正的波头起始时刻之间存在一个偏移。这个偏移量与故障初始角、线路参数、小波基都有关不能简单忽略。正确的做法是用d1层细节分量检测初始波头起始时刻。d1层的时间分辨率最高虽然易受噪声干扰但在仿真数据里噪声很小d1层的第一个明显突变点才是真正的行波到达时刻。修正后我得到的两个端点的初始波头到达时刻分别是tM 0.020408 s和tN 0.020815 s时间差tN - tM 0.000407 sv×(tN - tM) 119.66 kmdM (300 - 119.66)/2 ≈ 90.17 km结果依然不对。我意识到我对波速的取值可能有误。用理论值v2.94e8而实际仿真线路参数计算出的波速可能略有不同。我改用反推法已知故障距离120 kmtM和tN已知则v (300 - 2×120)/ (tN - tM) 60 km / 0.000407 s ≈ 1.474e8 m/s这明显不对。这里我犯了一个低级错误双端测距公式里tN - tM对应的距离差不是v×(tN - tM)而是v×(tN - tM) (N端距离) - (M端距离)。当故障在120 km处N端距离是180 km差值是60 km。如果tN - tM 0.000407 sv 60 km / 0.000407 s ≈ 1.47e8 m/s只有光速的一半。这说明时间差或者故障距离假设有误差。我又重新用单端法验证tM0.020408故障发生在0.02 s初始行波传播时间Δ0.000408 s按v2.94e8距离为0.000408×2.94e8≈119.95 km几乎等于120 km。说明单端法是对的问题是双端公式里的时间差对应的距离差应该是60 km而我直接用120 km去套所以出错。正确的双端表达是dM (L v×(tM - tN)) / 2其中v×(tM - tN) 2.94e8 × (0.020408-0.020815) 2.94e8 × (-0.000407) ≈ -119.66 km。300 (-119.66) 180.34除以2 90.17 km这依然不对。我查了很久才发现问题不在公式而在tM和tN的时间戳。Simulink导出的数据里第一个采样点对应时间0但To Workspace模块可能会把数据和时间变量一起导出我用的是simout.data和simout.time。如果数据的时间数组不是从0开始的均匀序列而是带有偏移则算出的时间差就不对。检查后发现我用timeseries导出的时间序列其实是从0开始的所以不是这个问题。最终我重新推导了一次双端公式。设定dM为故障距离M端的距离L为线路全长。行波到达M端的传播距离是dM到达N端的传播距离是L - dM。因此tM t0 dM / v tN t0 (L - dM) / v两式相减tM - tN (dM - (L - dM)) / v (2dM - L) / v解出dM (L v×(tM - tN)) / 2这个推导没问题。代入tM - tN -0.000407v×(tM - tN) -119.66 kmdM (300 - 119.66)/2 90.17 km。还是90.17。那问题只能是tM或tN的波头识别存在系统性偏差。我仔细查看d1层小波系数发现M端的第一个峰值时刻是0.020408但N端的第一个峰值时刻是0.020815时间差0.000407反推故障距离90.17 km。而单端法按同样的tM计算距离是119.95 km两者矛盾。我想通了tM 0.020408的时候单端法里Δt tM - t0的t0是故障发生时刻0.02 s这个是对的。双端法里N端的0.020815是初始行波到达N端的时刻理论上时间差应该是(L - 2dM)/v (300-240)/2.94e8 60/2.94e8 ≈ 0.000204 s而不是0.000407。也就是说N端识别到的0.020815不是初始行波到达时刻而是反射波或者其他折反射分量。这就是行波波头识别的经典陷阱在双端测距中两端检测到的必须是同一波前初始行波。如果N端检测到的第一个突变峰不是初始行波而是M端反射波绕了一圈再过来的信号时间差就会翻倍测距结果就错了。修正方法是在检测波头时设置一个时间窗。故障发生后初始行波到达N端的时间预计在0.0202 s到0.0208 s之间因为故障距离M端120 kmN端180 km行波传播时间约0.00041~0.00061 s。我只需要在故障发生后0.7 ms的时间窗内寻找第一个模极大值而不是在整个仿真时长里找最大值。按这个方法重新识别N端的初始行波到达时刻是0.020612 s因为这个时刻才是真正的初始行波之前的0.020815可能是反射波tM - tN 0.020408 - 0.020612 -0.000204v×(tM - tN) -60 kmdM (300-60)/2 120 km完美命中。这个排查过程非常有价值它说明了波头识别不是简单找最大值而是要理解行波的折反射传播规律设定合理的时间窗才能正确匹配同一波前。3.5 误差分析和多场景对比修正后的测距结果在120 km故障场景下误差小于0.5 km相对误差0.4%以内。我又测试了其他故障类型和位置单相接地、故障点在180 km处测距179.6 km误差0.4 km两相短路、故障点在60 km处测距60.3 km误差0.3 km三相短路、过渡电阻50 Ω、故障点在240 km处测距239.4 km误差0.6 km过渡电阻的影响在100 Ω以内基本不明显。行波法对过渡电阻不敏感这是它的天然优势。故障初始角的影响更大一些。我测试了故障发生在电压过零点附近的情况初始角接近0度此时行波幅值很小波头识别难度增加测距误差增大。这也是行波法在实际应用中的一个短板需要结合小波变换的尺度选择和抗噪处理来缓解。4. 常见问题与排查技巧实录4.1 仿真不收敛、波形发散怎么办Simulink里分布参数线路模型加故障模块后最容易出现的问题是仿真步长太大导致的数值不稳定。如果你用变步长ode45仿真到故障时刻附近经常会出现“步长在时间点处减小到小于最小允许步长”的报错。解决办法是改用固定步长步长设置在1 μs到10 μs之间。如果故障后波形出现高频振荡发散把步长缩短到1 μs基本能解决。另一个技巧是给故障模块设置合理的过渡电阻不要设置为0否则故障瞬间电流变化过于剧烈容易触发数值计算问题。4.2 波头识别不准、误差偏大怎么排查波头识别不准时先检查采样率是否足够。采样率低于100 kHz时波头时间分辨率在10 μs以上对应测距误差接近3 km这在论文分析里会非常难看。建议仿真采样率至少达到200 kHz最好1 MHz。然后再检查小波参数。db4小波基是默认选择但如果波形噪声大可以改用sym8或者coif5抗噪性更强。分解层数建议从d1到d3逐层对比选一个时间分辨率和抗噪性平衡的层。还有一个高频问题双端测距时两端识别到的波头不是同一个波前。解决方法是设定时间窗在故障发生后预计的时间范围内搜索第一个模极大值而不是在整个时间序列里找最大值。4.3 模型运行速度太慢怎么办1 MHz采样率固定步长1 μs仿真0.05 s意味着要计算50000个步模型复杂时跑起来确实慢。我实测在普通笔记本上这个模型完整跑一遍大约需要10到15分钟。加速技巧仿真时长不必设置太长。故障后10 ms内行波已经完成了多次折反射主要波头信息都在前5 ms内。可以把仿真时长缩短到0.03 s大幅减少计算量。尽量少用Scope模块做高采样率显示。Scope显示会消耗大量内存和GPU资源我通常把Scope换成To Workspace仿真结束后再用MATLAB绘图。关闭Simulink的动画显示功能。在Simulation-Model Configuration Parameters里把Simulation Target的“Enable graphical animation”取消勾选。4.4 常见问题速查表问题现象可能原因解决办法仿真报错“步长减小到最小允许值”变步长求解器在高频暂态下数值不稳定改用固定步长设为1 μs波形发散、出现明显振荡步长过大或过渡电阻为0缩短步长过渡电阻设0.01 Ω以上波头识别结果忽大忽小小波分解层数选择不当对比d1到d3层选稳定层双端测距结果偏离严重两端检测波前不一致设时间窗只搜索初始行波导出数据时间轴不均匀使用了变步长求解器改固定步长并设置Sample Time仿真运行极慢仿真时长过长或Scope拖累性能缩短时长用To Workspace代替Scope故障距离出现约两倍误差N端检测到的是反射波用时间窗限制初始行波搜索范围5. 个人实操心得与扩展建议这次复现踩过最大的坑就是波头匹配问题。刚开始我以为只要小波系数最大的点就是波头结果双端测距结果差出一倍还多。后来慢慢理解了行波的折反射机理意识到初始行波之后会有一连串的反射波和透射波如果不加时间窗筛选很容易选错波前。这个经验对做行波测距的人应该都有参考价值。还有一点是关于波速的取值。仿真里用理论波速做测距误差并不大。但实际工程中线路参数会随温度、频率变化波速也会漂移。论文里通常会讨论波速不确定性的影响我建议复现时也做一组波速偏移的敏感性分析比如把波速从2.94e8调成2.9e8和2.98e8看测距结果的变化范围。这个分析在很多论文里都是加分项。后续扩展方向可以从这几个角度切入考虑线路换位对行波传播的影响、接入T接线路的多端测距、雷击干扰与故障行波的区分、把单端和双端测距结果融合的综合定位算法。如果想把项目做得更完整还可以把Simulink模型封装成Simscape电力系统组件结合MATLAB App Designer做一个简单的故障诊断界面这样整个系统就更像一个可以演示的成果了。说到底行波法在Simulink里的实现难度不在Simulink操作本身而在于对行波传播物理过程的理解深度。模型和算法都是工具真正决定测距精度的是你能不能准确地解释每一个波头从哪来、到哪去、应该选哪个。这也是论文复现过程中最有价值的一部分。