SymPy 虚数

2024-01-08

我正在编写一些 SymPy 代码来处理带有虚数的符号表达式。

首先,我想让它把 x 和 y 作为实数并找到 x=iy 的解。所以我可以按如下方式执行此操作。

x, y = sympy.symbols("x y", real=True)  
print(sympy.solve([x-sympy.I*y]))

(SymPy 求解采用一个值列表,所有值都必须为 0。因此 x-iy=0 => x=iy)。 SymPy 会正确地告诉我

[{x: 0, y: 0}]

但是,如果我以(理论上相同的)方式执行此操作:

x, y = sympy.symbols("x y")
print(sympy.solve([x-sympy.I*y, sympy.im(y), sympy.im(x)]))

然后现在 SymPy 告诉我

[{re(y): y, re(x): I*y, im(x): 0, x: I*y, im(y): 0}]

这在技术上是正确的,但并没有为我完成一切。这只是 SymPy 中的一个限制,还是我可以通过以这种方式约束复数 x 和 y 来得到 x=y=0 ?


由于 SymPy 比复数更擅长简化实数对,因此以下策略会有所帮助:为实部/虚部设置实变量,然后从它们形成复变量。

from sympy import *
x1, x2, y1, y2 = symbols("x1 x2 y1 y2", real=True)  
x = x1 + I*x2
y = y1 + I*y2

现在 x 和 y 可以用作方程(例如您的方程)中的复变量

sol = solve([x-I*y, im(y), im(x)])
print(x.subs(sol[0]), y.subs(sol[0])) 

Output: 0 0.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SymPy 虚数 的相关文章

随机推荐

  • 如何用多字符分隔符分割字符串?

    Delphi 是否有一个函数可以用多字符分隔符而不是单个字符来分割字符串 例如 当我以这种方式使用该函数时 SplitString Whale lt gt Mammal lt gt Ocean lt gt 我会得到这 3 个字符串的结果 W
  • 如何在r中设置插入图像的颜色

    有没有办法将图像插入到 R 的绘图中并在这样做时设置其颜色 我想为给定的数据集插入轮廓 并将其设置为与我选择用于绘制相应数据点的颜色相匹配 我对一般计算机系统和 R 中的图形管理方式没有深入的了解 这可能会告诉您这个问题的答案 下面的代码将
  • [电子邮件受保护]:权限被拒绝(公钥)

    我创建了一个新的远程存储库并尝试使用git push u origin master命令将我的本地文件推送到新存储库后第一次add it and commit它 然而 它弹出这个 email protected cdn cgi l emai
  • “没有 [Int64Index , 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,\n ...... dtype='int64 ')] 位于 [列] 中”

    我目前正在尝试对 pandas 数据框执行 KFold 从 csv 读取 pandas 文件 不幸的是我收到错误 没有 Int64Index 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 n
  • Ctrl Space 在 Win 7 上的 Eclipse Helios 中不起作用

    我最近从 Dev Env 转移到 Windows 7 上的 Eclipse Helios 此后 Ctrl Space 内容辅助功能不起作用 我发现该关键选项是由语言设置使用的 我已尝试禁用它 但在 Eclipse 中仍然不起作用 任何帮助深
  • 什么是 git 守护进程?

    什么是 git 守护进程 这是默认的 git 功能吗 我试图理解这一点 以便我可以在服务器上托管一个存储库 人们可以从中推送 拉取 到目前为止 我能够将 bare 存储库克隆到 Apache 服务器上 然后使用 update server
  • Mathematica 中的词法和动态作用域:带有 Module、With 和 Block 的局部变量

    以下代码如您所料返回 14 Block expr expr 2 z f z expr f 7 但如果你改变这一点Block to a Module然后它返回2 z 除了其他变量之外 其他变量似乎并不重要expr你本地化 我以为我理解 Mat
  • jquery val() contains()

    我想知道文本区域值是否包含某个单词 这对我不起作用 var value embedModal textarea val if value contains iframe 尝试 JavaScript if value indexOf ifra
  • 如何在 VBA 中的两个打开的 Excel 实例之间进行复制?

    我想将数据从一个已打开的 Excel 实例复制到 VBA 中的另一个 Excel 实例 我试过 Option Explicit Sub copy paste Dim destination sanitized As String Dim f
  • Objective-C 设置 nil 和释放 nil 的区别

    我了解到 在dealloc you do object release but in viewDidUnload 在 UIViewController 子类中 你做self object nil 真正的区别是什么 因为self object
  • 带有 Youtube API 的 Chrome 扩展程序显示不一致的结果

    我正在构建一个 chrome 扩展来使用 youtube 的 API 它是这样工作的 内容脚本会通过 manifest json 自动注入到每个 YouTube 页面上 permissions tabs http https
  • 脚本内的 match_query ? [弹性搜索]

    我有一个相当复杂的聚合 它的复杂性是由于缺少 has parent 聚合引起的 既然如此 它是使用groovy 实现的 我遇到的唯一问题是过滤聚合中计数的文档 聚合看起来像这样 https gist github com serj p c4
  • 将自定义字段添加到课程 Moodle [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我是 Moodle 新手 我需要您的建议来创建插件 该插件将在 添加 编辑课程 页面上添加自定义字段 并将输入值存储在mdl cour
  • Angular 2 SVG 未渲染

    我创建了一个组件来渲染我的应用程序中的 SVG 图像 它们是动态加载的 但是 我的演示应用程序仅显示一个更简单的版本 http plnkr co edit g2tZXeUAMJ5zESx2EHT0 p info http plnkr co
  • 如何旋转 UIWebView 嵌入视频

    所以我正在构建的应用程序遇到了这个问题 我无法弄清楚 我的应用程序具有以下结构 UITabBarController gt UIViewController gt UIViewController 最后一个视图控制器包含一个加载整个页面的
  • 如何使用 System.DirectoryServices.Protocol 验证用户名/密码?

    首先 我不能使用活动目录 所以我不能使用System DirectoryServices直接地 这将是一台向 Novell 网络发送查询的 PC 其中仅System DirectoryServices Protocol是支持的 我非常确定我
  • 在 Swift 2 中安排特定时间的本地通知

    我浏览过这些论坛和其他网站 但不断得到一些不合逻辑的答案 本质上 我想创建一个在每个工作日的上午 6 28 中午 12 28 和下午 5 28 触发的通知 我有一些解决方案 但我真的不确定该去哪里 我的设置完全正确吗 任何帮助表示赞赏 le
  • 使用 Swift 创建随机图像生成器

    我试图让随机图像出现在屏幕上 但我是 Swift 新手 不知道如何做到这一点 打开应用程序时 我希望在图像视图中随机显示三张图像 我该怎么做呢 生成 0 到 2 之间的随机数 并通过随机生成的数字显示图像 var random arc4ra
  • ASP.NET 会话 - 使用或不使用电子商务应用程序以及最佳实践

    我在大多数 Intranet 场景中使用过 ASP NET 并且非常熟悉它 但对于诸如购物车或类似会话数据之类的东西 有多种可能性 仅举几例 1 状态服务器会话 2 SQL Server 会话 3 自定义数据库会话 4 饼干 您使用了什么以
  • SymPy 虚数

    我正在编写一些 SymPy 代码来处理带有虚数的符号表达式 首先 我想让它把 x 和 y 作为实数并找到 x iy 的解 所以我可以按如下方式执行此操作 x y sympy symbols x y real True print sympy