[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: permutations of matrix to triangular form?
From: |
David Bateman |
Subject: |
Re: permutations of matrix to triangular form? |
Date: |
Mon, 13 Dec 2004 10:37:29 +0100 |
User-agent: |
Mutt/1.4.1i |
> >
> > E = set(E, 'solver', 'cholesky');
> > V= E\I;
>
> This is basically what I was suggesting.
Yes, but my question was, isn't
V = mldivide (E, I, 'cholesky')
simpler, as you can't seperate the set of the solver type from the solve
itself....
> While I know that this isn't the point of what you're currently
> thinking of, it seems to me that the ability to add this kind
> of information to matrices is powerful.
>
> For example, one thing I would love to be able to do, is have a matrix
> object which would allow arbitrary pieces of cached computations to be
> tacked onto it. My current code tends to keep this information in
> global variables - not the cleanest solution.
It seems to me that a better way of attacking this would be to have
classes and define your type as a sparse, with a string to select
the solver type. You can then overload the operators \ and / with
some selection code in it. With that capability, you'd have what
you want..
> I realize I haven't carefully looked at your new sparse code yet.
> I hope to do that this week.
I'm not going to touch this code in the next few weeks as I'm on
vacation. So it won't change in the next few weeks... However, I
checked-in last night most of the polymorphic solver code, including
diagonal, permuted diagonal, upper/lower triangular and banded
solvers. Its missing permuted upper/lower triangular, and cholesky
solvers still, as well as the QR solvers that were always missing.
I haven't benchmarked the code yet, but I've included test cases that
fully exercises this code. This should be capable of replacing Paul's
tri-diagonal and the SymBand stuff in octave-forge in the long run.
In any case, it would be interesting to have some benchmarking of the
special casing of the solver to see how it compares... The
spparms("bandden") option can be used to change between the banded
and the UMFPACK solvers if you want to look at this..
Regards
David
--
David Bateman address@hidden
Motorola CRM +33 1 69 35 48 04 (Ph)
Parc Les Algorithmes, Commune de St Aubin +33 1 69 35 77 01 (Fax)
91193 Gif-Sur-Yvette FRANCE
The information contained in this communication has been classified as:
[x] General Business Information
[ ] Motorola Internal Use Only
[ ] Motorola Confidential Proprietary