mathru 0.1.2

Simple mathematics library written in Rust
Documentation
# mathru

[![crate](https://img.shields.io/crates/v/mathru.svg)](https://crates.io/crates/mathru)
[![documentation](https://docs.rs/mathru/badge.svg)](https://docs.rs/mathru)
![minimum rustc 1.32.0](https://img.shields.io/badge/rustc-1.32.0-green.svg)

------------
A simple mathematics library written in Rust and supports BLAS/LAPACK.

## Implementation

This project is implemented entirely in Rust.

## Features
    - linear algebra
        - Vector
        - Matrix
            - Basic matrix operations(+,-,*)
            - Transposition
            - LU decomposition (native/lapack)
            - QR decomposition (native/lapack)
            - Hessenberg decomposition (native/lapack)
            - Singular value decomposition
            - Inverse matrix (native/lapack)
            - Determinant (native/lapack)
            - Trace
            - Eigenvalue (native/lapack)

    - complex numbers
        - Complex<f32>
        - Complex<f64>

    - special functions
        - gamma functions
        - beta functions
    - statistics
        - distributions
            - normal distribution
            - gamma distribution
            - binomial distribution
            - poisson distribution
            - exponential distribution
            - chi squared distribution
            - beta distribution
            - bernoulli distribution

    - elementary functions
        - trigonometric functions
        - hyperbolic functions
        - exponential

## Usage

Add this to your `Cargo.toml`:

```toml
[dependencies]
mathru = "0.1.2"
```

And then import the library using:
```rust
extern crate mathru;
```

Then import the modules and it is ready to be used:

``` rust
extern crate mathru;
use mathru::algebra::linear::{Matrix};

// Compute the LU decomposition of a 2x2 matrix
let a: Matrix<f64> = Matrix::new(2, 2, vec![1.0, -2.0, 3.0, -7.0]);
let l_ref: Matrix<f64> = Matrix::new(2, 2, vec![1.0, 0.0, 1.0 / 3.0, 1.0]);

let (l, u, p): (Matrix<f64>, Matrix<f64>, Matrix<f64>) = a.dec_lu();

assert_eq!(l_ref, l);
```


## Contributions

Any contribution is welcome!