Open
Description
I am considering a plan to port ndarray_linalg::generate::random
feature into ndarray-rand crate. It is not depends on non-Ruat code (=LAPACK), and I think it will be useful for non-linalg users.
I'd like to improve the current API in the following two points. These are partially done in ndarray-linalg implementation.
Complex support
- num-complex has
rand
feature which implDistribution<Complex> for Standard
- It will be rand 0.5 while num-complex 0.2, i.e. incompatible to ndarray-rand doesn't work with rand 0.7 #658, Upgrade to rand 0.7.0 #659 until 0.3 will be released
Default PRNG
- Most ndarray users will seek
ndarray_rand::random((n, n))
which does not need to initialize PRNG manually. - They will not need CSPRNG, but rand::thread_rng returns CSPRNG. For Monte-Calro or randomized algorithm usage, Mersenne twister will be good choice. I've re-implement SFMT in pure-Rust with std::arch.
Metadata
Metadata
Assignees
Labels
No labels