除了高数,大一最重要的基础课就是大学物理了,内容包含了力学、热物理、电磁学,以及近代物理基础。大学物理的老师是位年长的儒雅的老师,满头灰白发的猫头鹰老师,气度不凡。猫头鹰老师上课也是用自己写的教材,专门针对大理科专业混合的大班同学们,已经出版。不只出版,还有两个版本,中文的,和英文的。猫头鹰老师讲课用中文,但是会让同学们同时参照中文和英文的教材。
对于一直没有接触过英文教材的拉面来说,这是一件新鲜事。大学物理不算太难,所以拉面有时间的时候会翻翻相应的英文课本,虽然这样的时候越来越偶尔。而在后来,拉面有机会出国学习之前,这本英文教材可是给拉面提供了非常好的工具,拉面临时抱佛脚好好补了一下物理名词的英文。
大学物理的第一学期末,猫头鹰老师布置了一个课程作业,要求同学们写一篇和这学期所学的内容相关的小论文。
拉面想到了一个问题,是关于保龄球的。
拉面经常和爸爸看体育台,有时候会播放保龄球的比赛。拉面自己也实地玩过几次。在拉面看来,保龄球里最麻烦的就是出现了大分瓶的时候,也就是第一球之后,最远处的两边角落的两个瓶没有被打倒,都被剩下的情况。这种情况下,因为两个瓶分开得很远,几乎不可能在第二次投球的时候只用一个球就把两个瓶同时打倒,球手就没可能通过两次投球把所有的瓶都清空。
每当这种大分瓶的情况出现的时候,拉面就会想到足球里的香蕉球,加了旋转的球可以绕过防守的对方球员,以弯曲的路径进入球门。那么,对于保龄球的大分瓶,原则上,有没有可能通过投球的时候给球加上旋转,让球的路径出现弯曲,让球可以先后擦过分开的两个瓶子,从而把它们一次击倒?
这个问题现在可以具体计算了,拉面琢磨着,用伯努利原理。伯努利原理适用于流体,也就是水这样的液体或者空气这样的气体。伯努利原理告诉我们,流速越大,压强越小。也就是说,水或者空气中,流动速度快的地方压力小,速度慢的地方压力大。在火车站高铁站的站台上,轨道旁,总是画着不能靠近的黄线,就是因为列车快速经过的时候,紧靠近列车处的空气流动速度快,压力小。而稍微远离的地方,也就是黄线内的人可能站着的地方,空气流动速度相对慢,压力大。那么这不同位置之间的压力差就会把人向列车推过去或者压过去,就会发生危险。
前进的旋转的球也受到类似效应的影响。旋转的球带动紧靠着它的空气跟着它一起旋转,球的不同方向空气的转动方向不一样,叠加上空气相对于球整体的运动,所以球的不同方向的空气的流动速度不一样。流速大的地方压强小,流速小的地方压强大,导致球的轨迹向一边偏转。对于给定大小的一个保龄球,考虑它的前进速度、转动速度,由伯努利方程计算保龄球两侧的压力差别,再计算这个差别对球产生的加速度,球在前进路径上的偏转程度是可以计算出来的。
拉面发现计算过程中需要有一些假设。比如说,保龄球在前进的过程中和球道的地板是存在摩擦力的,前进的速度和旋转的速度肯定会有所减小。但是这个摩擦力的大小不好估计。如果假设没有这个摩擦力,可以根据公式算出保龄球在整个沿着球道长度前进的时候能够发生横向偏转的距离。拉面通过画图、分析、计算,最后得到的结果是,这种情况下一个球能够发生的最大横向偏转距离明显小于大分瓶的情况下两个瓶子之间的距离。
在有摩擦力存在的实际情况中,旋转速度减小,保龄球的偏转会比没有摩擦力的时候更小。所以这篇小论文最后的结论是,无论球手如何操作,也是不可能用一个球一次擦过两个瓶子同时击倒它们的。
提出问题,分析问题,建立模型,计算结果,讨论其中的假设和局限,最后得到结论。拉面成功地解答了自己关于保龄球大分瓶问题长久以来的一个疑惑,也得到了一个好成绩。
拉面一直保存着这份课程论文。多年之后,当开始真正涉及科学研究的论文的时候,拉面回头再看这篇课程论文,觉得小拉面可真棒,已经在其中对科学论文的一些基本要素做出了很好的呈现。
两个学期的大学物理学完之后,接下来的主要物理课程从大二开始,一直上到大三结束,是传说中的四大力学,包括理论力学、电动力学、量子力学,以及热力学和统计物理。天文系还需要学习光学,流体力学,原子物理,以及数学物理方法。除了光学拉面学得相对轻松,其他的课程都充满了新的、复杂的、有时候不容易理解的概念和公式,满满全是干货,全是需要拉面花很多时间和精力才可能弄明白的东西。
一个学期总是有好几门这样的很难的核心课程。拉面只有时间抓住重点概念,完成作业,没有办法完全弄明白其中的来龙去脉。也许大学的课程只能这样,拉面安慰自己,是没有办法把什么都理解透的。拉面只能尽量理解每门课程的重要的知识点,基本概念和方法,想着以后遇到问题的时候知道到那本书里去查找相关的内容和解决方法。
数学物理的课程之外,拉面和同学们还要学习编程。C语言程序设计是必须要学习的课程。给拉面他们天文班辅导高数的研究生学姐推荐他们也去选修另一门编程课,大二上学期的,FORTRAN语言与程序设计。师姐说,早些年FORTRAN是必修课程,因为天文的很多已有的程序都是拿FORTRAN编写的。后来老的程序被新的语言和程序逐渐替代,所以现在FORTRAN成为了选修课。但是,学姐说:“我特别推荐你们去上FORTRAN课,因为讲课的老师是位教学多年的老师,讲得特别好,逻辑非常清晰,很容易明白。”“不同的编程语言主要是语法细节有些不一样,基本逻辑都是相通的。如果你们学C语言觉得没有学得很明白的,可以再去听听FORTRAN的课。”
对于可以选修的大学化学和大学生物,学姐也给出了建议:“天文不只包含数学和物理。天体的成分涉及化学,行星和系外生命的研究涉及生物。如果你们对这些方向感兴趣,有时间的话,可以选修这些课程。”
这个时候,拉面还没有开始系统地学习天文的相关课程,并不清楚地知道化学和生物和天文的具体关系。这也就意味着,她不知道化学和生物对她以后的进一步学习有没有用,该不该选。本着技多不压身的原则,拉面把化学和生物课,当然还有学姐强烈推荐的FORTRAN都学了。
有的选修课的确物超所值。FORTRAN课如学姐所言,让拉面受益匪浅,时常感觉茅塞顿开,自此编程上没有遇到过太大的困难。有的课程内容拉面后来也并没有用到,只是学过而已。唯一让拉面印象深刻的是,生物课的老师说长智齿是没有进化好的表现,而当时拉面正在经受智齿萌出的痛楚,对老师这番言论耿耿于怀了很久。
技多不压身的选课原则带来的直接的后果就是,有的学期拉面的课程有些过多,学得非常辛苦。特别是大二下学期,赶上天气尤其炎热的一年。期末考试期间的13天里,加上英语考级,拉面一共参加了9门考试,连轴转,体重达到历史新低。
这大学上得比高中还辛苦。大一大二的时候,拉面时不常会这么感叹。