help-octave
[Top][All Lists]
Advanced

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

Re: NNLS function


From: Bill Denney
Subject: Re: NNLS function
Date: Tue, 14 Jun 2005 21:30:50 -0400 (EDT)

On Wed, 8 Jun 2005, Dmitri A. Sergatskov wrote:

Frank Palazzolo wrote:

However, I'm not sure if that's legal, since the comments say: "Adapted from NNLS of Mathworks, Inc.". (Unless you own Matlab?)

That said, it is an optimized version of the algorithm which is supposedly faster and more flexible than the one in MATLAB.

If it's not buried somewhere in octave already, the "right thing" is

This would be a very bad thing to do actually. That would be a
violation of Mathwork copyright. If one wants to write a nnls
and contribute it to octave, she should not even look at
this particular code, but rather get a book

Lawson and Hanson, "Solving Least Squares Problems", Prentice-Hall, 1974.

(and perhaps those two references from readme.txt)

and implement the algorithm from scratch.

It's a bit of a late follow-up, but the algorithm for NNLS is available from netlib at http://www.netlib.org/lawson-hanson/all, and there is a GPL'd C++ implementation at http://www.cs.utexas.edu/users/suvrit/work/progs/nnls.html . So, a full re-implementation shouldn't be necessary.

I personally don't have the skill to do the implementation (well, I could possibly translate the fortran to octave, but I don't know how to interface fortran to octave or how to code C++).

Bill

--
"The main rule of writing is that, if you do it with enough assurance
and confidence, you're allowed to do whatever you like. (That may be a
rule for life as well as for writing. But it's definitely true for
writing.)"  -- Neil Gaiman



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------



reply via email to

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