We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 875cc9d + 256e5f7 commit cd0189bCopy full SHA for cd0189b
ndarray-linalg/src/trace.rs
@@ -4,7 +4,6 @@ use ndarray::*;
4
use std::iter::Sum;
5
6
use super::error::*;
7
-use super::layout::*;
8
use super::types::*;
9
10
pub trait Trace {
@@ -20,7 +19,13 @@ where
20
19
type Output = A;
21
22
fn trace(&self) -> Result<Self::Output> {
23
- let (n, _) = self.square_layout()?.size();
+ let n = match self.is_square() {
+ true => Ok(self.nrows()),
24
+ false => Err(LinalgError::NotSquare {
25
+ rows: self.nrows() as i32,
26
+ cols: self.ncols() as i32,
27
+ }),
28
+ }?;
29
Ok((0..n as usize).map(|i| self[(i, i)]).sum())
30
}
31
0 commit comments