-
Data: 2012-11-06 11:50:50
Temat: Re: Błędny epsilon - this is not a bug, this is ?
Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 06.11.2012 10:46, slawek wrote:
> Użytkownik "Tomasz Sowa" napisał w wiadomości grup
> dyskusyjnych:k79hhh$26k$...@n...dialog.net.pl...
>
>> No właśnie nie wystarczy, unie zrobiłem specjalnie żeby obliczenie
>> dodawania zrobić odpowiednio w 32 bitach (float) i 64 bitach (double). W
>> twoim przypadku obliczenia będą przeprowadzone w 80 bitach lub więcej
>> (zależnie od opcji kompilacji).
>
> Ok, ale podążając za twoim pomysłem należałoby stwierdzić, że
> jakiekolwiek porównania a > b należy usunąć z programów i zastąpić je
> porównaniami (int)a > (int)b .
>
> Czyli - zamiast problemu "DBL_EPSILON jest podany z 50% błędem"
NIE jest, nie trolluj. Już ci podawałem fragment standardu, w którym
wyraźnie stoi, że DBL_EPSILON zawiera dodatnią różnicę między 1.0 a
następną wartością reprezentowalną w typie double.
> - mamy
> problem "arytmetyka liczb double jest źle zaimplementowana".
Czy ty kiedyś siedziałeś gdzieś w pobliżu numeryki?
Jeżeli dokładność jest większa to nie jest to problem, chyba, że
programista naprawdę coś zepsuł. Precyzja w punktach wynosi 100%,
dlatego używa się ograniczeń worst-case. Nikt myślący nie zrobi w
typowym przypadku relacji równoważności[*] w oparciu o DBL_EPSILON -
zawsze to będzie jego wielokrotność.
P.S.
Skompiluj, uruchom, zrozum:
#include <cstdio>
double foo(double d){
return d;
}
main()
{
double d1=1.0;
double d2=1.5E-16;
printf("%.18lf %.18lf\n",d1+d2-1.0,foo(d1+d2)-1.0);
}
[*] Wynika to z tego, że każda operacja wprowadza przynajmniej błąd z
przedziału <0,DBL_EPSILON/2>, niektóre tak duży jak np
sqrt(DBL_EPSILON/2) - np. sqrt ;)
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 06.11.12 12:02 Michoo
- 06.11.12 12:05 AK
- 06.11.12 13:31 Roman W
- 06.11.12 13:32 Roman W
- 06.11.12 14:36 Michoo
- 06.11.12 14:47 Michoo
- 06.11.12 14:55 AK
- 06.11.12 15:02 AK
- 06.11.12 15:35 AK
- 06.11.12 15:54 bartekltg
- 06.11.12 15:57 Roman W
- 06.11.12 16:03 Roman W
- 06.11.12 16:20 Michoo
- 06.11.12 16:48 AK
- 06.11.12 16:56 AK
Najnowsze wątki z tej grupy
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-09-11 Komisja sejmowa odrzuca petycję ws. obowiązkowych kanałów RSS na stronach podmiotów publicznych
- 2025-09-11 Komisja sejmowa odrzuca petycję ws. obowiązkowych kanałów RSS na stronach podmiotów publicznych
- 2025-09-10 [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- 2025-09-10 [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- 2025-09-10 [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- 2025-09-10 kol. sukces po polsku: "Samurai Labs. Technologia do zapobiegania samobójstwom"
- 2025-09-10 Donald Trump ma za sobą najbardziej dochodowy rok w swoim życiu.
- 2025-09-10 kol. sukces po polsku: "Samurai Labs. Technologia do zapobiegania samobójstwom"
- 2025-09-10 Donald Trump ma za sobą najbardziej dochodowy rok w swoim życiu.
- 2025-09-10 Fwd: Uprzejmie proszę o sprostowanie nieprawdziwej informacji w art. premium
- 2025-09-10 Po tych dronach to gotówki w obrocie będzie jeszcze więcej
- 2025-09-10 Wściekli obywatele spalili budynek parlamentu Nepalu [bo odcięli im amerykańskie serwery społecznościowe - przyp. JMJ]
- 2025-09-10 NxtPaper
- 2025-09-10 Gdańsk => Starszy programista oprogramowania C++ <=
- 2025-09-10 Łódź => Starszy Specjalista ds. Nowoczesnej Księgowości / Samodzi