假设我有两个超越函数f(x, y) = 0
和g(a, b) = 0
。
a和b取决于y,所以如果我能分析地解析第一个方程y y = f(x)
,我可以让第二个函数仅依赖于x,从而以数字方式求解它。
我更喜欢使用python,但如果matlab能够处理,这对我来说没问题。
有没有办法用python / matlab解决变量的分析tracecendent函数?泰勒也很好,只要我可以选择近似的顺序。
答案 0 :(得分:0)
我尝试通过Sympy这样运行:
import sympy
j, k, m, x, y = sympy.symbols("j k m x y")
eq = sympy.Eq(k * sympy.tan(y) + j * sympy.tan(sympy.asin(sympy.sin(y) / x)), m)
eq.simplify()
将您的等式变为
Eq(m, j*sin(y)/(x*sqrt(1 - sin(y)**2/x**2)) + k*tan(y))
,经过一点点戳之后,给了我们
k * tan(y) + j * sin(y) / sqrt(x**2 - sin(y)**2) == m
我们可以找到x(y)
的表达式
sympy.solve(eq, x)
返回
[-sqrt(j**2*sin(y)**2/(k*tan(y) - m)**2 + sin(y)**2),
sqrt(j**2*sin(y)**2/(k*tan(y) - m)**2 + sin(y)**2)]
但y(x)
的分析解决方案失败。