Clear Filters
Clear Filters

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

3 views (last 30 days)
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!!!

Accepted Answer

Walter Roberson
Walter Roberson on 27 Apr 2023
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 Comments
sedat
sedat on 2 May 2023
thanks for the answer but it still doesn't print x^(3/2)-sqrt(y)=C which is implicit solution of the problem.
Walter Roberson
Walter Roberson on 2 May 2023
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.

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!