Well, simplify function did sort of worked, but it didn’t simplify anything, regarding moving variables to the same side. This is the original equation I am trying to simplify/solve: (diff(x(t),t)==(1-x(t)/K)*x(t))
Unable to find explicit solution.
13 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dominik Stolfa
am 16 Nov. 2023
Kommentiert: Dominik Stolfa
am 20 Nov. 2023
I have already tried reading some other similar questions but I had no luck. Does Matlab have problem then the same variable is on both sides or something? Simplify function also didn’t work.
1 Kommentar
Akzeptierte Antwort
Walter Roberson
am 16 Nov. 2023
Well, let us test the hypothesis that the problem is that the same variable is on both sides:
syms x(t) y(t) c
K = 1072764;
eqn1 = (x==int((1-(x/K))*x,t,0,3))
eqn2 = (y==int((1-(x/K))*x,t,0,3))
eqn3 = (c==int((1-(x/K))*x,t,0,3))
eqn4 = (4321==int((1-(x/K))*x,t,0,3))
sol1 = solve(eqn1, x)
sol2 = solve(eqn2, x)
sol3 = solve(eqn3, x)
sol4 = solve(eqn4, x)
So the problem is not that the same variable occurs on both sides of the equation -- if it were then having y(t) on the left side would have worked. The problem is also not that the left side is a function x(t) instead of a constant -- if it were then using c on the left side instead of x(t) or y(t) would have worked. The problem is also not that using a symbolic variable instead of a specific numeric value makes the equation "too complicated" -- if that were the case then using 4321 on the left side would have worked.
What is left?
Well... there is the fact that you tried to find an explicit solution for an integral equation.
Generally speaking, MATLAB just doesn't know how to solve many integral equations.
3 Kommentare
Walter Roberson
am 16 Nov. 2023
I tested this equation with wolfram alpha, which was not able to solve it.
Weitere Antworten (2)
Walter Roberson
am 16 Nov. 2023
Bearbeitet: Walter Roberson
am 16 Nov. 2023
If we assume that x is a function of one variable, t, then the definite integral of an expression involving only x and constants, is an expression that does not involve t. So by inspection you are asking to solve x(t) = constant. We can then substitute constant into the equation, say X, getting
X == int((1-X/K)*X,t,0,3)
This gives you a definite result on the right, and you can solve the quadratic by factoring, for solutions x(t) = 0 and x(t) = 2/3 * K
The solutions proposed by Torsten do not work except for the 0.
6 Kommentare
Walter Roberson
am 19 Nov. 2023
The original equation you posted was an integral equation in which an expression in t was integrated over a definite range of t. A definite integral no longer has the variable of integration in the expression (unless the variable was used in the limit.) The finished definite integral is effectively constant with respect to the variable of integration... so if you then take the derivative with respect to the variable of integration then the definite integral vanishes.
f(x) = int(g(x), x, a, b)
take derivative of both sides to get
df/dx = d(int(g(x), x, a, b)/dx
but the int will not have x in it so the derivative is 0, leading to
df/dx = 0
Siehe auch
Kategorien
Mehr zu Calculus finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!