octave-maintainers
[Top][All Lists]
Advanced

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

Re: References to obsolete functions


From: Rik
Subject: Re: References to obsolete functions
Date: Sun, 27 Oct 2013 08:19:48 -0700

On 10/27/2013 01:42 AM, address@hidden wrote:
> Message: 5
> Date: Sun, 27 Oct 2013 09:42:15 +0100
> From: Andreas Weber <address@hidden>
> To: octave maintainers mailing list <address@hidden>
> Subject: removed but still mentioned betai and spchol2inv in 3.8
> Message-ID: <address@hidden>
> Content-Type: text/plain; charset=ISO-8859-15
>
> Dear maintainers, sorry for the late post.
> Following 2 functions which were removed in 3.8 but still used in the
> documentation or in error messages. I havend provided a patch yet
> because I need some help to figure out what the right way is.
>
> hg id c6891317ff27
>
> betai:
> ./scripts/statistics/tests/manova.m:37:## (Currently NOT because the
> fcdf respectively betai code is too bad.)
>
> Should we just remove the "betai" part and keep the "bad fcdf code" part?

I'm not sure how relevant this message is anymore.  The statistical
functions were overhauled by me for Octave version 3.6 and just saying
betai is bad doesn't do much for the user.  I would re-phrase to say that
the values are currently not calculated because the code has not been
written for that case.

>
> spchol2inv was removed and chol2inv now also handles sparse matrix:
> ./liboctave/numeric/SparsedbleCHOL.cc:64:
>  ("spchol2inv requires triangular matrix");
> ./liboctave/numeric/SparsedbleCHOL.cc:67:
>  (*current_liboctave_error_handler) ("spchol2inv requires square matrix");
> ./liboctave/numeric/SparseCmplxCHOL.cc:64:
>  ("spchol2inv requires triangular matrix");
> ./liboctave/numeric/SparseCmplxCHOL.cc:67:
>  (*current_liboctave_error_handler) ("spchol2inv requires square matrix");
>
> So a call to chol2inv shows an error "spchol2inv ...."
>
> octave:9> chol2inv(sparse(ones(2)))
> error: chol2inv: spchol2inv requires triangular matrix
> octave:9> chol2inv(sparse(i*ones(2)))
> error: chol2inv: spchol2inv requires triangular matrix
> octave:9> chol2inv(sparse(i*ones(2,3)))
> error: chol2inv: spchol2inv requires square matrix
> octave:9> chol2inv(sparse(ones(2,3)))
> error: chol2inv: spchol2inv requires square matrix
>
> Should we just remove "spchol2inv" or is it important for the user to
> remind him, that he called chol2inv with a sparse matrix?

We should just use chol2inv and get rid of the 'spchol2inv'.  I would do
this by re-phrasing the error message to name the input that is in error
and why it is in error.

The help string for chol2inv is

Loadable Function:  chol2inv (U)

So I would use the expression "U must be a square matrix" and the final
warning message will be "error: chol2inv: U must be a square matrix"

--Rik



reply via email to

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