Construct an array from the position of a certain value in a matrix

2 次查看(过去 30 天)
Hello everyone
Let's assume we have a matrix, which I attach, matrix.dat, which has 220x200 elements (https://we.tl/t-KwSPQEsCtf link to download the aformentioned matrix). This matrix would correspond to the definition of two physical quantities, given by
time=horzcat(linspace(0,20,200),linspace(21.1,40,20));
field=linspace(0,50,200);
What I am looking for is that, when there is, for a time element, a value in the matrix that is equal to 1.5708, the value of the first field element is stored in a new array. As you can see, for the first elements of time, there is no matrix value that matches the aforementioned value of 1.5708. So I don't know beforehand what the dimension of my vector will be, ?x1 elements. Is there an efficient way to build the above array?
  1 个评论
Stephen23
Stephen23 2020-10-25
This seems like something that might be solves using interpolation or perhaps one of the contour functions. Can you please show us the first few terms of the expected output vector.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Multidimensional Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by