1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#include "f2c.h" #ifdef KR_headers extern double log(), f__cabs(), atan2(); VOID c_log(r, z) complex *r, *z; #else #undef abs #include "math.h" extern double f__cabs(double, double); void c_log(complex *r, complex *z) #endif { double zi; r->i = atan2(zi = z->i, z->r); r->r = log( f__cabs(z->r, zi) ); }