Solve equation for symbolic function

7 visualizaciones (últimos 30 días)
Jonathan Aust
Jonathan Aust el 9 de Sept. de 2019
Respondida: Roshni Garnayak el 13 de Sept. de 2019
I have this simple example:
syms a(t) b(t);
eqn = a(t) * 2 == b(t);
solve(eqn, a(t))
The output is:
Warning: Unable to find explicit solution. For options, see help.
ans =
Empty sym: 0-by-1
Why is MATLAB not able to solve this? It works if I make a and b constant (not dependent on t), but thats not what I want. The answer I would expect would be something like
a(t) = b(t) * 0.5
  3 comentarios
Jonathan Aust
Jonathan Aust el 9 de Sept. de 2019
They are symbolic functions. They do not have a body assigned to them though.
John D'Errico
John D'Errico el 9 de Sept. de 2019
Solve apparently does not understand when you ask it to solve for a function.
But there is no reason why you cannot just leave it as a variable, a simple unknown. That it would at some point be dependent on t is something you can deal with later.

Iniciar sesión para comentar.

Respuesta aceptada

Roshni Garnayak
Roshni Garnayak el 13 de Sept. de 2019
In this example, the solution doesn’t depend on t. It’s just a representation, so you can use any symbol. Hence, a can be used in place of a(t).
If you have a differential equation where the solution is dependent on t, then you can use the “dsolve” function. Refer to the link below for details on “dsolve” function:

Más respuestas (0)

Categorías

Más información sobre Symbolic Math Toolbox en Help Center y File Exchange.

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by