How to Plot a second derivative equation?
이전 댓글 표시
Hi all,
The equation I want to plot is

I've tried to gether information online and come up with the code:
clc
clear
syms x(t)
Dx = diff(x);
D2x = diff(x,2);
w = 1
dt = 1/1000;
t = 0:dt:1000*dt;
equ = D2x + (Dx)^3 + x(t)^2 *Dx + x(t) == 0;
figure
fplot(equ)
How to plot the graph with the time interval t?
Edit:

To plot the 2 equation and plot them on the same graph
Can I use the code like this:
syms x_1 x_2 equ(t)
Dx_1 = diff(x_1);
D2x_1 = diff(x_1,2);
Dx_2 = diff(x_2);
D2x_2 = diff(x_2,2);
w_1 = w_2 = 1
a_1 = a_2 = 1
B_1 = B_2 = 1
r_1 = r_2 = 1
equ_1 = D2x_1 + (a_1*(Dx_1) + B_1*x_1^2 - r_1 )*Dx_1 + w_1^2*x_1;
equ_2 = D2x_2 + (a_2*(Dx_2) + B_2*x_2^2 - r_2 )*Dx_2 + w_2^2*x_2;
figure
fimplicit(equ_1, [-1 1]) % Use _fimplicit1 To Plot ‘equ(t)=0’
hold on
fimplicit(equ_2, [-1 1])
grid
Would the graph plot with this code be the solution of the equation?
댓글 수: 2
David Wilson
2020년 11월 10일
Are you sure this is what you want to solve? Given that you have given us the explicit solution for x(t), why not just plot that?
However, I'm not sure that this is correct. Here is your (posulated) solution for x(t):
clear
syms t real
w=1;
x = exp(-1i*w*t) + exp(1i*w*t)
Now, does this satisfy your ODE?
Dx = diff(x,t)
D2x = diff(x,2)
res = D2x + (Dx)^3 + x^2*Dx + x
r = simplify(res)
Now that gives us
which does not equal zero like it should for al t.
Guan-Lin Chen
2020년 11월 10일
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Solver Outputs and Iterative Display에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
