relative error of machine epsilon

3 views (last 30 days)
Frederick Melanson
Frederick Melanson on 7 Feb 2021
Answered: Rohit Pappu on 11 Feb 2021
Hi!
I am trying to calculate the relative error of machine epsilon. I have the roundoff error but can seem to figure how to get the relative error... here is my function:
function eplison = ep(n)
eplison = double(1);
r = eplison/2;
while (n+eplison) ~= n
eplison = eplison/2;
r = eplison/2;
end
eplison= eplison*2;
end
thanks in advance

Answers (1)

Rohit Pappu
Rohit Pappu on 11 Feb 2021
According to the formal definition, the approximation of Machine Epsilon is as follows
epsilon = 1.0;
while (1.0 + 0.5 * epsilon) 1.0:
epsilon = 0.5 * epsilon
Extending this to n, it can be rewritten as
epsilon = 1.0; % Default datatype is double
while(n + 0.5*epsilon ~= n)
epsilon = 0.5*epsilon;
end

Categories

Find more on MATLAB in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!