第一次做数值实验,算法明明收敛了,结果却不对。查了两天,发现是矩阵条件数太大,误差被放大。老师说了一句:算得对不等于算得稳。
一、心路:从算得对到算得稳
我本科前两年喜欢 “算出答案”,程序跑通、结果对了就完事。
转折是一次课程设计,做微分方程数值解。我的格式在简单问题上很好,换个刚性方程就崩了。查了文献才知道,稳定性是有条件的。
从那以后我改了做法:先问三个问题 —— 收敛吗、稳定吗、误差从哪来。
二、绩点:数值分析是核心
计算数学的主干:数值分析、数值代数、微分方程数值解、最优化、矩阵计算。
数值分析要学透:插值、积分、方程求根、特征值计算,每种方法都要知道误差阶和适用条件。
数值代数练矩阵分解:LU、QR、SVD、Cholesky。
最优化分两类:无约束、有约束,方法各不同。
我的方法是 “一算法一实验”:每学一个算法,写代码跑一遍,看它在什么情况下失效。
三、英语:读数值分析教材
计算数学的英文教材,例子多、代码多。
我的读法是先读算法描述,再看误差分析,最后跑例子。术语表记了:convergence、stability、condition number、truncation error、iteration、preconditioner。
四、竞赛:数模最对口
计算数学最对口的竞赛是数学建模。
我参加过一次,做的是优化类题目,负责建模和求解。三天里最大的收获是学会 “先跑通,再优化”。
五、科研:一个算法实验
我的科研训练是一个算法实验。
选了一个算法,做四件事:实现、测误差、比收敛速度、找失效条件。
最难的是 “找失效条件”:要故意构造坏例子。构造了两周,才找到一个让算法变慢的矩阵。
六、辅导:把结果讲清
我报知点保研的定制辅导,问题是讲得太技术。
咨询师帮我把每段经历改成 “问题、算法、实验、结论” 四段,删掉多余公式;模拟面试追问 “你怎么保证结果可信”,逼我把误差分析说清。
说明:辅导改善的是表达与准备,录取由院系考核决定,任何服务都不构成录取承诺。
计算数学教我的,是任何结果都带误差。说结果不带误差,等于没说。
如有保研问题可以咨询电话 4000003363 或者微信 shuoedu,知点保研咨询师将热情专业的解答您的考研问题。
