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)来表达。
使用octave符号运算求解不定积分、微分方程等(兼容matlab)
原文:https://www.cnblogs.com/xiaohezyd/p/10799030.html