計算機代數系統
計算機代數系統
計算機代數系統(Computer Algebra System),簡稱CAS。計算機代數系統的標誌是能夠以字元串作為運算單位。
科學計算可分為兩類:一類是純數值的計算,例如求函數的值,方程的數值解;另一類計算是符號計算,又稱代數運算,這是一種智能化的計算,處理的基本單位是字元串。字元串可以代表整數,有理數,實數和複數,也可以代表多項式,函數,還可以代表數學結構如集合,群的表示等等。人們在數學的教學和研究中用筆和紙進行的數學運算多為符號運算.
從計算機發明到現在的50多年時間裡,用計算機進行的科學計算主要是數值計算,如天氣預報,油藏模擬,航天等領域的大規模數值計算。長期以來,人們一直盼望有一個可以進行符號計算的計算機系統。早在50年代末,人們就開始了研究。進入80年代后,隨著計算機的普及和人工智慧的發展,用計算機進行代數運算的研究在國外發展非常迅速,涉及的數學領域也在不斷地擴大,相繼出現了多種功能齊全的計算機代數系統,這些系統可以分為專用系統和通用系統,專用系統主要是為解決物理,數學和其他科學分支的某些計算問題而設計的,專用系統在符號和數據結構上都適用於相應的領域,而且多數是用低級語言寫成的,使用方便,計算速度快,在專業問題的研究中起著重要的作用.
通用系統具有多種數據結構和豐富的數學函數,應用領域廣泛。其中,REDUCE,RERIVE,Mathematica和Maple是用戶較為廣泛的通用數學軟體。最近的計算機代數系統都是用C語言寫成的,這種語言為軟體開發者提供了編寫有效的可移植的計算機程序的平台,所以這種計算機代數系統可以在絕大多數計算機上使用.Mathematica和Maple就是這樣的系統.
Mathematica是第一個將符號運算,數值計算和圖形顯示很好地結合在一起的數學軟體,用戶能夠方便地用它進行多種形式的數學處理.
Maple是80年代初就開始研製的計算機代數系統,起初並不為人們所注意,但這個軟體發展很快。自從1992年MapleVR2出版后,更多的用戶就發現它是一個功能強大而且界面友好的計算機代數系統.
計算機代數系統的標誌是能夠以字元串作為運算單位。
不同的字元串代表的含義是不同的,字元串可以被賦值使它具有特殊含義。
例如:
a 作為一個字元串
b 作為另一個字元串
則有
2a 代表 2 乘以 a ,2個a的和。
a*b 代表 a 和 b 相乘。
ab 則代表另一個與 a 或 b 都不相關的字元串。
此時,給 a 賦值:2→a(令 a 等於 2)
則有
2a = 2*2 = 4
a*b = 2*b
ab 仍然是另一個獨立的字元串。
ab * ab = ab^2
(a*b)*(a*b) = a^2 * b^2 = 2^2 * b^2 = 4* b^2
1.可以進行符號運算,數值計算和圖形顯示,這是通用數學軟體包的三大基本功能。具有高效的可編程功能.
2.多數計算機代數系統都是互動式的,人們通過鍵盤輸入命令,計算機計算后顯示結果。好的系統都有Windows操作系統下的版本,人機界面友好,命令輸入方便靈活,很容易尋求幫助。結果的輸出有多種形式,好的數學軟體都提供了人們習慣的數學符號表達形式.
3.各個系統都在不斷地發展完善,不斷地更新換代,更新的速凍也在逐漸加快。數學軟體在向著智能化,自動化方向發展。數學軟體的實質是數學方法及其演演算法在計算機上的實現,這些方法是千百年來無數數學家的工作與智慧的結晶.
4.參與軟體開發和應用的人員的數量在不斷增加,而且日趨國際化。隨著Internet的普及,軟體用戶可以很方便地與軟體開發者進行溝通,反映軟體中存在的問題,也把新的應用情況和好的程序提供給軟體的開發者。軟體的開發不再只是軟體開發者的事情,也是廣大用戶的事情.
計算機代數系統的優越性主要在於它能夠進行大規模的代數運算。通常我們用筆和紙進行代數運算只能處理符號較少的算式,當算式的符號上升到百位數后,手工計算便成為可能而不可行的事,主要原因是在做大量符號運算時,我們很容易出錯,並且缺乏足夠的耐心。當算式的符號個數上升到四位數后,手工計算便成為不可能的事,這時用計算機代數系統進行運算就可以做到準確,快捷,有效.
儘管計算機代數系統在代替人進行繁瑣的符號運算上有著無比的優越性,但是,計算機畢竟是機器,它只能執行人們給它的指令.數學軟體都有一定的局限性。首先,多數計算機代數系統對計算機硬體有較高的要求,在進行符號運算時,通常需要很大的內存和較長的計算時間,而精確的代數運算以時間和空間為代價的。一些人工計算的簡單問題,計算機代數系統卻做不出來。用數學軟體的第二個問題是計算結果往往很長,人們很難從結果中看到問題的要害。用計算機代數系統進行數值計算,雖然計算精度可以到任意位,但由於計算機代數系統是用軟體本身浮點運算代替硬體算術運算,所以在速度要比用Fortran語言算同樣的問題慢百倍甚至千倍。另外,雖然計算機代數系統包含大量的數學知識,但這僅僅是數學的一小部分,目前有許多數學領域計算機代數系統還未能涉及.
目前,有許多計算器都配備了計算機代數系統。部分沒有計算機代數系統的計算器可以通過安裝第三方程序來實現一些這樣的功能。
以下是一些配備了計算機代數系統的計算器型號:
德州儀器公司(Texas Instruments)
TI-89
TI-92
Voyage 200
TI-nSpire CAS
TI-nSpire CX CAS
卡西歐(CASIO)
Algebra FX系列
Classpad系列
(fx-9750/9860系列原生不支持,但可以通 過安裝Add-In來獲得一些CAS的基本功能)
惠普(HP)
HP-48G II
HP-49G +
HP-49Gs
HP-50G
HP Prime(目前硬體性能最強大的圖形計算器,多點觸控屏)