help-octave
[Top][All Lists]

## Re:

 From: David Bateman Subject: Re: Date: Tue, 10 Apr 2007 13:34:40 +0200 User-agent: Thunderbird 1.5.0.7 (X11/20060921)

```mustafa yurtkolesi wrote:
> i am using 2.1.73 because i have installed octave in my windows machine
> (i know cygwin doesnot support 2.9x version)
> can you more deeply inform me about taking the inverse of sparse matrices
> since i am dealing with  FEM  so as you can guess the matrix is sparse
> Regards
> Mustafa
>

spcholinv as you have found.

If I understood correctly, you want the solution of a linear equation
"A*x = b" where A is a matrix and x is the unknown.. The way beginners
try to solution that in octave/matlab is as "x = inv(A) * b". However,
this is a big mistake for the reasons of stability and speed.
Additionally for sparse matrices inv(A) is typically full and so you
loose big time there as well.

The right way to solve a linear equation "A*x = b" in octave/matlab is
as "x = A \ b". If you do this with a sparse matrix, then you never form
the inverse, and get the maximum advantage from the sparsity of the
matrix.. You might also want to look at the bicg function in octave-forge...

In any case if you are using sparse matrices, you are strongly advised
to use 2.9.10.. There is no cygwin binary for 2.9.10 available, and we
are waiting for a MSVC binary. In the meantime there is an experimental
binary of a 2.9.9+ release of octave built with MSVC available at

http://www.dbateman.org/octave/octave_20070126(2.9.9+)_setup.exe

Regards
D.

--
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph)
Parc Les Algorithmes, Commune de St Aubin    +33 6 72 01 06 33 (Mob)
91193 Gif-Sur-Yvette FRANCE                  +33 1 69 35 77 01 (Fax)

The information contained in this communication has been classified as: