to_arrayd/to_arrayd.rs
1//! Convert a `matten::Tensor` into an `ndarray::ArrayD<f64>`.
2//!
3//! Run:
4//! cargo run -p matten-ndarray --example to_arrayd
5
6use matten::Tensor;
7use matten_ndarray::to_arrayd;
8
9fn main() {
10 let t = Tensor::new(vec![1.0, 2.0, 3.0, 4.0, 5.0, 6.0], &[2, 3]);
11 let arr = to_arrayd(&t).expect("numeric tensor converts");
12
13 println!("matten shape: {:?}", t.shape());
14 println!("ndarray shape: {:?}", arr.shape());
15 println!("ndarray[[1, 2]] = {}", arr[[1, 2]]); // row 1, col 2 -> 6.0
16 assert_eq!(arr[[1, 2]], 6.0);
17 println!("ok");
18}