The response of a mass-spring system to an impulse function 

As said above the Dirac delta function could serve as a mathematical model for an external force of large magntiude that acts for only a very short period of time.. 

> delta(`+`(t, `-`(a))) = piecewise(`<`(t, a), 0, t = a, infinity, `>`(t, a), 0)
 

delta(`+`(t, `-`(a))) = piecewise(`<`(t, a), 0, t = a, infinity, `<`(a, t), 0)
 

where 

> Int(delta(`+`(t, `-`(a))), t = `+`(`-`(infinity)) .. infinity) = int(Dirac(`+`(t, `-`(a))), t = `+`(`-`(infinity)) .. infinity)
 

Int(delta(`+`(t, `-`(a))), t = `+`(`-`(infinity)) .. infinity) = 1
 

Obviously no real function can satisfy beeing zero except at a single point and have an integral equal to one. 

In Maple Dirac(`+`(t, `-`(a)))is expressed as the derivative of the Heaviside standard unit step function. 

> alias(u = H); -1
 

> Diff(u(`+`(t, `-`(a))), t) = Student:-MultivariateCalculus:-diff(u(`+`(t, `-`(a))), t)
 

Diff(H(`+`(t, `-`(a))), t) = Dirac(`+`(t, `-`(a)))
 

It is instructive to use Maple to model such an instantaneous unit impulse by starting with the function 

> delta[epsilon](`+`(t, `-`(a))) = piecewise(`<`(t, a), 0, `<`(t, `+`(a, epsilon)), `/`(1, `*`(epsilon)), 0)
 

delta[epsilon](`+`(t, `-`(a))) = piecewise(`<`(t, a), 0, `<`(t, `+`(a, epsilon)), `/`(1, `*`(epsilon)), 0)
 

> h := unapply(convert(rhs(%), H), t, a, epsilon)
 

proc (t, a, epsilon) options operator, arrow; `+`(`-`(`/`(`*`(H(`+`(t, `-`(a), `-`(epsilon))), `*`(H(`+`(t, `-`(a))))), `*`(epsilon))), `/`(`*`(H(`+`(t, `-`(a)))), `*`(epsilon))) end proc
 

A plot of the rectangular pulse for a = Pi  and epsilon = 3 gives 

> plot(h(t, Pi, 3), t = 0 .. 10, thickness = 3)
 

Plot_2d
 

The area of the rectangular pulse is equal to 1. 

> assume(`>`(epsilon, 0)); -1
 

> A := Int(h(t, a, epsilon), t = a .. `+`(a, epsilon)); -1
 

> A = value(A)
 

Int(`+`(`-`(`/`(`*`(H(`+`(t, `-`(a), `-`(epsilon))), `*`(H(`+`(t, `-`(a))))), `*`(epsilon))), `/`(`*`(H(`+`(t, `-`(a)))), `*`(epsilon))), t = a .. `+`(a, epsilon)) = 1
 

where H(t)is Heavisides unit step function. We can compare the response of a damped mass-spring system to a rectangular pulse delta[epsilon](`+`(t, `-`(a))) as proc (epsilon) options operator, arrow; 0 end proc with the response of the Dirac's delta function used by Maple.

The output of the Maple code
impulse_func (written above) animates the response to the rectangular pulse delta[epsilon](`+`(t, `-`(a))) by a linear second order differential equation with constant coefficients and with damping. 

> impulse_func(1, 3, 1, Pi, 3, 10)
 

 

 

`+`(diff(diff(y(t), t), t), `*`(3, `*`(diff(y(t), t))), y(t)) = `+`(`*`(`/`(5, 3), `*`(H(`+`(t, `-`(Pi))))), `-`(`*`(`/`(5, 3), `*`(H(`+`(t, `-`(Pi), `-`(3))))))), epsilon = 3
`+`(diff(diff(y(t), t), t), `*`(3, `*`(diff(y(t), t))), y(t)) = `+`(`*`(5, `*`(Dirac(`+`(t, `-`(Pi))))))
Plot_2d
 

Animation 

 

The behavior of the response to a rectangular pulse by a linear second order differential equation with damping as proc (epsilon) options operator, arrow; 0 end proc compared to the response to Dirac's delta function. 

 

The last animated frame shows little difference between the two responses when epsilon = .1 

> f := proc (t) options operator, arrow; `+`(`*`(5, `*`(Dirac(`+`(t, `-`(Pi)))))) end proc; -1
 

> mass_spring(1, 3, 1, 0, 5, 0, 0, 14, f, 60, scaling = constrained)
 

 

 

`+`(diff(diff(x(t), t), t), `*`(3, `*`(diff(x(t), t))), x(t)) = `+`(`*`(5, `*`(Dirac(`+`(t, `-`(Pi))))))
x(t) = `+`(`-`(`*`(`^`(5, `/`(1, 2)), `*`(H(`+`(t, `-`(Pi))), `*`(`+`(exp(`+`(`*`(`/`(1, 2), `*`(`+`(3, `*`(`^`(5, `/`(1, 2)))), `*`(`+`(`-`(t), Pi)))))), `-`(exp(`+`(`-`(`*`(`/`(1, 2), `*`(`+`(`*`(`^...
Plot_2d
 

The figure shows an animated response of the damped mass-spring system initially at rest. At time t = Pi the system is suddenly given a sharp "hammerblow" modelled by