How to compare the the values of a 3-d dimensional array

조회 수: 1 (최근 30일)
Pallov Anand
Pallov Anand 2023년 1월 20일
댓글: Pallov Anand 2023년 1월 20일
Suppose I have a 3-D array, lets say, p(1,n,k) where n varies from 0 to t_span and t_span = 0:dt:80 (dt = 0.01) and k varies from 1 to 8.
Lets say I have an energy level denoted by E and decreasing at a constant rate in the following way:
E(1) = 6000;
E_lower = 4500;
E(n+1) = E(n) + dt * (-100);
What I want is, at the instant when E < E_lower, I want to compare the values between p(1,n,1) to p(1,n,8) and I want to know the index 'k' where the lowest value of p(1,n,k) is present at that particular instant "n".
Can anyone help me in this, how to proceed.
Thanks in advance.
  댓글 수: 2
Dyuman Joshi
Dyuman Joshi 2023년 1월 20일
As an index n must be a natural number, which is not the case here.
The smallest value of n or the value of n at the instant E < E_lower is, n = 1502, from the relationship you wrote.
Now we have to find the minimum of p(1,n,1:8). You can use the min for that, and obtain both the minimum value and the corresponding index.
Pallov Anand
Pallov Anand 2023년 1월 20일
Thanks for your reply.
In this case, it might be 1502. But I want to write a code in such a way that, as soon as E < E_lower, then I need to compare the values between p(1,n,1:8) and get the minimum value as well as the index of the corresponding minimum value.

댓글을 달려면 로그인하십시오.

채택된 답변

Matt J
Matt J 2023년 1월 20일
편집: Matt J 2023년 1월 20일
n=find( 6000-100*t_span < E_lower,1);
[~,kmin]=min(p(:,n,:),[],3);
  댓글 수: 3
Matt J
Matt J 2023년 1월 20일
편집: Matt J 2023년 1월 20일
Yes, it will. Did you check it?
Pallov Anand
Pallov Anand 2023년 1월 20일
It worked.....thanks a lot again.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Operators and Elementary Operations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by