.Modelica_LinearSystems2.TransferFunction.Analysis.initialResponse

Information

Syntax

(y, t, x) = TransferFunction.Analysis.initialResponse(tf, dt, tSpan, x0)

Description

This function calculates the time response of a state space system for given initial condition and zero inputs. The state space system is transformed to a appropriate discrete state space system and, starting at x(t=0)=0 and y(t=0)=C*x0 + D*u0, the outputs y and x are calculated for each time step t=k*dt.

TransferFunction.Analysis.initialResponse(x0,tf, dt, tSpan)

gives the same result as

TransferFunction.Analysis.timeResponse(tf, dt, tSpan, response=Types.TimeResponse.Initial, x0=x0).

Example

  TransferFunction s = Modelica_LinearSystems2.TransferFunction.s();
  Modelica_LinearSystems2.TransferFunction tf=1/(s^2+s+1);

  Real Ts=0.1;
  Real tSpan= 0.4;
  Real x0[2] = {1,1};

  Real y[5,1,1];
  Real t[5];
  Real x[5,1,1]

algorithm
  (y,t,x):=TransferFunction.Analysis.initialResponse(x0,tf,Ts,tSpan);
//  y[:,1,1]={1, 1.0903, 1.1616, 1.2151, 1.252}
//         t={0, 0.1, 0.2, 0.3, 0.4}
//  x[:,1,1]={1, 1.0903, 1.1616, 1.2151, 1.252}

See also

TransferFunction.Analysis.timeResponse

Interface

encapsulated function initialResponse
  import Modelica;
  import Modelica_LinearSystems2;
  import Modelica_LinearSystems2.TransferFunction;
  input Real x0[:] = fill(0, 0) "Initial state vector";
  extends Modelica_LinearSystems2.Internal.timeResponseMask2_tf;
end initialResponse;

Generated at 2024-04-23T18:15:56Z by OpenModelicaOpenModelica 1.22.3 using GenerateDoc.mos