如何在sympy中将一个指数复方程扩展为两个三角方程?

乔治·蒂莫费耶夫斯基

我有一个带有两个未知数的指数方程,说:

y*exp(ix) = sqrt(2) + i * sqrt(2)

我可以手动将其转换为三角方程组:

y * cos x = sqrt(2)
y * sin x = sqrt(2)

如何在sympy中自动完成?

我尝试了这个:

from sympy import *
x = Symbol('x', real=True)
y = Symbol('y', real=True)
eq = Eq(y * cos(I * x), sqrt(2) + I * sqrt(2))
print([e.trigsimp() for e in eq.as_real_imag()])

但只有两个完全相同的方程式,除了一个方程式之前有“ re”,另一个方程式是“ im”。

荣誉

您可以调用该方法.rewrite(sin).rewrite(cos)获得所需的方程式。不幸的是,as_real_imag不能Equation直接在上调用,但是您可以执行以下操作:

from sympy import *


def eq_as_real_imag(eq):
    lhs_ri = eq.lhs.as_real_imag()
    rhs_ri = eq.rhs.as_real_imag()    
    return Eq(lhs_ri[0], rhs_ri[0]), Eq(lhs_ri[1], rhs_ri[1])

x = Symbol('x', real=True)
y = Symbol('y', real=True)

original_eq = Eq(y*exp(I*x), sqrt(2) + I*sqrt(2))
trig_eq = original_eq.rewrite(sin)  # Eq(y*(I*sin(x) + cos(x)), sqrt(2) + sqrt(2)*I)

eq_real, eq_imag = eq_as_real_imag(trig_eq) 
print(eq_real)  # Eq(y*cos(x), sqrt(2))
print(eq_imag)  # Eq(y*sin(x), sqrt(2)) 

(您可能还幸运的是,仅使用表达式(隐式理解为0)而不是方程式eq.lhs - eq.rhs,以便as_real_imag直接调用方法

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Sympy-从三角方程中得到了两个解,我期望只有一个

来自分类Dev

Sympy无法解决此三角方程

来自分类Dev

如何在Python中求解三角方程组的非线性系统(MATLAB可以轻松解决)

来自分类Dev

极大多重三角方程

来自分类Dev

如何用Java解决这组非线性三角方程?

来自分类Dev

如何在javafx中一起“添加”两个三角形网格?

来自分类Dev

我的程序如何从一个输入字段计算两个方程?

来自分类Dev

如何在图像旁边创建两个三角形?

来自分类Dev

如何在MATLAB中用两个变量解方程

来自分类Dev

Matlab:用两个未知参数求解指数方程

来自分类Dev

如何在Jena中将一个RDF模型分离为两个模型?

来自分类Dev

如何在jQuery中将两个DOM元素分组为一个

来自分类Dev

三角方程不适用于输入变量

来自分类Dev

如何在Python中使用一个具有指数和对数函数的变量求解方程?

来自分类Dev

MS-Word 方程编辑器:如何在其底数的左侧添加一个指数

来自分类Dev

如何使用三个点和两个向量计算平面方程?

来自分类Dev

将两个方程应用于一个数组

来自分类Dev

将 HTML 背景设置为两个三角形

来自分类Dev

如何在方程式中将变量替换为另一个方程式,然后在R中评估该表达式?

来自分类Dev

如何在一个范围内循环一个方程?

来自分类Dev

如何为三角形的两个侧面上色?

来自分类Dev

如何在PHP代码中将两个表中的两个查询合并为一个查询?

来自分类Dev

如何沿三维数组的最后两个轴将下三角形设置为零?

来自分类Dev

三次方程的Python / Sympy三角解

来自分类Dev

如何在表格单元的右下角添加一个绿色的小三角形?

来自分类Dev

您将如何在C中以递归方式生成一个Sierpinski三角形

来自分类Dev

如何在表格单元的右下角添加一个绿色的小三角形?

来自分类Dev

如何在xml drawable android中绘制一个矩形内端三角形形状?

来自分类Dev

如何在一个Laravel View表单中扩展两个部分?

Related 相关文章

  1. 1

    Sympy-从三角方程中得到了两个解,我期望只有一个

  2. 2

    Sympy无法解决此三角方程

  3. 3

    如何在Python中求解三角方程组的非线性系统(MATLAB可以轻松解决)

  4. 4

    极大多重三角方程

  5. 5

    如何用Java解决这组非线性三角方程?

  6. 6

    如何在javafx中一起“添加”两个三角形网格?

  7. 7

    我的程序如何从一个输入字段计算两个方程?

  8. 8

    如何在图像旁边创建两个三角形?

  9. 9

    如何在MATLAB中用两个变量解方程

  10. 10

    Matlab:用两个未知参数求解指数方程

  11. 11

    如何在Jena中将一个RDF模型分离为两个模型?

  12. 12

    如何在jQuery中将两个DOM元素分组为一个

  13. 13

    三角方程不适用于输入变量

  14. 14

    如何在Python中使用一个具有指数和对数函数的变量求解方程?

  15. 15

    MS-Word 方程编辑器:如何在其底数的左侧添加一个指数

  16. 16

    如何使用三个点和两个向量计算平面方程?

  17. 17

    将两个方程应用于一个数组

  18. 18

    将 HTML 背景设置为两个三角形

  19. 19

    如何在方程式中将变量替换为另一个方程式,然后在R中评估该表达式?

  20. 20

    如何在一个范围内循环一个方程?

  21. 21

    如何为三角形的两个侧面上色?

  22. 22

    如何在PHP代码中将两个表中的两个查询合并为一个查询?

  23. 23

    如何沿三维数组的最后两个轴将下三角形设置为零?

  24. 24

    三次方程的Python / Sympy三角解

  25. 25

    如何在表格单元的右下角添加一个绿色的小三角形?

  26. 26

    您将如何在C中以递归方式生成一个Sierpinski三角形

  27. 27

    如何在表格单元的右下角添加一个绿色的小三角形?

  28. 28

    如何在xml drawable android中绘制一个矩形内端三角形形状?

  29. 29

    如何在一个Laravel View表单中扩展两个部分?

热门标签

归档