在前兩篇文章裡,長尾君給大家介紹了麥克斯韋方程組的積分和微分形式。大家也都知道麥克斯韋從這套方程組裡推導出了電磁波,然後通過計算發現電磁波的速度正好等于光速。于是,麥克斯韋就預言“光是一種電磁波”,這個預言後來被赫茲證實。
電磁波的發現讓麥克斯韋和他的電磁理論走上了神壇,也讓人類社會進入了無線電時代。你現在可以随時給遠方的朋友打電話,能用手機刷長尾科技的文章,都跟電磁波有着密切的關系。那麼,麥克斯韋到底是怎麼從麥克斯韋方程組推導出電磁波方程的呢?這篇文章我們就來一起見證這一奇迹的時刻。
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張力
一根繩子放在地上的時候是靜止不動的,我們甩一下就會出現一個波動。我們想一想:這個波是怎麼傳到遠方去的呢?我們的手隻是拽着繩子的一端,并沒有碰到繩子的中間,但是當這個波傳到中間的時候繩子确實動了,繩子會動就表示有力作用在它身上(牛爵爺告訴我們的道理),那麼這個力是哪裡來的呢?
稍微分析一下我們就會發現:這個力隻可能來自繩子相鄰點之間的相互作用,每個點把自己隔壁的點“拉”一下,隔壁的點就動了(就跟我們列隊報數的時候隻通知你旁邊的那個人一樣)這種繩子内部之間的力叫張力。
張力的概念也很好理解,比如我們用力拉一根繩子,我明明對繩子施加了一個力,但是這根繩子為什麼不會被拉長?跟我的手最近的那個點為什麼不會被拉動?
答案自然是這個點附近的點給這個質點施加了一個相反的張力,這樣這個點一邊被我拉,另一邊被它鄰近的點拉,兩個力的效果抵消了。但是力的作用又是相互的,附近的點給端點施加了一個張力,那麼這個附近的點也會受到一個來自端點的拉力,然而這個附近的點也沒動,所以它也必然會受到更裡面點的張力。這個過程可以一直傳播下去,最後的結果就是這根繩子所有的地方都會張力。
而且,我們還可以斷定:如果繩子的質量忽略不計,繩子也沒有打結沒有被拉長,那麼繩子内部的張力處處相等(隻要有一個點兩邊的張力不等,那麼這個點就應該被拉走了,繩子就會被拉變形),這是個很重要的結論。
通過上面的分析,我們知道了當一根理想繩子處于緊繃狀态的時候,繩子内部存在處處相等的張力。當一根繩子靜止在地面的時候,它處于松弛狀态,沒有張力,但是當一個波傳到這裡的時候,繩子會變成一個波的形狀,這時候就存在張力了。正是這種張力讓繩子上的點上下振動,所以,分析這種張力對繩子的影響就成了分析波動現象的關鍵。
04波的受力分析
那麼,我們就從處于波動狀态的繩子中選擇很小的一段AB,我們來分析一下這個小段繩子在張力的作用下是如何運動的。放心,我們這裡并不會涉及什麼複雜的物理公式,我們所需要的公式就一個,大名鼎鼎的牛頓第二定律:F=ma。
牛頓第一定律告訴我們“一個物體在不受力或者受到的合外力為0的時候會保持靜止或者勻速直線運動狀态”,那麼如果合外力不為0呢?牛頓第二定律就接着說了:如果合外力F不為零,那麼物體就會有一個加速度a,它們之間的關系就由F=ma來定量描述(m是物體的質量)。也就是說,如果我們知道一個物體的質量m,隻要你能分析出它受到的合外力F,那麼我們就可以根據牛頓第二定律F=ma計算出它的加速度a,知道加速度就知道它接下來要怎麼動了。
牛頓第二定律就這樣把一個物體的受力情況(F)和運動情況(a)結合起來了,我們想知道一個物體是怎麼動的,隻要去去分析它受到了什麼力就行了,所以它牛。
再來看我們的波,我們從處于波動狀态的繩子裡選取很小的一段AB,我們想知道AB是怎麼運動的,就要分析它受到的合外力。因為不考慮繩子的質量,所以就不用考慮繩子的重力,那麼,我們就隻要分析繩子AB兩端的張力T就行了。
如上圖,繩子AB受到A點朝左下方的張力T和B點朝右上方的張力T,而且我們還知道這兩個張力是相等的,所以才把它都記為T。但是,我們知道波動部分的繩子是彎曲的,那麼這兩個張力的方向是不一樣的,這一點從圖中可以非常明顯的看出來。我們假設A點處張力的方向跟橫軸夾角為θ,B點跟橫軸的夾角就明顯不一樣了,我們記為θ Δθ。
因為繩子上的點在波動時是上下運動,所以我們隻考慮張力T在上下方向上的分量,水平方向上的就不考慮了。那麼,我們把AB兩點的張力T都分解一下,稍微用一點三角函數的知識我們就能發現:B點處向上的張力為T·sin(θ Δθ),A點向下的張力為T·sinθ。那麼,整個AB段在豎直方向上受到的合力就等于這兩個力相減:F= T·sin(θ Δθ)-T·sinθ。
好了,按照牛頓第二定律F=ma,我們需要知道物體的合外力F、質量m和加速度a,現在我們已經知道了合外力F,那麼質量m和加速度a呢?
05波的質量分析
質量好說,我們假設繩子單位長度的質量為μ,那麼長度為Δl的繩子的質量就是μ·Δl。
但是,因為我們取的是非常小的一段,我們假設A點的橫坐标為x,B點的橫坐标為x Δx,也就是說繩子AB在橫坐标的投影長度為Δx,那麼,當我們取的繩長非常短,波動非常小的時候,我們就可以近似用Δx代替Δl,這樣繩子的質量就可以表示為:μ·Δx(本來我在考慮這裡要不要再解釋一下微積分思想,但是一想,會看這篇電磁波篇的,必須是已經提前看了麥克斯韋方程組的積分篇和微分篇,而我在那兩篇裡已經介紹過這種思想了,那這裡就不說了~)。
質量搞定了,剩下的就是加速度a了。你可能以為我已經得到了合外力(F= T·sin(θ Δθ)-T·sinθ)和質量m(μ·Δx),那麼剩下肯定就是用合外力F除以質量m得到加速度a(牛頓第二定律),不不不,這樣就不好玩了。我們還可以從另一個角度來得到加速度a,然後把它們作為拼盤拼起來。從哪裡得到加速度呢a?從描述波的函數f(x,t)裡。
06波的加速度分析
不知道大家還記得我們在前面說的這個描述波的函數y=f(x,t)麼?這個函數的值y表示的是在x這個地方,時間為t的時候這一點的縱坐标,也就是波的高度。我們現在要求的也就是AB上下波動時的加速度,那麼,怎麼從這個描述點位置的函數裡求出加速度a呢?
這裡我們再來理解一下加速度a,什麼叫加速度?從名字就可以感覺到,這個量是用來衡量速度變化快慢的。加速度嘛,肯定是速度加得越快,加速度的值就越大。假如一輛車第1秒的速度是2m/s,第2秒的速度是4m/s,那麼它的加速度就是用速度的差(4-2=2)除以時間差(2-1=1),結果就是2m/s²。
再來回想一下,我們是怎麼求一輛車的速度的?我們是用距離的差來除以時間差的。比如一輛車第1秒鐘距離起點20米,第2秒鐘距離起點50米,那麼它的速度就是用距離的差(50-20=30)除以時間差(2-1=1),結果就是30m/s。
不知道大家從這兩個例子裡發現了什麼沒有?我用距離的差除以時間差就得到了速度,我再用速度的差除以時間差就得到了加速度,這兩個過程都是除以時間差。那麼,如果我把這兩個過程合到一塊呢?那是不是就可以說:距離的差除以一次時間差,再除以一次時間差就可以得到加速度?
這樣表述并不是很準确,但是可以很方便的讓大家理解這個思想。如果把距離看作關于時間的函數,我們對這個函數求一次導數(就是上面的距離差除以時間差,隻不過趨于無窮小)就得到了速度的函數,對速度的函數再求一次導數就得到了加速度的表示。所以,我們把一個關于距離(位置)的函數對時間求兩次導數,就可以得到加速度的表達式。
波的函數f(x,t)不就是描述繩子上某一點在不同時間t的位置麼?那我們對f(x,t)求兩次關于時間的導數,自然就得到了這點的加速度a。因為函數f是關于x和t兩個變量的函數,所以我們隻能對時間的偏導∂f/ ∂t,再求一次偏導數就加個2上去。于是我們就可以這樣表示這點的加速度a=∂²f/ ∂t²(關于偏導數的介紹,微分篇裡有詳細叙述,這裡不再說明)。
這樣,我們就把牛頓第二定律F=ma的三要素都湊齊了:F= T·sin(θ Δθ)-T·sinθ,m=μ·Δx,a=∂²f/ ∂t²。把它們集合在一起就可以召喚神,阿不,就可以寫出AB的運動方程了:
這個用牛頓第二定律寫出來的波動方程,看起來怎麼樣?嗯,似乎有點醜,看起來也不太清晰,方程左邊的東西看着太麻煩了,我們還需要對它進行一番改造。那怎麼改造呢?我們可以先把sinθ給幹掉。
07方程的改造
為了能夠順利地幹掉sinθ,我們先來回顧一下基本的三角函數:
如上圖,右邊是一個直角三角形abc,那麼角θ的正弦值sinθ等于對邊c除以斜邊a,正切值tanθ等于對邊c除以鄰邊b。
當這個角度θ還很大的時候,a比b要明顯長一些。但是,一旦角度θ非常非常小,可以想象,鄰邊b和斜邊a就快要重合了。這時候我們是可以近似的認為a和b是相等的,也就是a≈b,于是就有c/b≈c/a,即tanθ≈sinθ。
也就是說,在角度θ很小的時候,我們可以用正切值tanθ代替正弦值sinθ。我們假設這根繩子的擾動非常小,形變非常小,那麼θ和θ Δθ就都非常小,那麼它們的正弦值就都可以用正切值代替。于是,那個波動方程左邊的sin(θ Δθ)-sinθ就可以替換為:tan(θ Δθ)-tanθ。
為什麼我們要用正切值tanθ代替正弦值sinθ呢?因為正切值tanθ還可以代表一條直線的斜率,代表曲線在某一點的導數。想想正切值的表達式tanθ=c/b,如果建一個坐标系,那麼這個c剛好就是直線在y軸的投影dy,b就是在x軸的投影dx,它們的比值剛好就是導數dy/dx,也就是說tanθ=dy/dx。
然而,因為波的函數f(x,t)是關于x和t的二元函數,所以我們隻能求某一點的偏導數,那麼正切值就等于它在這個點的偏導數:tanθ=∂f/ ∂x。那麼,原來的波動方程就可以寫成這樣:
這裡我稍微解釋一下偏導數的符号,我們用∂f/ ∂x表示函數f(x,t)的偏導數,這是一個函數,x可以取各種各樣的值。但是如果我加一個豎線|,然後在豎線的右下角标上x Δx就表示我要求在x Δx這個地方的導數。
再來看一下這個圖,我們已經約定了A點的橫坐标為x,對應的角度為θ;B點的橫坐标是x Δx,對應的角度為θ Δθ。所以,我們可以用x Δx和x這兩處的偏導數值代替θ Δθ和θ這兩處的正切值tan(θ Δθ)和tanθ,所以波動方程才可以寫成上面那樣:
接着,如果我們再對方程的兩邊同時除以Δx,那左邊就變成了函數∂f/ ∂x在x Δx和x這兩處的值的差除以Δx,這其實就是∂f/ ∂x這個函數的導數表達式。也就是說,兩邊同時除以一個Δx之後,左邊就變成了偏導數∂f/ ∂x對x再求一次導數,那就是f(x,t)對x求二階偏導數了。
上面我們用我們已經用∂²f/ ∂t²來表示函數對t的二階偏導數,那麼這裡自然就可以用∂²f/ ∂x²來表示函數對x的二階偏導數。然後兩邊再同時除以T,得到方程就簡潔多了:
把方程左邊的tan(θ Δθ)-tanθ變成了函數f(x,t)對空間x的二階偏導數,這個過程非常的重要,大家可以好好體會一下這個過程。正切值tanθ就是一階導數,然後兩個正切值的差除以自變量的變化就又産生了一次導數,于是總共就有了兩階,所以我們才能得到上面那個簡潔的式子。
08經典波動方程
再看看方程右邊的μ/T,如果你仔細去算一下μ/T的單位,你會發現它剛好就是速度的平方的倒數,也就是說如果我們把一個量定義成T/μ的平方根,那麼這個量的單位剛好就是速度的單位。可以想象,這個速度自然就是這個波的傳播速度v:
這樣定義速度v之後,我們最終的波動方程就可以亮相了:
這個方程就是我們最終要找的經典波動方程,為什麼把它作做經典的波動方程呢?因為它沒有考慮量子效應啊,在物理學裡,經典就是非量子的同義詞。如果我們要考慮量子效應,這個經典的波動方程就沒用了,我們就必須轉而使用量子的波動方程,那就是大名鼎鼎的薛定谔方程。
薛定谔就是從這個經典波動方程出發,結合德布羅意的物質波概念,硬猜出了薛定谔方程。這個方程讓物理學家們從被海森堡的矩陣支配的恐懼中解脫了出來,重新回到了微分方程的美好世界。薛定谔方程雖然厲害,但是它并沒有考慮狹義相對論效應,而高速運動(近光速)的粒子在微觀世界是很常見的,我們也知道當物體接近光速的時候就必須考慮相對論效應,但是薛定谔方程并沒有做到這一點。
最終讓薛定谔方程相對論化是狄拉克,狄拉克把自己關在房間三個月,最終逼出了同樣大名鼎鼎的狄拉克方程。狄拉克方程首次從理論上預言了反物質(正電子),雖然當時的科學家們認為狄拉克這是在胡鬧,但是我國的物理學家趙忠堯先生卻幾乎在同時就首次在實驗室裡觀測到了正負電子湮滅的情況。
另外,狄拉克的工作也推動了量子場論的誕生,打開了一扇讓人無比神往的新世界大門。物理學家們沿着這條路馴服了電磁力、強力、弱力,建立起了粒子物理的标準模型,于是四海清平,天下大定,除了那該死的引力。這些精妙絕倫的故事我們後面再講,如果把這些故事寫成一本《量子英雄傳》,嗯,一定不比金庸的武俠遜色~
好了,回歸正題,看到這個經典波動方程到後面還能掀起那麼大的浪來,是不是突然就對它肅然起敬了呢?我們這樣一頓操作推導出了經典波動方程,有的朋友可能有點懵,沒關系,我們再來捋一下。這個看着很複雜的,包含了二階偏導數的方程其實就隻是告訴我們:我們把這根繩子極小的一段看作一個質點,那麼這個質點滿足牛頓第二定律F=ma,僅此而已。
09複盤
我們整個推導過程不過就是去尋找F=ma中的這三個量。我們把繩子的張力在豎直方向做了分解,然後得到了它在豎直方向上的合力F(T·sin(θ Δθ)-T·sinθ);我們定義了單位長度的質量μ,然後就可以計算那小段繩子的質量m(μ·Δx);我們通過對波的函數f(x,t)的分析,發現如果對這種表示距離(位移)的函數對時間求一次偏導數就得到了速度,再求一次偏導數就得到了加速度,于是我們就得到了這段繩子的加速度a(∂²f/ ∂t²)。然後我們就把這些量按照牛頓第二定律F=ma拼了起來。
在處理問題的過程中,我們做了很多近似:因為我們是取得很小的一段,那麼我們就可以用Δx近似代替繩子的長度Δl;假設擾動很小,繩子偏離x軸很小,那麼角度θ就很小,我們就近似用正切值tanθ代替正弦值sinθ。很多人乍一看,覺得這麼嚴格的推導怎麼能這麼随意的近似呢?你這裡近似那裡近似,得到的最終結果還是準确的麼?
要理解這個問題,就得正式去學習微積分了,我現在告訴你微積分的核心思想就是一種以直代曲的近似,你信麼?微積分裡就是用各種小段小段的直線去近似的代替曲線,但是得到的結果卻是非常精确的。因為我們可以把這些線段取得非常非常的小,或者說是無窮小,那麼這個誤差也就慢慢變成無窮小了。所以我們在分析這根繩子的時候,也都強調了是取非常小的一段,給一個非常小的擾動,得到一個非常小的角度θ。
另外,tanθ就是一次導數,然後它們的差再除以一次Δx,就又出現了一次導數,所以方程的左邊就出現了f(x,t)對位置x的兩次偏導數。方程的右邊就是函數f(x,t)對時間t求兩次偏導數得到的加速度a(求一次導數得到速度,求兩次就得到加速度)。
所以,雖然我們看到的是一個波動方程,其實它隻是一個變裝了的牛頓第二定律F=ma。理解這點,波動方程就沒什麼奇怪的了。我們再來仔細的審視一下這個方程:
這個波動方程的意義也很直觀,它告訴我們f(x,t)這樣一個随時間t和空間x變化的函數,如果這個二元函數對空間x求兩次導數得到的∂²f/ ∂x²和對時間t求兩次導數得到的∂²f/ ∂t²之間滿足上面的那種關系,那麼f(x,t)描述的就是一個波。
如果我們去解這個方程,我們得到的就是描述波的函數f(x,t)。而我們前面對波做數學分析的時候得到了這樣一個結論:如果一個函數f(x,t)描述的波,那麼就一定滿足f(x,t)=f(x-vt,0)。所以,波動方程的解f(x,t)肯定也都滿足前面這個關系,這一點感興趣的朋友可以自己下去證明一下。
好了,經典的波動方程我們就先講到這裡。有了波動方程,你會發現我們通過幾步簡單的運算就能從麥克斯韋方程組中推導出電磁波的方程,然後還能确定電磁波的速度。
10真空中的麥克斯韋方程組
麥克斯韋方程組的微分形式是這樣的:
這組方程的來龍去脈長尾科技在上一篇文章《最美的公式:你也能懂的麥克斯韋方程組(微分篇)》裡已經做了詳細的介紹,這裡不再多說。這組方程裡,E表示電場強度,B表示磁感應強度,ρ表示電荷密度,J表示電流密度,ε0和μ0分别表示真空中的介電常數和磁導率(都是常數),▽是矢量微分算子,▽·和▽×分别表示散度和旋度:
接下來我們的任務,就是看如何從這組方程裡推出電磁波的方程。
首先,如果真的能形成波,那麼這個波肯定就要往外傳,在遠離了電荷、電流(也就是沒有電荷、電流)的地方它還能自己傳播。所以,我們先讓電荷密度ρ和電流密度J都等于0,當ρ=0,J=0時,我們得到的就是真空中的麥克斯韋方程組:
有些人覺得你怎麼能讓電荷密度ρ等于0呢?這樣第一個方程就成了電場的散度▽·E=0,那不就等于說電場強度E等于0,沒有電場了麼?沒有電場還怎麼來的電磁波?
很多人初學者都會有這樣一種誤解:好像覺得電場的散度▽·E等于0了,那麼就沒有電場了。其實,電場的散度等于0,隻是告訴你通過包含這一點的無窮小曲面的電通量為0,電通量為0不代表電場E為0啊,因為我可以進出這個曲面的電通量(電場線的數量)相等。這樣有多少正的電通量(進去的電場線數量)就有多少負的電通量(出來的電場線數量),進出正負抵消了,所以總的電通量還是0。于是,這點的散度▽·E就可以為0,而電場強度E卻不為0。
所以這個大家一定要區分清楚:電場E的散度為0不代表電場E為0,它隻是要求電通量為0而已,磁場也一樣。
這樣我們再來審視一下真空中(ρ=0,J=0)的麥克斯韋方程組:方程1和2告訴我們真空中電場和磁場的散度為0,方程3和4告訴我們電場和磁場的旋度等于磁場和電場的變化率。前兩個方程都是獨立的描述電和磁,後兩個方程則是電和磁之間的相互關系。我們隐隐約約也能感覺到:如果要推導出電磁波的方程,你肯定得把上面幾個式子綜合起來,因為波是要往外傳的,而你上面單獨的方程都隻是描述某一點的旋度或者散度。
有一個很簡單的把它們都綜合在一起的方法:對方程3和方程4兩邊同時再取一次旋度。
方程3的左邊是電場的旋度▽×E,對它再取一次旋度就變成了▽×(▽×E);方程3的右邊是磁場的變化率,對右邊取一次旋度也可以得到磁場B的旋度▽×B,這樣不就剛好跟方程4聯系起來了麼?對方程4兩邊取旋度看起來也一樣,這看起來是個不錯的兆頭。
可能有些朋友會有一些疑問:你憑什麼對方程3和4的兩邊取旋度,而不取散度呢?如果感興趣你可以兩邊都取散度試試,你會發現電場E的旋度取散度▽·(▽×E)的結果恒等于0。
這一點你看方程3 的右邊會更清楚,方程3的右邊是磁場的變化率,你如果對方程左邊取散度,那麼右邊也得取散度,而右邊磁場的散度是恒為0的(▽·B=0就是方程2的内容)。這樣就得不出什麼有意義的結果,你算出0=0能得到什麼呢?
所以,我們現在的問題變成了:如何求電場E的旋度的旋度(▽×(▽×E))?因為旋度畢竟和叉乘密切相關,所以我們還是先來看看叉乘的叉乘。
11叉乘的叉乘
在積分篇和微分篇裡,我已經跟大家詳細介紹了矢量的點乘和叉乘,而且我們還知道點乘的結果A·B是一個标量,而叉乘的結果A×B是一個矢量(方向可以用右手定則來判斷,右手從A指向B,大拇指的方向就是A×B的方向)。
而點乘和叉乘都是矢量之間的運算,那麼A·B的結果是一個标量,它就不能再和其它的矢量進行點乘或者叉乘了。但是,A×B的結果仍然是一個矢量啊,那麼按照道理它還可以繼續跟新的矢量進行點乘或者叉乘運算,這樣我們的運算就可以有三個矢量參與,這種結果我們就稱為三重積。
A·(B×C)的結果是一個标量,所以這叫标量三重積;A×(B×C)的結果還是一個矢量,它叫矢量三重積。
标量三重積A·(B×C)其實很簡單,我在微分篇說過,兩個矢量的叉乘的大小等于它們組成的平行四邊形的面積,那麼這個面積再和一個矢量點乘一把,你會發現這剛好就是三個矢量A、B、C組成的平行六面體的體積。
這個大家對着上面的圖稍微一想就會明白。而且,既然是體積,那麼你随意更換它們的順序肯定都不會影響最終的結果。我們真正要重點考慮的,還是矢量三重積。
矢量三重積A×(B×C),跟我們上面說電場E旋度的旋度▽×(▽×E)形式相近,密切相關。它沒有上面标量三重積那樣簡單直觀的幾何意義,我們好像隻能從數學上去推導,這個推導過程,哎,我還是直接寫結果吧:
A×(B×C)=B(A·C)-C(A·B)。
結果是這麼個東西,是不是很難看?嗯,确實有點醜。不過記這個公式有個簡單的口訣:遠交近攻。什麼叫遠交近攻呢?當年秦相範雎,啊不,A×(B×C)裡的A距離B近一些,距離C遠一些,所以A要聯合C(A·C前面的符合是正号)攻打B(A·B前面的符号是負号),這樣這個公式就好記了,感興趣的可以自己去完成推導的過程。
12旋度的旋度
有了矢量三重積的公式,我們就來依樣畫葫蘆,來套一套電場E的旋度的旋度▽×(▽×E)。我們對比一下這兩個式子A×(B×C)和▽×(▽×E),好像隻要把A和B都換成▽,把C換成E就行了。那麼,矢量三重積的公式(A×(B×C)=B(A·C)-C(A·B))就變成了:
▽×(▽×E)=▽(▽·E)-E(▽·▽)。
嗯,▽(▽·E)表示電場E的散度的梯度,散度▽·E的結果是一個标量,标量的梯度是有意義的,但是後面那個E(▽·▽)是什麼鬼?兩個▽算子擠在一起,中間還是一個點乘的符号,看起來好像是在求▽的散度(▽·),可是▽是一個算子,又不是一個矢量函數,你怎麼求它的散度?而且兩個▽前面有一個電場E,怎麼E還跑到▽算子的前面去了?
我們再看一下矢量三重積的公式的後面一項C(A·B)。這個式子的意思是矢量A和B先進行點乘,點乘的結果A·B是一個标量,然後這個标量再跟矢量C相乘。很顯然的,如果是一個标量和一個矢量相乘,那麼這個标量放在矢量的前面後面都無所謂(3C=C3),也就是說C(A·B)=(A·B)C。
那麼,同樣的,E(▽·▽)就可以換成(▽·▽)E,而它還可以寫成▽²E,這樣就牽扯出了另一個大名鼎鼎的東西:拉普拉斯算子▽²。
13拉普拉斯算子▽²
拉普拉斯算子▽²在物理學界可謂大名鼎鼎,它看起來好像是哈密頓算子▽的平方,其實它的定義是梯度的散度。
我們假設空間上一點(x,y,z)的溫度由T(x,y,z)來表示,那麼這個溫度函數T(x,y,z)就是一個标量函數,我們可以對它取梯度▽T,因為梯度是一個矢量(梯度有方向,指向變化最快的那個方向),所以我們可以再對它取散度▽·。
我們利用我們在微分篇學的▽算子的展開式和矢量坐标乘法的規則,我們就可以把溫度函數T(x,y,z)的梯度的散度(也就是▽²T)表示出來:
再對比一下三維的▽算子:
所以,我們把上面的結果(梯度的散度)寫成▽²也是非常容易理解的,它跟▽算子的差别也就是每項多了一個平方。于是,拉普拉斯算子▽²就自然可以寫成這樣:
從拉普拉斯算子▽²的定義我們可以看到,似乎它隻能對作用于标量函數(因為你要先取梯度),但是我們把▽²稍微擴展一下,就能讓它也作用于矢量函數V(x,y,z)。我們隻要讓矢量函數的每個分量分别去取▽²,就可以定義矢量函數的▽²:
定義了矢量函數的拉普拉斯算子,我們稍微注意一下下面的這個結論(課下自己去證明):
然後再看看中間的那個東西,是不是有點眼熟?
我們在求電場旋度的旋度的時候,不就剛好出現了(▽·▽)E這個東西麼?現在我們就可以理直氣壯地把它替換成▽²E了,于是,電場旋度的旋度就可以寫成這樣:
▽×(▽×E)=▽(▽·E)-(▽·▽)E=▽(▽·E)-▽²E。
至此,我們利用矢量的三重積公式推電場E的旋度的旋度的過程就結束了,然後我們就得到了這個極其重要的結論:
它告訴我們:電場的旋度的旋度等于電場散度的梯度減去電場的拉普拉斯。有了它,電磁波的方程立馬就可以推出來了。
14見證奇迹的時刻
我們再來看看真空中的麥克斯韋方程組:
它的第三個方程,也就是法拉第定律是這樣表示的:
我們對這個公式兩邊都取旋度,左邊就是上面的結論,右邊無非就是對磁感應強度B取個旋度,即:
你看看這幾項,再看看真空中的麥克斯韋方程組:方程1告訴我們▽·E=0,方程4告訴我們▽×B=μ0ε0(∂E/ ∂t),我們把這兩項代入到上面的式子中去,那結果自然就變成了:
μ0、ε0都是常數,那右邊自然就變成了對電場E求兩次偏導。再把負号整理一下,最後的式子就是這樣:
嗯,于是我們就神奇般的把磁感應強度B消掉了,讓這個方程隻包含電場E。我們再對比一下我們之前唠叨了那麼多得出的經典波動方程:
我們在推導經典波動方程的時候隻考慮了一維的情況,因為我們隻考慮波沿着繩子這一個維度傳播的情況,所以我們的結果裡隻有∂²f/ ∂x²這一項。如果我們考慮三維的情況,那麼不難想象波動方程的左邊應該寫成三項,這三項剛好就是f的三維拉普拉斯:
所以我們的經典波動方程其實可以用拉普拉斯算子寫成如下更普适的形式:
再看看我們剛剛從麥克斯韋方程組中得到的電場方程:
嗯,我們推出的電場的方程跟經典波動方程的形式是一模一樣的,現在我們說電場E是一個波,你還有任何異議麼?
我們把電場E變成了一個獨立的方程,代價是這個方程變成了二階(方程出現了平方項)的。對于磁場,一樣的操作,我們對真空中麥克斯韋方程組的方程4(▽×B=μ0ε0(∂E/ ∂t))兩邊取旋度,再重複一次上面的過程,就會得到獨立的磁感應強度B的方程:
這樣,我們就發現E和B都滿足波動方程,也就是說電場、磁場都以波動的形式在空間中傳播,這自然就是電磁波了。
15電磁波的速度
對比一下電場和磁場的波動方程,你會發現它們是形式是一模一樣的(就是把E和B互換了一下),這樣,它們的波速也應該是一樣的。對比一下經典波動方程的速度項,電磁波的速度v自然就是這樣:
我們去查一下μ0、ε0的數值,μ0=4π×10^-7N/A²,ε0=8.854187818×10^ -12 (F/m),代入進去算一算:
再查一下真空中的光速 c=299792458m/s。
前者是我們從麥克斯韋方程組算出來的電磁波的速度,後者是從實驗裡測出來的光速。有這樣的數據做支撐,麥克斯韋當年才敢大膽的預測:光就是一種電磁波。
當然,“光是一種電磁波”在我們現在看來并不稀奇,但是你回顧一下曆史:科學家們是在研究各種電現象的時候引入了真空介電常數ε0,在研究磁鐵的時候引入了真空磁導率μ0,它們壓根就跟光無關。麥克斯韋基于理論的美學和他驚人的數學才能,提出了位移電流假說(從推導裡我們也可以看到:如果沒有麥克斯韋加入的位移電流這一項,是不會有電磁波的),預言了電磁波,然後發現電磁波的速度隻跟μ0、ε0相關,還剛好就等于人們測量的光速,這如何能不讓人震驚?
麥克斯韋一直以為自己在研究電磁理論,但是當他的電磁大廈落成時,他卻意外地發現光的問題也被順手解決了,原來他一直在蓋的是電磁光大廈。搞理論研究還可以買二送一,打折促銷力度如此之大,驚不驚喜,意不意外?
總之,麥克斯韋相信自己的方程,相信光是一種電磁波,當赫茲最終在實驗室裡發現了電磁波,并證實它的速度确實等于光速之後,麥克斯韋和他的理論獲得了無上的榮耀。愛因斯坦後來卻因為不太相信自己的方程(認為宇宙不可能在膨脹)轉而去修改了它,于是他就錯失了預言宇宙膨脹的機會。當後來哈勃用望遠鏡觀測到宇宙确實在膨脹時,愛因斯坦為此懊惱不已。
16結語
回顧一下電磁波的推導過程,我們就是在真空麥克斯韋方程組的方程3和方程4的兩邊取旋度,然後就很自然的得出了電磁波的方程,然後得到了電磁波的速度等于光速c。這裡有一個很關鍵的問題:這個電磁波的速度是相對誰的?相對哪個參考系而言的?
在牛頓力學裡,我們說一個物體的速度,肯定是相對某個參考系而言的。你說高鐵的速度是300km/h,這是相對地面的,你相對太陽那速度就大了。這個道理在我們前面讨論的波那裡也一樣,我們說波的速度一般都是這個波相對于它所在介質的速度:比如繩子上的波通過繩子傳播,這個速度就是相對于繩子而言的;水波是在波在水裡傳播,那麼這個速度就是相對水而言的;聲波是波在空氣裡傳播(真空中聽不到聲音),聲波的速度就自然是相對空氣的速度。
那麼,電磁波呢,從麥克斯韋方程組推導出的電磁波的速度是相對誰的?水?空氣?顯然都不是,因為電磁波并不需要水或者空氣這種實體介質才能傳播,它在真空中也能傳播,不然你是怎麼看到太陽光和宇宙深處的星光的?而且我們在推導電磁波的過程中也根本沒有預設任何參考系。
于是當時的物理學家們就假設電磁波的介質是一種遍布空間的叫作“以太”的東西,于是大家開始去尋找以太,但是怎麼找都找不到。另一方面,電磁波的發現極大地支持了麥克斯韋的電磁理論,但是它跟牛頓力學之間卻存在着根本矛盾,這種情況像極了現在廣義相對論和量子力學之間的矛盾。怎麼辦呢?
1879年,麥克斯韋去世,同年,愛因斯坦降生,這仿佛是兩代偉人的一個交接儀式。麥克斯韋電磁理論與牛頓力學之間的矛盾,以及“以太”這個大坑都被年輕的愛因斯坦搞定了,愛因斯坦搞定它們的方法就是大名鼎鼎的狹義相對論。其實,當麥克斯韋把他的電磁理論提出來之後,狹義相對論的問世就幾乎是必然的了,因為麥克斯韋的電磁理論其實就是狹義相對論框架下的理論,這也是它跟牛頓力學沖突的核心。所以,愛因斯坦才會把他狹義相對論的論文取名為《論動體的電動力學》。
麥克斯韋的電磁理論結束了一個時代,卻又開啟了一個新時代(相對論時代),它跟牛頓力學到底有什麼矛盾?為什麼非得狹義相對論才能解決這種矛盾?這些将是我後面要讨論的重點。我會盡力讓大家看到科學的發展有它清晰的内在邏輯和原因,并不是誰拍拍腦袋就提出一個石破天驚的新理論出來的。
此外,電磁理論和牛頓力學的融合是人類解決兩個非常成功卻又直接沖突理論的一次非常寶貴的經驗,這跟我們現在面臨的問題(廣義相對論和量子力學的沖突)非常類似。我希望能夠通過這種叙述給喜歡科學的少年們一些啟示,讓他們以後面對廣義相對論和量子力學沖突的時候,能夠有一些靈感。
嗯,沒錯,我在期待未來的愛因斯坦~
來源:【長尾科技】,一個緻力于展現科學體系之美,讓你重新愛上科學的牽線人。
聲明:轉載此文是出于傳遞更多信息之目的。若有來源标注錯誤或侵犯了您的合法權益,請作者持權屬證明與本網聯系,我們将及時更正、删除,謝謝。
來源: 中科院高能所
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!