struct Vector
Dense vector of floating-point numbers
Source: linalg.joule:16
struct VectorDense vector of floating-point numbers
Source: linalg.joule:16
fn zeros(len: usize) -> SelfCreate a new vector of zeros
Source: linalg.joule:22
fn ones(len: usize) -> Self where T: OneCreate a new vector of ones
Source: linalg.joule:29
fn from_slice(data: &[T]) -> SelfCreate vector from slice
Source: linalg.joule:36
fn len(&self) -> usizeSource: linalg.joule:44
fn get(&self, i: usize) -> TSource: linalg.joule:50
fn set(&mut self, i: usize, value: T)Source: linalg.joule:56
fn as_slice(&self) -> &[T]Get raw slice
Source: linalg.joule:61
fn as_mut_slice(&mut self) -> &mut [T]Get mutable raw slice
Source: linalg.joule:66
struct MatrixDense matrix of floating-point numbers Stored in row-major order
Source: linalg.joule:77
fn zeros(rows: usize, cols: usize) -> SelfCreate a new matrix of zeros
Source: linalg.joule:85
fn ones(rows: usize, cols: usize) -> Self where T: OneCreate a new matrix of ones
Source: linalg.joule:94
fn eye(n: usize) -> Self where T: One + ZeroCreate identity matrix
Source: linalg.joule:103
fn from_rows(rows: &[&[T]]) -> SelfCreate matrix from nested slices
Source: linalg.joule:112
fn diag(v: &Vector<T>) -> Self where T: ZeroCreate diagonal matrix from vector
Source: linalg.joule:130
fn rows(&self) -> usizeSource: linalg.joule:141
fn cols(&self) -> usizeSource: linalg.joule:147
fn shape(&self) -> (usize, usize)Source: linalg.joule:153
fn get(&self, row: usize, col: usize) -> TSource: linalg.joule:159
fn set(&mut self, row: usize, col: usize, value: T)Source: linalg.joule:165
fn row(&self, i: usize) -> Vector<T>Get row as vector
Source: linalg.joule:170
fn col(&self, j: usize) -> Vector<T>Get column as vector
Source: linalg.joule:176
fn transpose(&self) -> SelfTranspose matrix
Source: linalg.joule:185
fn as_slice(&self) -> &[T]Get raw slice (row-major order)
Source: linalg.joule:196
fn as_mut_slice(&mut self) -> &mut [T]Get mutable raw slice
Source: linalg.joule:201
fn dot(a: &Vector<f64>, b: &Vector<f64>) -> f64Source: linalg.joule:212
fn norm(v: &Vector<f64>) -> f64Source: linalg.joule:236
fn norm_l1(v: &Vector<f64>) -> f64L1 norm (sum of absolute values)
Source: linalg.joule:250
fn norm_inf(v: &Vector<f64>) -> f64L-infinity norm (maximum absolute value)
Source: linalg.joule:259
fn normalize(v: &Vector<f64>) -> Vector<f64>Normalize vector to unit length
Source: linalg.joule:269
fn scale(v: &Vector<f64>, s: f64) -> Vector<f64>Scale vector by scalar
Source: linalg.joule:279
fn add(a: &Vector<f64>, b: &Vector<f64>) -> Vector<f64>Add two vectors
Source: linalg.joule:288
fn sub(a: &Vector<f64>, b: &Vector<f64>) -> Vector<f64>Subtract two vectors
Source: linalg.joule:298
fn cross(a: &Vector<f64>, b: &Vector<f64>) -> Vector<f64>Cross product (3D vectors only)
Source: linalg.joule:308
fn matvec(a: &Matrix<f64>, x: &Vector<f64>) -> Vector<f64>Source: linalg.joule:324
fn matmul(a: &Matrix<f64>, b: &Matrix<f64>) -> Matrix<f64>Source: linalg.joule:366
fn frobenius_norm(m: &Matrix<f64>) -> f64Matrix Frobenius norm
Source: linalg.joule:413
fn trace(m: &Matrix<f64>) -> f64Trace of square matrix
Source: linalg.joule:425
fn det(m: &Matrix<f64>) -> f64Source: linalg.joule:436
fn lu_decompose(a: &Matrix<f64>) -> (Matrix<f64>, Vec<usize>, i32)LU decomposition with partial pivoting Returns (LU combined matrix, pivot indices, sign of permutation)
Source: linalg.joule:468
fn solve(a: &Matrix<f64>, b: &Vector<f64>) -> Vector<f64>Source: linalg.joule:516
fn inverse(a: &Matrix<f64>) -> Matrix<f64>Source: linalg.joule:552
fn qr_decompose(a: &Matrix<f64>) -> (Matrix<f64>, Matrix<f64>)QR decomposition Returns (Q, R) where A = QR
Source: linalg.joule:573
fn eig_symmetric(a: &Matrix<f64>) -> (Vector<f64>, Matrix<f64>)Source: linalg.joule:630
trait ZeroSource: linalg.joule:712
fn zero() -> Self;Source: linalg.joule:713
trait OneSource: linalg.joule:716
fn one() -> Self;Source: linalg.joule:717
fn clone(&self) -> SelfSource: linalg.joule:726
fn clone(&self) -> SelfSource: linalg.joule:732