Finding the time constant

24 次查看(过去 30 天)
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?

采纳的回答

Adam
Adam 2015-3-20
doc find
This will give you the index of the x value matching a given condition such as y == 37.
  2 个评论
Image Analyst
Image Analyst 2015-3-20
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

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2015-3-20
Try this:
tolerance = 0.0001;
indexes = find(abs(y-yDesired)<tolerance);
xMatches = x(indexes);

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by