Problems with the Impulse Response - Part III: The Resolution
Thank you, Mariusz and Marcos. Perhaps Devendra Kapadia, the head of the Calculus and Algebra Group at Wolfram, if I recall correctly, could tell us why they defined the Heaviside function the way they did, i.e., why they left this function undefined at zero.
The Two Solutions of a Model Impulse Response Problem
Recall our model impulse response problem and the two ways we tried to solve it:
The Solution Popular in the Signal Processing Community
Here is the solution of the model problem by the method taught by Leila and Mariusz:
In[]:=
sol1=DSolveValue[{y'[t]+y[t]==0,y[0]==1},y[t],t]
Out[]=
-t
The Natural/Intuitive Solution
Here is the more natural/intuitive solution with an explicit impulse forcing
should be defined for ALL non-negative times, including, rather than excluding,
t=0
, where the impulse and the initial condition are imposed. The impulse and the initial condition seem incompatible, but, actually, they are not: we should think of the DiracDelta distribution as a limit of a sequence of smooth functions that is imposed an infinitesimal amount of time right after
t=0
, or, as it is often denoted, at time t =
+
0
.
The correct natural/intuitive formulation of our model problem thus is one that includes
Note that sol2 now agrees with the solution obtained by Mariusz and Leila’s method for
t>0
. Indeed,
In[]:=
Simplify[sol2,Assumptionst>0]
Out[]=
-t
But also note that sol2 is compatible with the zero initial condition, whereas Mariusz and Leila’s solution is not--a minor nuance of no practical importance, but nevertheless an interesting nugget:
In[]:=
sol2/.t->0
Out[]=
0
One More Problem: Solution by the Two Methods
With the re-defined Heaviside function, we can now naturally and more intuitively solve all impulse problems. Take for example one involving a second-order ODE.
It seems that our discussion clearly demonstrates that the Heaviside function should not be left undefined at zero, but instead it should be defined at the argument zero to have the value zero, as specified by equation (1), which I restate here:
HeavisideTheta[0]=0
Thanks
6
10
to Mariusz and Marcos for this stimulating discussion and for putting up with me.