Exemplo n.º 1
0
 /// <summary>
 /// 复数平方根
 /// </summary>
 public static Complex Sqrt(Complex c)
 {
     double x = c.Re, y = c.Im, mod = c.GetMod();
     int sign = y < 0 ? -1 : 1;
     double re = _halfOfSqrt2 * Math.Sqrt(mod + x),
            im = _halfOfSqrt2 * sign * Math.Sqrt(mod - x);
     return new Complex(re, im);
 }