You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
An error occurs in MATLAB prime_svds() with the following minimum working example:
>> A = randn(1000,1000);
>> opts = struct();
>> opts.tol = 1e-10;
>> [U,S,V,R,STAT,HIST]=primme_svds(A,10,'L',opts);
Operands to the || and && operators must be convertible to logical scalar values.
Error in primme_svds/record_history (line 635)
if stage == 0 && methodStage2 ~= 0
Error in primme_svds>@(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)record_history(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) (line 528)
@(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)record_history(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13));
Error in primme_svds (line 560)
[ierr, svals, norms, svecsl, svecsr] = primme_mex(xprimme_svds, init{1}, ...
It appears methodStage2 returns a vector and the if statement cannot parse this (MATLAB 2020a). A workaround is to change methodStage2 ~= 0 to any(methodStage2 ~= 0).
The text was updated successfully, but these errors were encountered:
Thanks, Jeremy, for reporting the issue. I was able to replicated it on MATLAB 2021.
methodStage2 should be one number, which indicates the method used for the second stage. I'll dig in and figure out why primme_mex is returning a vector of numbers instead.
An error occurs in MATLAB
prime_svds()
with the following minimum working example:It appears
methodStage2
returns a vector and theif
statement cannot parse this (MATLAB 2020a). A workaround is to changemethodStage2 ~= 0
toany(methodStage2 ~= 0)
.The text was updated successfully, but these errors were encountered: