bug-gsl
[Top][All Lists]
Advanced

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

[Bug-gsl] [bug #52321] gsl_linalg_bidiag_unpack2 functioan has wrong hou


From: Patrick Alken
Subject: [Bug-gsl] [bug #52321] gsl_linalg_bidiag_unpack2 functioan has wrong householder transform call for V in GSL1.8
Date: Wed, 1 Nov 2017 05:05:28 -0400 (EDT)
User-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36

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

                 Summary: gsl_linalg_bidiag_unpack2 functioan has wrong
householder transform call for V in GSL1.8
                 Project: GNU Scientific Library
            Submitted by: psa
            Submitted on: Wed 01 Nov 2017 09:05:27 AM UTC
                Category: Runtime error
                Severity: 3 - Normal
        Operating System: 
                  Status: None
             Assigned to: None
             Open/Closed: Open
                 Release: 
         Discussion Lock: Any

    _______________________________________________________

Details:

from actionafterthought =at= gmail =dot= com

Hey,

This bug might have been fixed. Since it is in GSL 1.8 source. And it is
noticed that the wrong householder transform
Function call is made for a row vector from V (see below code). And the
correct function call for highlighted line is
supposed to be:

gsl_linalg_householder_mh (ti, &h.vector, &m.matrix);

int
gsl_linalg_bidiag_unpack2 (gsl_matrix * A, 
                           gsl_vector * tau_U, 
                           gsl_vector * tau_V,
                           gsl_matrix * V)
{
…

      /* Initialize V to the identity */

      gsl_matrix_set_identity (V);

      for (i = N - 1; i > 0 && i--;)
        {
          /* Householder row transformation to accumulate V */
          gsl_vector_const_view r = gsl_matrix_const_row (A, i);
          gsl_vector_const_view h = 
            gsl_vector_const_subvector (&r.vector, i + 1, N - (i+1));
          
          double ti = gsl_vector_get (tau_V, i);
          
          gsl_matrix_view m = 
            gsl_matrix_submatrix (V, i + 1, i + 1, N-(i+1), N-(i+1));
          
          gsl_linalg_householder_hm (ti, &h.vector, &m.matrix);
        }




    _______________________________________________________

Reply to this item at:

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

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

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