Impulse Elimination
Impulse Elimination
The solution to a StateSpaceModel with a singular descriptor matrix can include differentiated inputs. When the input is discontinuous, the result can be undesirable impulses.
ssm = StateSpaceModel[{{{0, 1, 0, 0, 0}, {-1, 0, 0, 0, 0}, {0, 0, 1, 0, 0}, {0, 0, 0, 1, 0}, {0, 0, 0, 0, 1}}, {{0}, {1}, {0}, {0}, {1}}, {{-2, 0, -1, 0, 1}}, {{0}}, {{1, 0, 0, 0, 0}, {0, 1, 0, 0, 0}, {0, 0, 0, 1, 0}, {0, 0, 0, 0, 1}, {0, 0, 0, 0, 0}}}, SamplingPeriod -> None, SystemsModelLabels -> None];Simplify[StateResponse[ssm, {HeavisideTheta[t - 1]}, t] /. t -> 1]ControllableModelQ[ssm]closedloop = SystemsModelStateFeedbackConnect[ssm, {{0, 0, k, 0, 0}}]Simplify[StateResponse[closedloop, {HeavisideTheta[t - 1]}, t] /. t -> 1]