mirror of
https://github.com/rust-lang-nursery/rust-cookbook
synced 2024-11-25 13:00:21 +00:00
added invert-matrix to /science/mathematics/linear_algebra (#508)
* added invert-matrix to /science/mathematics/linear_algebra * added nalgebra as dependency * added nalgebra to dictionary * fixed link to nalgebra * Remove statistics file only includes the header
This commit is contained in:
parent
35daea8254
commit
539183c86b
6 changed files with 32 additions and 0 deletions
|
@ -51,6 +51,7 @@ toml = "0.4"
|
|||
url = "1.6"
|
||||
walkdir = "2.0"
|
||||
ansi_term = "0.11.0"
|
||||
nalgebra = "0.16.12"
|
||||
|
||||
[target.'cfg(target_os = "linux")'.dependencies]
|
||||
syslog = "4.0"
|
||||
|
|
|
@ -193,6 +193,7 @@ NaiveDate
|
|||
NaiveDateTime
|
||||
NaiveTime
|
||||
ndarray
|
||||
nalgebra
|
||||
nFun
|
||||
NotFound
|
||||
NulError
|
||||
|
|
|
@ -92,6 +92,8 @@ Keep lines sorted.
|
|||
[memmap]: https://docs.rs/memmap/
|
||||
[mime-badge]: https://badge-cache.kominick.com/crates/v/csv.svg?label=mime
|
||||
[mime]: https://docs.rs/mime/
|
||||
[nalgebra-badge]: https://badge-cache.kominick.com/crate/nalgebra.svg?label=nalgebra
|
||||
[nalgebra]: https://docs.rs/nalgebra
|
||||
[ndarray-badge]: https://badge-cache.kominick.com/crate/ndarray.svg?label=ndarray
|
||||
[ndarray]: https://docs.rs/ndarray
|
||||
[num-badge]: https://badge-cache.kominick.com/crates/v/num.svg?label=num
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
| [Adding matrices][add-matrices] | [![ndarray-badge]][ndarray] | [![cat-science-badge]][cat-science] |
|
||||
| [Multiplying matrices][multiply-matrices] | [![ndarray-badge]][ndarray] | [![cat-science-badge]][cat-science] |
|
||||
| [Multiply a scalar with a vector with a matrix][multiply-scalar-vector-matrix] | [![ndarray-badge]][ndarray] | [![cat-science-badge]][cat-science] |
|
||||
| [Invert marix][invert-matrix] | [![nalgebra-badge]][nalgebra] | [![cat-science-badge]][cat-science] |
|
||||
| [Calculating the side length of a triangle][side-length] | [![std-badge]][std] | [![cat-science-badge]][cat-science] |
|
||||
| [Verifying tan is equal to sin divided by cos][tan-sin-cos] | [![std-badge]][std] | [![cat-science-badge]][cat-science] |
|
||||
| [Distance between two points on the Earth][latitude-longitude] | [![std-badge]][std] | [![cat-science-badge]][cat-science] |
|
||||
|
@ -22,6 +23,7 @@
|
|||
[add-matrices]: science/mathematics/linear_algebra.html#adding-matrices
|
||||
[multiply-matrices]: science/mathematics/linear_algebra.html#multiplying-matrices
|
||||
[multiply-scalar-vector-matrix]: science/mathematics/linear_algebra.html#multiply-a-scalar-with-a-vector-with-a-matrix
|
||||
[invert-matrix]: science/mathematics/linear_algebra.html#invert-matrix
|
||||
[side-length]: science/mathematics/trigonometry.html#calculating-the-side-length-of-a-triangle
|
||||
[tan-sin-cos]: science/mathematics/trigonometry.html#verifying-tan-is-equal-to-sin-divided-by-cos
|
||||
[latitude-longitude]: science/mathematics/trigonometry.html#distance-between-two-points-on-the-earth
|
||||
|
|
|
@ -5,5 +5,6 @@
|
|||
{{#include linear_algebra/add-matrices.md}}
|
||||
{{#include linear_algebra/multiply-matrices.md}}
|
||||
{{#include linear_algebra/multiply-scalar-vector-matrix.md}}
|
||||
{{#include linear_algebra/invert-matrix.md}}
|
||||
|
||||
{{#include ../../links.md}}
|
||||
|
|
25
src/science/mathematics/linear_algebra/invert-matrix.md
Normal file
25
src/science/mathematics/linear_algebra/invert-matrix.md
Normal file
|
@ -0,0 +1,25 @@
|
|||
## Invert matrix
|
||||
[![nalgebra-badge]][nalgebra] [![cat-science-badge]][cat-science]
|
||||
|
||||
Creates a 3x3 matrix with [`nalgebra::Matrix3`] and inverts it, if possible.
|
||||
|
||||
```rust
|
||||
extern crate nalgebra;
|
||||
|
||||
use nalgebra::Matrix3;
|
||||
|
||||
fn main() {
|
||||
let m1 = Matrix3::new(2.0, 1.0, 1.0, 3.0, 2.0, 1.0, 2.0, 1.0, 2.0);
|
||||
println!("m1 = {}", m1);
|
||||
match m1.try_inverse() {
|
||||
Some(inv) => {
|
||||
println!("The inverse of m1 is: {}", inv);
|
||||
}
|
||||
None => {
|
||||
println!("m1 is not invertible!");
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
[`nalgebra::Matrix3`]: https://docs.rs/nalgebra/*/nalgebra/base/type.Matrix3.html
|
Loading…
Reference in a new issue