how do I solve a non linear function

Hi I am trying to solve this function but I keep on getting a warning sign I am unsure to howto put solve for a non liner function
syms t
y = 4*sin(2*pi*t) + exp(-t)./t
y = 
eqn = y -- 0
eqn = 
solv =solve(eqn,t)
Warning: Unable to solve symbolically. Returning a numeric solution using vpasolve.
solv = 
98.5
figure
fplot(y,[-3 10])
grid

3 comentarios

Torsten
Torsten el 4 de Ag. de 2022
What do you want to see as result from "solve" ?
An explicit formula for all zeros of your nonlinear function ? Such a formula does not exist.
All zeros in between a certain range as numerical values ? Such an option for a solver does not exist.
One zero of the function ? vpasolve gives you one such value out of an infinite number of possible solutions.
sumaiya hossain
sumaiya hossain el 4 de Ag. de 2022
Thank you so much. The vpasolve instead of solve worked! :)
Torsten
Torsten el 5 de Ag. de 2022
Editada: Torsten el 5 de Ag. de 2022
You can restrict the search for a solution to a specific interval, e.g.
syms t
y = 4*sin(2*pi*t) + exp(-t)./t;
eqn = y == 0;
solv =vpasolve(eqn,t,[0,1])
solv = 
0.54308725386344674331298509227806
solv =vpasolve(eqn,t,[1,2])
solv = 
1.505862532193485343436982696241
figure
fplot(y,[0.1 2])
grid

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Symbolic Math Toolbox en Centro de ayuda y File Exchange.

Productos

Versión

R2022a

Etiquetas

Preguntada:

el 4 de Ag. de 2022

Editada:

el 5 de Ag. de 2022

Community Treasure Hunt

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

Start Hunting!

Translated by