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

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

[Octave-bug-tracker] [bug #59630] null should respect dimension of empty


From: Kai Torben Ohlhus
Subject: [Octave-bug-tracker] [bug #59630] null should respect dimension of empty matrices
Date: Mon, 7 Dec 2020 03:20:46 -0500 (EST)
User-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36

URL:
  <https://savannah.gnu.org/bugs/?59630>

                 Summary: null should respect dimension of empty matrices
                 Project: GNU Octave
            Submitted by: siko1056
            Submitted on: Mon 07 Dec 2020 09:20:44 AM CET
                Category: Octave Function
                Severity: 1 - Wish
                Priority: 5 - Normal
              Item Group: Incorrect Result
                  Status: In Progress
             Assigned to: siko1056
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
                 Release: dev
         Discussion Lock: Any
        Operating System: Any

    _______________________________________________________

Details:

Due to a recent discussion on Discourse

https://octave.discourse.group/t/null-of-octave-4-2-2-gives-wrong-result-for-zeros-0-1/500

Indeed Octave can do better by just taking the "V" of the svd-decomposition
[U,S,V]=svd(A) in case A is empty, e.g. Matlab R2020b


>> A=[],[U,S,V]=svd(A),VV=null(A)

A = []
U = []
S = []
V = []
VV = []


>> A=zeros(0,1),[U,S,V]=svd(A),VV=null(A)

A = 0×1 empty double column vector
U = []
S = 0×1 empty double column vector
V = 1
VV = 1


>> A=zeros(0,4),[U,S,V]=svd(A),VV=null(A)

A = 0×4 empty double matrix
U = []
S = 0×4 empty double matrix
V =
     1     0     0     0
     0     1     0     0
     0     0     1     0
     0     0     0     1
VV =
     1     0     0     0
     0     1     0     0
     0     0     1     0
     0     0     0     1


>> A=zeros(1,0),[U,S,V]=svd(A),VV=null(A)

A = 1×0 empty double row vector
U = 1
S = 1×0 empty double row vector
V = []
VV = []


>> A=zeros(4,0),[U,S,V]=svd(A),VV=null(A)

A = 4×0 empty double matrix
U =
     1     0     0     0
     0     1     0     0
     0     0     1     0
     0     0     0     1
S = 4×0 empty double matrix
V = []
VV = []





    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?59630>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

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