[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

scorpion126
Użytkownik
Użytkownik
Posty: 9
Rejestracja: 25 wrz 2011, o 16:11
Płeć: Mężczyzna
Lokalizacja: Polska
Podziękował: 2 razy

[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

Post autor: scorpion126 »

Witam

W tym wątku: 218692.htm
znalazłem to czego szukałem. Tylko nie rozumiem 1 rzeczy jak z tego wzoru:

\(\displaystyle{ \sin x = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2k+1)!} \cdot x^{2k+1}}\)

w implementacji pojawia się:

Kod: Zaznacz cały

(2*n*(2*n+1))
Mógłby mi to ktoś wytłumaczyć/ wyprowadzić ? bo nie mogę tego zrozumieć

Kod: Zaznacz cały

double sinus(double x)
{
   double wyraz=x, kwadrat=x*x, suma=x;
   int n=1;

   while(fabs(wyraz)>EPS)
   {
      wyraz*=-kwadrat/(2*n*(2*n+1));
      suma+=wyraz;
      n++;
   }
   return suma;
}
}
Ostatnio zmieniony 25 wrz 2011, o 19:41 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
miodzio1988

[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

Post autor: miodzio1988 »

rozpisz sobie jak działa silnia. Kilka pierwszych wyrazow
scorpion126
Użytkownik
Użytkownik
Posty: 9
Rejestracja: 25 wrz 2011, o 16:11
Płeć: Mężczyzna
Lokalizacja: Polska
Podziękował: 2 razy

[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

Post autor: scorpion126 »

wiem jak wygladaja pierwsze wyrazy


\(\displaystyle{ \sin x = x - \frac{x^3}{3!} + \frac{x^5}{5!}}\)

ale jak probuje rozpisać

\(\displaystyle{ a_{k} = (-1)^k * \frac{x^{2k+1}}{(2k+1)!}}\)
\(\displaystyle{ a_{k+1} = (-1)^{k+1} * \frac{x ^{2(k+1)+1} }{(2(k+1)+1)!} = (-1)^k*(-1) * \frac{x^{2k+3}}{(2k+3)!}=(-1)^k*(-1) * \frac{x^{2k+1}*x^2}{(2k+1)!*(2k+3)*(2k+2)}= a_{k}*\frac{-x^2}{(2k+3)*(2k+2)}}\)

co nie jest równe

\(\displaystyle{ a_{k}*\frac{-x^2}{(2k)*(2k+1)}}\)

gdzie robie błąd?
aalmond
Użytkownik
Użytkownik
Posty: 2911
Rejestracja: 1 maja 2006, o 21:13
Płeć: Mężczyzna
Lokalizacja: Kraków
Pomógł: 623 razy

[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

Post autor: aalmond »

W międzyczasie następuje inkrementacja.
scorpion126
Użytkownik
Użytkownik
Posty: 9
Rejestracja: 25 wrz 2011, o 16:11
Płeć: Mężczyzna
Lokalizacja: Polska
Podziękował: 2 razy

[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

Post autor: scorpion126 »

nie rozumiem można jaśniej?
aalmond
Użytkownik
Użytkownik
Posty: 2911
Rejestracja: 1 maja 2006, o 21:13
Płeć: Mężczyzna
Lokalizacja: Kraków
Pomógł: 623 razy

[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

Post autor: aalmond »

W każdym cyklu pętli while wartość \(\displaystyle{ k}\) zwiększa się o jeden
Xitami

[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

Post autor: Xitami »

Kod: Zaznacz cały

float Sin(float OOO){
        float O0O=OOO,OO0=OOO;OOO*=OOO;
        int  O00='/'/'/'<<001;
        while(O0O) 
                OO0-=O0O*=OOO/O00++/++O00,
        OO0+=O0O*=OOO/O00++/++O00; 
        return OO0;
}
scorpion126
Użytkownik
Użytkownik
Posty: 9
Rejestracja: 25 wrz 2011, o 16:11
Płeć: Mężczyzna
Lokalizacja: Polska
Podziękował: 2 razy

[Algorytmy] Aproksymacja funkcji sinus szeregiem Taylora

Post autor: scorpion126 »

OK już wiem o co chodzi. dziękuję wszystkim serdecznie za pomoc
ODPOWIEDZ