如何知道Complex的结果有一个或多个真正的根源

我想使用Complex来计算减去pow。

使用Math.Pow的$( – 10)^(1/3)$将获得NAN。

但是当我使用Complex.Pow时,我可以得到结果。

Complex c = Complex.Pow(-10, 1.0/3); var r = c.Magnitude;//2.1544346900318843 

但真正的结果是-2.1544346900318843。

我不知道结果是积极的,Magnitude是Abs。

我不能在所有结果中添加-1* ,因为pow可以使结果为正。

(-10)^(2/3)应得到阳性结果。

如何判断结果是否正确并确定是否存在真正的解决方案?

请参阅: https : //stackoverflow.com/a/43539898/6116637

编辑

(-10)^(2/3)

  Imaginary 4.0197338438308483 double Magnitude 4.6415888336127784 double Phase 2.0943951023931953 double Real -2.3207944168063883 double 

在此处输入图像描述

(-10)^(1/3)

  Imaginary 1.8657951723620641 double Magnitude 2.1544346900318843 double Phase 1.0471975511965976 double Real 1.0772173450159421 double 

在此处输入图像描述

如何计算,请参阅: https : //en.wikipedia.org/wiki/De_Moivre%27s_formula

在复数中,任何数字都有三个立方根。
对于负数(负实部,没有虚部),三个根就像这样排列。

  X1 / / / / X2------------0 \ \ \ \ X3 

它们都具有相同的幅度,实际上距离(0,0)== 0 + i0。
X1和X3具有相同的实部,这是X2实部的一半。
X1和X3具有与虚部相同的绝对值,具有不同的符号。
X2没有想象的部分。 X2的实部减去了幅度。

因此,X2的真实部分是负面的,不是那么大。
根据定义,这种程度对所有根都是积极的。

注意,三个根的平方也不一定具有正实部。
特别是第一个根( X1 )的平方,是数学正方向的第一个,从正实轴开始。
没有虚部的复数的平方是正的并且没有虚部,但对于具有非零虚部的复数而言则不是这样。

  X1^2 \ \ \ \ 0------------X2^2 / / / / X3^2 

没有为完整数字定义属性“肯定”。 它仅针对假想部分和实部两部分中的每一部分进行定义。
复数的大小始终> = 0。 但是,幅度不一定与复数的平方(或正方形的平方根)相同。 每个复数都有两个平方根。 由于它们相隔180°,其中一个将始终具有负实部,另一个具有正实部,或者两者都为零。

是否存在一个或多个具有零虚部和正实部的根(这似乎是在说“正”时的意思)是你必须通过检查它们来检查的东西。 你可以通过获得第一个根的所有幂1..N-1(这是X ^(1 / N)的结果)来做到这一点。 至少我不知道这个的捷径。
请注意(作为评论让我知道)计算的数字不是根,但它们具有相同的相位,因此允许判断。

为了我的安慰,这进入数学领域有点过分,但是幅度总是积极的,因为它是绝对值。 它本身的大小在复数的上下文中没有任何有价值的含义,因为它在半径为r=2.1544...的圆上包含无数个点r=2.1544...在这种情况下。

相反,您需要同时使用Magnitude和Argument(角度),或者您可以使用Real和Imaginary组件。

如果角度在-90°和90°之间(0°在Real轴上,逆时针方向),那么Real组件为正,对于0°和180°之间的角度,Imaginary组件为正

有两种典型的方式代表复数 – 以笛卡尔forms或极坐标forms。

 Cartesian Form c = real + imaginary * i Polar Form c = r * exp(i * theta) 

这里的r是幅度( c.Magnitude ),是与角度( c.Phase )一起描述复平面中的点的一个分量。

在复杂的数字集上没有定义排序。 您可以询问实际部分是否为正数。 或者,您可以询问虚部是否为正。

 c.Real > 0 c.Imaginary > 0