matematykaszkolna.pl
oprogramowanie granicy ciągu ,różniczkowanie numeryczne Mariusz: using System; namespace NamespaceName { public class ClassName { public static void Main(string[] args) { double[] c; int n; double x1,x2; Console.WriteLine("Podaj punkt dla którego chcesz policzyć ciąg współczynników kierunkowych siecznych"); double.TryParse(Console.ReadLine(),out x1); Console.WriteLine("Podaj punkt startowy dla ciągu współczynników kierunkowych siecznych"); double.TryParse(Console.ReadLine(),out x2); Console.WriteLine("Podaj liczbę wyrazów ciągu"); int.TryParse(Console.ReadLine(),out n); c = new double[n]; DiffQuotSeq(x1,x2,n,Math.Atan,c); foreach(double item in c) { Console.WriteLine("{0}" ,item); } } public static void DiffQuotSeq(double x1,double x2,int n,Func<double,double> f,double[] c) { double step = (x2−x1)/n; Array.Clear(c,0,c.Length); for(int k=0;k<n;k++) { c[k] = (double) (f(x2) − f(x1))/(x2 − x1); x2 −= step; } } } } Powyższy program oblicza n początkowych wyrazów pewnego ciągu Pytanie jak policzyć granicę tego ciągu Problem w tym że zapisać mogę tylko skończoną liczbę początkowych wyrazów ciągu a aby liczba g była granicą ciągu to prawie wszystkie wyrazy ciągu muszą się znajdować w pewnym otoczeniu liczby g (prawie wszystkie czyli wszystkie poza być może skończoną liczbą wyrazów)
31 paź 01:42
wredulus_pospolitus: Uwaga −−− nie jestem programistą Jeśli chodzi o samo wypisywanie 'nieskończonej' liczby wyrazów, to: Czy nie lepiej skorzystać z dynamicznej tablicy długości (powiedzmy 100) i na ich podstawie 'korygujesz' liczbę g
31 paź 08:57
wredulus_pospolitus: Tfuuu .... nie z dynamicznej tablicy ... co przesuwasz wyrazy w tablicy (wywalasz ostatni wyraz, który robi miejsce kolejnemu)
31 paź 08:58
wredulus_pospolitus: Innym sposobem jaki sobie wymyśliłem to użycie jakiegoś typu średniej kroczącej, i tu przychodzi mi do głowy przede wszystkim EWMA. Pytanie tylko − jak z niej później 'wyłuskać' dokładną wartość granicy
31 paź 09:00
wredulus_pospolitus: To oczywiście by trzeba było przetestować 'kąśliwymi' przykładami, ale wydaje mi się, że gdyby program miałby wypluwać wartość granicy z dokładnością do 'n' miejsc po przecinku, to bym zastosował średnią EWMA10 (im mniejsza wartość tym bardziej 'uzależniona' od ostatnich rekordów/wyrazów ciągu) i badał kiedy różnica pomiędzy 'starą' a 'nową' wartością jest mniejsza niż na przykład 10−m gdzie m>n tylko pytanie jak dużo większe.
31 paź 09:16
wredulus_pospolitus: EWMA10 im mniejsza wartość tutaj, tym większe 'uzależnienie' (czułość) średnia EWMAk ma na ostatnie występujące wyrazy.
31 paź 09:17
. : I jeszcze jedna sprawa − od razu trzeba też się zastanowić czy program ten ma za zadanie 'wyluskac' że ciąg nie posiada granicy czy też przyjmuje się że jedynie zbieżne ciągi będą tu wklepywane.
31 paź 09:22
Mariusz: " gdyby program miałby wypluwać wartość granicy z dokładnością do 'n' miejsc po przecinku" O to mniej więcej mi chodziło Problem w tym że mamy do dyspozycji tylko podciąg ciągu współczynników kierunkowych siecznych o skończonej liczbie wyrazów "czy program ten ma za zadanie 'wyluskac' że ciąg nie posiada granicy " O to też byłoby przydatne Ciekawe co numerycy robią Chyba ograniczają się do ilorazów różnicowych i używają trzech ilorazów
1 lis 07:12
wredulus_pospolitus: Mariusz −−− wracając do 'źródła' problemu. Zamiast dzielić odcinek (x1, x2) na n równych części i wtedy sposób dostawać elementy ciągu,
 x1+x2 
stwórz inny ciąg: x2 =

 2 
w ten sposób uzyskujesz nieskończony ciąg i musisz tylko dać jakąś komendę do sprawdzenia czy 'wartość granicy' w kolejnym kroku już się nie zmienia (biorąc pod uwagę dokładność jaką chcesz uzyskać). Ja bym jeszcze się pobawił i dał jakiś 'licznik' tak aby co jakiś czas program wywalał okienko z informacją: "mamy problem z dokładnością − po wykonaniu 'x' iteracji nadal mamy różnicę równą 'ε' − czy chcesz kontynuować", co by nie wpaść w nieskończoną pętle w momencie gdybyśmy mieli doczynienia z jakąś 'wredną funkcją' (np. f(x) = sin(1/x) dla x1 = 0) Następnie pozostaje kwestia także takich funkcji jak chociażby f(x) = |x| ... dlatego warto po 'dojściu' z jednej strony (dla x2 > x1) zrobić także z drugiej strony (czyli x2 = 2x1 − x2) i dodać warunek, że "granice mają się sobie równać".
1 lis 11:32
Mariusz: wredulus a tak zmieniając temat Ostatnio bawiłem się trochę wielomianami ortogonalnymi Gdybym rozpoczął wątek o tych wielomianach to czy napisałbyś mi kilka przydatnych rzeczy? Do tej pory udało mi się wyprowadzić wzór na wielomiany Hermite z równania rekurencyjnego Do wyprowadzenia wzoru na wielomiany Laguerre z równania różniczkowego brakuje mi tego skąd wziąć wyraz wolny (Odgadłem że będzie to jedynka ale przydałoby się to uzasadnić) Jeżeli chodzi o wielomiany Legendre to wychodząc z równania rekurencyjnego udało mi się wyprowadzić jedynie wzór na funkcję tworzącą ale nie udało mi się tej rozwinąć (Próbowałem ją rozwijać z dwumianu Newtona) Jeżeli chodzi o wielomiany Czebyszowa to wychodząc z równania rekurencyjnego otrzymałem podwójną sumę w której zmiana kolejności sumowania byłaby pomocna ale nie wiem czy poprawnie ją wykonałem no i nie mam pomysłu na policzenie tej sumy która pozostanie Z równania różniczkowego otrzymałem wzór na współczynniki wyrażony za pomocą iloczynu (różni się on jednak od tego co podają w tablicach i wikipediach ale za to działa także dla n=0 a ten w tablicach i wikipediach już nie) Istnieją jeszcze wielomiany Czebyszowa drugiego rodzaju ale można je uzyskać różniczkując jednokrotnie po x wielomiany Czebyszowa pierwszego rodzaju poza tym w tablicach napisali że są stosowane znacznie rzadziej
 1 d 
Un(x) =


Tn+1(x)
 n+1 dx 
2 lis 04:28
wredulus_pospolitus: @Mariusz −−− niestety, ja nie będę dobrą osobą do dyskusji w tych tematach, ja nie mam styczności na co dzień z taką matematyką ... najpierw bym musiał sobie przypomnieć o tych wielomianach, związku z tym − ja raczej nie jestem dobrym adresem
2 lis 23:00
jc: Mariusz, ładny niedługi tekst o wielomianach ortogonalnych znajdziesz pod koniec I tomu książki Byrona i Fullera Matematyka w fizyce klasycznej i kwantowej. Są tam opisane wszystkie wielomiany powiązane liniowym równanie różniczkowym 2 rzędu. Nie znajdziesz tam np. wielomianów Meixnera (wielomiany ortogonalne względem wagi 1/cosh x na prostej) i wielu innych (wagi możesz dobierać dość dowolnie).
2 lis 23:17
Mariusz: Ja równania różniczkowe których całkami szczególnymi są wymienone przeze mnie wielomiany wziąłem z książki Franciszka Lei która była polecana studentom pierwszego roku natomiast równanie którego całką szczególną są wielomiany Czebyszowa można łatwo wyprowadzić bo znany jest wzór trygonometryczny Chciałem tylko wiedzieć czy gdybym rozpoczął nowy wątek to napisalibyście mi kilka przydatnych rzeczy takich jak skąd wziąć warunki początkowe do tych równań linowych Jak rozwinąć funkcję tworzącą w szereg Jak wyprowadzić wzór Rodriguesa (Wielomiany te można uzyskać różniczkując funkcję tworzącą po t, natomiast we wzorze Rodriguesa występuje różniczkowanie po x więc może dobrym punktem wyjścia do uzyskania wzoru Rodriguesa byłaby funkcja tworząca) Jak pokazać że wielomiany te rzeczywiście są ortogonalne −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− Wracając do tematu to podany przez wredulusa sposób tworzenia ciągu ilorazów wydaje się być szybciej zbieżny Jak jednak numerycy liczą wartość pochodnej w punkcie ? Mają trzy ilorazy różnicowe ale chyba nie bawią się w tworzenie ciągu i liczenie jego granicy
3 lis 04:15
ABC: "Jak jednak numerycy liczą wartość pochodnej w punkcie ?" to temat rzeka , zasadniczy podział metod jest na 2 grupy: − metoda różnic skończonych −metoda funkcji aproksymującej w metodzie różnic są w użyciu wzory dużo bardziej skomplikowane niż iloraz różnicowy
3 lis 06:29
Mariusz: Ja podszedłem do tematu od strony matematycznej definicji pochodnej funkcji w punkcie ale to podejście się chyba nie nadaje do numerycznego obliczania przybliżonej wartości pochodnej funkcji w punkcie
3 lis 07:21
3 lis 12:29
Mariusz: ABC zajrzałbyś do tematu ? https://matematykaszkolna.pl/forum/418172.html Ja tam wrzuciłem odnośnik do tematu z matematyka.pl gdzie w jednym z wpisów Qń podał pewne przekształcenie i nic więcej o nim nie napisał a wydaje mi się że mogłoby mi się przydać
5 lis 09:02