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
The dtrsen documentation makes it clear that lwork must not be zero:
LWORK (input) INTEGER
The dimension of the array WORK.
If JOB = 'N', LWORK >= max(1,N);
if JOB = 'E', LWORK >= max(1,M*(N-M));
if JOB = 'V' or 'B', LWORK >= max(1,2*M*(N-M)).
If LWORK = -1, then a workspace query is assumed; the routine
only calculates the optimal size of the WORK array, returns
this value as the first entry of the WORK array, and no error
message related to LWORK is issued by XERBLA.
Yet, this is what one gets for an empty matrix T unless job is "N":
Integer lwork = if job == "N" then max(1, n) else if job == "E" then n * n else 2 * n * n;
This is triggered by the following call in ModelicaTest.Math.Matrices2:
Real N[:, :] = fill(0, 0, 0);
…
Xn := Matrices.discreteRiccati(N, N, N, N);
In this case, the call to dtrsen comes via Modelica.Math.Matrices.Utilities.reorderRSF, where job is "E":
The
dtrsen
documentation makes it clear thatlwork
must not be zero:Yet, this is what one gets for an empty matrix
T
unlessjob
is"N"
:This is triggered by the following call in
ModelicaTest.Math.Matrices2
:In this case, the call to
dtrsen
comes viaModelica.Math.Matrices.Utilities.reorderRSF
, wherejob
is"E"
:The text was updated successfully, but these errors were encountered: