Borrar filtros
Borrar filtros

Solve an equation and get a solution that depends on a variable

2 visualizaciones (últimos 30 días)
Jonas Ström Seez
Jonas Ström Seez el 28 de Mzo. de 2020
Comentada: Jonas Ström Seez el 29 de Mzo. de 2020
Hi everyone! I need some help with getting a solution to a equation. I am trying to solve a equation using solve. However i dont get any solution to the equation, i only get Empty sym: 0-by-1. I can solve the equation manually, the problem is that i have other equation that i cant solve manually and would like a better way to solve them. Is there any good way to solve a equation and get a solution that has a dependent variable in return. Here is what i have tried so far.
syms Nin(t)
% Vin = (sign(t - 200/11)/2 + 1/2)*((11*t)/100000 - 1/500) - (11*t)/100000 + 1/500
eq1 = Nin == Constant * Vin;
sol = solve(eq1, t);
sol -> Empty sym: 0-by-1
Manually
Nin = Constant * Vin;
-> Nin = Constant * (sign(t - 200/11)/2 + 1/2)*((11*t)/100000 - 1/500) - (11*t)/100000 + 1/500
Any guidance is appreciated.
  4 comentarios
Torsten
Torsten el 28 de Mzo. de 2020
Editada: Torsten el 28 de Mzo. de 2020
syms Nin t
instead of
syms Nin(t)
Jonas Ström Seez
Jonas Ström Seez el 29 de Mzo. de 2020
It worked! Thank you very much!

Iniciar sesión para comentar.

Respuestas (1)

Walter Roberson
Walter Roberson el 28 de Mzo. de 2020
syms Nin(t)
% Vin = (sign(t - 200/11)/2 + 1/2)*((11*t)/100000 - 1/500) - (11*t)/100000 + 1/500
eq1 = Nin == Constant * Vin;
sol = solve(eq1, t);
That code requests that an unknown function, Nin(t) be compared to Constant times an expression in t, and that the result be solved for the t that makes the two sides equal. The result would implicitly be of the form
t = some function of Nin(t) and Constant * Vin
except it cannot be, because the right hand side of solving for t cannot contain t, but it must because Nin(t) is an unknown function of t.
Therefore solve() must fail.
Nin = Constant * Vin;
-> Nin = Constant * (sign(t - 200/11)/2 + 1/2)*((11*t)/100000 - 1/500) - (11*t)/100000 + 1/500
That is not a solution for t, it would simply make the two sides of eqn1 the same as each other, in which case solving for t would have to give all t.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by