1 | initial version |
To expand on the comment by @kcrisman, limits are sent to maxima by default. Maxima can evaluate the limit of the step function: entering
unit_step(x).limit(x=0,dir='right')
returns 1
as expected. Maxima cannot evaluate the limit of the Dirac delta: entering
dirac_delta(x).limit(x=0,dir='right')
returns an unevaluated expression. Since part of your limit cannot be evaluated by Maxima, it all comes back unevaluated.
The other option for limit evaluation is to set algorithm='sympy'
: entering
dirac_delta(x).limit(x=0,algorithm='sympy')
returns zero as expected. Unfortunately, entering
dirac_delta(x).limit(x=0,dir='right',algorithm='sympy')
gives the message
sympy does not support one-sided limits
Even more problematic, entering
unit_step(x).limit(x=0,algorithm='sympy')
gives the message
SymPy function 'unit_step' doesn't exist
so SymPy won't get the complete job done either.
Not exactly the answer you want, but hopefully it helps you understand what's happening.
2 | No.2 Revision |
To expand on the comment by @kcrisman, limits are sent to maxima Maxima by default. Maxima can evaluate the limit of the step function: entering
unit_step(x).limit(x=0,dir='right')
returns 1
as expected. Maxima cannot evaluate the limit of the Dirac delta: entering
dirac_delta(x).limit(x=0,dir='right')
returns an unevaluated expression. Since part of your limit cannot be evaluated by Maxima, it all comes back unevaluated.
The other option for limit evaluation is to set algorithm='sympy'
: entering
dirac_delta(x).limit(x=0,algorithm='sympy')
returns zero as expected. Unfortunately, entering
dirac_delta(x).limit(x=0,dir='right',algorithm='sympy')
gives the message
sympy does not support one-sided limits
Even more problematic, entering
unit_step(x).limit(x=0,algorithm='sympy')
gives the message
SymPy function 'unit_step' doesn't exist
so SymPy won't get the complete job done either.
Not exactly the answer you want, but hopefully it helps you understand what's happening.