|
|
1.1 root 1: #include "complex"
2:
3: pow_zz(r,a,b)
4: dcomplex *r, *a, *b;
5: {
6: double logr, logi, x, y;
7: double log(), exp(), cos(), sin(), atan2(), cabs();
8:
9: logr = log( cabs(a->dreal, a->dimag) );
10: logi = atan2(a->dimag, a->dreal);
11:
12: x = exp( logr * b->dreal - logi * b->dimag );
13: y = logr * b->dimag + logi * b->dreal;
14:
15: r->dreal = x * cos(y);
16: r->dimag = x * sin(y);
17: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.