|
From: | stn021 |
Subject: | Re: a-b+b != a |
Date: | Mon, 4 Sep 2017 18:50:29 +0200 |
On Mon, Sep 4, 2017 at 10:53 AM, stn021 <address@hidden> wrote:______________________________Hi,
this is weird:
r1 = round( 1e3*randn(5) ) / 1e3 ;
r2 = round( 1e3*randn(5) ) / 1e3 ;
r3 = r1 - r2 + r2 ;
not_zero = r1 - r3
not_zero =
0.0000e+00 0.0000e+00 5.5511e-17 0.0000e+00 1.1102e-16
5.5511e-17 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 -2.0817e-16
-5.5511e-17 0.0000e+00 0.0000e+00 -1.1102e-16 0.0000e+00
2.7756e-17 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
So a-b+b != a
The difference to zero is small, around 1e-17. But iterations can
cause this error to increase.
I use leasqr() and in each iteration the last line is
retval = retval - someval + someval
With that additional line I get quite different results compared to
the same program without this line even though they should be
identical.
Is there a way to avoid this phenomenon ?
THX
Stefan
_________________
Help-octave mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/help-octave
try thisr3 = r1+ (- r2 + r2) ;use brackets.--
[Prev in Thread] | Current Thread | [Next in Thread] |