Algebra and Calculus


数式の計算をさせてみよう.
In[15]:=
2a+3a
Out[15]=
5 a
In[16]:=
(a+b)^5
Out[16]=
       5
(a + b)
Expand は展開を行う.
In[17]:=
Expand[%]
Out[17]=
 5      4         3  2       2  3        4    5
a  + 5 a  b + 10 a  b  + 10 a  b  + 5 a b  + b
Factor は因数分解を行う.
In[18]:=
Factor[x^4+64]
Out[18]=
            2              2
(8 - 4 x + x ) (8 + 4 x + x )
関数 f[x] を定義するときは,f[x_] := 定義式 とする(:=, Blank).
In[19]:=
f[x_] := x^2 Sin[x]^2
積分をする(Integrate).
In[20]:=
Integrate[ f[x], x ]
Out[20]=
   3                                  2
4 x  - 6 x Cos[2 x] + 3 Sin[2 x] - 6 x  Sin[2 x]
------------------------------------------------
                       24
微分をする(D).
In[21]:=
D[%, x]
Out[21]=
    2       2
12 x  - 12 x  Cos[2 x]
----------------------
          24
Simplify は,数式をできるだけ簡単化する.もとに戻った!
In[22]:=
Simplify[%]
Out[22]=
 2       2
x  Sin[x]
f[x]の0のまわりのテイラー展開(10次以下)を求める(Series).
In[23]:=
Series[ f[x], {x,0,10} ]
Out[23]=
      6      8    10
 4   x    2 x    x         11
x  - -- + ---- - --- + O[x]
     3     45    315
3次多項式の解を求める(Solve).
In[24]:=
Solve[ x^3-7x^2+3a x == 0, x ]
Out[24]=
                 7 - Sqrt[49 - 12 a]
{{x -> 0}, {x -> -------------------}, 
                          2
 
        7 + Sqrt[49 - 12 a]
  {x -> -------------------}}
                 2
連立方程式は Solve[ { 等式1, 等式2, ... }, { 変数1, 変数2, ...} ] とする.
In[25]:=
Solve[ {x^3+y^3==1, x+y==2}, {x,y} ]
Out[25]=
              I          12 + 2 I Sqrt[6]
{{x -> 1 - -------, y -> ----------------}, 
           Sqrt[6]              12
 
               I          12 - 2 I Sqrt[6]
  {x -> 1 + -------, y -> ----------------}}
            Sqrt[6]              12
微分方程式は DSolve で解く.数値解のときは NDSolve
In[26]:=
DSolve[ y''[x]-k y[x]==1, y[x], x ]
Out[26]=
            1       C[1]       Sqrt[k] x
{{y[x] -> -(-) + ---------- + E          C[2]}}
            k     Sqrt[k] x
                 E
In[27]:=
DSolve[ {y''[x]-k y[x]==1, y[0]==0, y'[0]==0}, y[x], x ]
Out[27]=
                                   Sqrt[k] x
            1          1          E
{{y[x] -> -(-) + -------------- + ----------}}
            k       Sqrt[k] x        2 k
                 2 E          k
ラプラス変換のためのパッケージを読みこむ(Needs).どのようなパッケージがあるかは Function Browserで調べることができる.
In[28]:=
Needs["Calculus`LaplaceTransform`"]
ラプラス変換を行う.
In[29]:=
LaplaceTransform[ t^2 E^(a t), t, s ]
Out[29]=
    2
---------
        3
(-a + s)
In[30]:=
InverseLaplaceTransform[%, s, t]
Out[30]=
 a t  2
E    t
極限値を調べる(Limit).
In[31]:=
Limit[ Sin[x]/x, x->0 ]
Out[31]=
1
Σ i(i+1)(i+2) を求める (i=1,2,...,n).nが定数のときは,パッケージを読み込む必要はなく,通常のSumでよい.
In[32]:=
Needs["Algebra`SymbolicSum`"]
In[33]:=
Sum[ i(i+1)(i+2), {i,1,n} ]
Out[33]=
n (1 + n) (2 + n) (3 + n)
-------------------------
            4
三角関数の計算.
In[34]:=
Needs["Algebra`Trigonometry`"]
In[35]:=
TrigReduce[ Sin[x+y] ]
Out[35]=
Cos[y] Sin[x] + Cos[x] Sin[y]

最初に戻る 前へ 次へ
Dept. CS / Faculty of Eng. / Kobe Univ. / Naoyuki Tamura