在前两篇文章里,长尾君给大家介绍了麦克斯韦方程组的积分和微分形式。大家也都知道麦克斯韦从这套方程组里推导出了电磁波,然后通过计算发现电磁波的速度正好等于光速。于是,麦克斯韦就预言“光是一种电磁波”,这个预言后来被赫兹证实。
电磁波的发现让麦克斯韦和他的电磁理论走上了神坛,也让人类社会进入了无线电时代。你现在可以随时给远方的朋友打电话,能用手机刷长尾科技的文章,都跟电磁波有着密切的关系。那么,麦克斯韦到底是怎么从麦克斯韦方程组推导出电磁波方程的呢?这篇文章我们就来一起见证这一奇迹的时刻。
01什么是波?
要理解电磁波,首先我们得了解什么是波?有些人可能觉得这个问题有点奇怪,什么是波这还用问么?我丢一块石头到水里,水面上就会形成一个水波;我抖动一根绳子,绳子上就会就会出现一个波动。生活中还有很多这种波动现象,我虽然读书少,但是什么是波还是知道的。
没错,水波、绳子上的波动这些都是波,我在这里抛出“什么是波?”这个问题并不是想来掰指头数一数哪些东西是波,哪些不是,而是想问:所有这些叫作波的东西有什么共同的特征?我们如何用一套统一的数学语言来描述波?
我们研究物理,就是从万千变化的自然界的各种现象里总结出某种一致性,然后用数学的语言定量、精确的描述这种一致的现象。现在我们发现了水波、绳子上的波等许多现象都有这样一种波动现象,那我们自然就要去寻找这种波动现象背后统一的数学规律,也就是寻找描述波动现象的方程,即波动方程。
为了寻找统一的波动方程,我们先来看看最简单的波:抖动一根绳子,绳子上就会出现一个波沿着绳子移动,以恒定的频率抖动就会出现连续不断的波。
为了更好地研究绳子上的波动,我们先建立一个坐标系,然后把注意力集中到其中的一个波上。于是,我们就看到一个波以一定的速度v向x轴的正方向(右边)移动,如下图:
那么,我们该如何去描述这种波动呢?
首先,我们知道一个波是在不停地移动的,上图只是波在某个时刻的样子,它下一个时刻就会往右边移动一点。移动了多少也很好计算:因为波速为v,所以Δt时间以后这个波就会往右移动v·Δt的距离。
另外,我不管这个时刻波是什么形状的曲线,反正我可以把它看成一系列的点(x,y)的集合,这样我们就可以用一个函数y=f(x)来描述它(函数就是一种对应(映射)关系,在函数y=f(x)里,每给定一个x,通过一定的操作f(x)就能得到一个y,这一对(x,y)就组成了坐标系里的一个点,把所有这种点连起来就得到了一条曲线)。
然后,y=f(x)只是描述某一个时刻的波的形状,如果我们想描述一个完整动态的波,就得把时间t考虑进来。也就是说我们的波形是随着时间变化的,即:我绳子上某个点的纵坐标y不仅跟横轴x有关,还跟时间t有关,这样的话我们就得用一个二元函数y=f(x,t)来描述一个波。
这一步很好理解,它无非告诉我们波是随时间(t)和空间(x)变化的。但是这样还不够,世界上到处都是随着时间、空间变化的东西,比如苹果下落、篮球在天上飞,它们跟波的本质区别又在哪呢?
02波的本质
仔细想一下我们就会发现:波在传播的时候,虽然不同时刻波所在的位置不一样,但是它们的形状始终是一样的。也就是说前一秒波是这个形状,一秒之后波虽然不在这个地方了,但是它依然是这个形状,这是一个很强的限制条件。有了这个限制条件,我们就能把波和其它在时间、空间中变化的东西区分开了。
我们这样考虑:既然用f(x,t)来描述波,那么波的初始形状(t=0时的形状)就可以表示为f(x,0)。经过了时间t之后,波速为v,那么这个波就向右边移动了vt的距离,也就是把初始形状f(x,0)往右移动了vt,那么这个结果可以这样表示:f(x-vt,0)。
为什么把一个函数的图像往右移动了一段vt,结果却是用函数的自变量x减去vt,而不是加上vt呢?这是一个中学数学问题,我这里稍微帮大家回顾一下:你们想,如果我把一个函数图像f(x)往右移动了3,那么我原来在1这个地方的值f(1),现在就成了4这个地方的函数值。所以,如果你还想用f(x)这个函数,那肯定就得用4减去3(这样才能得到f(1)的值),而不是加3(4 3=7,f(7)在这里可没有什么意义)。
所以,如果我们用f(x,t)描述波,那么初始时刻(t=0)的波可以表示为f(x,0)。经过时间t之后的波的图像就等于初始时刻的图像往右移动了vt,也就是f(x-vt,0)。于是,我们就可以从数学上给出波运动的本质:
也就是说,只要有一个函数满足f(x,t)=f(x-vt,0),满足任意时刻的形状都等于初始形状平移一段,那么它就表示一个波。水波、声波、绳子上的波、电磁波、引力波都是如此,这也很符合我们对波的直观理解。
这里我们是从纯数学的角度给出了波的一个描述,下面我们再从物理的角度来分析一下波的形成原因,看看能不能得到更多的信息。
03张力
一根绳子放在地上的时候是静止不动的,我们甩一下就会出现一个波动。我们想一想:这个波是怎么传到远方去的呢?我们的手只是拽着绳子的一端,并没有碰到绳子的中间,但是当这个波传到中间的时候绳子确实动了,绳子会动就表示有力作用在它身上(牛爵爷告诉我们的道理),那么这个力是哪里来的呢?
稍微分析一下我们就会发现:这个力只可能来自绳子相邻点之间的相互作用,每个点把自己隔壁的点“拉”一下,隔壁的点就动了(就跟我们列队报数的时候只通知你旁边的那个人一样)这种绳子内部之间的力叫张力。
张力的概念也很好理解,比如我们用力拉一根绳子,我明明对绳子施加了一个力,但是这根绳子为什么不会被拉长?跟我的手最近的那个点为什么不会被拉动?