31#include <gsl/gsl_math.h> 
   32#include <gsl/gsl_complex.h> 
   33#include <gsl/gsl_complex_math.h> 
   34#include <gsl/gsl_poly.h> 
   36#define SWAP(a,b) do { gsl_complex tmp = b ; b = a ; a = tmp ; } while(0) 
   47  double r4 = 1.0 / 4.0;
 
   48  double q2 = 1.0 / 2.0, 
q4 = 1.0 / 4.0, 
q8 = 1.0 / 8.0;
 
   49  double q1 = 3.0 / 8.0, 
q3 = 3.0 / 16.0;
 
   52  int k1 = 0, 
k2 = 0, mt;
 
  109  if (0.0 == 
c && 0.0 == 
d)
 
  149        double R = 
rcub / 54;
 
  151        double Q3 = Q * Q * Q;
 
  158        if (0 == 
R && 0 == Q)
 
  167            double sqrtQ = sqrt (Q);
 
  183            double sqrtQ = sqrt (Q);
 
  195            u[0] = 
norm * cos (theta / 3) - 
rc / 3;
 
  196            u[1] = 
norm * cos ((theta + 2.0 * 
M_PI) / 3) - 
rc / 3;
 
  197            u[2] = 
norm * cos ((theta - 2.0 * 
M_PI) / 3) - 
rc / 3;
 
  201            double sgnR = (
R >= 0 ? 1 : -1);
 
  202            double modR = fabs (
R);
 
  208            u[0] = A + B - 
rc / 3;
 
  209            u[1] = -0.5 * (A + B) - 
rc / 3;
 
  304          if (
u[
k1] >= 0 && 
u[
k2] >= 0)
 
  312          else if (
u[
k1] >= 0 && 
u[
k2] < 0)
 
  319          else if (
u[
k1] < 0 && 
u[
k2] >= 0)
 
  326          else if (
u[
k1] < 0 && 
u[
k2] < 0)
 
 
#define R(a, b, c, d, e, f, g, h, i)
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
int gsl_poly_complex_solve_quartic(double a, double b, double c, double d, gsl_complex *z0, gsl_complex *z1, gsl_complex *z2, gsl_complex *z3)
 
#define R2(v, w, x, y, z, i)