How do i calculate for conditions

1 view (last 30 days)
I am trying to calculate actual evapotranspiration(AE) from my data. the conditions and calculation are as follows:
if P - PET > 0
elseif P - PET < 0
AE = P - SMdiff
P, PET and SMdiff are all 12 x 1 double.
How do i compute this in matlab?

Accepted Answer

Alamanda Ponappa Poovaya
Alamanda Ponappa Poovaya on 25 Mar 2021
I understand that you want code to calculate these conditions. I assume you are looking for a vectorized approach rather than a for loop. The code below should perform your calculations
AE = P>PET %logical 12 x 1 array
AE = AE.*PET + (~AE).*(P-SMdiff)
  1 Comment
Rahah Hadri
Rahah Hadri on 30 Mar 2021
Thank you so much! This did exactly what I wanted.

Sign in to comment.

More Answers (0)


Find more on Loops and Conditional Statements in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!