0
Completed

Error using pinv

Hector 4 years ago updated by Pavel Holoborodko 4 years ago 8

??? Error using ==> mp>mp.pinv at 2964

DGESSD failed with exit code = 4
Error in ==> LM_Rtc at 77
s=pinv(a)*b
Under review

Dear Hector,


Thank you very much for your report.

The error means that divide&conquer algorithm didn't converge.


Could you please share the input matrix so that I can reproduce the situation?


Thank you,

Pavel.

clear all

clc
addpath('C:\........\Multiprecision Computing Toolbox\')

digito=2000;

mp.Digits(digito);

load variables.mat

s=pinv(a)*den; %a\den;


??? Error using ==> mp>mp.pinv at 2964

DGESSD failed with exit code = 3
Error in ==> productmatrix at 11

s=pinv(a)*den; %a\den;

Thank you.


Could you please send variables.mat to pavel@advanpix.com?

So that I will be able to reproduce the situation.


matrix sent to pavel@advanpix.com

Dear Hector,

Thank you for your assistance and report.

This issue has been fixed. Please use new version of toolbox - 4.0.0.11247.



??? Error using ==> mp>mp.pinv at 3009

The algorithm failed to compute a singular value.
The update process of divide and conquer failed.
Please send us the input matrix to support@advanpix.com
Error in ==> LM_Xc at 149
s=pinv(A)*den;

Dear Hector,


The A matrix contains NaN elements - and thus SVD cannot be computed:


>> mp.Digits(2000);
>> load Variables1.mat
>> isnan(A)
ans =
     0     0     0     0     0     0     0
     0     0     0     0     0     0     0
     0     0     0     1     1     0     0
     0     0     1     0     1     1     1
     0     0     1     1     0     1     1
     0     0     0     1     1     0     0
     0     0     0     1     1     0     0

Next version of toolbox will show error message if there are NaN and Inf elements in a matrix.