Mercurial > repos > public > sbplib_julia
view ext/SbplibSparseArrayKitExt.jl @ 1709:40dffe6e2ecb feature/lazy_tensors/sparse_conversions
Add docs page
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Wed, 04 Sep 2024 23:20:28 +0200 |
parents | 8787b2f9f5f8 |
children | 7379f492c4b3 |
line wrap: on
line source
module SbplibSparseArrayKitExt using Sbplib using Sbplib.LazyTensors using SparseArrayKit using Tokens """ SparseArray(t::LazyTensor) The sparse tensor representation of `t` with range dimensions to the left and domain dimensions to the right. If `L` is a `LazyTensor` with range and domain dimension 2 and `v` a 2-tensor, then `A = SparseArray(t)` is constructed so that `∑ₖ∑ₗA[i,j,k,l]*v[k,l] == L*v`§ """ function SparseArrayKit.SparseArray(t::LazyTensor) v = ArrayToken(:v, domain_size(t)...) return Tokens._to_tensor(t*v, range_size(t), domain_size(t)) end end