zp = ZerosAndPoles.Import.fromModel(modelName, T_linearize, fileName)
Generate a matrix of ZerosAndPoles data records by linearization of a model defined by modelName. The linearization is performed at time T_linearize of the simulation. The system is generated by using StateSpace.Import.fromModel followed by a conversion from state space to transfer function representation.
String modelName = "Modelica_LinearSystems2.Utilities.Plants.DoublePendulum";
Real T_linearize = 5;
algorithm
zp = Modelica_LinearSystems2.ZerosAndPoles.Import.fromModel(modelName, T_linearize);
// zp =[0.157605*(p + 0.706559)*(p + 12.3798)*(p^2-7.34273*p + 18.674)/( (p + 0.829834)*(p + 10.6304)*(p^2-7.27298*p + 18.1572)*(p^2 + 2.07022e-015*p + 3.38074e-015) );
0.157605*(p + 0.706559)*(p + 12.3798)*(p^2-7.34273*p + 18.674)/( (p-1.94349e-015)*(p + 0.829834)*(p + 10.6304)*(p^2-7.27298*p + 18.1572) );
-0.166305*(p^2-1.20297*p + 3.48327)/( (p + 0.829834)*(p + 10.6304)*(p^2-7.27298*p + 18.1572) );
-0.166305*p*(p^2-1.20297*p + 3.48327)/( (p + 0.829834)*(p + 10.6304)*(p^2-7.27298*p + 18.1572) );
0.283325*(p-5.23615)*(p + 0.551929)/( (p + 0.829834)*(p + 10.6304)*(p^2-7.27298*p + 18.1572) );
0.283325*p*(p-5.23615)*(p + 0.551929)/( (p + 0.829834)*(p + 10.6304)*(p^2-7.27298*p + 18.1572) )]
function fromModel
import Modelica;
import DymolaCommands;
import Simulator = DymolaCommands.SimulatorAPI;
import Modelica_LinearSystems2.StateSpace;
import Modelica_LinearSystems2.ZerosAndPoles;
input String modelName "Name of the Modelica model" annotation(
Dialog(__Dymola_translatedModel(translate = true)));
input Real T_linearize = 0 "Point in time of simulation to linearize the model";
input String fileName = "dslin" "Name of the result file";
output ZerosAndPoles zp[:, :];
end fromModel;