Dirac delta function
Compute derivatives and integrals of expressions involving the Dirac delta and Heaviside functions.
Find the first and second derivatives of the Heaviside function. The result is the Dirac delta function and its first derivative.
syms x diff(heaviside(x), x) diff(heaviside(x), x, x)
ans = dirac(x) ans = dirac(1, x)
Find the indefinite integral of the Dirac delta function. The
results returned by
int do not include integration
ans = sign(x)/2
Find the integral of this expression involving the Dirac delta function.
syms a int(dirac(x - a)*sin(x), x, -Inf, Inf)
ans = sin(a)
dirac takes into account
assumptions on variables.
syms x real assumeAlso(x ~= 0) dirac(x)
ans = 0
For further computations, clear the assumptions.
syms x clear
Compute the Dirac delta function of
its first three derivatives.
Use a vector
n = [0, 1, 2, 3] to specify
the order of derivatives. The
expands the scalar into a vector of the same size as
computes the result.
n = [0, 1, 2, 3]; d = dirac(n, x)
d = [ dirac(x), dirac(1, x), dirac(2, x), dirac(3, x)]
subs(d, x, 0)
ans = [ Inf, -Inf, Inf, -Inf]
To handle the infinity at 0, use numeric values instead of
symbolic values. Continue plotting all other symbolic inputs symbolically by
Inf value to
1 and plot by
x = -1:0.1:1; y = dirac(x); idx = y == Inf; % find Inf y(idx) = 1; % set Inf to finite value stem(x,y)
Input, specified as a number, symbolic number, variable, expression, or function, representing a real number. This input can also be a vector, matrix, or multidimensional array of numbers, symbolic numbers, variables, expressions, or functions.
n— Order of derivative
Order of derivative, specified as a nonnegative number, or symbolic variable, expression, or function representing a nonnegative number. This input can also be a vector, matrix, or multidimensional array of nonnegative numbers, symbolic numbers, variables, expressions, or functions.
The Dirac delta function, δ(x), has the value 0 for all x ≠ 0, and ∞ for x = 0.
For any smooth function f and a real number a,
For complex values
x with nonzero
dirac returns floating-point
results for numeric arguments that are not symbolic objects.
dirac acts element-wise on nonscalar
At least one input argument must be a scalar or both
arguments must be vectors or matrices of the same size. If one input
argument is a scalar and the other one is a vector or a matrix, then
the scalar into a vector or matrix of the same size as the other argument
with all elements equal to that scalar.