Writing differential equation for plot
6 次查看(过去 30 天)
显示 更早的评论
Can anyone help me how to write differential below equation for plot
d2x/dt2 = -sign(x + dx/dt)
I tried in below way and it is failing
ode = diff(x,t,2) == -sign(x + diff(x,t));
0 个评论
采纳的回答
Ameer Hamza
2020-12-5
Try this
syms x(t)
d1x = diff(x);
d2x = diff(x,2);
ode = d2x == -sign(x + d1x);
cond = [x(0)==1 d1x(0)==0]
sol = dsolve(ode, cond)
This requires the Symbolic Math toolbox.
5 个评论
Ameer Hamza
2020-12-6
fplot() is used when you want to plot a function handle or s symbolic function. On the other hand, plot() requires x, y data points. To use the plot() function here, you will need to define an x vector and calculate the y-values yourself. fplot() take cares of all these calculations
syms x(t)
d1x = diff(x);
d2x = diff(x,2);
ode = d2x == -sign(x + d1x);
cond = [x(0)==1 d1x(0)==0];
sol = dsolve(ode, cond);
xv = linspace(-5, 5);
yv = subs(sol, t, xv);
plot(xv, yv);
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Equation Solving 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!