pub fn dot(v: [f64; 3], m: [[f64; 3]; 3]) -> [f64; 3] {
    let mut out = [0f64; 3];
    for (i, out) in out.iter_mut().enumerate() {
        *out = v[0] * m[0][i] + v[1] * m[1][i] + v[2] * m[2][i]
    }
    out
}
/// compute the dot product between a vector and a matrix
compute the dot product between a vector and a matrix
compute the dot product between a vector and a matrix
pub fn dot(v: [f64; 3], m: [[f64; 3]; 3]) -> [f64; 3] {
    let mut out = [0f64; 3];
    for (i, out) in out.iter_mut().enumerate() {
        *out = v[0] * m[0][i] + v[1] * m[1][i] + v[2] * m[2][i]
    }
    out
}
pub fn dot ( v : [ f64 ; 3 ] , m : [ [ f64 ; 3 ] ; 3 ] ) -> [ f64 ; 3 ] { let mut out = [ 0f64 ; 3 ] ; for ( i , out ) in out . iter_mut ( ) . enumerate ( ) { * out = v [ 0 ] * m [ 0 ] [ i ] + v [ 1 ] * m [ 1 ] [ i ] + v [ 2 ] * m [ 2 ] [ i ] } out }
compute the dot product between a vector and a matrix
compute the dot product between a vector and a matrix
v
[f64; 3]
m
[[f64; 3]; 3]
v
[f64; 3]
m
[[f64; 3]; 3]