Questions on the manipulation of matrices in Mathematica.
30
votes
6answers
4k views
Elegant operations on matrix rows and columns
Question
The Mathematica tutorial has a section 'Basic Matrix Operations', describing operations like transpose, inverse and determinant. These operations all work on entire matrices. I am missing a ...
29
votes
6answers
2k views
Does Mathematica have advanced indexing?
I have two $M \times K$ arrays $L, T$ where I would like to set all the elements in $L$ to zero whenever the corresponding element of $T$ is greater than 15. The ...
28
votes
2answers
595 views
Tiling a square
I wondered if there was a way to automate the process of finding a way to tile a tile into a square.
The idea is to represent the tile with a matrix of 0s for blank space and 1s for filled spaces ...
27
votes
6answers
1k views
How to visualize/edit a big matrix as a table?
Is it possible to visualize/edit a big matrix as a table ? I often end up exporting/copying big tables to Excel for seeing them, but I would prefer to stay in Mathematica and have a similar view as in ...
19
votes
5answers
987 views
What is the most efficient way to add rows and columns to a matrix?
Say I have a matrix m and a vector v.
...
19
votes
1answer
914 views
Is there a way to convert an image into a Graph?
I'm trying to convert an image with several overlapping dots into a Graph. The goal is to be able to derive the Kirchhoff matrix for the randomly created "network ...
18
votes
2answers
943 views
Cycles of length N in a graph
If I have an undirected graph represented with an adjacency matrix, how can I find all the subgraphs which are a cycle of length N?
I don't really know the math nor the programming language well, so ...
17
votes
4answers
741 views
Why does MatrixForm affect calculations?
This is a really newbie question, but it has me confused. Why does this code work without // MatrixForm and doesn't work with ...
16
votes
3answers
1k views
How to symbolically do matrix “Block Inversion”?
Consider a block (partitioned) matrix
matrix = ArrayFlatten[{{a, b}, {c, d}}]
where, a, ...
16
votes
3answers
297 views
How to improve this code for exploring large matrices?
What I'm actually trying to do is to elaborate this question. I'd like to use Pane with scrollbars enabled to explore large (sparse) matrices like this one:
Here ...
15
votes
4answers
433 views
How do I generate the upper triangular indices from a list?
I have some list
{1,2,3}.
How do I generate nested pairs such that I get
{{1,2},{1,3},{2,3}}?
That is I'd like a way to ...
14
votes
3answers
648 views
Mathematica for linear algebra course?
I'm taking a linear algebra / matrix theory course and we are free to use any software we want, and will be "expected to use MATLAB or an equivalent" for homework. The professor and textbook (Applied ...
14
votes
2answers
990 views
How to enter matrices in block matrix format?
Example:
I have a matrix $R = \left( \begin{array}{cc}
A & \mathbf{t} \\
0 & 1 \end{array} \right) $ where $A$ is 3-by-3 and $\mathbf{t}$ is 3 by 1. Or in Mathematica
...
14
votes
2answers
354 views
How to form a block-diagonal Matrix from a list of matrices? [duplicate]
like this:
I know join[...] works, but it is a bit troublesome for multiple matrices.I tried DiagonalMatrix[...], but DiagonalMatrix can only form matrix from a list of elements.
14
votes
2answers
478 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 ...
13
votes
6answers
327 views
Matrix Rotation
If I have a 2 D matrix of any size say
$\left(
\begin{array}{ccc}
72 & 32 & 64 \\
18 & 8 & 16 \\
63 & 28 & 56 \\
\end{array}
\right)$
$\left(
\begin{array}{cc}
72 & ...
13
votes
3answers
437 views
Constructing a symbolic Hermitian matrix
I need to construct a symbolic Hermitian matrix like
m = {
{ n, a, b, b},
{Conjugate[a], n, b, b},
...
}
but I am not able to set ...
12
votes
4answers
282 views
Inputting a big structured matrix in Mathematica
Hi this is my first post and this is a problem that has bothered me a lot.
Suppose we have the $2012\times2012$ square matrix:
...
12
votes
4answers
308 views
How do you decompose a polynomial matrix into its matrix coefficients?
Let's say I have a matrix, $\mathbf{M}$, that is polynomially dependent on a single variable, such as
M = {{15 + a^2, a + 5 a^2}, {a - 5 a^2, 2}}
and I want to ...
12
votes
4answers
500 views
What is the fastest way to locate an image inside a larger image?
let b =
let c =
How to do:
find[c,b]
that returns the bounding box of c in b?
...
12
votes
4answers
638 views
What is the right way to rotate an array?
Suppose I have an array, not necessarily square:
a = $\left(
\begin{array}{ccc}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{array}
\right)$
I want to rotate it like one ...
12
votes
1answer
256 views
How to extract and replace submatrix of a doubly-periodic matrix?
How can I effectively extract and replace a rectangular subpart of a toroidal matrix, i.e. one where boundaries are connected at opposite ends? Since the submatrix can overhang the edges, a simple ...
11
votes
1answer
433 views
Eigenvalues and Determinant of a large matrix
Can anybody kindly explain to me what is going wrong regarding a simple problem I have? I can find the eigenvalues of a large matrix using Eigenvalues[], but when I ...
10
votes
5answers
898 views
Best way to create symmetric matrices
From time to time I need to generate symmetric matrices with relatively expensive cost of element evaluation. Most frequently these are Gram matrices where elements are $L_2$ dot products. Here are ...
10
votes
2answers
557 views
Non-commutative symbolic linear algebra
I am fairly new to Mathematica but I thought I would be a helpful tool to carry out a few simple linear algebra calculations. It seems like an easy task but I cannot figure out how to do it. For ...
10
votes
2answers
183 views
Compiling LinearSolve[] or creating a compilable procedural version of it
Earlier today I had a discussion with a representative at Premier Support about the 2 questions I've asked here over the past couple of days:
Seeking strategies to deploy a function securely ...
10
votes
2answers
189 views
How can I compute the representation matrices of a point group under given basis functions?
Take the $C_{3v}$ point group for example:
...
10
votes
1answer
349 views
Nesting Parallel processes
I just attempted to run code that had nested ParallelMap[] functions. It generates the error message:
ParallelMap::subpar: Parallel computations cannot be nested;
proceeding with sequential ...
9
votes
4answers
1k views
How can I multiply matrix and vector element wise like Numpy?
I have an $M \times K$ matrix $C$ and a length $K$ vector $v$. I want to form the $M \times K$ matrix $S$ where $s_{ij} = C_{ij}/v_j$. To do this in numpy I simply divide the two objects like this
...
9
votes
3answers
516 views
Correcting a correlation matrix to be positive semidefinite
Does Mathematica have a way to "fix" a correlation matrix that is not positive semi-definite?
I looked through the documentation and search the internet but could not find anything.
9
votes
2answers
908 views
How to get Matlab data imported with the same dimensions?
I have some Matlab image data with the following dimensions (output is from Matlab):
>> size(im)
ans =
86 86 3 45
The data imports just fine ...
9
votes
2answers
215 views
How to extract and compute on the diagonal entities of a sparse matrix very fast?
As could be seen in the following code:
...
9
votes
2answers
203 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 ...
9
votes
2answers
515 views
How to transform a 3D image by an affine transformation matrix
I have a question concerning Image Processing:
I have a stack of images, which I can compose to a 3D image using Image3D.
Additionally I have a 4x4 affine transformation matrix.
I would like to ...
9
votes
1answer
111 views
inverse of abstract matrix
If you assume the matrix $A$ is invertible, then $A^{-1} \cdot A = I$.
Is there an assumption for invertibility in Mathematica 9? How can one make the following evaluate to the identity matrix $I_3$?
...
8
votes
3answers
145 views
Declaration of abstract matrices to perform series expansion on them
I would like to have abstract matrices M and S to get out the coefficients of matrix power series however it treats M and S as numbers even if i checked that M.S - S.M != 0. I attach my code below:
...
8
votes
1answer
701 views
Bordermatrix from LaTeX
How would I create an output similar to the result produced by this LaTeX code:
...
8
votes
2answers
192 views
Correct way to generate large data sets (i.e.forward yield curve )
I would like to generate a set of forward yield curve matrix of size 1000 x 100. First I defined my SparseArray of 1000 x100:
...
8
votes
1answer
158 views
Verifying and deriving basic (block) matrix identities
How can I use the new symbolic matrix/tensor capabilities to verify matrix identities, such as
(1)
or
(2)
Even better, how can I ask Mathematica to derive expressions for X, Y, Z, and U like ...
7
votes
4answers
170 views
Generating all matrices with 1 (possibly) replaced by -1
I have a matrix $M$, whose dimension I am unsure of, which has only $\lbrace0,1\rbrace$ entries. I would like to generate all the possible matrices that result from changing (some subset) of the $1$'s ...
7
votes
2answers
156 views
Why does my matrix lose rank?
I want to check the rank of a matrix for observability, but Mathematica loses a rank if the matrix contains very large numbers.
Let's say my matrix is
...
7
votes
3answers
324 views
Add lists with unequal lengths together to create a matrix
I'm trying to create a stacked bar chart using raw data coming from a MySQL server. The result coming back from one query is:
...
7
votes
1answer
481 views
How to apply a permutation to a symmetric square matrix?
Given a symmetric square matrix, how can I apply a permutation to the rows and columns (i.e. the same permutation to both the rows and the columns) such a way that the new structure of the matrix ...
7
votes
2answers
156 views
How to generate a matrix group?
I have three $7\times 7$ matrices (with real entries, lots of zeros) and I'd like to check if they generate a finite group (or, more precisely, if the group they generate is of precise order). Would ...
7
votes
3answers
126 views
Multiply a list of matrices by a list of vectors
How does one multiply a list of matrices by a list of vectors, elementwise? For example, multiplying
...
7
votes
1answer
224 views
Efficiently Constructing Rank One Approximations for a Matrix using SVD
Suppose I have a $m\times n$ matrix $A$ (real for simplicity). Then SingularValueDecomposition[A] yields 3 matrices $U$, $\Sigma$ and $V$ such that
$A = U\Sigma ...
6
votes
5answers
194 views
Is there a built in function to obtain the back diagonal of a matrix?
Given the following matrix:
m = Array[Subscript[a, #, #2] &, {4, 4}]
how can I find the skew diagonal or anti-diagonal or back diagonal of the matrix ...
6
votes
3answers
162 views
Permanent minors
The function Minors yields the minors of a matrix. Is there a function that yields the permanent minors of a matrix?
6
votes
2answers
373 views
Entering block matrices for an arbitrary matrix size
Background: How to enter matrices in block matrix format? and the following:
I want to create
$$
f(A,t) = \left [
\begin{matrix}
A & t \\
0 & 1
\end{matrix} \right ]
$$
where $A$ ...
6
votes
1answer
240 views
How to turn a random graph into a matrix
I have constructed a random graph with Mathematica using the RandomGraph command. Now I would like to convert this graph to a matrix, but I don't know how. The ...
