Questions tagged [sparse-arrays]

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

Filter by
Sorted by
Tagged with
1 vote
0 answers
29 views

Method for MinimumBandwidthOrdering [closed]

MinimumBandwidthOrdering[m, Method -> "RCMD"] What method is 'RCMD' in Mathematica? Reverse Cuthill-McKee, Reduced Canonical Matrix Diagram, Restricted Minimum Column Degree, other?
  • 53
5 votes
1 answer
71 views

How could I see the memory use on sparse array and constant array matrices? What is the advantage? [duplicate]

I have a huge matrix defined using constant array function and it allocates so much memory preventing the calculation. Therefore, I would like to change the constant array matrix into sparse matrix ...
1 vote
1 answer
98 views

Efficient memory usage while building a large sparse matrix

I am sure the following problem has been solved already, but I am unable to find any solution... Any help appreciated! So I am building a pretty huge matrix (or tensor, actually) using ...
  • 73
2 votes
0 answers
56 views

Dot product of arrays that are members of the same list

Lets say I have a list of n arrays: n=3; list = Table[RandomInteger[{-10, 10}, {2, 2}], n]; I would like to calculate the matrix corresponding to: ...
7 votes
1 answer
102 views

Fast Sparse Tensor Addition

How can one do a fast sparse tensor addition? Below, I have the following code: We first generate 3 random sparse 1000x1000x1000 tensors with 10^6 entries each. Then, I want to add them. But the usual ...
2 votes
1 answer
85 views

How do I create a banded matrix using values from a given function [closed]

I would like to create a matrix were values of the function P make up the diagonals. I tried using the For loop but did not get it right. ...
4 votes
1 answer
140 views

Speeding Up Sparse Matrix Generalized Eigenvalues

I have a generalized eigenvalue problem $$ {\mathbf A}\vec v = \lambda {\mathbf B} \vec v $$ for which I am trying to find the smallest eigenvalue $\lambda$ and the associated eigenvector $\vec v$. ...
  • 263
2 votes
1 answer
97 views

Reconstruction on large sparse array

I'm struggling with a reconstruction of a large sparse array. What I'm trying to do is to rearrange a 2 dimensional array (respresenting a system matrix for a given system of equations) such that I ...
  • 23
6 votes
4 answers
917 views

Implementation of MATLAB's "numgrid" function [closed]

I am looking for an implementation of MATLAB's numgrid function, in particular the "B" mode. For example, I want to get the matrix corresponding to the ...
3 votes
3 answers
158 views

Insert a dynamic vector into a matrix

If I have the following dynamic vector Cs[NN_] := Table[{Sin[(2*i - 1) τ], Sin[(2*i - 1) τ]}, {i, 1, NN}] // Flatten The size of Cs depends on the integer ...
  • 1,307
1 vote
1 answer
77 views

Plotting multidimensional tables

I have a tridiagonal matrix created by ...
  • 749
0 votes
0 answers
39 views

Trying to map SparseArray over a defined list, the SparseArray defined with 3 subvalues i want to map the 3rd. subValue(list) over the defined list

I have a SparseArray already defined as following ...
1 vote
0 answers
53 views

Erratic behavior retrieving large data (several tens of gigabytes) that has been serialized by Mathematica

Hardware: PC with 256GB RAM OS: Windows 10 Mathematica: Version 13.0.1 One of my projects has led to the creation of a SparseArray whose ByteCount is ~ 35GB in RAM. At the time of creation the ...
  • 2,064
2 votes
1 answer
88 views

Define a function with sparsearray

I am trying to define a function using SparseArray, but the entries were defined before. How can I avoid this error? Code is: ...
1 vote
0 answers
23 views

Why does Sparsearray diagonalization by Krylov technique become slower for very large sizes?

Here is an example sparse matrix, taken from example Hamiltonian, which was a question I asked before in this forum. ...
2 votes
0 answers
23 views

Threshold on triangular SparseArray

I am confused by the behavior of Threshold on sparse UpperTringularize (and LowerTringularize...
3 votes
0 answers
74 views

Fastest Way to make rows and columns zero and corresponding (i,i) element 1 of a large Sparse Matrix

I have a 5552 by 5552 sparse matrix: ...
4 votes
3 answers
345 views

Generating signed permutation matrices

As most people (on here at least) know a permutation matrix is a square binary matrix that has exactly one entry of 1 in each row and each column and 0s elsewhere. For the $n \times n$ case there are $...
  • 557
8 votes
0 answers
127 views

Defining a SparseArray functions in Mathematica 13

I am defining a sparse array as a function of argument x, i.e. f[x_] = SparseArray[{1->x}, {3}] In Mathematica 12 this works perfectly, I can pass arguments and ...
  • 81
0 votes
0 answers
282 views

How to convert an SparseArray into a Matrix?

I have the following sparse array and I want to change it to a matrix. Could you please tell me how to do that? ...
2 votes
1 answer
85 views

How to create a 3D matrix from different blocks?

I would like to generate a $3D$ matrix of dimension $(n1\times n1\times n1)$ compose of $216$ matrix blocks $(n2\times n2\times n2)$. All 216 matrix blocks are subdivided into 4 groups, each one with ...
  • 1,238
9 votes
2 answers
181 views

SparseArray Input

How to create a SparseArray without using lists of rule in MMA? In MMA we can define a SparseArray using lists of rule ...
  • 1,786
7 votes
0 answers
52 views

Is there a way to make SparseArray distinguish between background values of different precision that are numerically equal?

To illustrate what I mean, consider the following: SparseArray[{{1} -> 1, {5} -> 1.}, Automatic, 0] // Normal {1, 0, 0, 0, 1.} As you can see, the ...
  • 19.7k
0 votes
0 answers
30 views

Refer to entry of input matrix in SparseArray

The code ...
2 votes
0 answers
136 views

Building a Matrix as a piecewise-function of the indices without for loops [closed]

I'm very new to Mathematica and this site. I've read that building matrices with For loops is slow, and I have experienced this myself on the current project. I'm trying to wrap my head around ...
4 votes
0 answers
83 views

How to efficiently build a large sparse matrix and overloading a compiled function?

I would like to construct a large sparse matrix folding from rank-4 tensor given by the following: $\mathcal{L}_{1L}^{00}(i,j)=\mathcal{L}_{1L}^{00}(m_1,m_2;M_1,M_2)$ The indices of matrix $(i,j)$ are ...
  • 445
6 votes
2 answers
293 views

Speedup the production of a sparse symmetric matrix with a dense vector

The optimization of the production of a sparse symmetric matrix with a dense vector has existed for a long time. Someone once compared the matrix operations of Mathematica with MATLAB, and then came ...
  • 141
1 vote
2 answers
107 views

How to dynamically define matrix with blocks in subdiagonals?

...
  • 445
1 vote
1 answer
133 views

Why does generating a list of elements for SparseArray crash the kernel?

I am trying to create a sparse matrix by the SparseArray command. For a set of index pairs $(i,j)$ I want to calculate the $A_{i,j}$ element and then use this ...
2 votes
0 answers
49 views

Implementing array with partial cyclic data?

I'd like to construct an array where some columns are cyclic. As an illustrative example, take Table[Mod[k, 2^i], {k, 2^10}, {i, 0, 10}] //Grid, where the vast ...
  • 753
2 votes
1 answer
278 views

Diagonal matrix command in Mathematica

How to find the corresponding Mathematica commands for diagonal matrix operation in Matlab, e.g. AA=rand(3,3); Step 1.) finding the diagonal elements, and export ...
  • 1,786
3 votes
1 answer
103 views

How to write correctly some arguments in SparseArray

I am struggling to put an argument in SparseArray. Let's consider the following example ...
1 vote
0 answers
62 views

Parallelizing construction of sparsearray

I'm constructing sparse arrays where blocks of each array are results of the integral defined in integralList ...
1 vote
2 answers
139 views

Improving large array manipulation

I am doing an iterative program, which uses large arrays/vectors and where the output of one round is used as an input for the next steps but works slowly when dimensions are bigger. In brief, we ...
0 votes
0 answers
59 views

sparse matrix multiplication

Say I have a sparse matrix $M$ with $\sim 50.000 .000$ non zero elements. What is the fastest way to make operations such as : $$M^k X$$ where $X$ is a given vector. Is the operation $MX$ ...
  • 912
1 vote
1 answer
59 views

Fastest way to convert two associations into a sparse matrix

I have two association $N$ and $C$ $N$ has this form : $N=<|x_1\rightarrow \{x_{1,1},...x_{1,p_1}\},x_2\rightarrow \{x_{2,1},...x_{2,p_2}\}...,x_D\rightarrow \{x_{D1},...x_{Dp_D}\} |>$ $C$ has ...
  • 912
9 votes
1 answer
185 views

Efficiently populate a Sparsearray for a set of rules for a constrained basis

I want to populate quite a large SparseArray(10^6 x10^6) efficiently. It is basically a spin system Hamiltonian with a constrained Hilbert space. Unlike the examples I have looked at in this forum ...
1 vote
0 answers
88 views

Fast definition of sparse tensor

I'm defining a sparse array through ...
  • 479
1 vote
1 answer
84 views

Lowest Eigenvalue of a large sparse matrix without choking up the RAM (Corrected) [closed]

I am trying to find the lowest eigenvalue of a large sparse matrix of dimension N (=$3^n$, where n is number of particles in system ) using ...
4 votes
1 answer
156 views

Memory leak when creating a SparseArray

Problem: I have a list e={u,v,w} and wish to construct a sparse matrix with entries {u[i],v[i]}->w[i]. Note that the same ...
  • 1,105
2 votes
0 answers
150 views

What is the fastest way to get the lowest eigenvalue and corresponding eigenstate in Mathematica?

I tried to use the Arnoldi method to get the smallest eigenvalue and corresponding eigenstate for large matrix. However, Arnoldi did not give me the desired result: ...
  • 657
6 votes
1 answer
215 views

Efficient construction of a SparseArray from LIL (list of lists of column entries)

In Python scipy.sparse, there are methods to convert between CSR, CSC, LIL, DOK, etc. implementations of a sparse matrix. What is the most efficient way in Mathematica to construct a ...
  • 1,105
4 votes
0 answers
153 views

Insufficient memory problem in Mathematica

I am trying to initialize a 48600 x 48600 packed array from a sparse matrix and a diagonal matrix in Mathematica 8. If S1 is a sparsearray of that size then and S2 is list of 48600 length, then I am ...
4 votes
2 answers
129 views

How to efficiently upsample a greyscale image to generate a representative binary image

I want to create binary images by upsampling a series of greyscale images (192 x 144 resolution) by a factor of 10 with the new pixel values being a pseudorandom distribution of 0's & 1's based on ...
  • 3,643
4 votes
2 answers
216 views

Creating a block matrix from arrays of blocks

I am trying to generate a matrix from square blocks. Effectively, I have a $n×n$ matrix polynomial $P(l)$, the $qth$ derivative of $P(l)$ with respect to $l$, which is denoted by $P^{(q)} (l)$, and a ...
  • 51
5 votes
2 answers
214 views

Permute association key and generate a sparse array

Imagine having an Association Av = <|{1, 4, 2, 3} -> a, {2, 4, 2, 4} -> b|> It can be much longer. I am searching ...
  • 16.7k
0 votes
1 answer
72 views

How can I define a function using ArrayFlatten without using SetDelayed?

I created a matrix F2 using SparseArray and ArrayFlatten as follows: ...
0 votes
0 answers
61 views

Seeming inconsistencies with "Eigenfunction" [duplicate]

I am working on a problem which involves calculating the spectrum of a family of 2970x2970 Hermitian matrices. I have done similar things with Mathematica in the past, but this time there is an odd, ...
  • 647
-1 votes
1 answer
66 views

Construct a matrix from blocks of matrices [closed]

I am trying to find eigen values of a matrix system where entries of the matrix are also matrix. This is how my matrix looks: $$ M=\begin{bmatrix} H[j,j] & T[j,j+1] & 0 &0 &....
2 votes
2 answers
161 views

Elegant way to construct a matrix with symbolic entries

I would like to construct a matrix $G$ composed of block matrices $G^{(i)}$ as defined entry-wise below stacked vertically as $$G = \begin{bmatrix} G^{(1)} \\ G^{(2)} \\ \vdots \\ G^{(i)} \\ \vdots \\ ...
  • 179

1
2 3 4 5
7