The following code is correct?

9 vues (au cours des 30 derniers jours)
Ahmed
Ahmed le 5 Mar 2024
Réponse apportée : Nisar Ahmed le 4 Fév 2025 à 8:59
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 commentaire
Dyuman Joshi
Dyuman Joshi le 5 Mar 2024
"Have I done it correctly?"
Yes. Your code looks good.

Connectez-vous pour commenter.

Réponses (2)

Karan Singh
Karan Singh le 31 Jan 2025 à 7:45
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 le 4 Fév 2025 à 8:59
Thanks

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by