필터 지우기
필터 지우기

Reading values across an array

조회 수: 1 (최근 30일)
Amavi Silva
Amavi Silva 2021년 7월 5일
댓글: Amavi Silva 2021년 7월 7일
I am trying to run an ecosystem model for the surface ocean which is forced by entrainment and detrainment of materials by the monthly changes of the Mixed Layer Depth (MLD). I have.....
MLD = [125;160;196;50;28;23;19;24;29;48;60;100]
.......for the 12 months of the year. I am planning to use an if statement to find the new concentration of the element after the entrainment/detrainment. For an example, I want to say....
if MLD(i+1) > MLD (i)
use the entrainment equation
Else if
use the detrainment equation
Nevertheless, I am not sure I know how to restructure my MLD array so that matlab can identifiy what is the (i)th value and what is the (i+1)th value at each step. I would be so grateful if anybody can help me sort this out.
Thank you so much in advance.

채택된 답변

Scott MacKenzie
Scott MacKenzie 2021년 7월 5일
The position of each element in an array is the element's index. The element can be retrieved for operations, such as relational comparisons as in your example, by using the index in parentheses after the name of the array. I suggest you review Array Indexing for further details and examples.
For your problem, here's how to set things up using a for-loop:
MLD = [125;160;196;50;28;23;19;24;29;48;60;100];
for i=2:length(MLD)
if MLD(i) > MLD(i-1)
% use entrainment equation here
else
% use detrainment equation here
end
end
  댓글 수: 1
Amavi Silva
Amavi Silva 2021년 7월 7일
Thank you so much. It did work!

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Performance and Memory에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by