I have been given two vectors, x and y, and I need to find the time constant for these data points. I graphed the data using "plot(x,y) I basically need to find the value of x for a given value of y. Is there a specific Matlab function to calculate the exact answer for the time constant? I was able to approximate a function using the data cursor tool but I think there has to be a way to get a more accurate time content. any ideas?

 Respuesta aceptada

Adam
Adam el 20 de Mzo. de 2015

0 votos

doc find
This will give you the index of the x value matching a given condition such as y == 37.

2 comentarios

donnabelle
donnabelle el 20 de Mzo. de 2015
thanks!
Image Analyst
Image Analyst el 20 de Mzo. de 2015
donnabelle, be aware that code may only work with integers or with certain other situations, like where you're comparing the array with an exact element of the array, not some number generated elsewhere or typed in. To do that you need to use a tolerance like I tried to show you in my answer (which of course will also work with integers as well). Please see the FAQ: http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F

Iniciar sesión para comentar.

Más respuestas (1)

Image Analyst
Image Analyst el 20 de Mzo. de 2015

1 voto

Try this:
tolerance = 0.0001;
indexes = find(abs(y-yDesired)<tolerance);
xMatches = x(indexes);

Categorías

Productos

Preguntada:

el 20 de Mzo. de 2015

Comentada:

el 20 de Mzo. de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by