octave-bug-tracker
[Top][All Lists]
Advanced

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

[Octave-bug-tracker] [bug #42181] slash operator on underdetermined syst


From: H. G.
Subject: [Octave-bug-tracker] [bug #42181] slash operator on underdetermined system gives "minimum norm solution" instead of "basic solution"
Date: Thu, 24 Apr 2014 07:49:38 +0000
User-agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:28.0) Gecko/20100101 Firefox/28.0

URL:
  <http://savannah.gnu.org/bugs/?42181>

                 Summary: slash operator on underdetermined system gives
"minimum norm solution" instead of "basic solution"
                 Project: GNU Octave
            Submitted by: hardy
            Submitted on: Do 24 Apr 2014 07:49:37 GMT
                Category: Octave Function
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Matlab Compatibility
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 3.8.1
        Operating System: Any

    _______________________________________________________

Details:

Here is a little script that shows the current Octave behavior (version
3.8.1):


A = [1,0;2,0;1,0]
b = [1,2]
b/A


This is an UNDERdetermined system of linear equations to be solved with the
slash operator.

Octave does what it says in the documentation, it returns a "minimum norm
solution". In this case [0.16 0.33 0.16].

Matlab returns a different result. In this case [0 0.5 0]. This is not
automatically bad, since the system is underdetermined, and therefor has many
solutions. But the Matlab result has an additional property (well documented
in its help, e.g. at
http://www.mathworks.de/de/help/matlab/math/systems-of-linear-equations.html#bt7ov7u
): Matlab returns "a basic solution, which has at most m nonzero components
for an m-by-n coefficient matrix".

And in this sense the Octave result is incompatible to Matlab. The matrix A is
a 3*2 coefficient matrix, thus a good Matlab result should contain no more
than 2 nonzero components. But the Octave result has 3 nonzero components.




    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?42181>

_______________________________________________
  Nachricht gesendet von/durch Savannah
  http://savannah.gnu.org/




reply via email to

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