Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 27 lis 2024, o 23:22


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 14 gru 2015, o 17:00 
Offline
Nowy

Dołączył(a): 29 maja 2015
Posty: 14
Pomógł: 0

Witam z góry przepraszam ,że pisze nie na temat procków , ale to forum to moja ostatnia deska ratunku ,gdyż na studiach dostałem zadanie na obliczenie pierwiastka równania nieliniowego metodą iteracji prostej w c++
cos(x)+1/(x+2)=0
f'(x)=(-1/(2+x)^2)-sin(x)
z avrami jeszcze daje radę ale z tym mam kłopot jakby ktoś miał ochotę prosiłbym o pomoc , albo jakby ktoś wiedział gdzie można znaleźć rozwiązanie .Z góry dziękuję i przepraszam ,że nie o prockach.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2015, o 19:48 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 kwi 2013
Posty: 418
Lokalizacja: Rzeszów
Pomógł: 102

Rozwiązanie: http://www.wolframalpha.com/input/?i=co ... 2B2%29%3D0

Ilość pierwiastków jest nieskończona ponieważ mamy do czynienia z funkcją okresową "cos".



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2015, o 19:54 
Offline
Nowy

Dołączył(a): 29 maja 2015
Posty: 14
Pomógł: 0

Super a masz pomysł jak napisać do tego program ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 gru 2015, o 22:57 
Offline
Użytkownik

Dołączył(a): 16 sty 2015
Posty: 84
Pomógł: 6

masz znaleźć wszystkie pierwiastki czy tylko jeden?

Jeśli jeden to rozwiązanie jest bardzo proste robi się to metodą Newtona
https://pl.wikipedia.org/wiki/Metoda_Newtona

jeśli chodzi o znalezienie jakiejś metody na znalezienie np. kolejnych 5 miejsc zerowych to sprawa się komplikuje i nie widzę żadnego rozwiązania które zadziała zawsze - ale możesz heurystycznie podejść do sprawy i założyć że rozwiązania będą występowały co mniej więcej 2pi albo spróbować korzystać z ciągłości funkcji i z tego że jeśli znajdziesz jakąś dodatnią wartość funkcji i jakąś ujemną to gdzieś po środku będzie miejsce zerowe - do tego stosujesz bisekcję, ale w ten sposób nie będziesz 100% pewien że Ci nie ucieknie żadne miejsce zerowe

Jeszcze wpadłem na pomysł w jaki sposób trafiać dowolną ilość pierwiastków w kolejności.
Policz jeszcze drugą pochodną (możesz nawet wykorzystać wolframa do tego) i stosuj metodę Newtona najpierw do sprawdzenia gdzie zeruje się funkcja podstawowa a następnie przesuwasz argument o jakiś mały krok i z tamtego miejsca szukasz miejsca gdzie zeruje się pierwsza pochodna (wykorzystując do tego drugą pochodną) a następnie znów przesuwasz się o jakiś mały offset i zapętlasz.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO