maxima文档格式.docx
- 文档编号:19580922
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:15
- 大小:191.62KB
maxima文档格式.docx
《maxima文档格式.docx》由会员分享,可在线阅读,更多相关《maxima文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
1.1Maxima當計算機
我們先來看,如果我們要把Maxima當計算機用,會是什麼情況?
(%i1)
1+1;
(%o1)
2
(%i2)
3*4*7;
(%o2)
84
(%i3)9/3;
(%o3)3
到目前為止,似乎還沒什麼特別。
除了可以做複雜一點點的運算,和平常的計算機或數值計算軟體也沒什麼不同。
以下的例子就不一樣了:
(%i4)7/3;
(%o4)
(%i5)1/2+2/3;
(%o5)
從運算我們看到,7/3這種運算,Maxima不是告訴我們2.3333...,而是分數的形式!
難道Maxima真的懂分數?
不要懷疑,這就是所謂電腦代數系統(CAS)的特長。
我們可以像下列的例子一樣,輸入個分數的四則運算試試即知。
如果堅持要用浮點數,那只要加個float指令即可:
(%i6)float(7/3);
(%o6)2.333333333333333
為了完整,我們順便再介紹指數,根號,階乘表示法:
(%i7)2^10;
(%o7)1024
(%i8)sqrt(9);
(%o8)3
(%i9)5!
;
(%o9)120
我們可以看出,這些運算不是自然的數學符號,就是和我們平常電腦程式語言的寫法。
1.2指令結尾
在上面的例子中,我們發現,在Maxima下指令,結束時一定要打上分號「;
」,讓Maxima知道我們下的指令已結束。
為什麼要多這一個動作,主要是為了有時打比較長的指令可以換行之故。
另一個結束方式是打入「$」的符號。
不同於分號的地方是「運算結果不會顯示出來」:
(%i10)2+3$(%i11)2+3;
(%o11)5
有一些CAS程式,如Matehmatica是用分號表示不顯示運算結果。
不過Maxima中分號已用上,必需用其他字元。
1.3離開Maxima
離開Maxima打入“quit();
”即可。
當然,很多人可能會覺得奇怪,為什麼不是打入“quit”就好了呢?
原來像這種程序導向的語言,什麼動作其實都是執行一個函數。
所以我們事實上是執行一個叫「離開」的函數。
這函數沒有引數,所以就成了quit()的形式。
1.4結果的引用
我們時常會需要引用前面的結果,這時就用百分比符號“%”。
比方說:
(%i12)7/3;
(%o12)
(%i13)float(%);
(%o13)2.333333333333333
1.5重要常數
Maxima當然有內建e或是π常常用到的數,只是表示法奇怪一點。
e是%e而π是%pi。
例如:
(%i8)cos(%pi);
(%o8)-1
(%i9)log(%e);
(%o9)1
1.6指派,我在數學中常常會用的x=1或者y=1…等等,在這邊我們如何使用。
(%i1)x:
1;
(%o1)1
2.1介紹命令列
1.Operator:
'
這個運算我們稱為quote
功能:
這個運算quote主要是暫停符號的運算,而在視窗上以符號
顯示。
2.Operator:
'
這個運算我們稱為quote-quote
這個運算quote主要是把符號的運算。
(%i1)aa:
1024;
(%o1)1024
(%i2)aa^2;
(%o2)1048576
(%i3)'
aa^2;
2
(%o3)aa
(%i4)'
%;
(%o4)1048576
(%是指上一個的結果,所以我們可以看出上一個是aa經過,
quote-quote之後,就把符號求值出來)。
3.ev(expr,arg_1,...,arg_n):
只要是利用所給的arg求解expr
(%i1)sin(x)+cos(y)+(w+1)^2+'
diff(sin(w),w);
(diff為數學微分指令,下章會說明)
(%o1)cos(y)+sin(x)+
(sin(w))+
4.解聯立方程式,使用solve指令。
(%i2)2*x-3*y=3;
(%o2)2x-3y=3
(%i3)-3*x+2*y=-4;
(%o3)2y-3x=-4
(%i4)solve([%o2,%o3]);
Solution
(%t4)y=-
(%t5)x=
3.1Arithmeticoperators
Arithmeticoperators算術算符
(1)Operator+
(2)Operator:
-
(3)Operator:
*
(4)Operator:
/
(5)Operator:
^
(6)Operator:
**
(1)Operator:
+
(%i10)c+g+d+a+b+e+f;
(%o10)g+f+e+d+c+b+a
(%i11)c-g-d-a-b-e-f;
(%o11)-g-f-e-d+c-b-a
*
(%i12)c*g*d*a*b*e*f;
(%o12)bcdefg
(%i1)a/b;
(%i2)a^b;
在maxima中**運符,等於^運符。
(%i1)x**y+x^z;
3.2關係運符
<
小於
=小於等於
>
=大於等於
大於
(%i2)[x,y,z]:
[123,456,789];
首先讓x=123,y=456,z=789
(%o2)[123,456,789]
(%i3)is(x<
y);
利用is指令請問x是否小於y
(%o3)true代表x<
y是為真的
(%i4)is(x>
y);
(%o4)false代表x>
y是為假的
3.3IntroductiontoExpressions
(%i4)x:
3;
(%o4)3將x令作為3
(%i5)(x:
x+1,x:
x^2);
x先加1在平方
(%o5)16
3.4Strings(字串)
(%i6)s_1:
"
Thisisastring."
(%o6)Thisisastring.
4.1FunctionsandVariablesforPlotting
Function:
contour_plot(expr,x_range,y_range,options,...)
主要功用是繪圖輪廓線,expr:
為你所要畫圖的式子,x_range:
x範圍,y_range:
y範圍。
(%i2)contour_plot(x^2+y^2,[x,-4,4],[y,-4,4]);
(%o2)
(%i4)contour_plot(sin(y)*cos(x)^2,[x,-4,4],[y,-4,4]);
(%i5)F(x,y):
=x^3+y^2;
(%o5)F(x,y):
=
令函數f(x,y)為
(%i6)contour_plot(F,[u,-4,4],[v,-4,4]);
plot2d(expr,x_range,...,options,...)
主要是畫圖2d。
(%i7)plot2d(sin(x),[x,-5,5]);
5.1函數定義
Maxima可以定義數學函數,函數運算子以:
=來將變數與所定義函數連接起來,例如f(x):
=5*x+3
這個定義為單變數函數,名稱為f,引數為x,而函數的定義為f(x)=5x+3
1.f(x):
=5*x+5定義單變數函數f(x)=5x+5
2.f(x,y):
=5*x*y+5定義多變數函數f(x,y)=5xy+5
(%i3)f(x):
=5*x+5;
(%o3)f(x):
=5x+5
(%i4)f(3);
當x=3會等於20
(%o4)20
我們可以用x代換為sin(x)
(%i5)f(sin(x));
(%o5)5sin(x)+5
而且函數的引數不一定是一個數、一個函數,也可以是一個運算式
我們可以用x代換為a+b
(%i6)f(a+b);
(%o6)5(b+a)+5
(%i7)g(x,y):
=sin(x)+cos(y);
(%o7)g(x,y):
=sin(x)+cos(y)
(%i08)plot3d(g(x,y),[x,-%pi,%pi],[y,-%pi,%pi]);
(%o09)
5.2函數的基本運算
1.f(x)+g(x)
2.f(x)-g(x)
3.f(x)*g(x)
4.f(x)/g(x)
以上是函數的四則運算
(%i1)f(x):
=2*x+1;
(%o1)f(x):
=2x+1
(%i2)g(x):
=5*x+1;
(%o2)g(x):
=5x+1
(%i3)f(x)+g(x);
(%o3)7x+2
(%i4)f(x)-g(x);
(%o4)-3x
(%i5)f(x)*g(x);
(%o5)(2x+1)(5x+1)
(%i6)f(x)/g(x);
(%o6)
5.3函數合成運算式子
1.f(g(x))以f合成g,產生合成函數f(g(x))
=sin(x);
(%o1)f(x):
=sin(x)
=x-(%pi/2);
(%o2)g(x):
=
(%i3)f(g(%pi));
(%o3)1
5.4基本的代數運算指令
代數表示式(algebraicexpression)係指包含有未知數的數學式,如
,(
),等是屬於代數。
許多代數的基本運算大家應該有所了解,例如多項式的因式分解與展開
Maxima提供了expand與factor兩個指令來處理代數式的因數分解與展開運算。
1.expand(exp)將exp展開
2.factor(exp)將exp做因式分解
(%i2)expand((a+b)^2);
(%i3)expand((x^2+x-2)/(x^3+x-1));
(%o3)
(%i4)expand((a+b)^2);
(%o4)
(%i5)factor(%);
(%o5)
(%i6)factor((x^2-2*x-15)/((x+3)*(x-7)));
Factor會同時分解分子與分母,並會消去共同的因子
5.5代數式簡化
Maxima提供了簡化代數式的指令,ratsimp、trigsimp。
1.ratsimp指令是簡化有理數。
(%i1)ratsimp((x^2-1)/(x+1));
(%o1)x–1
2.trigsimp簡化三角方程式。
(%i2)trigsimp(2*cos(x)^2+sin(x)^2);
5.6分式整理的常用函數
combine()和rncombine()
這兩個都是做分式整理的常用函數,其中rncombine()在使用前必須先載入rncomb
模組,載入模組語法為load(模組名):
(%i1)a1:
x/a+y/a+z/(2*a);
(%o1)
(%i2)combine(a1);
(%i3)load(rncomb)$
(%i4)rncombine(a1);
(%i5)
denom(expr)和num(expr)
這兩個函數分別可以取得分式的「分母」、「分子」。
(%i5)a2:
(2*x+5)/z;
(%o5)
(%i6)denom(a2);
(%o6)z
(%i7)num(a2);
(%o7)2x+5
5.6數學式子求值
給予一個表式式子y=f(x),如果想要求x=x0,f(x0)的值,當然你可以先把x0設給x,再納入f(x),便可以求值。
將x設為3;
(%i1)x:
3;
(%o1)3
(%i2)sqrt(x)+2*x^3;
(%o2)sqrt(3)+54
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- maxima