comparison liboctave/numeric/EIG.cc @ 20525:ff904ae0285b

eig: Return correct solution for a pair of hermitian matrices (bug #45511) * liboctave/numeric/EIG.cc (EIG::init): Use correct form of hermitian_init. * liboctave/numeric/fEIG.cc (FloatEIG::init): Likewise. * libinterp/corefcn/eig.cc: Add %!test cases. Thanks to Marco Caliari for identifying the fix.
author Mike Miller <mtmiller@octave.org>
date Tue, 15 Sep 2015 08:48:35 -0400
parents 4197fc428c7d
children
comparison
equal deleted inserted replaced
20524:ba4088aee342 20525:ff904ae0285b
713 info 713 info
714 F77_CHAR_ARG_LEN (1) 714 F77_CHAR_ARG_LEN (1)
715 F77_CHAR_ARG_LEN (1))); 715 F77_CHAR_ARG_LEN (1)));
716 716
717 if (a.is_hermitian () && b.is_hermitian () && info == 0) 717 if (a.is_hermitian () && b.is_hermitian () && info == 0)
718 return hermitian_init (a, calc_ev); 718 return hermitian_init (a, b, calc_ev);
719 719
720 ComplexMatrix atmp = a; 720 ComplexMatrix atmp = a;
721 Complex *atmp_data = atmp.fortran_vec (); 721 Complex *atmp_data = atmp.fortran_vec ();
722 722
723 ComplexMatrix btmp = b; 723 ComplexMatrix btmp = b;