Obliczasz szereg oscylacyjny z dużą precyzją?


13

Załóżmy, że mam następującą interesującą funkcję: Ma pewne nieprzyjemne właściwości, takie jak jego pochodna, która nie jest ciągła przy racjonalnych wielokrotnościach . Podejrzewam, że zamknięty formularz nie istnieje.π

f(x)=k1coskxk2(2coskx).
π

Mogę to obliczyć, obliczając sumy częściowe i używając ekstrapolacji Richardsona, ale problem polega na tym, że zbyt wolno jest obliczać funkcję z dużą liczbą cyfr dziesiętnych (na przykład 100 byłoby fajne).

Czy istnieje metoda, która lepiej poradzi sobie z tą funkcją?

Oto wykres z kilkoma artefaktami:f(πx)

Pochodna funkcji, $ f '(\ pi x) $


1
Być może możesz użyć faktu, że , gdzie jest wielomianem . Następnie sumowanie zaczyna wyglądać jak seria racjonalnych wielomianów. Następnie, jeśli uda się przekształcić serię w racjonalny wielomian w oparciu o Czebiszewa, pozwoli to na bardzo skuteczny sposób podsumowania. Jeśli nie znasz wielomianów i podstaw Czebiszewa , Przepisy numeryczne w C mają dobry starter, a także: www2.maths.ox.ac.uk/chebfun/ATAP/ATAPfirst6chapters.pdfT k ( x )cos(kx)=Tk(x)Tk(x)
Jay Lemmon

1
er, to powinno powiedziećcos(kx)=Tk(cos(x))
Jay Lemmon

@JayLemmon Dziękujemy za ten link. Zajrzę i zobaczę, czy to pomoże.
Kirill

Dołączam do tej imprezy trochę później, ale czy próbowałeś użyć przybliżeń Padé, tj. Varepsilon -Algorytm zamiast ekstrapolacji Richardsona? ε
Pedro

Analogicznie do przypadku całek silnie oscylacyjnych, nie sądzę, że będziesz w stanie wykonać dobrą robotę bez pewnej wiedzy na temat rozdziału części oscylacyjnych od nieoscylacyjnych. Jeśli masz takie rozdzielenie, odpowiedź z serii Fouriera zapewnia łatwą konwergencję wykładniczą.
Geoffrey Irving

Odpowiedzi:


7

Jeśli techniki analityczne są niedozwolone, ale znana jest struktura okresowa, oto jedno podejście. Niech będzie okresowe z okresem , tak aby gdzie Tak więc Możesz albo zbliżyć całki bezpośrednio, albo obliczyć kilka 2πg(x)=jwjeijxwj=1

g(x)=cosx2cosx
2π
g(x)=jwjeijx
wj=12π02πg(x)eijxdx
f(x)=k1g(kx)kp=k11kpjwjeijkx=jwjk1(eijx)kkp=jwjLip(eijx)
wjf(x)wartości i użyj DFT. W obu przypadkach można potencjalnie zastosować ekstrapolację Richardsona do wyniku. Ponieważ w twoim przypadku jest analityczne w sąsiedztwie , końcowa seria zbiega się wykładniczo nawet bez Richardsona.g(x)R

Zakładam, że masz na myśli ? g(x)=cos(x)/(2cos(x))
Geoff Oxberry

3

Dla ze liczbą całkowitą mamy gdzie jest funkcją trygammy ( http://en.wikipedia.org/wiki/Polygamma ). Oto wykresy funkcji i jej pochodnej z usuniętymi artefaktami: x=2πa/ba,b ψ1(z)

f(x)=k1coskxk2(2coskx)=k=1bcoskx2coskxn01(k+bn)2=k=1bcoskx2coskxψ1(k/b)b2
ψ1(z)Wartości i pochodne dla serii

Dziękuję Ci. Problem polega na tym, że wybrałem tę konkretną funkcję jako model innej, bardziej skomplikowanej funkcji, którą tak naprawdę chciałem ocenić, mając podobne cechy, ale w rzeczywistości nie takie same. Znam zamknięty formularz z tego pytania na MSE . Miałem na myśli to pytanie o sumowanie nieskończonej serii numerycznie bez formy zamkniętej.
Kirill

Może moja inna odpowiedź jest lepsza?
Geoffrey Irving

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.