Benjamin Chien

「創新」不是等人家告訴你,他需要什麼,而是你自已去發覺他需要什麼! 汽車大王亨利‧福特曾說過:“如果我當年去問顧客他們想要什麼,他們肯定會告訴我‘一匹更快的馬’”

關於我

我的相片
人生沒有什麼大道理!過就對了!

分類

Archives

首先我請你想像一下,如果你在電腦輸入 2/3 ,你覺得會出現什麼答案,我想很多人都會回答

0.66666666666667

正確,可是到底什麼是符號運算呢。

我們在wxmaxima輸入 2/3 看會的到什麼答案:


怎樣,沒想到吧,maxima竟然是回答分數的答案,這還沒什麼,再看一題,2x-x 等於多少:


看到了嗎,我想你現在對所謂符號運算,應該有些概念了,maxima自動將英文字母視為變數或說符號,在上式輸入 2*x-x ,maxima會計算 2 個 x 減掉一個 x 最後剩一個 x , 在數學運算中,有很多時後,我們要的是過程,而不是答案,所以一般的數值運算軟體很難合乎我們的需求,也才會產生符號軟體這種東西。

緊接著我們來練習maxima的基本運算:

可以看到maxima的運算規則跟一般是一樣的,乘除優先於加減,而括號又優先於前兩者。

接著我們再回來看 2/3 ,在預設下maxima每次都會是回答分數形式的答案,我們也可以要求輸出數值答案 :


利用float( )可以得到數值解,在%i2的float(%),括號內的 % 代表上一個執行的結果,要注意不是指上一列,是上一個的執行結果,另外%i3也是求數值解的方法之一,其中 '' 是兩個 ' , ''%i1  代表重新執行 %i1 那一列, numer 表示我們要數值解。

如果你想控制小數點後位數,可以使用bfloat()搭配fpprec:16

下圖是 2/3 答案顯示為數值解的4種方式:

很明顯的 2/3 是無理數,除不盡的,可是每個軟體都一樣,在求數值解的時後,會在某個範圍,進行截斷,maxima預設是16,也就是面對像 2/3 這種無理數,maxima會算到第14(maxima的16是指連前面的0還有小數點都算一位),就進行截斷並四捨五入,這樣也就造成了精度遺失的問題,這是沒辦法避免的,所以在這裡我建議,在計算過程中,最好保持分數的形式,也就是符號解,到最後再把它轉換成數值解,這樣就可以把精度遺失的問題,減到最低。

接著我們再來討論一些基礎:

每一句語法是以「 ; 」或「 $ 」為結束點,如果想在語法後面加上一些註解,可以鍵入「 /* 」,然後在後面輸入你要註解的文字,MAXIMA執行到「 /* 」後會停止,而不會繼續執行後面的程式,至於「 ; 」和「 $ 」都為結束點,差別在於,使用「 ; 」MAXIMA會在下一列輸出運算結果,而如果是輸入「 $ 」,MAXIMA一樣會運算,但是不輸出結果,WXMAXIMA有個貼心的功能,你在輸入完畢後,可以直接按「Shift + ENTER」,因為WXMAXIMA會自動幫我們補上「 ; 」。

在0.7.x之前的版本,使用「/*」的註解,會有問題,這個問題在新版一樣會出現,目前的解決方法,就是暫時不要使用「/*」來做為註解,而是使用「F6」直接產生註解Cell。

下圖是四則運算的示範:

三角函數也不是問題:

複習一下(%i2)的意思,%符號代表重新執行「上一個執行結果」,不是指上一行喔,假設現在我們又執行了一個算式,依流水號它是(%i3),這時我們再重新執行(%i2),其中的%符號就不是重新執行(%i1)了,並且(%i2)會變成(%i4)。

當然,除了這種方式外,你也可以直接指定編號,以上圖的(%i4)來說,如果我要執行(%i1),可以直接輸入(%i1)或(%o1),在本例中這兩個是一樣的意義。

Maxima角度單位是「弳度(Radian)」,不是我們一般常用的「度(Degree)」。

總結:

四則運算講的有點簡單,但筆者認為,應該沒必要去強調,乘除優先於加減、括號內優先…等等東西,這是屬於數學基礎,正如筆者一再強調的,不要光用Maxima來學數學,因為這是不可能的,一定要輔以書本上、課堂上的學習,所以我也就認為不需要去說明過於常識的東西。

作業:

  1. 計算,以符號解顯示答案。(10%)
  2. 將題1中的答案,改為數值解,小數點到後3位。(20%)
  3.   (圖1) 。(圖1)是完整的wxm檔,如果現在將(%i2)重新執行一次,答案會是多少? (20%)
  4. 如果將 (圖1) 中的(%i1)重新執行,(%i1)會變成(%i+流水號),請問(%i1)仍然存在嗎?為什麼?用文字簡單說明之。(20%)
  5. 計算 ,答案的單位必須為「度(Degree)」,小數點到後5位。提示:轉換公式 (30%)

首先,了解一下Maxima的檔案概念。開啟Maxima就會建立一個新的Maxima檔案,Maxima並沒有辦法同時建立一個以上的檔案,簡單來說,Maxima一次只能處理一個檔案。而Maxima也沒有所謂的「新建檔案」指令,要新建一個檔案,就是「Maxima」—>「Restart Maxima」,這個指令會重新啟動Maxima(不會重新啟動wxMaixma,所以速度較快),而啟動Maxima會怎樣呢,看一下本章的第一行和第二行。如果重新啟動了Maxima,當前的檔案就會被Close掉,所以在啟動前Maxima會很貼心的提醒你:「當前的檔案尚末儲存」,按「確定」就是不儲存,直接建立新檔,「取消」則會回到工作狀態,你可以按下「File」-->「Save」來儲存檔案(副檔名為*.wxm)。

Cell的概念

前面的教學有提到,0.8.x後的Maxima採用了一個叫Cell的操作方式,不管是數學式、註解,都是一個Cell,然後Cell內還可以再內含更多Cell,在往後的操作上,能更好整理。

雖然Cell是一個不錯的Ideal,但我並不認為需要把原本的Input列取消掉,在0.8以後的版本,你已經找不到Input,那麼,我們要怎麼輸入呢?這個嗎!首先你要先確定,你要輸入的是數學式,還是註解,甚至是文字標題,然後建立對應的Cell。建立方式可以到「Edit」—>「Cell」內選取,如下圖所示:

每個指令旁都有快速鍵,筆者建議,記起來,直接用快速鍵來建立Cell的方式最快。其中最常用的就是F7和F6,按下F7,會建立數學式的Cell,F6就是輸入文字註解的Cell。下面示範,建立一個註解和數學式的的步驟。

「建立註解」

1.按下「F6」,工作頁上會出現 圖案,紅色表示當前該Cell為編輯狀態。

2.輸入My First Equation,可以輸入中文。

3.接著結束Cell的編輯,按下「Shift + Enter」(按Enter是換行)。

「建立數學式」

1.按下「F7」,在 後面輸入 3*x+6*x-5*y;(分號)。在Maxima中,一段完整的數學式,最後是以「;(分號)」做為結束,但在wxMaxima,你可以不用加入分號,wxMaxima會自動幫你補上。

2.輸入完畢後,按下「Shift + Enter」。結果如下圖:

最後你可以將檔案存檔。

提醒:

要記住,按下F7才可以輸入數學式,往後不再說明這點。

新版(0.8.x)的wxMaxima跟以往的版本,做了幾個大的變動,首先是0.8.x以後的版本,不再包含Maxima,在「0.8.X版wxMaxima,安裝方式」章節中,你可以得到解決方法。

此外,在新版本中,你也找不到「輸入區Input」,在新版中採用,官方稱之為「巢(Cell)」的概念,其實說穿了,就是「所見即所得」,要改哪個就直接在那個上面直接修改(註1)。雖然立意不錯,但是很多用慣舊版的讀者,感到難以適從,筆者第一次接觸新版時,也是感到奇怪,「我要在哪裡輸入呢?」,一時之間還以為是個bug,差點回報上去。不管怎樣,在後面的章節,筆者會更詳細的說明Cell的使用方式,首先我們先來了解一下新版的界面。

(註1):在舊版(0.7.x),也有相同的概念,差別只在「第一次」輸入時,一定要在「Input」輸入區中輸入,之後,使用者就可以直接在想修改的地方快點兩下,進行修改。

wxMaxima操作界面:

說明:

  1. 功能列:包含檔案存檔、開啟(File),內容操作(Edit),Maxima常用函數(Maxima)等...。
  2. 工具列:聊勝於無的工具,看看就好,沒有幾個按鈕,也無法新增。
  3. 工作區 :新版的工作區,重要區更大於舊版,因為已經沒有Input輸入列了,以後都是直接在工作區直接操作。
  4. 函數快捷鈕:Maxima可用的函數非常多,有時後,你未必會記得函數的名稱,所以wxMaxima將一些常用的函數,做成快捷按鈕,需要時,在對應的按鈕上點選一下即可。

從0.8.X(X為流水號1,2,3...)版後的wxMaxima,都沒有內含Maxima主程式。要記住,wxMaxima只是操作介面程式而已,真正程式運行是Maxima。以往,wxMaxima都會內含主程式,所以使用者,只需要安裝一次即可。既然現在不提供了,我們可以自已來手動下載安裝。

首先下載wxMaxima,到http://wxmaxima.sourceforge.net/wiki/index.php/Main_Page

捲動頁面,到Download區域,點選第一個,Windows旁的[2],如下圖所示:

在下載的時後,也許你的IE會出現警告訊息,請在上面按下左鍵,選取「下載檔案」,接著就可以下載wxMaxima。

下載完畢後,直接進行安裝,安裝部分過程如下所示:

接著是授權說明,選擇安裝路徑,讀者自已看著辦。

另外還有這個選項,見下圖:

安裝過程應該很快就結束了。

安裝完畢後,直接啟動wxMaxima,如果你有在上圖中的Create a desktop icon旁打勾的話,可以直接在桌面點選

如果沒有,就到「開始」功能表去找找吧。

在啟動wxMaxima,應該會出現下面的錯誤訊息:

原因是,在新版的wxMaxima(操作介面),並不包含Maxima(主程式)。這一點,筆者一時也覺得奇怪,因為在以往的版本,都會內含Maxima,所以下載和安裝,只要一次就可以搞定。

不過,讀者也不要害怕,事實上,我們只要再下載並安裝Maxima就可以了,過程一樣簡單。

連結到下面的的超連結,來下載Maxima

http://sourceforge.net/project/showfiles.php?group_id=4933

下載完畢後,進行安裝,安裝過程很簡單,在這裡就省略不講了。

設定

現在所以必須的安裝都已經完成了,請直接開啟wxMaxima,這邊說明一點,Maxima是主程式,事實上,你也可以直接運行Maxima,不需要透過wxMaxima,不過相信讀者不會喜歡Maxima原始的操作介面,所以往後,如果沒有特別說明,筆者都是要你開啟wxMaxima,而不是Maxima,不要搞混了。

啟動了,你會發現,錯誤訊息依然存在,這是因為,我們還沒有告訴wxMaxima,「Maixma的路徑在哪裡?」。設定方式如下所示:

1.「Edit」—>「Configure」

2.利用「Open」鈕,找到

(Maxima安裝路徑)\Maxima-5.17.0\bin\maxima.bat

3.「Maxima」—>「Restart Maxima」,重新啟動Maxima。如果無誤,錯誤訊息,就不會再出現,預設,你應該會在畫面上看到Maxima的簡略介紹。

到這裡,我們就完成了,新版wxMaxima的全部安裝了。

因為她,第一次感覺到手足無措的感覺,連說話都會結巴,說真的,自已都沒想到,遇到她,自已會變到這麼弱,連話都不會說了。

回想起這一段,並不會覺得很糗,反而得到一種真正愛上人的感覺。雖然,她要結婚了,但我還是給予深深的祝福,這麼好的女孩子,應該得到最大的愛,而不是我這種只會出一張嘴的人。

祝福妳,永遠快樂,幸福!

Recent Posts

Recent Comments

訪客