Crate rugcom [] [src]

Multiple-precision complex numbers

The rugcom crate provides multiple-precision complex numbers using GNU MPC, a library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It can be helpful to refer to the documentation at the MPC page.

This crate is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This crate is one of a group of four crates:

  • rugint for arbitrary-precision integers,
  • rugrat for arbitrary-precision rational numbers,
  • rugflo for multiple-precision floating-point numbers, and
  • rugcom for multiple-precision complex numbers.

Basic use

The crate provides the Complex type, which holds a multiple-precision complex number.

Examples

extern crate rugint;
extern crate rugcom;
use rugint::Assign;
use rugcom::Complex;

fn main() {
    // Create complex number with 16 bits of precision.
    let mut com = Complex::new((16, 16));
    com.assign((1.5, 3.5));
    assert!(*com.real() == 1.5);
    assert!(*com.imag() == 3.5);
}

Structs

Complex

A multi-precision complex number. The precision has to be set during construction.

Type Definitions

Ordering2

The ordering for the real and imaginary parts of a Complex number.

Prec2

The precision for the real and imaginary parts of a Complex number.

Round2

The rounding metod the real and imaginary parts of a Complex number.