Cre CP Code 2
Cre CP Code 2
PA_exp(i) = PA;
PB_exp(i) = PB;
T_K_all(i) = T_K;
P_total_all(i) = P_total;
end
% Objective functions
obj_LH = @(params) sum((rate_exp - rate_LH(params, PA_exp, PB_exp)).^2);
obj_ads = @(params) sum((rate_exp - rate_adsorption(params, PA_exp, PB_exp)).^2);
obj_des = @(params) sum((rate_exp - rate_desorption(params, PA_exp, PB_exp)).^2);
% Fit parameters
params_LH = fminsearch(obj_LH, params0_LH);
params_ads = fminsearch(obj_ads, params0_ads);
params_des = fminsearch(obj_des, params0_des);
switch idx
case 1
disp('Likely rate-limiting step: Surface reaction (Langmuir-
Hinshelwood).');
rate_model_func = rate_LH;
params_opt = params_LH;
case 2
disp('Likely rate-limiting step: Adsorption of Reactant A.');
rate_model_func = rate_adsorption;
params_opt = params_ads;
case 3
disp('Likely rate-limiting step: Desorption of product or reactant.');
rate_model_func = rate_desorption;
params_opt = params_des;
end