modelica / Modelica_LinearSystems2

Free library providing different representations of linear, time invariant differential and difference equation systems, as well as typical operations on these system descriptions.
19 stars 19 forks source link

Remove function dorgqr_x #191

Open tobolar opened 6 months ago

tobolar commented 6 months ago

Function M_LS2.Math.Matrices.LAPACK.dorgqr_x shall be replaced with Modelica.Math.Matrices.LAPACK.dormqr. But https://github.com/modelica/ModelicaStandardLibrary/issues/4388 shall be resolved first since otherwise the new function call would look like: Modelica.Math.Matrices.LAPACK.dormqr(Q, Q, tau, "L", "N"), i.e. with doubled input of Q, which is odd.

tobolar commented 6 months ago

It seems the following replacement could be possible:

(Aout, info) := Modelica.Math.Matrices.LAPACK.dormqr(A, Q, tau, "L", "N");

instead of

(Aout, info) := Modelica_LinearSystems2.Math.Matrices.LAPACK.dorgqr_x(Q, tau);

with a predecessor (in both cases)

(Q, tau, info, work) := Modelica.Math.Matrices.LAPACK.dgeqrf(A);