This is complexf.h in view mode; [Download] [Up]
typedef struct { float re; float im; } complex; #define cmplx( real_part , imaginary_part , x)\ x.re = (FLOAT_PRECISION)real_part;\ x.im = (FLOAT_PRECISION)imaginary_part; #define add( x , y , z )\ z.re = x.re + y.re;\ z.im = x.im + y.im; #define subtract( x , y , z )\ z.re = x.re - y.re;\ z.im = x.im - y.im; #define multiply( x , y , z )\ z.re = x.re * y.re - x.im * y.im;\ z.im = x.re * y.im + x.im * y.re; #define conjugate( x , z )\ z.re = x.re;\ z.im = -x.im; #define absolute( x , z )\ conjugate ( x , z ); \ multiply( x , z , z );\ z=sqrt(z.re); #define prtcmplx(x)\ printf("%f %f ",x.re,x.im);
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.