.Modelica_LinearSystems2.Utilities.Streams.readMatrixC2

Information

Syntax

C = Streams.readMatrixC2(fileName, matrixName, nx, ny);

Description

Opens the given MATLAB MAT file and returns the submatrix C of the matrix matrixName given as

C[ny, nx] = matrixName[nx+1:nx+ny, 1:nx];

Example

// Generate dslin.mat of the double pendulum example first
Modelica_LinearSystems2.Utilities.Import.linearize(
  "Modelica_LinearSystems2.Utilities.Plants.DoublePendulum", 1.0);

// Read C matrix of the linearized system
readMatrixC2("dslin.mat", "ABCD", 6, 8)
//  = 
// [0.9999999999670585, 0.0, 0.0, 0.0, 0.0, 0.0;
// 0.0, 1.0000000001008236, 0.0, 0.0, 0.0, 0.0;
// 0.0, 0.0, 1.0000000005428915, 0.0, 0.0, 0.0;
// 0.0, 0.0, 0.0, 1.000000000091112, 0.0, 0.0;
// 0.0, 0.0, 0.0, 0.0, 0.9999999999578305, 0.0;
// 0.0, 0.0, 0.0, 0.0, 0.0, 1.000000000038966;
// 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
// 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

Interface

function readMatrixC2
  extends Modelica.Icons.Function;
  input String fileName = DataDir + "abcd.mat" annotation(
    Dialog(loadSelector(filter = "MAT files (*.mat);; All files (*.*)", caption = "state space system data file")));
  input String matrixName = "ABCD" "Name of the generalized state space system matrix";
  input Integer nx "System order";
  input Integer ny "Number of outputs";
  output Real C[ny, nx] = ABCD[nx + 1:nx + ny, 1:nx];
end readMatrixC2;

Generated at 2024-11-23T19:25:52Z by OpenModelicaOpenModelica 1.24.2 using GenerateDoc.mos