Finding the time constant
24 views (last 30 days)
Show older comments
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?
0 Comments
Accepted Answer
Adam
on 20 Mar 2015
doc find
This will give you the index of the x value matching a given condition such as y == 37.
2 Comments
Image Analyst
on 20 Mar 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
More Answers (1)
Image Analyst
on 20 Mar 2015
Try this:
tolerance = 0.0001;
indexes = find(abs(y-yDesired)<tolerance);
xMatches = x(indexes);
0 Comments
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!