why do i receive error when do 'Implicit' solution true?

syms y(x)
eqn=diff(y,x)==3*(x*y)^(1/2);
dsolve(eqn,'Implicit',true)
when i run this code
ans =
y(x) == 0
(y(x)^(3/2)*(C1 + 27*y(x)^(1/2)))^(2/3)/y(x) == (9*x)/((3^(1/2)*1i)/2 + 1/2)^2
(y(x)^(3/2)*(C1 + 27*y(x)^(1/2)))^(2/3)/y(x) == (9*x)/((3^(1/2)*1i)/2 - 1/2)^2
(y(x)^(3/2)*(C1 + 27*y(x)^(1/2)))^(2/3)/y(x) == 9*x
programme prints on the screen this but implicit solution of this diferential equation is x^(3/2)-sqrt(y)=C
if someone can help me it would be great, thanks!!!

 채택된 답변

Walter Roberson
Walter Roberson 2023년 4월 27일
sol = dsolve(eqn, 'implicit', true)
arrayfun(@(X)isolate(X, y), sol)
You will see that they are different ways of writing it. There might potentially be theoretic differences if x or y(x) are negative or complex valued

댓글 수: 2

thanks for the answer but it still doesn't print x^(3/2)-sqrt(y)=C which is implicit solution of the problem.
syms y(x)
eqn=diff(y,x)==3*(x*y)^(1/2);
sol = dsolve(eqn, 'implicit', true)
sol = 
sol1 = arrayfun(@(X)isolate(X, y), sol);
arrayfun(@(X) sqrt(lhs(X)) == simplify(sqrt(rhs(X)), 'ignoreanalytic', true), sol1)
ans = 
Notice that analytic constraints had to be ignored. You would have to prove that your version is valid for negative x.

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

추가 답변 (0개)

카테고리

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

태그

질문:

2023년 4월 27일

댓글:

2023년 5월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by