diff --git a/fixed_wide_vectors/src/tests/fixed_wide_traits.rs b/fixed_wide_vectors/src/tests/fixed_wide_traits.rs index a409d5e..d5389c2 100644 --- a/fixed_wide_vectors/src/tests/fixed_wide_traits.rs +++ b/fixed_wide_vectors/src/tests/fixed_wide_traits.rs @@ -1,7 +1,7 @@ use fixed_wide_traits::wide::WideMul; use fixed_wide_traits::wide::WideDot; -use crate::Vector3; +use crate::{Vector2,Vector3,Matrix3}; type Planar64=fixed_wide::types::I32F32; type Planar64Wide1=fixed_wide::types::I64F64; @@ -51,15 +51,17 @@ fn wide_vec3_length_squared(){ } #[test] -fn wide_matrix_dot_vs_vec_of_vec_dot(){ - let vv=Vector3::>::from_value_2d(Planar64::from(3)); +fn wide_vec_of_vec_dot(){ + let vv=Vector3::>::from_value_2d(Planar64::from(3)); // do the dot product of the inner vectors multiplied component wise // this lowers the rank of the data structure and is kind of a weird operation lol let vv_dot=vv.wide_dot(vv); - assert_eq!(vv_dot,crate::Vector2::from_value(Planar64Wide1::from(3i128.pow(3)))); - - //let m=Matrix3::>::from_value_2d(Planar64::from(3)); - //normal matrix product - //let m_dot=m.wide_dot(m); - //assert_eq!(m_dot,Vector3::from_value(Planar64Wide1::from(3i128.pow(3)))); + assert_eq!(vv_dot,Vector2::from_value(Planar64Wide1::from(3i128.pow(3)))); +} +#[test] +fn wide_matrix_dot(){ + let m=Matrix3::>::from_value_2d(Planar64::from(3)); + //normal matrix product + let m_dot=m.wide_dot(m); + assert_eq!(m_dot,Matrix3::>::from_value_2d(Planar64Wide1::from(3i128.pow(2)))); }