点“考研竞赛数学”↑可每天“涨姿势”哦!
MATLAB巧解微分方程实例分析
王少华 西安电子科技大学
微分方程求解难,
字母一堆看着烦。
写错数字一时爽,
一直写错一直爽。
还记得那是大一第一学期快结束了,学到微分方程那了,学时挺高兴的,看老师那刷刷地,那么长的方程半个黑板就解完了,黑板上那叫一个主次分明,结构清晰,什么特征方程,齐次通解,非齐次特解,然后俩一加就是非齐次通解。心想挺简单的嘛。(后来自己算时才知道什么叫“真香”)
回去有作业题,第一道是齐次微分方程,立刻换元,化成可分离变量的微分方程,一会儿结果就出来了。然后就是一道二阶非齐次常系数线性微分方程,那不就是死套路嘛,照着解不就行了。提笔算来,算起虽然繁琐,但好歹多半张演算纸还是算出来了,一对答案,不对。emmmm,顿时眉头一皱,提笔再算一遍。一会儿,对答案,不仅和答案不一样,和第一次算出来得也不一样,这就有点酸爽了,算第三遍时,心就有点着急了,这怎么就算不对呢?越想越着急,越着急,式子写得越乱,然后那两个小时就基本上没干其他事了。
大二选了matlab课,感觉这玩意儿tql(太强了),然后突发奇想,用这软件不恰可以抚慰我那被微分方程伤害了的幼小得心灵嘛。
说弄就弄:
解决我们的微分方程就要用到dsolve()这个重要的函数。其完整形式为:
dsolve(‘eqn’,’cond’,’var’)
没接触过matlab的小兄弟可能看着有点懵,这是啥。暂且听我慢慢道来:eqn代表微分方程,cond代表初始条件(无初始条件可以缺省),var代表微分方程中的自变量(默认为t)。
对了,重要的一阶导,二阶导,等高阶导怎么表示呢?别着急,也很简单。该命令中可以用D表示倒数符号,其中D2表示二阶导数,D3表示三阶导数,以此类推。
说了这么多,来看一个实例,来求求下面这个式子的通解: