为什么 sympy 不分离实部和虚部
Why is sympy not separating real and imaginary components
与 sympy 一起使用 python。试图只使用实部,但输出仍然是虚部。
display(re(ns.subs(T, 1150)))
display(re(ns.subs(T, 1050)))
display(re(Z.subs(T, 1150)))
display(re(Z.subs(T, 1050)))
这是因为您使用的是指数 0.5
而不是平方根。
我们来做个简单的测试:
print(re((-0.57 + I)**0.5))
# re((-0.57 + I)**0.5)
在这里,输出与您得到的类似。
让我们试试 sqrt
:
print(re(sqrt(-0.57 + I)))
# 0.539000466269862
请注意,如果您对表达式进行 lambdify(以便由 Numpy 完成计算),那么您将得到正确的结果:
f = lambdify([], re((-0.57 + I)**0.5))
f()
# 0.5390004662698615
与 sympy 一起使用 python。试图只使用实部,但输出仍然是虚部。
display(re(ns.subs(T, 1150)))
display(re(ns.subs(T, 1050)))
display(re(Z.subs(T, 1150)))
display(re(Z.subs(T, 1050)))
这是因为您使用的是指数 0.5
而不是平方根。
我们来做个简单的测试:
print(re((-0.57 + I)**0.5))
# re((-0.57 + I)**0.5)
在这里,输出与您得到的类似。
让我们试试 sqrt
:
print(re(sqrt(-0.57 + I)))
# 0.539000466269862
请注意,如果您对表达式进行 lambdify(以便由 Numpy 完成计算),那么您将得到正确的结果:
f = lambdify([], re((-0.57 + I)**0.5))
f()
# 0.5390004662698615