现代大学生除了会运用高等数学解决大学物理中的问题之外,还应该学会应用计算机语言——特别是MATLAB——解决问题。
通过MATLAB可帮助学生学习物理知识。例如,麦克斯韦速率分布率看起来很复杂,但是,画出以质量为参数和以温度为参数的速率分布率曲线,就能帮助学生理解曲线的变化规律。又例如,康普顿散射公式(包括反冲电子的速度)的推导比较复杂,这些公式都能通过符号计算推导出来。许多积分和求导的问题都能用MATLAB简单地解决。例如,黑体辐射的斯特番常数和维恩常数都能通过符号积分和符号导数简单地求出来)。可以说:解决了计算问题,物理学习就没有什么困难了。
为了画出MATLAB的图片,往往需要提出问题和解决问题。例如,为了画出直线电流的磁感应线,就需要确定磁感应线的分布规律。根据磁通量与磁感应强度的关系进行分析,可知:磁感应线到直线的距离形成等比数列。通过MATLAB的图片也可发现问题,并设法解决问题。例如,在直线电流磁场中匀速旋转线圈的电动势,在一定的条件下,在一个周期内有两个对称的“犄角”和一个“凹点”,深入思考就提出:消除“犄角”和“凹点”的临界条件是什么?原来,“犄角”区域和“凹点”区域的交点是拐点,拐点处的二阶导数为零,由此可获取临界条件。亥姆霍兹线圈在轴线上的磁感应强度最平稳的条件也可用同样的方法分析和计算。
应用MATLAB解决大学物理的问题,其最大困难就程序设计。程序设计中包含许多方法和技巧,掌握这些方法和技巧的捷径就是解读已有的程序,特别是在执行中解读程序。仿效程序,修改程序,移植程序,这都是学习编程和提高程序设计能力的有效方法。200多个程序,程序简练而完整,规范并通用。每个程序都经过反复调试,不但保证了程序准确无误,还使程序简洁易懂。为此,在程序前面介绍算法,在程序每一行指令右边附加简要的注释,在有些程序后面追加说明,包括操作和指令的说明。有些程序设计的技巧比较高超,读者需要通过反复解读才能掌握其中的奥妙。
设计程序解决问题的能力是一种通用的能力,从学习编程到熟练编程通常要经过较长时间的训练,提供大量程序设计的范例,目的是提高读者训练编程的效率。许多方法可移植到专业课程的学习之中,例如理论力学和电磁学等。通过计算和作图,可进行开创性的学习,比较容易解决疑难问题,收到较好的学习效果。当学生学会了设计程序进行学习和探索时,这种学习和探索将充满乐趣。