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

3 次查看(过去 30 天)
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 个评论
sedat
sedat 2023-5-2
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 2023-5-2
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 个)

类别

Help CenterFile Exchange 中查找有关 Assumptions 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by