New answers tagged

12 votes

Time and memory required to diagonalize a 18000 by 18000 matrix using numpy in python

A 20000 by 20000 double-precision complex matrix requires $20000 \times 20000 \times 8 \times 2=6.4 \mbox{gigabytes}$ of RAM. The LAPACK routines ZHEEV that will do the work for you will store the ...
4 votes

Rank-1 correction of matrix exponential

There is work on low-rank updates of matrix functions, for instance this one: Beckermann, Bernhard; Kressner, Daniel; Schweitzer, Marcel, Low-rank updates of matrix functions, SIAM J. Matrix Anal. ...
4 votes
Accepted

How to optimize an approximated matrix multiplication?

This is a linear least squares problem if you just look at it the right way. Write $$ B = (I-aX)^{-1}, $$ then $X = \frac{1}{a}(I-B^{-1})$ and $$ (I-aX)^{-1}XA = B\frac{1}{a}(I-B^{-1})A = \frac{1}{...
3 votes

Powers of convergent DPR1 matrices in $O(d)$ time?

It is not necessary to compute $A^k$ in your case. You can do a matrix-vector product with $A=D+pq^T$ in about $5d$ operations, and so multiplying with $A^k$ via $$ A^k v = A (A (A \cdots (Av))) $$ ...
3 votes
Accepted

Faster than forward substitution?

Let's assume that the size $m$ of the individual blocks is fixed, but that the number of blocks $n$ grows. Then the one-step-at-a-time algorithm takes $O(m^3n)$ operations if you chose to invert the ...
3 votes

Faster than forward substitution?

I am not an expert in the field, but since there are no other answers at least I can suggest you a keyword to start a literature search: "parallel-in-time integration methods". This is a ...

Top 50 recent answers are included