Sha256: 2692d0b1107ee99aec4257d0728509cb133b44c7df619f4f6c354781aba818c7
Contents?: true
Size: 935 Bytes
Versions: 3
Compression:
Stored size: 935 Bytes
Contents
typedef dcomplex dtype; typedef double rtype; #define cT numo_cDComplex #define cRT numo_cDFloat #define mTM numo_mDComplexMath #include "complex_macro.h" static inline bool c_nearly_eq(dtype x, dtype y) { return c_abs(c_sub(x,y)) <= (c_abs(x)+c_abs(y))*DBL_EPSILON*2; } /* generates a random number on [0,1)-real-interval */ inline static dtype m_rand(dtype max) { dtype z; REAL(z) = genrand_res53_mix() * REAL(max); IMAG(z) = genrand_res53_mix() * IMAG(max); return z; } /* generates random numbers from the normal distribution using Box-Muller Transformation. */ inline static void m_rand_norm(dtype mu, rtype sigma, dtype *a0) { rtype x1, x2, w; do { x1 = genrand_res53_mix(); x1 = x1*2-1; x2 = genrand_res53_mix(); x2 = x2*2-1; w = x1 * x1 + x2 * x2; } while (w>=1); w = sqrt( (-2*log(w)) / w ); REAL(*a0) = x1*w * sigma + REAL(mu); IMAG(*a0) = x2*w * sigma + IMAG(mu); }
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
numo-narray-0.9.0.6 | ext/numo/narray/numo/types/dcomplex.h |
numo-narray-0.9.0.5 | ext/numo/narray/numo/types/dcomplex.h |
numo-narray-0.9.0.4 | ext/numo/narray/numo/types/dcomplex.h |