octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: deprecated functions


From: Jason Riedy
Subject: Re: deprecated functions
Date: Wed, 04 Mar 2009 17:16:02 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.91 (gnu/linux)

And John W. Eaton writes:
> Maybe I'm slow, but what is the large impact of having diag x sparse
> operations convert to full?  What does it break?  I guess I could use
> some examples.

A typical use (for me) of diag * sparse is to rescale the matrix before
solving a system with it.  Many sparse matrices from automatic systems
(e.g. optimization problem builders) are horribly ill-scaled and appear
to be ill-conditioned.  Rescaling the problem can greatly improve the
solution.  The rescaling should have negligible cost.

For a direct method, if diag * sparse is full, you're lead to a full
factorization and needlessly slow performance.  For an iterative method,
making A dense makes A*x far, far more expensive than it should be.

Yes, code *could* contain an if sparse(...) test, but why?  What is the
benefit of forcing code to care about structure when it's otherwise
agnostic?

Jason


reply via email to

[Prev in Thread] Current Thread [Next in Thread]