# Tagged Questions

Questions on the construction and manipulation of sparse arrays in Mathematica, with functions like SparseArray[] and Band[].

559 views

### What are SparseArray Properties? How and when should they be used?

A strange undocumented form of SparseArray is increasingly used in answers on this site: ...
1k views

### Using the Krylov method for Solve: Speeding up a SparseArray calculation

I'm trying to implement this Total Variation Regularized Numerical Differentiation (TVDiff) code in MMA (which I found through this SO answer): essentially I want to differentiate noisy data. The full ...
1k views

### Efficient way to combine SparseArray objects?

I have several SparseArray objects, say sa11, sa12, sa21, sa22, which I would like to combine into the equivalent of {{sa11, sa12}, {sa21, sa22}}. As an example, I ...
197 views

### What are pattern sparse arrays and how do I use them?

I found a few references to something called a "pattern sparse array" that does not contain any values, only positions. What is this data structure? How and when do I use it? From the ...
202 views

### Speeding up generation of block diagonal matrix

I'm struggling with the following problem. I have $48$ square matrices (full, filled with real machine precision numbers, thus are packed, all different) of size $128$. I wolud like to place them on a ...
456 views

### Sparse Cholesky Decomposition

I am working with square matrices with a special form, which for large rank ($> 100,000$) would be best stored and manipulated as a SparseArray. I believe that ...
304 views

### Simple Matrix multiplication takes very long

Bug introduced in 10.1.0 and fixed in 10.3.0 I came across some strange behaviour during a computation involving matrices with symbolic values. It is reproduced below. Multiplying a random 30x30 ...
666 views

### How to use SparseArray in CUDA?

Sparse arrays are widely used in many scientific applications where memory and time are strictly limited. For a considerable speedup one can use CUDA. Since Mathematica 8 we can conveniently use CUDA ...
370 views

### Adding three integer sparse matrices is very slow. Adding only two is fast

Bug introduced in 9.0.0 and fixed in 10.0.0 Adding more than two sparse matrices in one step in Mathematica 9 is very slow (in fact I couldn't even wait for it to finish). Here's an example. ...
801 views

If I have a matrix of any size, say $\begin{pmatrix} 72 & 32 & 64 \\ 18 & 8 & 16 \\ 63 & 28 & 56 \\ \end{pmatrix}$ $\begin{pmatrix} 72 & 32 \\ 18 & 8 \\ 63 ... 2answers 249 views ### Bug with SparseArray selector in Pick Bug introduced in version 8 or earlier and fixed in 10.0 I have created a notebook with two cells. This is the content of the first: ... 1answer 266 views ### Why won't SparseArray let me store values with the head List? When you attempt to define a SparseArray with elements that have the head List it complains: ... 2answers 1k views ### Find the eigenvector associated with the smallest eigenvalue, not smallest in magnitude I am trying to find the eigenvector of a$20000 \times 20000$sparse matrix associated with the smallest eigenvalue. I realized that the smallest eigenvalue might be negative; for example, if the ... 2answers 600 views ### Using ReplaceAll on SparseArray I'm using SparseArray in a notebook in which I am doing complex conjugation manually, i.e. writing$\sqrt{-1}$as i and applying ... 2answers 292 views ### Temporal database reconstruction in mathematica <EDIT> after some internet research I found the database domain that deals with this kind of thing: Temporal Databases. I think my question therefore becomes how to reconstruct a temporal ... 2answers 670 views ### Speeding up construction of simple tridiagonal matrix I have the following code to construct a tridiagonal matrix: ... 1answer 3k views ### How to work around Mathematica hanging when showing a large SparseArray? Bug introduced in 9.0 and fixed in 9.0.1 In Mathematica 9, if I display any large SparseArray object in the default way (which looks something like ... 2answers 475 views ### How to interpret the FullForm of a SparseArray? SparseArrays are atomic objects, but they do have a FullForm which reveals information about them. What is the meaning of the ... 2answers 235 views ### Analytic determinant of a sparse 25x25 matrix? I would like to compute the analytic determinant of the following sparse matrix ... 2answers 432 views ### Speed up 4D matrix/array generation I have to fill a 4D array, whose entries are$\mathrm{sinc}\left[j(a-b)^2+j(c-d)^2-\phi\right]$for a fixed value of$\phi$(normally -15) and a fixed value of$j$(normally about 0.00005). The way ... 1answer 203 views ### Sporadic bugs in multidimensional SparseArray objects Udate This SparseArray[] bug is (apparently) fixed on version 10.0 ... 1answer 905 views ### Sparse convolution of sparse arrays The documentation for ListConvolve mentions that "ListConvolve works with sparse arrays", which is true. The result, however is never sparse, eg: ... 0answers 101 views ### Efficient solution of huge sparse linear system I'm trying to improve efficiency of my code in which main task is a solution to huge (~$10^4\times 10^4$) but sparse linear system $$Ax=b$$ (In fact my aim is to solve nonlinear equations$F(x)=0$, ... 0answers 226 views ### LinearSolve and Krylov Method options I need to solve a large, sparse, linear system. At some point Method -> "Multifrontal" fails and a bit later also "Pardiso" ... 4answers 243 views ### How to convert a sparse matrix to a list of sparse arrays? I have a matrix stored as a SparseArray. How can I convert it to a List of its rows, where each row is stored as a ... 2answers 278 views ### Additive SparseArray Assembly The goal is to assemble a SparseArray in an additive fashion. Let us assume we have a large List of indices (some will be ... 2answers 167 views ### Does LinearSolve know that I gave it a Sparse lower triangular matrix? Let$\mathbf L$be a nonsingular numeric (non-symbolic) large, lower triangular sparse matrix. Let$\mathbf b$be an appropriately sized vector. I want to solve$\mathbf L\mathbf x=\mathbf b$. ... 1answer 1k views ### Exporting a Large Multidimensional Sparse Array I'm trying to export a sparse array from Mathematica to share with collaborators who primarily use Matlab. The sparse array in question is 4 dimensional, (72 x 93 x 94 x 172) with ~4M non-zero ... 0answers 108 views ### Possible Bug in LinearSolveFunction with Sparse Vectors Bug introduced in 5.0 and persists through 10.4.1 LinearSolveFunction is new in 5.0 Consider the following set of equations and corresponding variables: ... 0answers 158 views ### Bug in PositiveDefiniteMatrixQ? Fixed in 10.1.0. Exists in at least 9.0.1 -- 10.0.2. This seems like a bug in PositiveDefiniteMatrixQ to me: ... 2answers 891 views ### Efficient by-element updates to SparseArrays I have a very large SparseArray called A. What is the most efficient way to update say element ... 1answer 108 views ### SparseArray output triggers “unsafe dynamic content” warning The first basic example in the documentation of SparseArray: ... 2answers 100 views ### Using Cases to pick out entries of a SparseArray I'm trying to use a SparseArray for some large homological algebra calculations. I'd like to find indices of a SparseArray ... 1answer 234 views ### Building sparse array from packed arrays Suppose I have two large packed arrays a and b, that respectively contain the position of the elements of a square matrix (i.e. ... 3answers 157 views ### Nonzero element positions of a matrix Let m={{1, 2, 0}, {4, 0, 9}}; I want to find the position of every nonzero element of the above matrix. The code ... 1answer 170 views ### Instant kernel crash when using += on SparseArray with repeated entries Bug introduced in 5.2 and fixed in 10.1.0 Not sure if this is known behavior or not, but the following two lines produce an instant kernel crash (I'm using Mathematica 10.0.1 Windows 64-bit): ... 1answer 152 views ### Possible bug: SparseArray Part assignment loses default value? fixed in 10.0.2 This sure looks like a bug to me (Mathematica 10.0.0, MacOS): ... 1answer 109 views ### Adding two SparseArrays produces zeros in the reported “NonzeroValues” When two SparseArrays are added together and new zero values are created, these new zero values are reported as "NonzeroValues". Example, produced with Mathematica version 10.2: ... 1answer 393 views ### How to create a large sparse block matrix I need to generate a very large sparse block matrix, with blocks consisting only of ones along the diagonal. I have tried several ways of doing this, but I seem to always run out of memory. The ... 0answers 185 views ### Calculating the rank of a huge sparse array By virtue of the suggestion in my previous question, I constructed the sparse matrix whose size is$518400 \times 86400$, mostly filled with$0$and$\pm 1$. Now I want to calculate its rank. Since ... 4answers 532 views ### Elegant mehod of generating this matrix? Good evening, I need to determine an elegant (as possible) method of computing an nxn matrix below (the matrix shown is just a 16x16 example). I've been toying with For loops, Tables, Bands, ... 4answers 146 views ### Add to matrix missing elements (for list of time series) This question is an extension of the 43122. I’ve looked through many interesting post (like this) but (as always) missed the direct matching. So the setting is simple: ... 1answer 193 views ### How can I efficiently ArrayFlatten a matrix of sparse matrices? I have a matrix of sparse matrices that I want to convert to a sparse block matrix. So, basically I want what ArrayFlatten does, except that I want the output to be ... 3answers 182 views ### How to populate a large sparse array efficiently I am trying to populate a large 2D sparse array and sum up all the columns at the end. I tried generating a set of rules and then generate a matrix using SparseArray or break the data into chunks but ... 1answer 233 views ### What's wrong with this code to create a matrix? Here is my code: ... 1answer 152 views ### Assigning Sequence to Part of a SparseArray (bug?) Part ▪ You can make an assignment like t[[spec]]=value to modify any part or sequence of parts in an expression. ▪ If ... 1answer 107 views ### How to relate memory usage with occupied positions of SparseArrays? What is the relation of memory usage of a SparseArray and the number of its occupied positions? Let's say you build a 100.000.000 by 10 element SparseArray. And fill the two position 1/1 and ... 1answer 214 views ### Why is Flattening a CoefficientArray so slow? I have a vector of$n$degree$n$polynomials in$(x,y,z)$, each of whose coefficients is an inhomogenous linear expression in$3 n^2$variables. I want to write down the linear equations in these$3 ...
How do I perform the following summation in mathematica? $$\Sigma_{m=1}^5 e_{ijklm}A^{mn}$$ I have the $e_{ijklm}$ tensor of rank 5 in 5 dimension as a array and $A^{mn}$ ...