encapsulated function fromMatrices2
import Modelica;
import MatricesMSL = Modelica.Math.Matrices;
import Modelica_LinearSystems2;
import Modelica_LinearSystems2.Utilities.Types.Method;
input Real A[:, size(A, 1)] annotation(
Dialog(group = "new_x = A*x + B*u; y = C*x + D*u; x_cont = x + B2*u"));
input Real B[size(A, 1), :] annotation(
Dialog(group = "new_x = A*x + B*u; y = C*x + D*u; x_cont = x + B2*u"));
input Real C[:, size(A, 1)] annotation(
Dialog(group = "new_x = A*x + B*u; y = C*x + D*u; x_cont = x + B2*u"));
input Real D[size(C, 1), size(B, 2)] annotation(
Dialog(group = "new_x = A*x + B*u; y = C*x + D*u; x_cont = x + B2*u"));
input Modelica.Units.SI.Time Ts "Sample time";
input Modelica_LinearSystems2.Utilities.Types.Method method = Modelica_LinearSystems2.Utilities.Types.Method.Trapezoidal "Discretization method";
output Modelica_LinearSystems2.WorkInProgress.DiscreteStateSpace sd(redeclare Real A[size(A, 1), size(A, 2)], redeclare Real B[size(B, 1), size(B, 2)], redeclare Real C[size(C, 1), size(C, 2)], redeclare Real D[size(D, 1), size(D, 2)], redeclare Real B2[size(B, 1), size(B, 2)]) "Discrete state space system";
end fromMatrices2;