Solve equation for symbolic function

2 ビュー (過去 30 日間)
Jonathan Aust
Jonathan Aust 2019 年 9 月 9 日
回答済み: Roshni Garnayak 2019 年 9 月 13 日
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 件のコメント
Jonathan Aust
Jonathan Aust 2019 年 9 月 9 日
They are symbolic functions. They do not have a body assigned to them though.
John D'Errico
John D'Errico 2019 年 9 月 9 日
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.

サインインしてコメントする。

採用された回答

Roshni Garnayak
Roshni Garnayak 2019 年 9 月 13 日
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:

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSymbolic Math Toolbox についてさらに検索

製品


リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by