-
Data: 2012-11-12 05:11:01
Temat: Re: Simpson vs. Niski Cotes
Od: "slawek" <s...@h...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]
Użytkownik "Baranosiu" <r...@w...pl> napisał w wiadomości grup
dyskusyjnych:k7olf5$rpm$...@n...task.gda.pl...
> Akurat w tym przypadku tak, ale weź inny przedział całkowania (na
> przykład -10..10 tak żeby wpływ funkcji wykładniczej był nieco
> bardziej znaczący) i już simpson może wypaść lepiej.
Oczywiście, że dla /pewnych/ przedziałów lub /pewnych/ funkcji może być
tak... albo może tak nie być.
Jednakże mit o wyższości metody Simpsona nad metodą trapezów jest obalony -
nie można a priori założyć, że wyniki otrzymane metodą Simpsona będą
dokładniejsze.
I jeszcze drobiazg - większość ludzi, jak usłyszy "całkowanie", to kojarzy
to z zadaną w postaci w wzoru funkcją podcałkową. W przykładowym programie
taka funkcja, f, była wyłącznie dla niezaśmiecania forum tablicą parunastu
tysięcy wartości. Bo istotą rzeczy jest - w tym do czego mi są potrzebne
całki - że są dane pary (x,y), nie ma jawnie postaci funkcji. Można to sobie
np. wyobrazić jako zapis PCM dźwięku - przy próbkowaniu 44 kHz będzie to
44000 punktów (x,y) na każdą sekundę - i teraz trzeba to scałkować - dane
są - funkcji zapisanej wzorkiem nie ma.
Teraz trochę teorii. Jeżeli jest dość dużo sampli, czyli par (x,y) jest n+1,
a to n+1 wynosi kilkaset tysięcy lub więcej, to nie ma znaczenia, czy urwie
się jeden z sampli gdzieś z przodu lub z tyłu - wartość całki powinna być
/niemal/ taka sama. Stosując wzór Simpsona dla danych "urwanych z przodu"
otrzymuje się zupełnie inne sumowanie niż dla "urwanych z tyłu" (inne
elementy są są wtedy parzyste/nieparzyste). Można potem dodać "urwany"
przedział (ale to nie jest konieczne). Oczywiście dla otrzymania
dokładniejszych wyników można i należy wziąć średnią arytmetyczną wyników
całkowania "urwanego z przodu" i "urwanego z tyłu". Tylko że, surprise,
surprise, dostaje się wtedy po prostu wzór trapezów (kwadraturę
Newtona-Cotesa rzędu 1). Dlaczego tak jest? Między innymi dlatego, że wzór
na całkowanie numeryczne musi mieć "symetrię translacyjną" - tj. zastąpienie
przedziału indeksów [1, n] przez [2, n+1] powinno dawać ten sam wynik z
dokładnością do końcówek [1,2] i [n, n+1]. Tego warunku wzór Simpsona nie
spełnia, a wzór trapezów tak.
Kwadratury Newtona-Cotesa, Gaussa-Czebyszewa itd. powstawały w czasach
"przedkomputerowych". Służyć miały rozwiązaniu problemu: mamy funkcję f i
przedział [a, b] - jak tylko kilkakrotnie ewaluując f obliczyć wartość całki
z f, wiedząc że f jest taka a taka? Kilkakrotnie, tzn. 3-5 razy, bo każde
wyliczenie f trwa długo - papier i ołówek, ew. arytmometr (ale to już raczej
nie czasy Newtona i Gaussa, tylko trochę później).
Jeszcze nieco o całkowaniu metodą Romberga - to nic innego niż zastosowanie
ekstrapolacji Richardsona do całkowania. A ta jest, podobnie jak
ekstrapolacja Aitkena, należy do metod w których rezultaty kilku, coraz
dokładniejszych, obliczeń ekstrapoluje się do wyniku jaki prawdopodobnie
otrzymanoby przy jeszcze większej staranności. Praktycznie, w przypadku
danych stablicowanych oznaczałoby to policzenie metodą trapezów dla co
drugiego punktu (krok 2h) i normalnie (h = x[2] - x[1]), a następnie próbę
odgadnięcia ile to miałoby być dla h/2. Trzeba dodatkowego założenia o
odstępstwie wartości oszacowanych numerycznie od dokładnej. Tymczasem dla
danych stablicowanych takie założenie /może/ nie być prawdziwe - oraz co też
istotne - nie da się obliczyć w razie potrzeby np. wartości f((x[k] +
x[k+1])/2), gdyż formuła dla funkcji f nie jest znana, a interpolacji nie
należy stosować (tzn. można, lecz nie da ona nowych informacji, więc nie ma
sensu robić interpolacji w danych skoro efektywniej jest robić to dla sum).
Praktycznie? W niezłej bibliotece CERNLIB jest TRAPER (D108, Trapezoidal
Rule Integration with an Estimated Error), który - jak pamiętam - wbrew swej
nazwie używa interpolacji parabolicznej pomiędzy dostarczonymi odciętymi.
Lepiej jest używać używać funkcji sklejanych z wielomianów m-tego stopnia,
ale wymaga to rozwiązywania równania trójdiagonalnego, a to przy dużej
ilości danych może prowadzić do dużych błędów z zaokrągleń. Wracamy do
punktu wyjścia - metody Newtona-Cotesa rzędu 1.
Ogólnie sytuacja jest dość nieciekawa i to w tak trywialnie prostych
zagadnieniach, jak obliczanie RMS sygnału audio. Nic lepszego niż trapezy, a
w zasadzie nawet i to nie - bo z wzoru na trapezy wychodzi zwykłe sumowanie
wszystkiego co jest w środku i jeszcze doliczenie tylko połowy końcówek.
slawek
Następne wpisy z tego wątku
- 12.11.12 06:01 slawek
- 12.11.12 06:08 slawek
- 12.11.12 10:46 AK
- 12.11.12 10:48 AK
- 12.11.12 12:53 slawek
- 12.11.12 13:07 slawek
- 12.11.12 13:32 Michoo
- 12.11.12 13:54 slawek
- 12.11.12 14:28 Stachu 'Dozzie' K.
- 12.11.12 14:29 Michoo
- 12.11.12 15:05 R.e.m.e.K
- 12.11.12 15:26 Stregor
- 12.11.12 15:33 R.e.m.e.K
- 12.11.12 15:37 slawek
- 12.11.12 15:40 Baranosiu
Najnowsze wątki z tej grupy
- Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi
- Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- 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
Najnowsze wątki
- 2026-01-29 KSeF - 13 wątpliwości
- 2026-01-29 A ja się pochwalę
- 2026-01-29 Warszawa => Mid/Senior IT Recruiter <=
- 2026-01-29 Warszawa => Senior Java Developer <=
- 2026-01-29 Warszawa => IT Recruiter <=
- 2026-01-28 Degradacja
- 2026-01-28 Wysoki Sąd poinstruował czego unikać wyzywając Owsiaka "Równiejszego"
- 2026-01-28 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2026-01-28 Białystok => Preseles Inżynier (background baz danych) <=
- 2026-01-28 Wrocław => Konsultant wdrożeniowy ERP <=
- 2026-01-28 Łódź => Microsoft Engineer <=
- 2026-01-28 Białystok => Tester manualny <=
- 2026-01-27 Tradycja ciągania posłów po sądach za wystąpienia w Sejmie będzie kontynuowana [Lepper 2]
- 2026-01-27 Pierwszy raz sprzedano więcej samochodów zeeletryfikowanych niż ice
- 2026-01-27 Elektryczny Kałasznikow




Jak kupić pierwsze mieszkanie? Eksperci podpowiadają