# MATLAB: Finding closest values in array

displayplottol

Hello, want to locate a value from an pH array when closest to 4.756 and then locate the corresponding Vb value associated with that pH value. Any help would be appreciated. See last 2 lines.
``    format short          Kw = 1e-14;          Ka = 1.755388e-5;          pKa = 4.756;          %          Ca = 0.5;          Cb = 0.1;          Va = 100;          Vb = 0.05:0.05:2000;          Ma = (Ca * Va) / 1000;          Mb = (Cb .* Vb) ./ 1000;          for i = 1:length(Mb)            M_excess = Ma - Mb(i);            if abs(M_excess)<eps                Hplus = Ka * ((Ma_final * 0.999999) ./ Mb_final);                Vb_ev = Vb(i);                 pH_ev = pH(end);             elseif M_excess > 0                Ma_final = (M_excess * 1000) ./ (Va + Vb(i));                Mb_final = (Mb(i) * 1000) ./ (Va + Vb(i));                Hplus = Ka * (Ma_final ./ Mb_final);            elseif M_excess < 0                OH = (M_excess * 1000 * (-1)) ./ (Va + Vb(i));                Hplus = Kw ./ OH;            end            pH(i) = -log10(Hplus);          end          %         pH_Mid_Pt2 = find pH value when closest to 4.756;  Vb_Mid_Pt2 = find corresponding Vb value at pH_Mid_Pt2;``

``[~, idx] = min(abs(pH - 4.756));pH_Mid_Pt2 = pH(idx);Vb_Mid_Pt2 = Vb(idx);``