-
Data: 2012-11-05 13:10:38
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 05.11.2012 12:48, slawek wrote:
>
> Użytkownik "Michoo" <m...@v...pl> napisał w wiadomości grup
> dyskusyjnych:k783go$q3k$...@m...internetia.pl...
>> Jest, ale wynika z czego innego niż myślisz.
>
> Pożycz szklanej kuli - tej dzięki której wiesz co ja myślę. ;)
>
>> W związku z tym:
>> - 2.2E-16 nie jest najmniejszą wartością jaka na FPU x86 spowoduje
>> zajście nierówności. Jest najmniejszą taką wartością w typie double.
>
> Typ double (tj. zmienne tego typu) sam z siebie się nie potrafią dodawać.
Ale można je dodać zgodnie ze standardem i niezgodnie ze standardem.
>
>> float.h jest częścią standardu i odnosi się do standardowych typów
>
> Tj. o jakim standardzie piszesz?
ISO/IEC 9899:TC3
Tu jest nawet napisane znacznie dobitniej co ma być w EPS_DOUBLE:
The values given in the following list shall be replaced by constant
expressions with implementation-defined (positive) values that are less
than or equal to those shown:
- the difference between 1 and the least value greater than 1 that is
representable in the given floating point type, b1- p
Więc powyższe nie zostawia już chyba wątpliwości, która wartość jest
poprawna?
>
>> I zazwyczaj nie ma to znaczenia. Nikt nie robi poważnej numeryki
>> opierając się o to, że na x86 połowa epsilona double wystarcza.
>
> Wyznanie, że mało znasz ludzi robiących obliczenia numeryczne,
Nie aż tak dużo - to fakt.
> a w
> szczególności wśród tych osób nikogo takiego co przykłada jakiekolwiek
> znaczenie do wartości epsilon?
Nie. Epsilon jako dokładność obliczeń (do czego się odwoływałeś) używa
się ewentualnie w opisie algorytmu. Jako wartość w programie przyjmuje
się różne EPS (odległość miedzy wartościami) zależnie od zakresu na
którym się pracuje, zazwyczaj do określenia relacji równoważności i są
to setki albo tysiące razy większe wartości niż EPS_DOUBLE podczas
liczenia na double.
W niektórych przypadkach gdy obliczenia są robione w okolicy "granic"
typów aby zachować informację o rozmiarze błędu używa się przedziałów.
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 05.11.12 16:17 AK
- 05.11.12 16:33 Marek Borowski
- 05.11.12 19:38 slawek
- 05.11.12 19:53 slawek
- 05.11.12 20:32 slawek
- 05.11.12 20:46 kenobi
- 05.11.12 21:35 Tomasz Sowa
- 05.11.12 22:11 kenobi
- 06.11.12 00:16 slawek
- 06.11.12 00:19 Tomasz Sowa
- 06.11.12 00:53 Roman W
- 06.11.12 00:57 Roman W
- 06.11.12 03:28 bartekltg
- 06.11.12 06:35 Roman W
- 06.11.12 10:46 slawek
Najnowsze wątki z tej grupy
- 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ą."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
Najnowsze wątki
- 2025-06-24 Delegacja osoby prowadzącej jednoosobową działalność
- 2025-06-24 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-06-24 Warszawa => Młodszy Programista SQL / FrontEnd developer <=
- 2025-06-24 Warszawa => Junior C# / FrontEnd developer <=
- 2025-06-24 Warszawa => Sales Executive / KAM <=
- 2025-06-23 Warszawa => MENA New Business Manager <=
- 2025-06-23 Trójmiasto => Head of Social Media <=
- 2025-06-23 Tapeta w Xiaomi
- 2025-06-23 Gdańsk => Programista Kotlin <=
- 2025-06-23 Białystok => Programista Mainframe (z/OS, Assembler) <=
- 2025-06-23 Warszawa => Senior Account Manager <=
- 2025-06-23 Białystok => Mainframe (z/OS, Assembler) Developer <=
- 2025-06-23 Warszawa => Starszy Programista C <=
- 2025-06-23 Warszawa => Tester Automatyzujący <=
- 2025-06-23 Warszawa => Inżynier oprogramowania .Net <=