使用 Maxima 開始使用 Fedora Linux


千里馬 是一個開源的計算機代數係統 (CAS),具有強大的符號、數字和圖形功能。您可以執行矩陣運算、求解微分、積分和 ODE,並以 2D 和 3D 繪製函數和數據。因此,它對那些對科學和數學感興趣的人很有用。本文介紹 Maxima Fedora Linux 的安裝和使用。

安裝千里馬

Maxima 是一個命令行系統。您可以使用以下命令從官方存儲庫安裝 Maxima Fedora:

sudo dnf install maxima

然後,您可以通過調用命令 maxima 從終端使用 Maxima。

gnome 終端 Fedora Linux 上的 Maxima 會話gnome 終端 Fedora Linux 34 中的 Maxima 會話

安裝 wxMaxima

最大值 Maxima 的基於文檔的界面。 要在 Fedora Linux 上安裝,請使用以下命令:

sudo dnf install wxmaxima

您可以通過在終端中調用命令 wxmaxima 或通過單擊應用程序網格或菜單中的應用程序圖標來啟動 wxMaxima。

wxMaxima 會話 Fedora LinuxwxMaxima 會話 Fedora Linux 34

基本命令

調用 maxima 後,您將看到類似於以下的終端輸出: 而且..

(% I1) 是您輸入的命令的輸入標籤。 Maxima 命令是以分號 (;) 結尾的多行表達式。 o 標籤表示輸出。註釋用 / * 和 * / 括起來。您可以使用特殊符號百分比 (%) 查看先前由 Maxima 計算的結果。如果不想打印結果,可以使用 $ 而不是;退出命令。 Maxima 的基本算術命令是:

 (%i1) (19 + 7)/(52 - 2 * 13);
 (%o1)                                  1
 (%i2) 127 / 5;
                                       127
 (%o2)                                 ---
                                        5
 (%i3) float (127 / 5); 
 (%o3)                                25.4
 (%i4) 127.0 / 5;     
 (%o4)                                25.4
 (%i5) sqrt(2.0);
 (%o5)                          1.414213562373095
 (%i6) sin(%pi/2);
 (%o6)                                 1
 (%i7) abs(-12);
 (%o7)                                12
 (%i8) 2+3*%i + 5 - 4*%i;             /*complex arithmetic*/
 (%o8)                              7 - %i

要結束 Maxima 會話,請輸入以下命令:

quit();

代數

Maxima 可以擴展和分解多項式。

(%i1) (x+y)^3 + (x+y)^2 + (x+y);
                                3          2
(%o1)                    (y + x)  + (y + x)  + y + x
(%i2) expand(%);
          3        2    2      2                  3    2
(%o2)    y  + 3 x y  + y  + 3 x  y + 2 x y + y + x  + x  + x
(%i3) factor(%);
                          2                2
(%o3)           (y + x) (y  + 2 x y + y + x  + x + 1)

將 y 替換為 z 並將 x 替換為 5[出力]瀏覽到選項卡並使用以下命令:

(%i4) %o3, y=z, x=5;
                                    2
(%o4)                     (z + 5) (z  + 11 z + 31)

您可以輕鬆操作三角公式。

(%i1) sin(x) * cos(x+y)^2;
                                       2
(%o1)                        sin(x) cos (y + x)
(%i2) trigexpand(%);
                                                         2
(%o2)              sin(x) (cos(x) cos(y) - sin(x) sin(y))
(%i3) trigreduce(%o1);
                   sin(2 y + 3 x) - sin(2 y + x)   sin(x)
(%o3)              ----------------------------- + ------
                                 4                   2

您還可以求解具有一個或多個變量的代數方程。

(%i1) solve(x^2+5*x+6);
 (%o1)                         [x = - 3, x = - 2]
(%i2) solve(x^3 + 1);
                  sqrt(3) %i - 1      sqrt(3) %i + 1
 (%o2)     [x = - --------------, x = --------------, x = - 1]
                        2                   2
(%i3) eqns: [x^2 + y^2 = 9, x + y = 3];
                              2    2
 (%o3)                      [y  + x  = 9, y + x = 3]
 (%i4) solve(eqns, [x,y]);
 (%o4)                 [[x = 3, y = 0], [x = 0, y = 3]]

石頭

將 f 定義為 x 的函數。然後你可以找到函數的極限、導數和積分。

(%i1) f: x^2;
                                       2
 (%o1)                                x
 (%i2) limit(f,x,0);
 (%o2)                                  0
 (%i3) limit(1/f,x,0);
 (%o3)                                 inf
 (%i4) diff(f, x);
 (%o4)                                2 x
 (%i5) integrate(f, x);
                                       3
                                      x
 (%o5)                                --
                                      3

要找到定積分,請稍微修改上面的語法。

 (%i6) integrate(f, x, 1, inf);
 defint: integral is divergent.
  -- an error. To debug this try: debugmode(true);
 (%i7) integrate(1/f, x, 1, inf);
 (%o7)                                 1

Maxima 可以執行泰勒展開。這是最多 5 sin (x) 的泰勒展開式。

(%i1) taylor(sin(x), x, 0, 5);
                                   3    5
                                  x    x
 (%o1)/T/                     x - -- + --- + . . .
                                  6    120

要以未計算的形式表示導數,請使用以下語法:

(%i2) 'diff(y,x);
                                       dy
 (%o2)                                 --
                                       dx

ode2 函數可以求解一階和二階常微分方程 (ODE)。

(%i1) 'diff(y,x,2) + y = 0;
                                    2
                                   d y
 (%o1)                             --- + y = 0
                                     2
                                   dx
 (%i2) ode2(%o1,y,x);
 (%o2)                     y = %k1 sin(x) + %k2 cos(x)

矩陣運算

要輸入矩陣,請使用 entermatrix 函數。這是典型的 2×2 矩陣的示例。

(%i1) A: entermatrix(2,2);
 Is the matrix  1. Diagonal  2. Symmetric  3. Antisymmetric  4. General
 Answer 1, 2, 3 or 4 : 
 4;
 Row 1 Column 1: 
 1;
 Row 1 Column 2: 
 2;
 Row 2 Column 1: 
 3;
 Row 2 Column 2: 
 4;
 Matrix entered.
                                    [ 1  2 ]
 (%o1)                              [      ]
                                    [ 3  4 ]

然後,您可以找到矩陣的行列式、轉置、逆矩陣、特徵值和特徵向量。

(%i2) determinant(A);
 (%o2)                                 - 2
 (%i3) transpose(A);
                                    [ 1  3 ]
 (%o3)                              [      ]
                                    [ 2  4 ]
(%i4) invert(A);
                                  [ - 2   1  ]
                                  [          ]
 (%o4)                            [  3     1 ]
                                  [  -   - - ]
                                  [  2     2 ]
(%i5) eigenvectors(A);
            sqrt(33) - 5  sqrt(33) + 5
 (%o5) [[[- ------------, ------------], [1, 1]], 
                 2             2
               sqrt(33) - 3         sqrt(33) + 3
       [[[1, - ------------]], [[1, ------------]]]]
                    4                    4

在輸出標籤(%o5)中,第一個數組顯示特徵值,第二個數組顯示每個特徵值的重數,接下來的兩個數組顯示矩陣 A 對應的特徵向量。

數字

可以使用千里馬 gnuplot, 極光幾何視圖 作為圖形程序。 Maxima 使用 gnuplot_pipes 作為繪圖格式,因為 Maxima 軟件包附帶 gnuplot 作為 Fedora Linux 的依賴項。要查看繪圖格式,請在 Maxima 中使用以下命令。

get_plot_option(plot_format);

下面是一些繪圖示例。

(%i1) plot2d([sin(x), cos(x)], [x, -2*%pi, 2*%pi]);
sin 和 cos 函數的 2D 圖。使用 Maxima 的 2D 繪圖
(%i2) plot3d(sin(sqrt(x^2+y^2)), [x, -7, 7], [y, -7, 7]);
使用最大值的 3D 圖。使用 Maxima 進行 3D 繪圖
(%i3) mandelbrot ([iterations, 30], [x, -2, 1], [y, -1.2, 1.2],
             [grid,400,400]);
Mandelbrot 集的插圖。曼德布羅集

在哪裡閱讀有關 Maxima 及其功能的更多信息 官方網站 什麼時候 文檔..

Fedora Linux 有許多科學用途的工具。你能行的 Fedora 科學指南..



Source link