class LA::Sparse::CSCMatrix(T)
- LA::Sparse::CSCMatrix(T)
- LA::Sparse::Matrix(T)
- LA::Matrix(T)
- Reference
- Object
Defined in:
matrix/sparse/cscmatrix.crConstructors
- .new(nrows, ncolumns, raw_columns : Array(Int32), raw_rows : Array(Int32), raw_values : Array(T), flags = MatrixFlags::None, *, dont_clone : Bool = false)
- .new(nrows, ncolumns, capacity = 0)
- .new(matrix : self)
- .new(matrix : CSCMatrix)
- .new(matrix : CSRMatrix)
- .new(matrix : LA::Matrix)
Class Method Summary
-
.diag(nrows, ncolumns, values)
Returns diagonal matrix of given size with diagonal elements taken from array
values
-
.diag(nrows, ncolumns, &)
Returns diagonal matrix of given size with diagonal elements equal to block value
Instance Method Summary
- #*(b : self)
- #add(m : self, *, alpha = 1, beta = 1)
- #as_csr
- #clear
-
#conjtranspose
Returns conjurgate transposed matrix
-
#each_index(*, all = false, &)
Yields every index
-
#each_with_index(*, all = false, &)
Yields every element of matrix with corresponding row and column
-
#map_with_index(&)
Returns result of appliyng block to every element with index
-
#map_with_index!(&)
Yields each element with index and replace it with returned value
- #map_with_index_complex(&)
-
#map_with_index_f64(&)
TODO - macro magic?
- #nonzeros : Int32
- #norm(kind : MatrixNorm = MatrixNorm::Frobenius)
- #resize!(arows, acolumns)
-
#select!(& : T -> Bool)
def self.rand(ncolumns, nrows, *, nonzero_elements, rng : Random = Random::DEFAULT) def self.rand(ncolumns, nrows, *, fill_factor, rng : Random = Random::DEFAULT)
- #select_index!(& : Int32, Int32 -> Bool)
- #select_with_index(& : T, Int32, Int32 -> Bool)
- #select_with_index!(& : T, Int32, Int32 -> Bool)
-
#transpose
Returns transposed matrix
- #unsafe_fetch(i, j)
- #unsafe_set(i, j, value)
Instance methods inherited from class LA::Sparse::Matrix(T)
==(other : Sparse::Matrix(T))
==,
add(m : DenseMatrix, *, alpha = 1, beta = 1)
add,
clone
clone,
dup
dup,
flags : MatrixFlags
flags,
flags=(flags : MatrixFlags)
flags=,
ncolumns : Int32
ncolumns,
nonzeros : Int32
nonzeros,
nrows : Int32
nrows,
select(& : T -> Bool)
select,
select_index(& : Int32, Int32 -> Bool)
select_index,
to_dense
to_dense,
to_general
to_general,
tril(k = 0)
tril,
tril!(k = 0)
tril!,
triu(k = 0)
triu,
triu!(k = 0)
triu!
Instance methods inherited from class LA::Matrix(T)
*(k : Number)*(k : Complex)
*(m : Matrix(T)) *, **(other : Int) **, +(k : Number)
+(k : Complex)
+(m : Matrix(T)) +, -(k : Number | Complex)
-(m : Matrix(T))
- -, /(k : Number | Complex) /, ==(other) ==, [](i : Int32, j : Int32)
[](arows : Range(Int32 | Nil, Int32 | Nil), acolumns : Range(Int32 | Nil, Int32 | Nil))
[](row : Int32, acolumns : Range(Int32 | Nil, Int32 | Nil))
[](arows : Range(Int32 | Nil, Int32 | Nil), column : Int32) [], []=(i : Int32, j : Int32, value)
[]=(arows : Range(Int32, Int32), acolumns : Range(Int32, Int32), value)
[]=(row : Int32, acolumns : Range(Int32, Int32), value)
[]=(nrows : Range(Int32, Int32), column : Int32, value) []=, add(m : Matrix, *, alpha = 1, beta = 1) add, add!(k : Number, m : Matrix) add!, almost_eq(other : Matrix(T), eps)
almost_eq(other : Matrix(T)) almost_eq, assume!(flag : MatrixFlags, value : Bool = true) assume!, balance(*, permute = true, scale = true, separate = false) balance, cat(other : Matrix(T), axis : Axis) cat, cholesky(*, lower = false, dont_clean = false) cholesky, chop(eps = self.tolerance) chop, clear_flags clear_flags, columns columns, conjt conjt, conjt! conjt!, conjtranspose conjtranspose, coshm coshm, cosm cosm, det det, detect(aflags : MatrixFlags = MatrixFlags::All, eps = tolerance) detect, detect?(aflags : MatrixFlags = MatrixFlags::All, eps = tolerance) detect?, diag(offset = 0) diag, each(*, all = false, &) each, each_index(*, all = false, &) each_index, each_lower(*, diagonal = true, all = false, &) each_lower, each_upper(*, diagonal = true, all = false, &) each_upper, each_with_index(*, all = false, &) each_with_index, eigs(*, left = false)
eigs(*, need_left : Bool, need_right : Bool)
eigs(*, b : self, need_left = false, need_right = false) eigs, eigvals eigvals, flags : MatrixFlags flags, hcat(other) hcat, hessenberg
hessenberg(*, calc_q = false) hessenberg, inspect(io) inspect, inv inv, kron(b : Matrix(T)) kron, lq lq, lq_r lq_r, lu lu, lu_factor : LUMatrix(T) lu_factor, map(&) map, map!(&) map!, map_with_index(&) map_with_index, map_with_index!(&) map_with_index!, max(axis : Axis) max, min(axis : Axis) min, ncolumns : Int32 ncolumns, norm(kind : MatrixNorm = MatrixNorm::Frobenius) norm, nrows : Int32 nrows, pinv pinv, product(axis : Axis) product, ql ql, ql_r ql_r, qr(*, pivoting = false) qr, qr_r(*, pivoting = false) qr_r, qr_raw(*, pivoting = false) qr_raw, qz(b : self) qz, reduce(axis : Axis, initial, &) reduce, repmat(arows, acolumns) repmat, rows rows, rq rq, rq_r rq_r, save_csv(filename) save_csv, scale!(k : Number | Complex) scale!, schur schur, shape shape, shape_str shape_str, sinhm sinhm, sinm sinm, size : Tuple(Int32, Int32) size, solve(b : self)
solve(b : GeneralMatrix(T), *, overwrite_b = false) solve, square? square?, sum(axis : Axis) sum, svd svd, svdvals svdvals, t t, t! t!, tanhm tanhm, tanm tanm, to_custom(io, prefix, columns_separator, rows_separator, postfix)
to_custom(prefix, columns_separator, rows_separator, postfix) to_custom, to_general to_general, to_imag to_imag, to_matlab(io)
to_matlab to_matlab, to_real to_real, to_s(io) to_s, to_unsafe to_unsafe, tolerance tolerance, trace trace, transpose transpose, tril(k = 0) tril, tril!(k = 0) tril!, triu(k = 0) triu, triu!(k = 0) triu!, vcat(other) vcat
Class methods inherited from class LA::Matrix(T)
arange(start_val : T, end_val : T, delta = 1.0)
arange,
block_diag(*args)
block_diag,
circulant(c)
circulant,
column(values)
column,
companion(a)
companion,
dft(n, scale : DFTScale = DFTScale::None)
dft,
diag(nrows, ncolumns, value : Number | Complex)diag(nrows, ncolumns, values)
diag(values)
diag(nrows, ncolumns, &) diag, eye(n) eye, fiedler(values) fiedler, from_custom(str : String, prefix, columns_separator, rows_separator, postfix)
from_custom(io, prefix, columns_separator, rows_separator, postfix) from_custom, from_matlab(s) from_matlab, hadamard(n) hadamard, hankel(column : Indexable | Matrix, row : Indexable | Matrix | Nil = nil) hankel, helmert(n, full = false) helmert, hilbert(n) hilbert, identity(n) identity, invhilbert(n) invhilbert, invpascal(n, kind : PascalKind = PascalKind::Symmetric) invpascal, kron(a, b) kron, leslie(f, s) leslie, load_csv(filename) load_csv, ones(nrows, ncolumns) ones, pascal(n, kind : PascalKind = PascalKind::Symmetric) pascal, rand(nrows, ncolumns, rng = Random::DEFAULT) rand, repmat(a : Matrix(T), nrows, ncolumns) repmat, row(values) row, toeplitz(column : Indexable | Matrix, row : Indexable | Matrix | Nil = nil) toeplitz, tri(nrows, ncolumns, k = 0) tri, zeros(nrows, ncolumns) zeros
Macros inherited from class LA::Matrix(T)
lapack(name, *args, worksize = nil)
lapack,
lapack_util(name, worksize, *args)
lapack_util
Instance methods inherited from module Enumerable(T)
product(initial : Complex)product(initial : Complex, &) product
Constructor Detail
Class Method Detail
Returns diagonal matrix of given size with diagonal elements taken from array values
Raises if values.size > {ncolumns, nrows}.min
Returns diagonal matrix of given size with diagonal elements equal to block value
Instance Method Detail
Returns conjurgate transposed matrix
result is same as #transpose
for real matrices
Yields every index
all
argument controls whether to yield all or non-empty elements for banded\sparse matrices
Example:
m.each_index { |i, j| m[i, j] = -m[i, j] }
Yields every element of matrix with corresponding row and column
all
argument controls whether to yield all or non-empty elements for banded\sparse matrices
Example:
m.each_with_index { |v, i, j| m2[i, j] = v }
Returns result of appliyng block to every element with index
Yields each element with index and replace it with returned value
def self.rand(ncolumns, nrows, *, nonzero_elements, rng : Random = Random::DEFAULT) def self.rand(ncolumns, nrows, *, fill_factor, rng : Random = Random::DEFAULT)