use super::c64; use ndarray::prelude::*; pub fn X0() -> Array2 { array![ [ c64::new(1.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(1.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(-1.0, 0.0), c64::new(0.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(-1.0, 0.0), ] ] } pub fn X1() -> Array2 { array![ [ c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(1.0, 0.0), c64::new(0.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(1.0, 0.0), ], [ c64::new(1.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(1.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), ] ] } pub fn X2() -> Array2 { array![ [ c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, -1.0), c64::new(0.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, -1.0), ], [ c64::new(0.0, 1.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(0.0, 1.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), ] ] } pub fn X3() -> Array2 { array![ [ c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(1.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(-1.0, 0.0), c64::new(0.0, 0.0), ], [ c64::new(0.0, 0.0), c64::new(-1.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), ], [ c64::new(1.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), c64::new(0.0, 0.0), ] ] }