ZerosAndPoles.Plot.impulse(zp) or ZerosAndPoles.Plot.impulse( zp, dt, tSpan, x0, columnLabels, defaultDiagram=Modelica_LinearSystems2.Internal.DefaultDiagramTimeResponse(), device=Modelica_LinearSystems2.Utilities.Plot.Records.Device())
This function plots the impulse response of a zeros-and-poles transfer function. It is based on timeResponse.
ZerosAndPoles p = Modelica_LinearSystems2.ZerosAndPoles.p(); Modelica_LinearSystems2.ZerosAndPoles zp =(p + 1)/(p^2 + 5*p + 12); algorithm Modelica_LinearSystems2.ZerosAndPoles.Plot.impulse(zp, dt=0.02, tSpan=3) // gives:
encapsulated function impulse import Modelica_LinearSystems2; import Modelica_LinearSystems2.ZerosAndPoles; import Modelica_LinearSystems2.Utilities.Types.TimeResponse; input ZerosAndPoles zp "zeros-and-poles transfer function"; input Real dt = 0 "Sample time [s]"; input Real tSpan = 0 "Simulation time span [s]"; input Real x0[ZerosAndPoles.Analysis.denominatorDegree(zp)] = zeros(ZerosAndPoles.Analysis.denominatorDegree(zp)) "Initial state vector"; extends Modelica_LinearSystems2.Internal.PartialPlotFunction(defaultDiagram = Modelica_LinearSystems2.Internal.DefaultDiagramTimeResponse(heading = "Impulse response of zp = " + String(zp))); end impulse;