1.求解1/(1+cos(x))^2的不定積分。
在和學生討論一道物理競賽題的時候,出現了這個函數的積分求解需求。查積分表也可寫出答案。但是可以使用octave的符號運算工具箱來做。
syms x; y = 1/(1+cos(x))^2; int(y)
既可以得到結果:
ans = (sym) 3/x\ /x\ tan |-| tan|-| \2/ \2/ ------- + ------ 6 2
octave中的符號工具箱實際上是調用了sympy的核心庫。所以看自來結果有符號藝術的感覺。
2.求解微分方程
在一些場合,需要求解微分方程的解析解。
舉個例子,求解諧振子的微分方程。hamonic.m
syms x(t) DE = diff(x,2) + w^2*x == 0 dsolve(DE)
得到的結果是:
>> hamonic DE = (sym) 2 2 d w *x(t) + ---(x(t)) = 0 2 dt ans = (sym) -I*t*w I*t*w x(t) = C1*e + C2*e
這里面octave的微分方程表達方法和matlab不大一樣,二階導函數不是寫作D2(x),而是使用 diff(x,2)來表達。