02_shape_and_size/
02_shape_and_size.rs1use matten::Tensor;
7
8fn main() {
9 let scalar = Tensor::scalar(1.0);
10 let vec1d = Tensor::from_vec(vec![1.0, 2.0, 3.0]);
11 let mat = Tensor::new(vec![1.0, 2.0, 3.0, 4.0, 5.0, 6.0], &[2, 3]);
12 let rank3 = Tensor::zeros(&[2, 3, 4]);
13
14 for (name, t) in [
15 ("scalar", &scalar),
16 ("vector", &vec1d),
17 ("matrix", &mat),
18 ("rank-3", &rank3),
19 ] {
20 println!(
21 "{name:6}: shape={:?} ndim={} len={} is_scalar={} is_vector={} is_matrix={}",
22 t.shape(),
23 t.ndim(),
24 t.len(),
25 t.is_scalar(),
26 t.is_vector(),
27 t.is_matrix()
28 );
29 }
30
31 println!("\nmat.get([0,1]) = {:?}", mat.get(&[0, 1])); println!("mat.get([5,0]) = {:?}", mat.get(&[5, 0])); }