채택된 답변

Star Strider
Star Strider 2021년 10월 21일

0 개 추천

The differential equaton apparently does not have an analytic solution.
Integrating it numerically is an option —
syms y(x) x Y
Dy = diff(y);
eqn = (x*exp(x)+y+exp(y)+3)*diff(x) + (x*exp(y)+x+2)*Dy == 0;
isoeqn = isolate(eqn,Dy)
isoeqn = 
cond = y(0) == 0;
ySolx = dsolve(eqn,cond)
Warning: Unable to find symbolic solution.
ySolx = [ empty sym ]
[VF,Subs] = odeToVectorField(eqn)
VF = 
Subs = 
eqnfcn = matlabFunction(VF, 'Vars',{x,Y})
eqnfcn = function_handle with value:
@(x,Y)[-(exp(Y(1))+x.*exp(x)+Y(1)+3.0)./(x+x.*exp(Y(1))+2.0)]
tspan = [0 2.5];
ic = 0;
[x,y] = ode45(eqnfcn, tspan, ic);
figure
plot(x, y)
grid
xlabel('x')
ylabel('y')
legend(string(Subs), 'Location','best')
Experiment to get different results.
.

댓글 수: 2

현국 조
현국 조 2021년 10월 21일
really thanks
Star Strider
Star Strider 2021년 10월 21일
As always, my pleasure!
.

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

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Programming에 대해 자세히 알아보기

질문:

2021년 10월 21일

댓글:

2021년 10월 21일

Community Treasure Hunt

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

Start Hunting!

Translated by