Solving nonlinear DE by reduction of order on matlab

조회 수: 2(최근 30일)
규민 권
규민 권 2021년 8월 11일
댓글: 규민 권 2021년 8월 13일
Nice of you all to answer my question.
I tried to graph the nonlinear ordinary DE in a textbook(Advanced Engineering Mathematics 6th Ed by Zill Wright).\
the DE is like this.
dy/dx = u
du/dx = x + y - y^2
Written the codes like below, but only gained 2 graphs each.
function dydt = odesys(t, y)
dydt(1) = y(1);
dydt(2) = t + y(2) - y(2)^2;
dydt = [dydt(1); dydt(2)];
[t, y] = ode45(@odesys, [-1 1], [-1 1])
plot(t, y);
I want to get the graph as on the textbook, like the picture right below.(In case of copyright, I couldn't get original picture in the book)
What is wrong with my code?

채택된 답변

Fabio Freschi
Fabio Freschi 2021년 8월 11일
편집: darova 2021년 8월 11일
There are some typos in your description of the problem. Here the correct version
% your ODE - note that (y(1) and y(2) are exchanged)
odesys = @(t,y)[y(2); t+y(1)-y(1)^2];
% soluiton - note that the time span is [0 10] and the initial conditions
% are set for t = 0;
[t, y] = ode45(odesys, [0 10], [-1 1]);
% plot
figure, plot(t,y(:,1));
grid on
  댓글 수: 3
규민 권
규민 권 2021년 8월 13일
Thank you again! Very helpful for me to be handling MATLAB better. Have a good day!

댓글을 달려면 로그인하십시오.

추가 답변(0개)




Community Treasure Hunt

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

Start Hunting!

Translated by