view isEquidistant.m @ 955:92c3c170e90b

Merged in feature/utux2D (pull request #11) Feature/utux2D Approved-by: Jonatan Werpers <jonatan.werpers@it.uu.se> Approved-by: Martin Almquist <malmquist@stanford.edu> Approved-by: Vidar Stiernström <vidar.stiernstrom@it.uu.se>
author Jonatan Werpers <jonatan.werpers@it.uu.se>
date Mon, 10 Dec 2018 08:29:41 +0000
parents b43c4d841afe
children
line wrap: on
line source

% Tests if consecutive elements of vector v are euidistant
function b = isEquidistant(v)
    if length(v) < 2
        error('sbplib:isEquidistant:inputTooShort', 'Input vector is too short');
    end

    tol = 1e-8;

    d = v(2:end) - v(1:end-1);
    err = abs(d - d(1));

    relErr = err./abs(d);

    I_zero = find(d < tol);

    relErr(I_zero) = err(I_zero);

    b = all(relErr < tol);
end