2012年12月13日 星期四

Mathematica的應用

運算符及特殊符號 
 
Line1;                 執行Line,不顯示結果
Line1,line2        順次執行Line1,2,並顯示結果
?name                 關於系統變數name的資訊
??name              關於系統變數name的全部資訊
!command        執行Dos命令
n!                         N的階乘
 
!!filename         顯示檔內容
< Expr>> filename    打開文件寫
Expr>>>filename        打開文件從文件末寫
 
()                          結合率
[]                           函數
{}                           一個表
<*Math Fun*> 在c語言中使用math的函數
(*Note*)              程式的注釋

#n                        第n個參數
##                        所有參數
rule&                  把rule作用於後面的式子
%                         前一次的輸出
%%                     倒數第二次的輸出
%n                     第n個輸出
var::note         變數var的注釋
"Astring "        字串
Context `        上下文
 
a+b                   加
a-b                    減
a*b或a b          乘
a/b                    除
a^b                   次方
base^^num    以base為進位的數
lhs&&rhs         且
lhs||rhs           或
!lha                   非
++,--                  自加1,自減1
+=,-=,*=,/=    同C語言
>,<,>=,<=,==,!=  邏輯判斷(同c)
lhs=rhs             立即賦值
lhs:=rhs            建立動態賦值
lhs:>rhs            建立替換規則
lhs->rhs            建立替換規則
expr//funname    相當於filename[expr]
expr/.rule              將規則rule應用於expr
expr//.rule            將規則rule不斷應用於expr知道不變為止
param_                 名為param的一個任意運算式(形式變數)
param__               名為param的任意多個任意運算式(形式變數)


Mathematica的內部Constant
    Pi , 或 π(從基本輸入工具欄輸入, 或“Esc”+“p”+“Esc”)圓周率 π
    E (從基本輸入工具欄輸入, 或“Esc”+“ee”+“Esc”)自然對數的底數e
    I (從基本輸入工具欄輸入, 或“Esc”+“ii”+“Esc”)虛數單位i
    Infinity, 或 ∞(從基本輸入工具欄輸入 , 或“Esc”+“inf”+“Esc”)無窮大 ∞
    Degree 或°(從基本輸入工具欄輸入,或“Esc”+“deg”+“Esc”)度


Mathematica的常用內部數學函數  
            指數函數Exp[x]以e為底數
            對數函數Log[x]自然對數,即以e為底數的對數
            Log[a,x]以a為底數的x的對數
            開方函數Sqrt[x]表示x的算術平方根
            絕對值函數Abs[x]表示x的絕對值


mathematica 小數轉分數
99991/7000    // FullSimplify 
199.98/16.8     // FullSimplify // Rationalize
199.983/16.8   // FullSimplify // Rationalize
199.99/16.8    // FullSimplify // Rationalize
200.004/16.8    // FullSimplify // Rationalize

 三角函數  (引數的單位為弧度)

            Sin[x]正弦函數
            Cos[x]余弦函數
            Tan[x]正切函數
            Cot[x]餘切函數
            Sec[x]正割函數
            Csc[x]余割函數


反三角函數
              ASin[x]反正弦函數
              ArcCos[x]反余弦函數
              ArcTan[x]反正切函數
              ArcCot[x]反餘切函數
              ArcSec[x]反正割函數
               ArcCsc[x]反余割函數


雙曲函數
             Sinh[x]雙曲正弦函數
            Cosh[x]雙曲余弦函數
            Tanh[x]雙曲正切函數
            Coth[x]雙曲餘切函數
            Sech[x]雙曲正割函數
            Csch[x]雙曲余割函數


反雙曲函數A
            ArcSinh[x]反雙曲正弦函數
            ArcCosh[x]反雙曲余弦函數
            ArcTanh[x]反雙曲正切函數
            ArcCoth[x]反雙曲餘切函數
            ArcSech[x]反雙曲正割函數
            ArcCsch[x]反雙曲余割函數
            求角度函數ArcTan[x,y]以座標原點為頂點,x軸正半軸為始邊,從原點到點(x,y)的射線為終邊的角,其單位為弧度
          


數論函數
            GCD[a,b,c,...]最大公約數函數
            LCM[a,b,c,...]最小公倍數函數
            Mod[m,n]求餘函數(表示m除以n的餘數)
            Quotient[m,n]求商函數(表示m除以n的商)
            Divisors[n]求所有可以整除n的整數
            FactorInteger[n]因數分解,即把整數分解成質數的乘積
            Prime[n]求第n個質數
            PrimeQ[n]判斷整數n是否為質數,若是,則結果為True,否則結果為False
            Random[Integer,{m,n}]隨機產生m到n之間的整數


排列組合函數
          Factorial[n]或n!階乘函數,表示n的階乘
            複數函數Re[z]實部函數
            Im[z]虛部函數
            Arg(z)輻角函數
            Abs[z]求複數的模
            Conjugate[z]求複數的共軛複數
            Exp[z]複數指數函數
            求整函數與截尾函數Ceiling[x]表示大於或等於實數x的最小整數
            Floor[x]表示小於或等於實數x的最大整數
            Round[x]表示最接近x的整數
            IntegerPart[x]表示實數x的整數部分
            FractionalPart[x]表示實數x的小數部分
            分數與浮點數運算函數N[num]或num//N把精確數num化成浮點數(默認16位有效數字)
            N[num,n]把精確數num化成具有n個有效數字的浮點數
            NumberForm[num,n]以n個有效數字表示num
            Rationalize[float]將浮點數float轉換成與其相等的分數
            Rationalize[float,dx]將浮點數float轉換成與其近似相等的分數,誤差小於dx
            最大、最小函數Max[a,b,c,...]求最大數
            Min[a,b,c,...]求最小數
            符號函數Sign[x]


Mathematica中的數學運算符
            a+b 加法
            a-b減法
            a*b (可用空白鍵代替*)乘法
            a/b (輸入方法為:“ Ctrl ” + “ / ” ) 除法
            a^b (輸入方法為:“ Ctrl ” + “ ^ ” )乘方
            -a 負號


Mathematica的關係運算符 
            ==等於
            <小於
            >大於
            <=小於或等於
            >=大於或等於
            !=不等於
      注:上面的關係運算符也可從基本輸入工具欄輸入。


如何用mathematica求多項式的最大公因式和最小公倍式  
            PolynomialGCD[p1,p2,...]求多項式p1,p2,...的最大公因式
            PolynomialLCM[p1,p2,...]求多項式p1,p2,...的最小公倍式


如何用mathematica求整數的最大公約數和最小公倍數 
            GCD[p1,p2,...]求整數p1,p2,...的最大公約數
            LCM[p1,p2,...]求整數p1,p2,...的最小公倍數


如何用mathematica進行整數的質因數分解   
            FactorInteger[n]把整數n分解成質數的乘積


如何用mathematica求整數的正約數 
            Divisors[n]求整數n的所有正約數


如何用mathematica判斷一個整數是否為質數  
            PrimeQ[n]判斷整數n是否為質數,若是,則運算結果為True,否則結果為False


如何用mathematica求第n個質數 
            Prime[n]求第n個質數


如何用mathematica求階乘 
            Factorial[n]或n!求n的階乘


如何用mathematica配方 
      Mathematica沒有提供專門的配方命令,但是我們可以非常輕鬆地自定義一個函數進行配方。


如何用mathematica進行多項式運算 
            Collect[expr,x]將expr表示成x的多項式
            Collect[expr,x,func]將expr表示成x的多項式之後,再根據func處理各項係數
            Collect[expr,{x,y}]將expr表示成x的多項式,再把多項式的每一項係數表示成y的多項式
            FactorTerms[expr]提出expr中的數值因數
            FactorTerms[expr,x]提出expr中所有不包含x的因數
            FactorTerms[expr,{x,y,...}]提出expr中所有不包含x,y,...的因數
            PolynomialGCD[p1,p2,...]求多項式p1,p2,...的最大公因式
            PolynomialLCM[p1,p2,...]求多項式p1,p2,...的最小公倍式
            PolynomialQuotient[p1,p2,x]變數為x,求p1/p2 的商
            PolynomialRemainder[p1,p2,x]變數為x,求p1/p2 的餘式
            PowerExpand[expr]將(xy)n分解成 xnyn 的形式


如何用mathematica進行分式運算  
            Denominator[f]提取分式f的分母
            Numerator[f]提取分式f的分子
            ExpandDenominator[f]展開分式f的分母
            ExpandNumerator[f]展開分式f的分子
            Expand[f]把分式f的分子展開,分母不變且被看成單項。
            ExpandAll[f]把分式f的分母和分子全部展開
            ExpandAll[f, x]只展開分式f中與x匹配的項
            Together[f]把分式f的各項通分後再合併成一項
            Apart[f]把分式f拆分成多個分式的和的形式
            Apart[f, x]對指定的變數x(x以外的變數作為常數),把分式f拆分成多個分式的和的形式
            Cancel[f]把分式f的分子和分母約分
            Factor[f]把分式f的分母和分子因式分解


如何用Mathematica進行因式分解  
            Factor[運算式]


如何用Mathematica展開  
            Expand[運算式]


如何用Mathematica進行化簡  
            Simplify[運算式]
            Simplify[運算式,假設條件]
            FullSimplify[運算式]
            FullSimplify[運算式,假設條件]


如何用Mathematica合併同類項  
            Collect[運算式,指定的變數]


如何用Mathematica進行數學式的轉換 
            TrigExpand[運算式] 將三角函數展開
            TrigFactor[運算式] 將三角函數組成的運算式因式分解
            TrigReduce[運算式] 將相乘或乘方的三角函數化成一次方的基本組合
            ExpToTrig[運算式] 將指數函數化成三角函數或雙曲函數
            TrigToExp[運算式] 將三角函數或雙曲函數化成指數函數
            ComplexExpand[運算式] 將運算式展開,假設所有的變數都是實數
            ComplexExpand[運算式,{x,y,…}] 將運算式展開,假設x,y,…等變數都是複數


如何用Mathematica進行變數替換  
            運算式/.x->a
            運算式/.{x->a, y->b,…}


如何用mathematica進行複數運算   
            a+b*I表示複數a+bI
            Conjugate[z]求複數z的共軛複數
            Exp[z]複數的指數函數,表示e^z
            Re[z]求複數z的實部
            Im[z]求複數z的虛部
            Abs[z]求複數z的模
            Arg[z]求複數z的輻角,


如何在mathematica中表示集合  
      與數學中表示集合的方法相同,格式如下:
            {a, b, c,…}表示由a, b, c,…組成的集合 (注意:必須用大括弧)
      下列命令可以生成特殊的集合:
            Table[f,{n}]生成包含n個元素f的集合
            Table[f[n],{n,nmax}]n從1到nmax,間隔為1,生成集合{f[1], f[2], f[3],…, f[nmax]}
            Table[f[n],{n,nmin, nmax}]n從nmin到nmax,間隔為1,生成集合{f[nmin], f[nmin+1],
            f[nmin+2],…, f[nmax]}
            Table[f[n],{n,nmin, nmax, dn}]n從nmin到nmax,間隔為dn,生成集合{f[nmin],
            f[nmin+dn], f[nmin+2*dn],…, f[nmax]}
            Range[n]生成集合{1, 2, 3 ,…, n}
            Range[imin, imax]生成集合{imin,imin+1,imin+2,…,imax}
            Range[imin, imax, di]生成集合{imin,imin+di,imin+2*di,… } (最大不超過imax)


如何用Mathematica求集合的交集、並集、差集和補集 
            Union[A,B,C,…] 求集合A,B,C,…的並集
            A~Union~B~Union~C~Union~… 求集合A,B,C,…的並集
            A∪B∪C∪… 求集合A,B,C,…的並集
            Intersection[A,B,C,…] 求集合A,B,C,…的交集
            A~ Intersection ~B~ Intersection ~C~ Intersection ~… 求集合A,B,C,…的交集
            A∩B∩C∩… 求集合A,B,C,…的交集
            Complement [A,B,C,…] 求差集
            A~ Complement ~B~ Complement ~C~ Complement ~… 求差集
            Complement [全集I,A] 求集合A關於全集I的補集
            全集I ~ Complement ~A 求集合A關於全集I的補集


如何mathematica用排序  
                  Sort[v]將陣列或向量v的元素從小到大排列(昇冪排列)
                  Reverse[v]將陣列或向量v的元素按照與原來相反的順序重新排列(續排列)
                  RotateLeft[v]將陣列或向量v中的每一個元素向左移一個位置
                  RotateRight[v]將陣列或向量v中的每一個元素向右移一個位置
                  RotateLeft[v,n]將陣列或向量v中的每一個元素向左移n個位置
                  RotateRight[v,n]將陣列或向量v中的每一個元素向右移n個位置


如何在Mathematica中解方程
            Solve[方程,變數]
           注:方程的等號必須用: = =


如何在Mathematica中解方程組
      Solve[{方程組},{變數組}]
      注:方程的等號必須用: = =


如何在Mathematica中解不等式
      先載入:Algebra`InequalitySolve` ,載入方法為:<       然後執行解不等式的命令  InequalitySolve,此命令的使用格式如下:
      <--mstheme-->
            <--mstheme-->
            InequalitySolve[不等式,變數]
            <--mstheme-->


如何在Mathematica中解不等式組 
      先載入:Algebra`InequalitySolve` ,載入方法為:<       然後執行解不等式組的命令InequalitySolve,此命令的使用格式如下:
      <--mstheme-->
            <--mstheme-->
            InequalitySolve[{不等式組},{變數組}] (我的研究成果)
            InequalitySolve[And[不等式組],{變元組}]
            InequalitySolve[不等式1&&不等式2&&…&&不等式n,{變元組}]
            <--mstheme-->


如何在Mathematica中解不等式組 
      先載入:Algebra`InequalitySolve` ,載入方法為:<       然後執行解不等式組的命令InequalitySolve,此命令的使用格式如下:
      <--mstheme-->
            <--mstheme-->
            InequalitySolve[{不等式組},{變數組}] (我的研究成果)
            InequalitySolve[And[不等式組],{變數組}]
            InequalitySolve[不等式1&&不等式2&&…&&不等式n,{變元組}]


如何用mathematica表示分段函數 
            lhs:=rhs/;condition當condition成立時,lhs才會被定義成rhs
            If[test,then,else]如果test為True,則執行then,否則執行 else
            If[test,then,else,unknown]如果test為True,則執行then,為False時,則執行
            else,無法判斷test是True或False時則執行unknown
            Which[test1,value1,test2,value2,...]如果test1為True,則執行value1,test2為True,則執行value2,依次類推。


如何用mathematica求反函數 
            InverseFunction[f]求f的反函數
           對系統內部的函數生效,但對自定義的函數不起任何作用,也許是方法不對。


如何用Mathematica畫2D圖
      <--mstheme-->
            Plot[運算式,{變數,下限,上限},可選項]


如何用mathematica繪製2D隱函數圖像  
      首先要載入Graphics`ImplicitPlot`函數庫,載入方法為:<
            ImplicitPlot[eqn,{x,xmin,xmax}]先用Solve命令求解,再在指定的範圍內繪製隱函數圖形。
            ImplicitPlot[eqn,{x, xmin, m1, m2, …, xmax}]避開m1, m2, …點繪圖
            ImplicitPlot[eqn,{x,xmin,xmax},{y, ymin , ymax}]用ContourPlot的方法繪圖
            ImplicitPlot[{eqn1,eqn2,…}, ranges, options]同時繪製多個隱函數圖


如何用mathematica進行2D參數繪圖  
            ParametricPlot [{x(t), y(t)},{t, tmin, tmax}]繪製二維曲線的參數圖
            ParametricPlot [{x(t), y(t)},{t, tmin,
            tmax},AspectRatio->Automatic]繪製二維曲線的參數圖,並保持曲線的“真正形狀”,即x,y座標的比為1:1
            ParametricPlot [{{x1(t), y1(t)}, {x2(t), y2(t)},…}, {t, tmin, tmax}]同時繪製多個參數圖


 如何用mathematica進行極座標繪圖  
      首先要載入Graphics`Graphics`函數庫,載入方法為:<< Graphics`Graphics`
            PolarPlot[r(θ),{θ,θ1,θ2}]在極坐標系中繪製r=r(θ)的圖形,角度θ從θ1到θ2
            PolarPlot[{r1(θ), r2(θ),…},{θ,θ1,θ2}]在同一個極坐標系中同時繪製多個圖形


如何用mathematica繪製二維散點圖  
            ListPlot[{y1,y2,y3,…}]在二維平面上繪點{1,y1},{2,y2},…
            ListPlot[{{x1, y1},{x2, y2},{x3, y3},…}]在二維平面上繪點{x1,y1},{x2,y2},…
            ListPlot[list,PlotJoined->True]用線段連接繪製的點,其中list為數據點


      Mathematica的2D繪圖選項       
      選項必須放在最後面,其格式為:option->value
      選項默 認 值說 明
            AspectRatio1/GoldenRatio圖形高與寬的比例。預設值為1/GoldenRatio,約為0.618
           AxesTrue是否繪製出坐標軸,設False,則不繪製任何坐標軸。設Axes->{False,True},則       只繪製出y軸
            AxesLabelAutomatic為坐標軸做標記,設AxesLabel->{“ylabel”},則為y軸做標記。設AxesLabel->{“xlabel” ,“ylabel”},則為{x, y}軸做標記。
            AxesOriginAutomaticAxesOrigin->{x,y},設坐標軸相交點為{x,y}
            DisplayFunction$DisplayFunction定義圖形的顯示。設Identity將不顯示任何圖形
            FrameFalse是否給圖形加上外框
            FrameLabelFalse從x軸下方順時針方向給圖形加上外框標記
            FrameLabel->None定義無外框標記
            FrameLabel->{x,y}定義圖形下方與左邊的標記
            FrameLabel->{x1, y1 , x2, y2}從x軸下方順時針方向,定義圖形四邊的標記。
            FrameTicksAutomatic給外框加上刻度(如果Frame設為True); None
            則不加刻度。定義{xticks,yticks,…}則分別設置每一邊的刻度。
            GridLinesNone設Automatic則在主要刻度上加上格線。
            GridLines->{xgrid,ygrid}定義x與y方向的網格數。
            PlotLabelNonePlotLabel->label定義整個圖形的名稱。
            PlotRangeAutomatic設PlotRange->All, 繪製所有圖形
            設PlotRange->{min, max}, 指定y方向的繪圖範圍
            設PlotRange->{{xmin, xmax}, {ymin,ymax}},分別指定x與y方向的繪圖範圍
            TicksAutomatic坐標軸的刻度
            設Ticks->None,則不顯示刻度記號
            設Ticks->{xticks,yticks},定義x與y方向刻度記號的位置。
            設Ticks->{{x1,label1},
            {x2,label2},…},在x1位置標注label1記號,在x2位置標注label2記號,…
            設Ticks->{{x1,label1,len1}, {x2,label2,len2},…},定義每一個刻度的長度
       
    Automatic, None, All, True, False是Mathematica繪圖命令常用的選項,它們所代表的意義如下:
            Automatic使用Mathematica的預設值
            None不包含此項
            All包含每項
            True此項有效
            False此項無效
      下列選項可以格式化圖形裏的文字:
            TextStyle->value定義整張圖形中所有文字的樣式
            “style” 將圖形文字的樣式定義為cell的樣式
            FontSize->n, 定義字體大小為n
            FontSlant->”Italic”, 定義字體為斜字體
            FontWeight->”Bold”, 定義字體為粗字體
            FontFamily->”name”, 定義字體,如”Times”
            FormatType->value定義為TraditionalForm則以標準的數學格式輸出
      下列選項可以定義繪圖的顏色與線條的粗細:
            Plot[{f1,f2,…},{x,xmin,xmax},PlotStyle->{RGBColor[r1,g1,b1],
            RGBColor[r2,g2,b2],…}]分別用RGBColor[r1,g1,b1],
            RGBColor[r2,g2,b2],…給f1,f2,…上色
            Plot[{f1,f2,…},{x,xmin,xmax},PlotStyle->{GrayLevel,
            GrayLevel[j],…}]分別用GrayLevel,
            GrayLevel[j],…給f1,f2,…上色
            Plot[{f1,f2,…},{x,xmin,xmax},PlotStyle->{Thickness[r1],
            Thickness[r2],…}]分別用Thickness[r1],
            Thickness[r2],…定義f1,f2,…的粗細,其中r1,r2 為線條的粗細所占圖形寬度的比例。


如何用mathematica繪製3D顯函數的圖形  
            Plot3D[f(x, y), {x, xmin, xmax}, {y, ymin, ymax}]x 從xmin到 xmax, y從
            ymin到 ymax,繪製函數 f(x,y)的圖形


如何用mathematica繪製3D隱函數圖像 
      首先要載入Graphics`ContourPlot3D`函數庫,載入方法為:<             ScatterPlot3D[{{x1,y1,z1},{x2,y2,z2},…},
            PlotJoined->True]在三維空間中繪製資料點{x1, y1, z1}, {x2, y2,
            z2},…並用線段將點連接起來。在使用前首先要載入Graphics`Graphics3D`繪圖函數庫,載入方法為:<
      mathematica的3D繪圖選項  
      基本格式:option->value
            選 項默 認 值說 明
            AxesTrue是否控制坐標軸
            AxesLabelNone坐標軸的名稱。{”xlabel”, ”ylabel”, ”zlabel”}分別為x、y、z軸的標注。
            BoxedTrue繪製外框。定義為False則不繪製外框
            ColorFunctionAutomatic上色的方式。Hue為彩色
            DisplayFunction$DisplayFunction顯示圖形的模式。定義為Identity則不顯示圖形
            FaceGridsNone表面網格。選All則在外框每面都加上網格
            HiddenSurfaceTrue是否去掉隱藏線
            LightingTrue是否用仿真光線(simulated lighting)上色
            MeshTrue是否在圖形表面加上格線
            PlotRangeAutomaticZ方向的繪圖範圍
            ShadingTrue表面不上色或留白
            ViewPoint{-1.3, -2.4, 2}觀測點(眼睛觀測的位置)
            PlotPoints15在x和y方向取樣點
            CompiledTrue是否編譯成低級的機器碼
      ViewPoint 可以定義從不同的角度觀看三維的函數圖,下表提供了一些典型值:
            ViewPoint的值觀測點位置
            {-1.3, -2.4, 2}默認觀測點
            {0,-2,0}從前方看
            {0,0,2}從上往下看
            {0,-2,2}從前方上面往下看
            {0,-2,-2}從前方下麵往上看
            {-2,-2,0}從左前方看
            {2,-2,0}從右前方看
      如果設Lighting為False,則函數圖形的上色是根據函數值的大小進行。另外,Mathematica還提供了另外一種方法,可以根據指定的顏色函數(color
      function)上色。
            Plot3D[{f(x,y),
            GrayLevel[s(x,y)]},{x,xmin,xmax},{y,ymin,ymax}]繪製三維圖形,根據函數s(x,y)進行灰度上色
            Plot3D[{f(x,y),
            Hue[s(x,y)]},{x,xmin,xmax},{y,ymin,ymax}]繪製三維圖形,根據函數s(x,y)上彩色


如何用Mathematica求極限 
      (1) 極限:
      <--mstheme-->
            <--mstheme-->
            Limit[函數的運算式f(x),x->a]
            <--mstheme-->
      <--mstheme-->
      (2) 單側極限:
      左極限:
      <--mstheme-->
            <--mstheme-->
            Limit[函數的運算式f(x),x->a,Direction->1]
            <--mstheme-->
      <--mstheme-->
      右極限:
      <--mstheme-->
            <--mstheme-->
            Limit[函數的運算式f(x),x->a, Direction-> -1]


如何用Mathematica求導數 
            <--mstheme-->
            D[f(x),x] 


如何用Mathematica求高階導數
            <--mstheme-->
            D[f(x),{x,n}]<--mstheme-->
      在Mathematica中沒有直接求隱函數導數的命令,但是我們可以根據數學中求隱函數導數的方法,在Mathematica中一步一步地進行推導。也可以自己編一個求隱函數導數的小程式。
      在Mathematica中,沒有直接求參數方程確定的函數的導數的命令,只能根據參數方程確定的函數的求導公式 一步一步地進行推導;或者,乾脆自己編一個小程式,應用起來會更加方便。


如何用Mathematica求不定積分 
      <--mstheme-->
            <--mstheme-->
            Integrate[f(x),x] (或從工具欄輸入 )


如何用Mathematica求定積分、廣義積分
      <--mstheme-->
            <--mstheme-->
            Integrate[f(x),{x,a,b}] (或從工具欄輸入  )
            <--mstheme-->


如何用Mathematica對數列和級數進行求和   
            Sum[f(n),{n, a, b}] (或從工具欄輸入 )
            Sum[f(n),{n, a, b, dn}]
            Sum[f(n, m),{n, a, b},{m, c, d}]
            Sum[f(n, m),{n, a, b, dn},{m, c, d, dm}]


如何用Mathematica進行連乘  
            Product[f(n),{n, a, b}] (或從工具欄輸入 )
            Product[f(n),{n, a, b, dn}]
            Product[f(n, m),{n, a, b},{m, c, d}]
            Product[f(n, m),{n, a, b, dn},{m, c, d, dm}]


如何用Mathematica展開級數
            Series[f(x),{x ,a, n}]


如何在Mathematica中進行積分變換  
            LaplaceTransform[ f(t), t, s ] 拉普拉斯變換
            InverseLaplaceTransform[ F(s), s, t ] 拉普拉斯變換的逆變換
            FourierTransform[ f(t), t, ω] 傅立葉變換
            InverseFourierTransform[ F(ω), ω, t ] 傅立葉變換的逆變換
       
            ZTransform[ f(n), n, z] Z變換
            InverseZTransform[ F(z), z, n ] Z變換的逆變換
       
            FourierSinTransform[ f(t), t, ω] 傅立葉正弦變換
            FourierCosTransform[ f(t), t, ω] 傅立葉余弦變換
            InverseFourierSinTransform[ F(ω), ω, t ] 傅立葉正弦變換的逆變換
            InverseFourierCosTransform[F(ω), ω, t] 傅立葉余弦變換的逆變換


如何用Mathematica解微分方程
            DSolve[微分方程,y[x],x]
            DSolve[{微分方程,初始條件或邊界條件},y[x],x]


如何用Mathematica解微分方程組  
            DSolve[{微分方程組},{y1 [x],y2[x],…}, x]
            DSolve[{微分方程組,初始條件或邊界條件},{y1[x],y2[x],…},x]


如何用mathematica求多變數函數的極限 
      以兩個變數為例說明,多於兩個變數的函數極限可以依次類推。
            Limit[Limit[f(x,y),x->a],y->b]計算極限


如何用mathematica求多元函數的偏導數 
            D[f,x1,x2,…, xn]求偏導數 


 如何用mathematica求多變數函數的泰勒展開式
            Series[f,{x,x0,m},{y,y0,n},...]在x=x0,y=y0
            ,...處求函數f的泰勒展開式,其中m,n,...為展開的次數


如何用mathematica求重積分 
            Integrate[f,{x,a,b},{y,c,d},...,{z,m,n}]求重積分
            NIntegrate[f,{x,a,b},{y,c,d},...,{z,m,n}]重積分的數值解
      也可利用工具欄上的積分符號的組合來完成
      如何用mathematica求梯度、散度、旋度 
      首先要載入Calculus`VectorAnalysis`函數庫,載入方法為:
      <
      以直角坐標系和三元函數為例說明
            Grad[f, Cartesian[x,y,z] ]在直角坐標系中求純量函數f的梯度,其中x,y,z為座標變數
            Div[f, Cartesian[x,y,z] ]在直角坐標系中求向量函數f={fx ,fy, fz}的散度,其中x,y,z為座標變數
            Curl[f, Cartesian[x,y,z] ]在直角坐標系中求向量函數f={fx ,fy, fz}的旋度,其中x,y,z為座標變數
      注:若把上面的Cartesian換為Cylindrical或Spherical,則表示在圓柱坐標系或球面坐標系中進行計算。


如何用Mathematica求函數的最大值和最小值
            Maximize[f, {x, y, …}]求函數f關於變數x, y, …的最大值
            Maximize[{f, conds}, {x, y, …}]在條件conds下,求函數f關於變數x, y, …的最大值
            Minimize[f, {x, y, …}]求函數f關於變數x, y, …的最小值
            Minimize [{f, conds}, {x, y, …}]在條件conds下,求函數f關於變數x, y, …的最小值


如何用mathematica表示向量 
            {a1,a2,...,an}表示由a1,a2,...,an 組成的向量(注意:必須用大括弧)
      下列命令可以生成特殊的向量:
            Table[f,{n}]生成由n個f組成的向量{f,f,f,...,f}
            Table[f[n],{n,nmax}]n從1到nmax,間隔為1,生成向量{f[1], f[2], f[3],…, f[nmax]}
            Table[f[n],{n,nmin, nmax}]n從nmin到nmax,間隔為1,生成向量{f[nmin], f[nmin+1],
            f[nmin+2],…, f[nmax]}
            Table[f[n],{n,nmin, nmax, dn}]n從nmin到nmax,間隔為dn,生成向量{f[nmin],
            f[nmin+dn], f[nmin+2*dn],…, f[nmax]}


如何用mathematica進行向量的加減運算及數乘運算
            A+B向量A與B的和
            A-B向量A與B的差
            k*A 或 A*k數k與向量A的數乘


如何用mathematica求向量的點積 
            Dot[a,b] 或a.b求向量a與b的點積(在直角坐標系中)
            DotProduct[a,b]
            在當前坐標系中求向量a與b的點積。在使用前,首先要載入Calculus`VectorAnalysis`函數庫。載入方法為:<
            載入後默認的坐標系是直角坐標系,可以根據需要設置坐標系,設置方法為:
            SetCoordinates[Cartesian] (直角坐標系)
            SetCoordinates[Cylindrical] (圓柱坐標系)
            SetCoordinates[Spherical] (球面坐標系)
            DotProduct[a,b,Cartesian]
            在直角坐標系中求向量a與b的點積。在使用前,首先要載入Calculus`VectorAnalysis`函數庫。載入方法為:<
            若把Cartesian換為Cylindrical 或Spherical,則表示在圓柱坐標系或球面坐標系中求向量a與b的點積


如何用mathematica求向量的叉積
            Cross[a, b]計算向量a與b的叉積(在直角坐標系中)
            CrossProduct[a,b]
            在當前坐標系中求向量a與b的叉積。在使用前,首先要載入Calculus`VectorAnalysis`函數庫。載入方法為:<
            載入後默認的坐標系是直角坐標系,可以根據需要設置坐標系,設置方法為:
            SetCoordinates[Cartesian] (直角坐標系)
            SetCoordinates[Cylindrical] (圓柱坐標系)
            SetCoordinates[Spherical] (球面坐標系)
            CrossProduct[a,b,Cartesian]
            在直角坐標系中求向量a與b的叉積。在使用前,首先要載入Calculus`VectorAnalysis`函數庫。載入方法為:<
            若把Cartesian換為Cylindrical 或Spherical,則表示在圓柱坐標系或球面坐標系中求向量a與b的叉積


如何用mathematica求向量的模與夾角
      Mathematica 4沒有提供專門的命令求向量的模,但Mathematica 5 卻提供了專門的命令求向量的模。其格式如下:
            Norm[v]計算向量v的模
      mathematica沒有提供求兩個向量夾角的命令。不過根據向量的夾角公式我們可以自己編寫一個函數進行計算。
      
如何用mathematica建立矩陣 
            {{a11,a12,…,a1n},{a21,a22,…,a2n},…,{am1,am2,…amn}}建立m×n矩陣,其中aij為矩陣第i行的第j個元素(這種方法建立的矩陣不是手寫的形式)
            DiagonalMatrix[{a1,a2,...,an}]建立以a1,a2,...,an為對角線元素的對角矩陣(這種方法建立的矩陣不是手寫的形式)
            IdentityMatrix[n]生成一個n×n單位矩陣(這種方法建立的矩陣不是手寫的形式)
            Table[f,{i,m},{j,n}]生成m×n矩陣(這種方法建立的矩陣不是手寫的形式)
            Array[a,{m,n}]生成以am×n為元素的矩陣(這種方法建立的矩陣不是手寫的形式)
            MatrixForm[A]矩陣A的手寫形式


如何用mathematica求行列式的值 
            Det[A]求矩陣A的行列式


如何用mathematica求逆矩陣
            Inverse[A]求矩陣A的逆矩陣


如何用mathematica求轉置矩陣
            Transpose[A]求矩陣A的轉置矩陣


如何用mathematica求矩陣的秩 
      mathematica 4沒有提供這一命令,但mathematica 5 提供了這一命令,格式如下:
            MatrixRank[A]求矩陣A的秩


如何用Mathematica求矩陣的跡
            Tr[A]求方陣A的跡


如何用mathematica求特徵值和特徵向量
            Eigenvalues[A]求矩陣A的所有特徵值
            Eigenvectors[A]求矩陣A的所有特徵向量
            Eigensystem[A]求矩陣A的所有特徵值和特徵向量,輸出格式為{特徵值,特徵向量}


如何用mathematica解線性方程組 
            Solve[{eqn1,eqn2,…},{x,y,z,…}]解由方程eqn1,eqn2,…組成的方程組。
            LinearSolve[M,B]解滿足矩陣方程MX=B的向量X


如何用mathematica求平均值 
      首先要載入Statistics`DescriptiveStatistics`函數庫,載入方法為:
      << Statistics`DescriptiveStatistics`
      或者載入整個統計函數庫,載入方法為:
      <
            Mean[data]求資料data的算術平均數。資料data的格式為:{a1,a2,…}
            HarmonicMean[data]求資料data的調和平均數。資料data的格式為:{a1,a2,…}
            GeometricMean[data]求資料data的幾何平均數。資料data的格式為:{a1,a2,…}


如何用mathematica求中位數  
      首先要載入Statistics`DescriptiveStatistics`函數庫,載入方法為:
      << Statistics`DescriptiveStatistics`
      或者載入整個統計函數庫,載入方法為:
      <
            Median[data]求數據data的中位數。資料data的格式為:{ a1,a2,…}
如何用mathematica求眾數 
      首先要載入Statistics`DescriptiveStatistics`函數庫,載入方法為:
      << Statistics`DescriptiveStatistics`
      或者載入整個統計函數庫,載入方法為:
      <
            Mode[data]求數據data的眾數。資料data的格式為:{ a1,a2,…}


如何用mathematica求方差和標準差
      首先要載入Statistics`DescriptiveStatistics`函數庫,載入方法為:
      << Statistics`DescriptiveStatistics`
      或者載入整個統計函數庫,載入方法為: <
            Variance[data]求資料data的樣本方差。資料data的格式為:{ a1,a2,…}
            VarianceMLE[data]求資料data的母體方差。資料data的格式為:{ a1,a2,…}
            StandardDeviation[data]求資料data的樣本標準差。資料data的格式為:{a1,a2,…}
            StandardDeviationMLE[data]求資料data的母體標準差。資料data的格式為:{ a1,a2,…}


如何用mathematica求協方差和相關係數   
      首先要載入Statistics`MultiDescriptiveStatistics`函數庫,載入方法為:
      << Statistics`MultiDescriptiveStatistics`
      或者載入整個統計函數庫,載入方法為: <
      Covariance[data1,data2]求資料data1和data2的樣本協方差。資料的格式為:{a1,a2,…}
      CovarianceMLE[data1,data2]求資料data1和data2的母體協方差。資料的格式為:{a1,a2,…}
      Correlation[data1,data2]求資料data1和data2的線性相關係數。資料的格式為:{a1,a2,…}


如何用mathematica進行曲線擬合 
            F

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。