[SciPy-dev] Tri-diagonal LAPACK Routines - Shall I interface them?
Simon Clift
ssclift at gmail.com
Fri Dec 4 19:52:37 EST 2009
On Wednesday 02 December 2009 15:48:53 David Warde-Farley wrote:
> On 2-Dec-09, at 3:43 AM, Benny Malengier wrote:
> > would be a type of sparse matrix one can manipulate. T
> Note that converting to CSR and then adding elements would probably be
> an inefficient way to do it.
Yes, a tridiagonal matrix usually arises from 1D problems and finite
differences for advection diffusion problems (which I need to solve). Usually
those kind of Newtonian problems are positive definite so you can LU factorize
without pivoting. My problem is particularly well conditioned, so I'm
interested in that, done at top speed.
Banded usually arises from 2D,3D finite differences on regular grids. That
structure lends itself to multiplying out bands using vector routines. That
can be particularly efficient when you are building linear systems where the
coefficients are changing or non-linear.
CSR is most useful on irregular grids, as already noted.
Each has got its use and changing formats, especially if the problems are
large and time is of the essence, is usually a bad idea.
--
1129 Ibbetson Lane
Mississauga, Ontario
L5C 1K9 Canada
More information about the SciPy-Dev
mailing list