-
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsfeed.neostrada.pl!a
tlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail
From: "slawek" <s...@h...pl>
Newsgroups: pl.comp.programming
Subject: Re: Pocedura całkowania
Date: Mon, 6 Jul 2009 22:01:34 +0200
Organization: TP - http://www.tp.pl/
Lines: 82
Message-ID: <h2tlp8$7a2$1@nemesis.news.neostrada.pl>
References: <h2t00t$4h$1@atlantis.news.neostrada.pl> <h2t38s$5mu$1@inews.gazeta.pl>
NNTP-Posting-Host: 62.69.219.25
Mime-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-2"; reply-type=original
Content-Transfer-Encoding: 8bit
X-Trace: nemesis.news.neostrada.pl 1246911080 7490 62.69.219.25 (6 Jul 2009 20:11:20
GMT)
X-Complaints-To: u...@n...neostrada.pl
NNTP-Posting-Date: Mon, 6 Jul 2009 20:11:20 +0000 (UTC)
In-Reply-To: <h2t38s$5mu$1@inews.gazeta.pl>
X-Priority: 3
X-MSMail-Priority: Normal
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 14.0.8064.206
X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8064.206
Xref: news-archive.icm.edu.pl pl.comp.programming:182585
[ ukryj nagłówki ]
Użytkownik "Mariusz Marszałkowski" <b...@g...pl> napisał w
wiadomości grup dyskusyjnych:h2t38s$5mu$...@i...gazeta.pl...
> Jeśli funkcja dana jest tablicą to ku ścisłości nie da się policzyć jej
> całki :) Pomijając ten mankament, lepsze wyniki uzyska się wtedy gdy
> się zastosuje lepszą aproksymację przebiegu pomiędzy znanymi wartościami.
> A nie znając oryginalnej funkcji, nie wiadomo jak ją lepiej aproksymować
> :)
Po prostu wierzymy iż pewna funkcja czasu u(t), która - jeżeli pominiemy
problemy czysto filozoficzne - opisuje ewolucję pewnego układu. Istnieje też
model matematyczny, który określa zależności jakie powinna spełniać pewna
funkcja psi(t), która - biorąc pod uwagę nasze ograniczenia - jest w
zasadzie równa u(t), a w każdym razie - niezłym jej przybliżeniem. Funkcja
psi jest ciągła (w danym przypadku), klasy C^n, może spełniać jeszcze
rozmaite warunki (np. na wartość asymptotyczną itd. itp.)
Teraz chcemy zbudować model numeryczny. Funkcja psi była i ciągła i miała
jako dziedzinę R. A komputer liczy na podzbiorze (o skończonej mocy) liczb
wymiernych. Nawet zapominając o tym że R i liczby Real to trochę dwie różne
rzeczy - i tak będziemy mieli szeregi skończone zamiast funkcji (rozumianych
jako odwzorowanie). Mamy teraz jakieś ciągi x[1], x[2], ..., x[n] oraz
y[1],y[2],...,y[n] i uważamy że one są takie że norma[ y[k] - psi(x[k])]
jest ogólnie mówiąc mała. Ale że nie mamy pojęcia jakie jest psi, to
wymyślamy sobie jakąś funkcję f, taką że norma[y[k] - f(x[k])] jest mała. I
pewnie wtedy funkcja f nienajgorzej aproksymuje funkcje psi, która z kolei
ma coś wspólnego z u(t), czyli f jakoś tak opisuje u(t). A całka z f
jakośtam ma się do całki z u.
Jeżeli całkujemy numerycznie po dyskretnych punktach - to aby to było
możliwe - konstruujemy sobie jakąś funkcję f. I jeżeli wzór jest wzorem
trapezów - to f jest łamaną, czyli w niektórych miejscach nie ma pochodnej.
Ale z jakiś powodów - np. wiemy że psi spełnia pewne rr czy jeszcze z innych
przyczyn - wiemy że f powinno być np. klasy C^n lub nawet C^nieskończoność.
I wtedy chyba lepiej aproksymować funkcjami sklejanymi wyższego nieco
stopnia. To zapewni że tam gdzie trzeba zrobić coś z obliczonymi punktami
funkcji f - da się zrobić (np. gdy potrzebna będzie 2-ga pochodna to można
ją policzyć będzie). Całe te całkowanie numeryczne to de facto całkowanie
funkcji aproksymującej.
Więc po prostu są dwie sprawy:
- da się czasem wiedzieć coś więcej o przebiegu funkcji - i najczęściej nie
jest to coś, co skłania do wzoru trapezów;
- aproksymacja łamaną nie jest w żadnym razie standardową, bo łamana nie
jest niczym lepsza niż np. sinusoida.
> Podstawowa metoda to zwiększanie "n" i użycie trapezów, niestety wraz
> ze wzrostem "n" wydłuża się czas - ale to wszystko z pewnością już wiesz
> :)
Niezupełnie. Aby zwiększyć n, trzeba popracować - koszt O(n^3) operacji się
mści. Ba, samo całkowanie nie jest sztuką dla sztuki - lecz właśnie jest
potrzebne do wyznaczania właśnie tych y[k] dla k=1,2,...,n Okazało się, że
przejście od trapezów do kubicznych splineów dało możliwość zaoszczędzenia
10 razy na n. Czyli 1000 krotnie szybciej jest. Ale nadal spline'y (jako
aproksymacja i sumowanie całki obliczonej analitycznie pod splinem o danych
współczynnikach) to chyba nie jest to co lubię najbardziej - choć sam
algorytm jest kompaktowy - jakieś 30 linijek, może 50. Ale właśnie szukam
czegoś lepszego - może mieć i 1000 linijek lub sam-nie-wiem-co.
> Nie wspominasz nic o metodzie montecarlo, ale jej dokładność także
> będzie zależała od dokładności aproksymacji wewnątrz przedziałów :)
Monte Carlo do tego się nie nadaje. Dane są "już" w postaci tablicy. Proste
sumowanie jej elementów będzie dokładniejsze i szybsze. W zasadzie i tak
takie sumowanie to metoda trapezów. W MC są narzuty na generowanie liczb
losowych itd. itp. - to się opłaca w niektórych przypadkach - ale chyba
właśnie nie przy takim jednowymiarowym całkowaniu.
> Nie masz takiej możliwości aby jako parametr funkcji całkującej przekazać
> funkcję całkowaną zamiast tablicy jej wartości?
Nie, tzn. np. wyznaczenie jakiegokolwiek y=f( ( x[k]+x[k+1] ) / 2 )
wymagałoby wyliczenia WSZYSTKICH "wartości pomiędzy", czyli (x[m]+x[m+1])/2
, dla m < k . To delikatnie mówiąc nie jest zbyt komfortowe - bo jak tu np.
marzyć o zmiennym kroku itd. itp.?!
slawek
Następne wpisy z tego wątku
- 06.07.09 20:06 slawek
- 06.07.09 20:09 slawek
- 06.07.09 20:18 slawek
- 06.07.09 20:24 Mariusz Marszałkowski
- 06.07.09 20:28 slawek
- 06.07.09 20:45 slawek
- 06.07.09 20:54 bartekltg
- 06.07.09 21:11 Mariusz Marszałkowski
- 06.07.09 21:11 Wit Jakuczun
- 07.07.09 05:34 slawek
- 07.07.09 05:46 slawek
- 07.07.09 05:59 Wit Jakuczun
- 07.07.09 06:06 Tomasz Kaczanowski
- 07.07.09 06:54 slawek
- 07.07.09 07:34 Wit Jakuczun
Najnowsze wątki z tej grupy
- 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
- ,,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!!!
Najnowsze wątki
- 2026-01-06 Rozwód w Santanderze z prostokątną kobietą...
- 2026-01-06 Skąd diody LED 1,5V?
- 2026-01-06 Nowum!!! -- Moje ID
- 2026-01-06 Metoda na fotoradar
- 2026-01-05 I jeszcze jeden
- 2026-01-05 Jaworek;)
- 2026-01-05 Warszawa => Project Manager (AI and innovation) <=
- 2026-01-05 Gdańsk => Konsultant ERP Microsoft Dynamics 365 Commerce <=
- 2026-01-05 Jeśli nie było "aktu wojny" to była "zorganizowana grupa przestępcza" (terroryści) dokonująca zabójstw?
- 2026-01-05 Walka Lewicy o B2B na etat
- 2026-01-05 zamiana B2B na etat
- 2026-01-05 Wykonanie w USA zagranicznych nakazów aresztowań bez udziału USA na (byłych) prezydentów też będzie legalne?
- 2026-01-04 Apollo Comm
- 2026-01-04 Kupować SREBRO?
- 2026-01-04 PICkit3 mnie pokonał




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]