-
Data: 2012-11-01 16:39:09
Temat: Re: Błędny epsilon - this is not a bug, this is ?
Od: "slawek" <h...@s...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Użytkownik "bartekltg" napisał w wiadomości grup
dyskusyjnych:k6tusp$elk$...@n...news.atman.pl...
>we float.h dali ciała z definicją/warunkami zaokrąglania.
Bartuś, gratuluję ci pewności siebie. Przyda ci się ona przy wyjaśnianiu
dlaczego twórcy procesorów dodają liczby z większą "rozdziałką" niż one są
zapisywane.
Owszem, opis we float.h jest niezbyt udany (m.i. dlatego, że w określeniu
"najmniejszą liczbą x która 1 + x != 1" zapomniano o liczbach ujemnych).
Nadal jednak masz problem - twierdzisz coś zupełnie innego niż Wikipedia -
więc może sprostujesz wpis ibidem? Przy okazji doprowadzając hasło do
porządku: ta sama Wikipedia podaje jako wartość epsilon - w tym samym
tekście - raz jako 1.1E-16 a raz jako 2.2E-16. Jako w miarę inteligentny
człowiek rozumiesz, że niezależnie od tego ile naprawdę wynosi epsilon
(nawet jeżeli jest to okrągłe 42) - to przynajmniej jedną z tych wartości
należy wykluczyć. (Nie, nie twierdzę że Wikipedia jest nieomylna - ale że
skoro potrafisz, to powinieneś sprostować błędy w Wikipiedii, nie będę
zabraniał.)
Co do Matlaba - jeżeli jest inna definicja - to eps z Matlaba jest ok - w
sensie zgodności z definicją. Niemniej jednak błędem jest w takim razie
odrzucanie liczb mniejszych niż eps (tj. niż wartość jaką zwraca funkcja eps
z Matlaba), bo te liczby jednak zmieniają (i powinny zmieniać) wynik. Taki
przykładzik, w którym f jest taka że dla każdego n funkcja f(n+1) < f(n)
oraz f(n) > 0 :
m = 1; while( f(m) >= eps ) m++; /* m = 10*m + 100; */ s = 0.; for (k =
m; k > 0; k--) s += f(m);
Jeżeli użyjesz definicji i wartości eps z Matlab, to możesz - przez
przypadek - otrzymać inny wynik, niż kiedy usuniesz komentarz. Jeżeli
użyjesz definicji MS (i oczywiście o połowę mniejszego eps) - to niezależnie
od tego, czy usuniesz komentarz, czy go zostawisz - będziesz miał ten sam
wynik.
Wniosek jest oczywisty - podana przez ciebie definicja może w określonych
sytuacjach prowadzić do błędnych wyników. Definicja MS jest bardziej
bezpieczna.
Następne wpisy z tego wątku
- 01.11.12 16:54 bartekltg
- 01.11.12 17:45 slawek
- 01.11.12 17:50 bartekltg
- 01.11.12 18:18 slawek
- 01.11.12 18:58 kenobi
- 01.11.12 19:09 kenobi
- 01.11.12 19:52 slawek
- 01.11.12 20:26 kenobi
- 01.11.12 21:24 slawek
- 01.11.12 21:30 slawek
- 01.11.12 23:23 slawek
- 02.11.12 09:05 AK
- 02.11.12 09:08 AK
- 02.11.12 09:37 AK
- 02.11.12 09:49 slawek
Najnowsze wątki z tej grupy
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-11 Wyważanie kół rowerowych
- 2024-11-11 Kosz, gdzie??
- 2024-11-11 Coraz mniej ludzi robi prawo jazdy
- 2024-11-11 Opole => SAP HANA Cloud Dev / Data Engineer <=
- 2024-11-11 Warszawa => Spedytor Międzynarodowy <=
- 2024-11-11 Lublin => Senior PHP Developer <=
- 2024-11-11 Marki => Senior PHP Symfony Developer <=
- 2024-11-11 Chrzanów => Team Lead / Tribe Lead FrontEnd <=
- 2024-11-11 Gliwice => Specjalista ds. public relations <=
- 2024-11-11 Gdańsk => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-11-11 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-11-11 Warszawa => Sales Development Representative (in German) <=
- 2024-11-11 Marsz niepodległości
- 2024-11-08 Belka
- 2024-11-09 pierdolec na punkcie psa