diff ..... (偏)微分

関数 f(x) の変数 x に関する導関数を求めるには、書式

diff(f(x), x)

を用いる。例えば、arctan(tan の逆関数)の導関数を計算してみると次のようになる。

(%i1) diff(atan(x),x);

                                 1
(%o1)                          ------
                                2
                               x  + 1

n 階導関数を求めるには、書式

diff(f(x), x, n)

を用いる。arctan の 2 階導関数を計算すると次のようになる。

(%i2) diff(atan(x),x,2);

                                  2 x
(%o2)                        - ---------
                                 2     2
                               (x  + 1)

変数は複数あっても良い。例えば x1、x2、x3、... でそれぞれ n1、n2、n3、... 回(偏)微分するには、書式

diff(f(x), x1, n1, x2, n2, x3, n3, ...)

を用いる。例えば、x*y を x と y でそれぞれ 1 回ずつ偏微分すると次のようになる。

(%i3) diff(x*y,x,1,y,1);

(%o3)                             1

なお、陰関数微分(ex. y を x の関数とみなして微分する)を実行したい場合は関数 depends を利用し、依存関係を定義すればよい:

(%i4) diff(x*y+y=0,x);

(%o4)                           y = 0


(%i5) depends(y,x)$


(%i6) diff(x*y+y=0,x);

                            dy   dy
(%o6)                     x -- + -- + y = 0
                            dx   dx


(%i7) solve(%,diff(y,x));

                            dy       y
(%o7)                      [-- = - -----]
                            dx     x + 1
依存関係を削除するには、関数 remove を用いる。
(%i8) remove(y,dependency);

(%o8)                           DONE


(%i9) diff(x*y+y=0,x);

(%o9)                           y = 0