num-complex icon indicating copy to clipboard operation
num-complex copied to clipboard

Complex numbers for Rust

Results 45 num-complex issues
Sort by recently updated
recently updated
newest added

The README specifies that Rust 1.15 is supported. However, Rand 0.5 requires at least 1.22, so at least the `rand` features does break the promise from the README. Are non-default...

question

This might allow users to control which representation is used for the sake of increasing efficiency of calculations. For example, if a program needs to multiply a large amount of...

Consider to remove: ```rust pub type Complex32 = Complex; pub type Complex64 = Complex; ``` in favor of: ```rust #[allow(non_camel_case_types)] pub type c32 = Complex; #[allow(non_camel_case_types)] pub type c64 =...

Might be useful for testing, both for ourselves and for others using num-complex. (from rust-num/num#241, cc rust-num/num#293.)

enhancement
help wanted

Some operations (most notably multiplication and division) use `clone`. However, this is inefficient for types with non-trivial `Clone` impls, such as `BigInt` or `BigDecimal` (from the [bigdecimal](https://github.com/akubera/bigdecimal-rs) crate). To be...

at the moment, all the core arithmetic operations for `Complex` require the `Num` bound to be satisfied https://docs.rs/num-complex/latest/num_complex/struct.Complex.html#impl-Add-for-Complex%3CT%3E this is stronger than it needs to be, and implementing that can...

I found that in version 0.4.5 for complex numbers close to 1 the implementation of the complex logarithm `ln` looses many digits of precision: ~~~.rs use num::complex::Complex; fn main() {...

I'd propose to add a complex equivalent of the real function `ln_1p()`. This function appears in several applications that involve complex analysis.

enhancement
help wanted

Earlier versions won't see the incompatible updates at all!

as the title says: it'd be great if as many functions as possible were made `const` so that they can be used in a const environment. currently this code will...