Hello,
i have for example this differential equation
ode = diff(y,x,2)+2*diff(y,x,1)+y==exp(-x)+heaviside(x-2)-dirac(x-2);
cond1 = y(0) == 0;
cond2 = Dy(0) == 0;
Τhe problem is when i solve it the result contains the fucntion sign instead of heaviside:
ySol(x) =
sign(x - 2)/2 + (x^2*exp(-x))/2 + exp(2 - x)*(sign(x - 2) + 1) - x*exp(2 - x)*(sign(x - 2)/2 + 1/2) + 1/2
Do you know how can i change the sign in the result and only have heaviside function?
Thank you

 Respuesta aceptada

Thiago Henrique Gomes Lobato
Thiago Henrique Gomes Lobato el 9 de Feb. de 2020

0 votos

The heavside function is not the same as the sign function, you can't simply change one for another. If you want to write the sign function in terms of a heavside function you can use the following relation:
Where is the heavside function.

3 comentarios

Dimitrios Adam
Dimitrios Adam el 9 de Feb. de 2020
Thank you,
but if i want to show the result with only the heaviside and not the sign can i somehow format the result ?
Thiago Henrique Gomes Lobato
Thiago Henrique Gomes Lobato el 9 de Feb. de 2020
Editada: Thiago Henrique Gomes Lobato el 9 de Feb. de 2020
Yes
syms x
Y = sign(x - 2)/2 + (x^2*exp(-x))/2 + exp(2 - x)*(sign(x - 2) + 1) - x*exp(2 - x)*(sign(x - 2)/2 + 1/2) + 1/2;
Y2 = subs(Y,sign(x-2),2*heaviside(x-2)-1) % Use subs to replace what you want to
subs(Y,5)
subs(Y2,5)
Y2 =
heaviside(x - 2) + 2*heaviside(x - 2)*exp(2 - x) + (x^2*exp(-x))/2 - x*heaviside(x - 2)*exp(2 - x)
ans =
(25*exp(-5))/2 - 3*exp(-3) + 1
ans =
(25*exp(-5))/2 - 3*exp(-3) + 1
Dimitrios Adam
Dimitrios Adam el 9 de Feb. de 2020
Thank you very much !!

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by