1 #include <../../nrnconf.h> 35 static char rcsid[] =
"zfunc.c,v 1.1 1997/12/04 17:56:05 hines Exp";
46 w.
re = real; w.
im = imag;
72 x = ( z.re >= 0.0 ) ? z.re : -z.re;
73 y = ( z.im >= 0.0 ) ? z.im : -z.im;
84 y =
ldexp(y,y_expt-x_expt);
87 return ldexp(tmp,x_expt);
112 z.
re = z1.re - z2.re;
113 z.
im = z1.im - z2.im;
126 z.
re = z1.re * z2.re - z1.im * z2.im;
127 z.
im = z1.re * z2.im + z1.im * z2.re;
141 if ( z.re == 0.0 && z.im == 0.0 )
144 x = ( z.re >= 0.0 ) ? z.re : -z.re;
145 y = ( z.im >= 0.0 ) ? z.im : -z.im;
152 x =
frexp(x,&x_expt);
153 y =
frexp(y,&y_expt);
154 y =
ldexp(y,y_expt-x_expt);
156 tmp = 1.0/(x*x + y*y);
157 z.re = z.re*tmp*
ldexp(1.0,-2*x_expt);
158 z.im = -z.im*tmp*
ldexp(1.0,-2*x_expt);
192 w.
im = ( z.im >= 0 ) ? alpha : - alpha;
complex zmake(double real, double imag)
complex zmlt(complex z1, complex z2)
complex zadd(complex z1, complex z2)
complex zdiv(complex z1, complex z2)
#define error(err_num, fn_name)
complex zsub(complex z1, complex z2)