一個月後,各個大學又要展開新的一年,大一新鮮人等不及要去體驗大學人生!但,對於一些科系的學生來說,以為故意不選資工系就能躲開被 code 的摧殘,這是個超大的錯誤想法,就物理系來說,許多教授正在研究這新學期他們的授課內容:需要安排多少的基礎物理課程?需要出多少作業、實驗?怎樣上數值方法比較貼近正課內容?

不幸的是,大多數的物理老師甚至不考慮,在他們的物理課程裡教數值方法。數值方法是一種可以打破一個複雜問題成許多比較小也比較簡單問題的過程。由於這個方法可以解決許多問題,而最方便的數值方法是利用電腦去幫我們解決我們所需要解決的問題。因此,很多人都會將在物理系裡上的數值方法稱為物理學計算甚至是物理程式。

  • 這裡是物理系,不是資工系!

當然,這是事實畢竟你讀的是物理系。一門物理課程,雖然不是英文課,但這不代表著你學不到任何有關英文寫作或是英文閱讀,這也不是數學課,但你也必須懂得怎麼去計算數值,這更不是美術課,但你還是得學會怎麼去畫流程圖。

物理並不是一門獨立的科目,你能想像哪一門課程能只用圖片來取代文字教學的?答案是:沒有!當學生問老師說:「我是物理系的學生幹嘛學 coding ?」時,老師們可以這樣回答:「學習物理是需要擁有不同領域的知識去學習宇宙萬物的知識!」

  • 我的專業領域是物理,不是數值分析!

首先,這個並非是個正確的想法。很多學生會說很多物理實驗與數值分析根本沾不上邊,但實際上確實是會用上他的。想想「大氣學」和計量交易(用數值分析找到最好的股票買賣點)?數值分析存在在你我周遭,學生能越早學會也越能提早利用!

再者,並不代表你的專業不是數值分析就真的不值得花時間去學他,對吧?基礎物理學的課程目的不是要建立一個小小的你,而是要讓學生介紹物理學基本思路觀念。

  • 數值分析太複雜而且要求又多,又要學超多的基本課程!

這點是無法否認及避免的事。在沒有電腦的時代,要學數值分析真的是比登天還難,超痛苦的。唯一的工具是使用一個試算表,就類似像 Excel 一樣的。

但,在 1995 年後,要學數值分析就不再是學生的痛苦了,因為我們有了幾個超讚的工具要推薦給你:

Python 和 VPython —— Python 是一個非常容易學習的程式語言,再與 VPython 模組搭配,這將是學習物理最棒的工具

GlowScript —— 會推薦這個只是因為 VPython 是運行在瀏覽器中,雖然這不是一個大問題,但你錯了!這是一個超大問題,現在一個學生可以到任何一檯電腦或網路瀏覽去上開始做一個數值分析計算,但經驗老到的老師都知道,你如果要使用的話你就要在實驗室的每部電腦上裝上這個軟體,這可不好玩啊!

Trinket —— 同樣的,這實質上也是 VPython 在網路瀏覽器上,trinket 能幫助你去分享嵌入在 Python 上的程式碼,讓其他人可以幫你去修改它。

當然還是有許多工具能幫助你去處理數值分析的問題,例如:Google Docs 試算表。

  • 我所要涵蓋的物理分析已經夠多了,哪來的時間去搞數值分析!

這是當然的,有很多事情會在你的物理課程上出現,這裡有三大課程是必須在第一學期必學的:

動量原理(或者可說:牛頓力學)

功能原理

角動量原理

當然物理學世界是從這三個原理去延伸的,大家都知道這很困難,甚至你要在一學期內就學完,根本是可以去搶阿湯哥的飯碗來演不可能的任務了!但千萬別把它想成是新的東西,而是學習解決同一個問題的新方法。

(資料來源:Wired;本文作者:RHETT ALLAIN;圖片來源:Wried,CC Licensed)