maxima文档格式.docx

上传人:b****6 文档编号:19580922 上传时间:2023-01-08 格式:DOCX 页数:15 大小:191.62KB
下载 相关 举报
maxima文档格式.docx_第1页
第1页 / 共15页
maxima文档格式.docx_第2页
第2页 / 共15页
maxima文档格式.docx_第3页
第3页 / 共15页
maxima文档格式.docx_第4页
第4页 / 共15页
maxima文档格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

maxima文档格式.docx

《maxima文档格式.docx》由会员分享,可在线阅读,更多相关《maxima文档格式.docx(15页珍藏版)》请在冰豆网上搜索。

maxima文档格式.docx

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

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 家庭教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1