How to find a Y value of a given X?

84 visualizaciones (últimos 30 días)
Rishab Vadvadgi
Rishab Vadvadgi el 17 de Sept. de 2020
Comentada: Star Strider el 17 de Sept. de 2020
Hello, this is a very simple question. I am writing an equation for v given t:
t = 0:0.00001:0.01;
v= 50*exp(-1600*t) - 50*exp(-400*t);
How would I find the value of v at a certain t? I want to find what v is when t=0.000625.

Respuesta aceptada

Star Strider
Star Strider el 17 de Sept. de 2020
This is easiest if you create ‘v’ as an anonymous function:
t = 0:0.00001:0.01;
v = @(t) 50*exp(-1600*t) - 50*exp(-400*t);
ti = 0.000625;
Out = v(ti)
figure
plot(t, v(t))
hold on
plot(ti, v(ti), 'r+')
hold off
grid
See Anonymous Functions for details.
  3 comentarios
Rishab Vadvadgi
Rishab Vadvadgi el 17 de Sept. de 2020
Thanks! I ended up figuring out right after I posted haha
Star Strider
Star Strider el 17 de Sept. de 2020
My pleasure!
To calculate with functions, it is necessary to evaluate them to do the calculation:
p = @(t) v(t).*i(t);
That works. Note also the use of element-wise multiplication, .* instead of * .
Example —
figure
plot(t, p(t))
grid
.

Iniciar sesión para comentar.

Más respuestas (2)

Johannes Fischer
Johannes Fischer el 17 de Sept. de 2020
You want to use an anonymous function.
So in your case:
% define the anonymous function
v = @(t) 50*exp(-1600*t) - 50*exp(-400*t);
% call it
v(0.000625)
  1 comentario
Rishab Vadvadgi
Rishab Vadvadgi el 17 de Sept. de 2020
Editada: Rishab Vadvadgi el 17 de Sept. de 2020
Thank you! One more question: can I use functions I have written to create a new one? For example, I am trying to multiply a function v and a function i together to make a new function p.
v = @(t) 50*exp(-1600*t) - 50*exp(-400*t);
i = @(t) (5*exp(-1600*t) - 5*exp(-400*t)) * 0.001;
p = @(t) v*i;
However, this gives me an error. What is the proper way to do this?

Iniciar sesión para comentar.


BOB MATHEW SYJI
BOB MATHEW SYJI el 17 de Sept. de 2020
Hope this helps. x is the input and sol is the value of v at x (in this case x=0.000625)
syms v(t)
x=0.000625;
v(t)= 50*exp(-1600*t) - 50*exp(-400*t);
sol=double(v(x));

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by