Skip to main content

04_elementwise_ops/
04_elementwise_ops.rs

1//! Element-wise arithmetic: `+`, `-`, `*` (NOT matmul), `/`, and `-` (unary).
2//!
3//! Run: cargo run --example 04_elementwise_ops
4
5use matten::Tensor;
6
7fn main() {
8    let a = Tensor::new(vec![1.0, 2.0, 3.0, 4.0], &[2, 2]);
9    let b = Tensor::full(&[2, 2], 2.0);
10
11    println!("a        = {a:?}");
12    println!("b        = {b:?}");
13    println!("a + b    = {:?}", &a + &b);
14    println!("a - b    = {:?}", &a - &b);
15    println!("a * b    = {:?}", &a * &b); // element-wise, NOT matrix product
16    println!("a / b    = {:?}", &a / &b);
17    println!("-a       = {:?}", -&a);
18}