The following code is correct?

2 views (last 30 days)
Ahmed
Ahmed on 5 Mar 2024
Answered: Nisar Ahmed on 4 Feb 2025
I have a Ph of size 139 48 101 values ranging say 0 to 0.4, now to compute Kd from Ph have two equations if Ph is equal or less than 0.35 and if Ph is greater than 0.35. I used following code to apply two equation. Have I done it correctly?
Kd = zeros(size(Ph));
% Find indices where Ph is less than or equal to 0.35
indices1 = Ph <= 0.35;
% Find indices where Ph is greater than 0.35
indices2 = Ph > 0.35;
% Apply the first equation to 'kd' where PhiE is less than or equal to 0.35
Kd(indices1) = 38.18.*(1-3.39.*Ph(indices1)+1.95.*Ph(indices1).^2).*1e9;
% Apply the second equation to 'kd' where Ph is greater than 0.35
Kd(indices2) = exp(-62.60.*PhiE(indices2)+22.58).*1e9;
  1 Comment
Dyuman Joshi
Dyuman Joshi on 5 Mar 2024
"Have I done it correctly?"
Yes. Your code looks good.

Sign in to comment.

Answers (2)

Karan Singh
Karan Singh on 31 Jan 2025
Hi Ahmed,
Everything seems to be in order here. The code you provided has a typo in the second equation where you mistakenly used "PhiE" instead of "Ph." Is "PhiE" something different? Otherwise, everything seems fine. Your use of ".*" and ".^" is correct for element-wise operations, which is necessary given that "Ph" is an array.

Nisar Ahmed
Nisar Ahmed on 4 Feb 2025
Thanks

Community Treasure Hunt

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

Start Hunting!