Αποστολέας Θέμα: Μέθοδος Newton Raphson  (Αναγνώστηκε 959 φορές)

nikolasmer

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 534
  • There can be only one...may it be AEPP.
Μέθοδος Newton Raphson
« στις: 21 Δεκ 2015, 11:37:32 μμ »
Στην διεύθυνση
https://en.m.wikipedia.org/wiki/Newton–Raphson_method
υπάρχει ένας αλγόριθμος σε ψευδογλώσσα που δυσκολεύομαι να κατανοησω πως ακριβώς δουλεύει. Υπάρχει κανείς που μπορεί να βοηθήσει εξηγώντας τον; Ευχαριστω
Απ' τα τσακάλια δεν γλυτώνεις μ'ευχές ή παρακάλια
(Κ. Βάρναλης)

Μερεντίτης Νικόλαος
Καθηγητής Πληροφορικής - Φροντιστής

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3049
  • to Iterate is human to Recurse divine
Απ: Μέθοδος Newton Raphson
« Απάντηση #1 στις: 22 Δεκ 2015, 09:49:38 πμ »
Η παρακάτω εικόνα είναι χαρακτηριστική
Παρατήρησε πως πλησιάζει το σημείο τομής της εφαπτομένης με τον άξονα των χ, στη ρίζα της συνάρτησης



Ουσιαστικά κάθε βήμα του αλγορίθμου παράγει ένα νέο σημείο. Το σημείο αυτό είναι το σημείο τομής της εφαπτομένης της συνάρτησης με τον άξονα των x. Στη συνέχεια παίρνεις την εφαπτομένη του νέου σημείου και βρίσκεις το νέο σημείο τομής. Αυτή η ακολουθία συγκλίνει στη λύση.

Αν θες τη γνώμη μου πάντως πέρα από το γεωμετρικό δες και την απόδειξη της μεθόδου για να δεις πως προκύπτει από την παράγωγο, με τις διαφορές. Αυτό ίσως σε βοηθήσει περισσότερο στην κατανόηση της μεθόδου
« Τελευταία τροποποίηση: 22 Δεκ 2015, 10:30:58 πμ από evry »
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

itt

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 426
  • Real stupidity beats ΑΙ any time
Απ: Μέθοδος Newton Raphson
« Απάντηση #2 στις: 22 Δεκ 2015, 10:17:52 πμ »
Τι μου θύμισες, κάπου σε έναν δίσκο έχω ένα ξεχασμένο πρόγραμμα σε Fortran 95 που έβγαζε NR.

bugman

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 318
  • The Bug Eater
    • Πληροφορική Προγραμματισμός
Απ: Μέθοδος Newton Raphson
« Απάντηση #3 στις: 22 Δεκ 2015, 10:48:57 πμ »
Τη θυμάμαι τη μέθοδο,ανήκει στα εφαρμοσμένα μαθηματικά. Ο ψευδοκώδικας είναι πολύ απλός. Χρησιμοποιεί ένα μέγιστο αριθμό επαναλήψεων για ασφάλεια, επειδή μπορεί να έχουμε λάθος εκλογή τιμής εκκίνησης. Οπότε πρέπει να δούμε πώς τερματίζει η επανάληψη. Έχει οριστεί μια τιμή Ε όπου αν η παράγωγος είναι μικρότερη, βάζει την απόλυτη τιμή abs() στον έλεγχο συνθήκης, τότε κάνει διακοπή, με άμεση έξοδο. Επίσης έχει και τον έλεγχο της κανονικής συνθήκης, την σύγκριση των δύο τελευταίων τιμών. Να γιατί κρατάει την καινούρια υπολογισμένη στην παλιά.
Προφανώς η απορία θα είναι ή η χρήση του E, ή το break. Το πρώτο είναι θέμα μαθηματικών, το δεύτερο όπως έμαθα εδώ δεν υπάρχει, αλλά μπορεί να γραφεί με τον εξής τρόπο ...με τη χρήση σημαίας. Δηλαδή μια μεταβλητή που το 1 θα σημαίνει διακοπή. Άρα ξεκινάμε με σημαία 0 και σε κάθε περίπτωση ελέγχουμε τη σημαία, αν είναι 1 τότε κάνουμε παράκαμψη. Αυτή γίνεται π.χ.με μια Αν, απλά πρέπει να μπει εδώ  σε δύο στάδια εντός, και ένα στή δομή επανάληψης. Οπότε παρόλο που λέει For στο ψευδοκώδικα, μάλλον θα πάει στο ΌΣΟ με προσθήκη στη συνθήκη ΚΑΙ ΑΑ όπου το ΑΑ να είναι η σημαία. Όλο αυτό το αποφεύγει κανείς με τη διέκοψε, αλλά όπως ξέρουμε..έχει απορριφθεί η χρήση στη ΓΛΩΣΣΑ.

Αθανάσιος Πέρδος

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 288
Απ: Μέθοδος Newton Raphson
« Απάντηση #4 στις: 22 Δεκ 2015, 04:11:30 μμ »
Στην διεύθυνση
https://en.m.wikipedia.org/wiki/Newton–Raphson_method
υπάρχει ένας αλγόριθμος σε ψευδογλώσσα που δυσκολεύομαι να κατανοησω πως ακριβώς δουλεύει. Υπάρχει κανείς που μπορεί να βοηθήσει εξηγώντας τον; Ευχαριστω

Στο νέο βιβλίο - σημειώσεις των ΕΠΑΛ της Β Λυκείου  υπάρχει περιγραφή της μεθόδου στη σελίδα 29 και υλοποίηση στη σελίδα 70. Αν δεν είσαι οπτικός τύπος και δεν έχεις καλυφθεί από τον evry παραπάνω, νομίζω ότι θα βοηθηθείς.


dpa2006

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 614
Απ: Μέθοδος Newton Raphson
« Απάντηση #5 στις: 22 Δεκ 2015, 08:13:28 μμ »
Στην διεύθυνση
https://en.m.wikipedia.org/wiki/Newton–Raphson_method
υπάρχει ένας αλγόριθμος σε ψευδογλώσσα που δυσκολεύομαι να κατανοησω πως ακριβώς δουλεύει. Υπάρχει κανείς που μπορεί να βοηθήσει εξηγώντας τον; Ευχαριστω

Δες κι εδώ σε Matlab
http://www.mathworks.com/matlabcentral/fileexchange/43097-newton-raphson-solver
Εδώ σε Scilab
http://programming-with-scilab.blogspot.gr/2012/04/solution-of-single-non-linear-equation.html
http://www.openeering.com/sites/default/files/Numerical_Analysis_Scilab_Root_Finding_0.pdf
Computer science (abbreviated CS or CompSci) is the scientific and practical approach to computation and its applications. It is the systematic study of the feasibility, structure, expression, and mechanization of the methodical processes (or algorithms) that underlie the acquisition, representation, processing, storage, communication of, and access to information, whether such information is encoded in bits and bytes in a computer memory or transcribed engines and protein structures in a human cell.source:http://en.wikipedia.org/wiki/Computer_science