ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 3 Ο ΕΞΑΜΗΝΟ, ΔΙΔΑΣΚΩΝ: Δρ Ιωάννης Αθ. Σταυράκης

Σχετικά έγγραφα
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ - ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 3 Ο ΕΞΑΜΗΝΟ, ΔΙΔΑΣΚΩΝ: Δρ Ιωάννης Αθ.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ - ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 3 Ο ΕΞΑΜΗΝΟ, ΔΙΔΑΣΚΩΝ: Δρ Ιωάννης Αθ.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ - ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 3 Ο ΕΞΑΜΗΝΟ, ΔΙΔΑΣΚΩΝ: Δρ Ιωάννης Αθ.

ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 3 Ο ΕΞΑΜΗΝΟ, ΔΙΔΑΣΚΩΝ: Δρ Ιωάννης Αθ. Σταυράκης

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ - ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 3 Ο ΕΞΑΜΗΝΟ, ΔΙΔΑΣΚΩΝ: Δρ Ιωάννης Αθ.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ - ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 3 Ο ΕΞΑΜΗΝΟ, ΔΙΔΑΣΚΩΝ: Δρ Ιωάννης Αθ.

Ένα πρόβλημα στη μετεωρολογία

Υπολογιστές Ι. Άδειες Χρήσης. Πολυδιάστατοι πίνακες. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

Τμήμα Φυσικής Πανεπιστημίου Κύπρου Εαρινό Εξάμηνο 2015/2016. ΦΥΣ145 Υπολογιστικές Μέθοδοι στην Φυσική

ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 2004, 3 Ο ΕΞΑΜΗΝΟ ΕΡΓΑΣΙΑ #4: ΠΑΡΕΜΒΟΛΗ

Εισαγωγή στον Προγραμματισμό Η/Υ για Χημικούς Μηχανικούς

Πίνακες. (i) FORTRAN και Αντικειµενοστραφής Προγραµµατισµός

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

Πίνακες. FORTRAN και Αντικειμενοστραφής Προγραμματισμός

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 2004, 3 Ο ΕΞΑΜΗΝΟ ΕΡΓΑΣΙΑ #5: ΑΡΙΘΜΗΤΙΚΗ ΟΛΟΚΛΗΡΩΣΗ

Υπο-προγράμματα στη Fortran

Εισαγωγή στη Fortran. Μάθημα 1 ο. Ελευθερία Λιούκα

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 8)

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι είναι μια υπορουτίνα; με υπορουτίνα ΥΠΟΡΟΥΤΙΝΕΣ. Παράδειγμα #1: η πράξη SQ. Ποια η διαφορά συναρτήσεων και υπορουτίνων;

Μονοδιάστατοι πίνακες

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Δρ. Ιωάννης Λυχναρόπουλος Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας

Υπολογιστές Ι. Άδειες Χρήσης. Υποπρογράμματα. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Λύσεις ασκήσεων Άσκηση 1: Cengel and Ghajar, Κεφάλαιο 13: Προβλήματα και

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Γιατί πολυδιάστατους πίνακες; ΠΟΛΥΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ. Δήλωση πολυδιάστατων πινάκων. Δήλωση πολυδιάστατων πινάκων

ΦΥΣ 145 Υπολογιστικές Μέθοδοι στη Φυσική. Πρόοδος 26 Μαρτίου 2007 Ομάδα 1 η

Εφαρμοσμένα Μαθηματικά 3η εργαστηριακή άσκηση

Fortran και Αντικειμενοστραφής προγραμματισμός.

Oι εντολές COMMON και PARAMETER

Παράδειγμα #4 EΠΙΛΥΣΗ ΓΡΑΜΜΙΚΩΝ ΑΛΓΕΒΡΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΜΕΘΟΔΟΥΣ ΕΠΙΜΕΛΕΙΑ: Ν. Βασιλειάδης

8 FORTRAN 77/90/95/2003

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος

Ασκήσεις Γενικά Μαθηµατικά Ι Οµάδα 5 (λύσεις)

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΙΝΑΚΕΣ. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Αριθμητική Ανάλυση και Εφαρμογές

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΙΝΑΚΕΣ. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Fortran και Αντικειμενοστραφής προγραμματισμός.

Μονοδιάστατοι πίνακες

Ενότητα 1 Διάλεξη 3. Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού. Σιέττος Κωνσταντίνος

Συνάρτηση Διαδικασία

ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική. Πρόοδος 13 Μαρτίου 2010 Οµάδα

Εισαγωγή στη χρήση Η/Υ. Αναγνωστοπούλου Χριστίνα Λέκτορας

Ενότητα 1 Διάλεξη 4. Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού. Σιέττος Κωνσταντίνος

Δομή προγράμματος στη Fortran

Συνοπτική εισαγωγή στην γλώσσα FORTRAN Μάριος Βαφειάδης Αν.Καθηγητής ΑΠΘ. Θεσσαλονίκη 2004

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Παράδειγμα #9 ΠΡΟΒΛΗΜΑΤΑ ΔΥΟ ΟΡΙΑΚΩΝ ΤΙΜΩΝ ΕΛΛΕΙΠΤΙΚΕΣ ΣΔΕ ΕΠΙΜΕΛΕΙΑ: Ν. Βασιλειάδης

ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, , 3 Ο ΕΞΑΜΗΝΟ ΑΠΑΝΤΗΣΕΙΣ ΕΡΓΑΣΙΑΣ #3: ΠΑΡΕΜΒΟΛΗ ΕΠΙΜΕΛΕΙΑ: Σ. Μισδανίτης

ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, , 3 ο ΕΞΑΜΗΝΟ ΑΠΑΝΤΗΣΕΙΣ ΕΡΓΑΣΙΑΣ #1: ΑΡΙΘΜΗΤΙΚΗ ΚΙΝΗΤΗΣ ΥΠΟ ΙΑΣΤΟΛΗΣ ΚΑΙ ΡΙΖΕΣ ΕΞΙΣΩΣΕΩΝ ΕΠΙΜΕΛΕΙΑ: Σ.

πεπερασμένη ή Η αναλυτική λύση της διαφορικής εξίσωσης δίνεται με τη βοήθεια του Mathematica: DSolve u'' r 1 u' r 1, u 1 0, u' 0 0,u r,r

ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική. Πρόοδος 28 Μαρτίου 2009 Οµάδα 1 η

Διαφάνειες παρουσιάσεων Αρχικές Διαφάνειες σε Pascal: Σ.Ζάχος, Ν.Παπασπύρου Προσαρμογή σε Fortran: Α.Παγουρτζής, Δ.Σούλιου

Παράδειγμα #5 ΕΠΙΛΥΣΗ ΓΡΑΜΜΙΚΩΝ & ΜΗ ΓΡΑΜΜΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΕΠΙΜΕΛΕΙΑ: Σ. Βαρούτης

0.5, Μεταφορά θερμότητας ανάμεσα σε κυλίνδρους μεγάλου μήκους (χωρίς ασπίδα):

Επιμέλεια απαντήσεων: Ιωάννης Λυχναρόπουλος

ΚΩ ΙΚΑΣ ΕΠΙΛΥΣΗΣ ΜΕΤΑΦΟΡΑΣ ΘΕΡΜΟΤΗΤΑΣ ΜΕ ΑΚΤΙΝΟΒΟΛΙΑ ΣΕ ΚΛΕΙΣΤΕΣ ΚΟΙΛΟΤΗΤΕΣ ΜΕ ΙΑΧΥΤΙΚΕΣ ΚΑΙ ΓΚΡΙΖΕΣ ΕΠΙΦΑΝΕΙΕΣ

Δομή προγράμματος στη Fortran

0.1 Εκχειλίσεις κατά την Επίλυση Τετραγωνικής Εξίσωσης

Παράδειγμα #5 EΠΙΛΥΣΗ ΜΗ ΓΡΑΜΜΙΚΩΝ ΑΛΓΕΒΡΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΜΕΘΟΔΟ NEWTON ΕΠΙΜΕΛΕΙΑ: Ν. Βασιλειάδης. ( k ) ( k)

ΕΙ ΑΓΩΓΉ ΣΗΝ FORTRAN

Δομή του προγράμματος

Κεφάλαιο 7: Υπορουτίνες

Άσκηση 1. Α. Υπολογίστε χωρίς να εκτελέσετε κώδικα FORTRAN τα παρακάτω: Ποιά είναι η τελική τιμή του Z στα παρακάτω κομμάτια κώδικα FORTRAN:

ΦΥΣ 145 Μαθηματικές Μέθοδοι στη Φυσική. Γράψτε το ονοματεπώνυμο και αριθμό ταυτότητάς σας στο πάνω μέρος της αυτής της σελίδας.

Η πλήρως ανεπτυγµένη ροή λόγω διαφοράς πίεσης σε κυλινδρικό αγωγό περιγράφεται από την συνήθη διαφορική εξίσωση

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 7)

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι είναι μια συνάρτηση; ΣΥΝΑΡΤΗΣΕΙΣ. Δήλωση συνάρτησης sq. Παράδειγμα συνάρτησης: υπολογισμός τετραγώνου

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 7)

Εισαγωγή στον Προγραμματισμό Η/Υ για Χημικούς Μηχανικούς

Κεφάλαιο 7ο: Συναρτήσεις και Υπορουτίνες

ΦΥΣ 145 Υπολογιστικές Μέθοδοι στη Φυσική. Πρόοδος 26 Μαρτίου 2007 Ομάδα 1 η

Fortran και Αντικειμενοστραφής προγραμματισμός.

Μονοδιάστατοι πίνακες (συνέχεια)

Παράδειγμα #3 EΠΙΛΥΣΗ ΓΡΑΜΜΙΚΩΝ ΑΛΓΕΒΡΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΑΠΕΥΘΕΙΑΣ ΜΕΘΟΔΟΥΣ Επιμέλεια: Ν. Βασιλειάδης

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ

Επιµέλεια: Γιάννης Λυχναρόπουλος Οµάδα Α: Άσκηση 2 Έχουµε να επιλύσουµε την εξίσωση: 2

ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική. Γράψτε το ονοµατεπώνυµο και αριθµό ταυτότητάς σας στο πάνω µέρος της αυτής της σελίδας.

f x και τέσσερα ζευγάρια σημείων

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΜΕΘΟΔΟΙ, , 5 Ο ΕΞΑΜΗΝΟ ΕΡΓΑΣΙΑ #5: ΥΠΕΡΒΟΛΙΚΑ ΠΡΟΒΛΗΜΑΤΑ ΗΜΕΡΟΜΗΝΙΑ ΠΑΡΑΔΟΣΗΣ: ΕΠΙΜΕΛΕΙΑ: Ιωάννης Λυχναρόπουλος

2.Τι εννοούμε με βαθμό συνέχειας μιας συνάρτησης; Ποια είναι η χρησιμότητα της από πλευράς εφαρμογών;

ΕΙΣΑΓΩΓΗ ΣΤΗΝ FORTRAN 77

Εισαγωγή στον Προγραμματισμό Η/Υ για Χημικούς Μηχανικούς

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον

Υπολογιστές Ι. Άδειες Χρήσης. Συναρτήσεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

Εισαγωγή στη Fortran. Μάθημα 3 ο. Ελευθερία Λιούκα

ΑΡΙΘΜΗΤΙΚΕΣ ΜΕΘΟΔΟΙ, , 5 Ο ΕΞΑΜΗΝΟ ΔΙΔΑΣΚΩΝ: Δ. Βαλουγεώργης Απαντήσεις: ΠΡΟΟΔΟΣ 1, Επιμέλεια λύσεων: Γιώργος Τάτσιος

Πίνακες. (i) FORTRAN και Αντικειµενοστραφής Προγραµµατισµός

ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, , 3 ο ΕΞΑΜΗΝΟ ΑΠΑΝΤΗΣΕΙΣ ΕΡΓΑΣΙΑΣ #4: ΑΡΙΘΜΗΤΙΚΗ ΟΛΟΚΛΗΡΩΣΗ ΕΠΙΜΕΛΕΙΑ: Σ. Βαρούτης

1.5 ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ μικρόκοσμου «Προγραμματισμός Η/Υ»

Αριθμητική Ανάλυση και Εφαρμογές

Κεφάλαιο 5ο: Εντολές Επανάληψης

IMPLICIT NONE INTEGER :: a, b, c

Fortran και Αντικειμενοστραφής προγραμματισμός.

Παράδειγμα #4 ΑΛΓΕΒΡΙΚΑ ΣΥΣΤΗΜΑΤΑ ΕΞΙΣΩΣΕΩΝ

Transcript:

ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ ΑΡΙΘΜΗΤΙΚΗ ΑΝΑΛΥΣΗ, 3 Ο ΕΞΑΜΗΝΟ, 2008-2009 ΔΙΔΑΣΚΩΝ: Δρ Ιωάννης Αθ. Σταυράκης 07.01.2009 Δίνονται τα ακόλουθα ζεύγη τιμών: Να προσδιοριστεί πολυώνυμο παρεμβολής 4 ου βαθμού: με τη χρήση του Mathematica,! με τις προς τα εμπρός διαφορές και " με τις προς τα πίσω διαφορές. Στο Mathematica ο προσδιορισμός του πολυωνύμου παρεμβολής 4 ου βαθμού για τα δοθέντα ζεύγη τιμών γίνεται δίνοντας: InterpolatingPolynomial[{{1,2},{2,5},{3,10},{4,17},{5,26}},x] και προκύπτει: 1+x 2.! Για τον προσδιορισμό του πολυωνύμου παρεμβολής με τις προς τα εμπρός διαφορές χρησιμοποιείται ο τύπος: όπου, με Συνεπώς, με βάση τα παραπάνω προκύπτει: και. και το πολυώνυμο παρεμβολής παίρνει τη μορφή: Για τον υπολογισμό των προς τα εμπρός διαφορών, για, κατασκευάζεται ο πίνακας των προς τα εμπρός διαφορών..

1 2 3 2 5 2 5 0 3 10 2 0 7 0 4 17 2 9 5 26 Με βάση τον παραπάνω πίνακα προκύπτουν:,, και. Οπότε το πολυώνυμο παρεμβολής 4 ου βαθμού είναι ίσο με: " Για τον προσδιορισμό του πολυωνύμου παρεμβολής με τις προς τα πίσω διαφορές χρησιμοποιείται ο τύπος: όπου, με Συνεπώς, με βάση τα παραπάνω προκύπτει: και. και το πολυώνυμο παρεμβολής παίρνει τη μορφή: Για τον υπολογισμό των προς τα πίσω διαφορών, για, κατασκευάζεται ο πίνακας των προς τα πίσω διαφορών..

1 2 3 2 5 2 5 0 3 10 2 0 7 0 4 17 2 9 5 26 Με βάση τον παραπάνω πίνακα προκύπτουν:,, και. Οπότε το πολυώνυμο παρεμβολής 4 ου βαθμού είναι ίσο με: Για τα παρακάτω δεδομένα: Να γραφτεί πρόγραμμα σε Fortran για τον υπολογισμό των και εφαρμόζοντας τις μεθόδους παρεμβολής: Lagrange, Newton και " Ελαχίστων Τετραγώνων. Σε κάθε περίπτωση να γίνει η σύγκριση των αποτελεσμάτων με τις αντίστοιχες μεθόδους του Mathematica. Το πολυώνυμο παρεμβολής Lagrange δίνεται από τη σχέση: όπου.

Παρακάτω φαίνεται ο πηγαίος κώδικας σε γλώσσα προγραμματισμού Fortran για την παρεμβολή Lagrange. Ο κώδικας γράφτηκε σε περιβάλλον Mandrake Linux 10.1 και μεταγλωττίστηκε με τον compiler g77 έκδοση 3.4.1. program lagrange implicit none integer n,m,i,j,k parameter (n=11,m=3) double precision x(n),f(n),xx(m),ff(m),s,p x(1)=0.0d0; f(1)=16.0d0 x(2)=14.0d0; f(2)=19.0d0 x(3)=27.0d0; f(3)=36.0d0 x(4)=33.0d0; f(4)=48.0d0 x(5)=41.0d0; f(5)=53.0d0 x(6)=48.0d0; f(6)=90.0d0 x(7)=62.0d0; f(7)=119.0d0 x(8)=74.0d0; f(8)=120.0d0 x(9)=89.0d0; f(9)=96.0d0 x(10)=99.0d0; f(10)=114.0d0 x(11)=114.0d0; f(11)=36.0d0 xx(1)=7.0d0 xx(2)=57.0d0 xx(3)=107.0d0 open(unit=10,file="lagrange.txt") do k=1,m s=0.0d0 do i=1,n p=1.0d0 do j=1,n if (j.ne.i) then p=p*(xx(k)-x(j))/(x(i)-x(j)) end if s=s+p*f(i) ff(k)=s write(10,*) 'f(',xx(k),' ) =',ff(k) close(10) stop end Τα αποτελέσματα που προκύπτουν με την παρεμβολή Lagrange είναι τα εξής:

f( 7. ) = 431.316261 f( 57. ) = 125.496192 f( 107. ) = 860.844413! Το πολυώνυμο παρεμβολής Newton δίνεται από τη σχέση: όπου. Παρακάτω φαίνεται ο πηγαίος κώδικας σε γλώσσα προγραμματισμού Fortran για την παρεμβολή Newton. Ο κώδικας γράφτηκε σε περιβάλλον Mandrake Linux 10.1 και μεταγλωττίστηκε με τον compiler g77 έκδοση 3.4.1. program newton implicit none integer n,m,i,j,k parameter (n=11,m=3) double precision x(n),f(n),xx(m),ff(m),a(n),s,p x(1)=0.0d0; f(1)=16.0d0 x(2)=14.0d0; f(2)=19.0d0 x(3)=27.0d0; f(3)=36.0d0 x(4)=33.0d0; f(4)=48.0d0 x(5)=41.0d0; f(5)=53.0d0 x(6)=48.0d0; f(6)=90.0d0 x(7)=62.0d0; f(7)=119.0d0 x(8)=74.0d0; f(8)=120.0d0 x(9)=89.0d0; f(9)=96.0d0 x(10)=99.0d0; f(10)=114.0d0 x(11)=114.0d0; f(11)=36.0d0 xx(1)=7.0d0 xx(2)=57.0d0 xx(3)=107.0d0 call coeff(n,x,f,a) open(unit=10,file="newton.txt") do k=1,m s=a(n) do i=n-1,1,-1 s=a(i)+(xx(k)-x(i))*s ff(k)=s write(10,*) 'f(',xx(k),' ) =',ff(k) close(10)

stop end Η υπορουτίνα coeff υπολογίζει τους συντελεστές του πολυωνύμου με την βοήθεια των διαιρεμένων διαφορών. subroutine coeff(n,x,f,a) implicit none integer n,i,j double precision x(n),f(n),a(n),divdif(n,n) do i=1,n divdif(i,1)=f(i) do j=2,n do i=j,n divdif(i,j)=(divdif(i,j-1)-divdif(i-1,j-1))/(x(i)-x(i-j+1)) do i=1,n a(i)=divdif(i,i) enddo return end Τα αποτελέσματα που προκύπτουν με την παρεμβολή Newton είναι τα εξής: f( 7. ) = 431.316261 f( 57. ) = 125.496192 f( 107. ) = 860.844413 Η σύγκριση των αποτελεσμάτων, και για την παρεμβολή Lagrange και για την παρεμβολή Newton, με το Mathematica γίνεται δίνοντας: data={{0,16},{14,19},{27,36},{33,48},{41,53},{48,90},{62,119},{74,120}, {89,96},{99,114},{114,36}}; Polyonymo[x_]=InterpolatingPolynomial[data,x]; N[Polyonymo[{7,57,107}]] Τα αποτελέσματα που προκύπτουν είναι: {431.316,125.496,860.844}.

" Η μέθοδος των Ελαχίστων Τετραγώνων προσδιορίζει ένα πολυώνυμο της μορφής:, όπου οι συντελεστές του πολυωνύμου προκύπτουν από την επίλυση του συστήματος:, όπου και. Στην περίπτωση μας, ο βαθμός του πολυωνύμου είναι ίσος με 1 ( ) και το πλήθος των σημείων παρεμβολής 11 ( ). Παρακάτω φαίνεται ο πηγαίος κώδικας σε γλώσσα προγραμματισμού Fortran για τη μέθοδο των Ελαχίστων Τετραγώνων. Ο κώδικας γράφτηκε σε περιβάλλον Mandrake Linux 10.1 και μεταγλωττίστηκε με τον compiler g77 έκδοση 3.4.1. program squares implicit none integer n,m,nn,i,j,k parameter (n=11,m=3,nn=1) double precision x(n),f(n),xx(m),ff(m),a(nn+1),s x(1)=0.0d0; f(1)=16.0d0 x(2)=14.0d0; f(2)=19.0d0 x(3)=27.0d0; f(3)=36.0d0 x(4)=33.0d0; f(4)=48.0d0 x(5)=41.0d0; f(5)=53.0d0 x(6)=48.0d0; f(6)=90.0d0 x(7)=62.0d0; f(7)=119.0d0 x(8)=74.0d0; f(8)=120.0d0 x(9)=89.0d0; f(9)=96.0d0 x(10)=99.0d0; f(10)=114.0d0 x(11)=114.0d0; f(11)=36.0d0 xx(1)=7.0d0 xx(2)=57.0d0 xx(3)=107.0d0 call coeff(n,x,f,nn,a) open(unit=10,file="squares.txt") write(10,*) "Least Squares Method" write(10,*) "Polynomial degree is",nn write(10,*) write(10,*) "Polynomial Coefficients" do i=1,nn+1 write(10,*) 'a_',i-1,' =',a(i) write(10,*)

do k=1,m s=a(1) do i=2,nn+1 s=s+a(i)*xx(k)**(i-1) ff(k)=s write(10,*) 'f(',xx(k),' ) =',ff(k) close(10) stop end Η παράμετρος nn δηλώνει τον βαθμό του πολυωνύμου. Στην υπορουτίνα coeff υπολογίζονται οι συντελεστές του πολυωνύμου. Η επίλυση του συστήματος γίνεται με την μέθοδο Gauss με μερική οδήγηση, της οποίας ο κώδικας είναι ο ίδιος με εκείνον της 2 ης Σειράς Ασκήσεων και παραλείπεται. subroutine coeff(n,x,f,nn,a) implicit none integer n,nn,i,k,j,ipvt(nn+1),info double precision x(n),f(n),a(nn+1) double precision s,sx(2*nn+1),u(nn+1),aa(nn+1,nn+1) do k=1,2*nn+1 s=0.0d0 do i=1,n s=s+x(i)**(k-1) sx(k)=s do k=1,nn+1 s=0.0d0 do i=1,n s=s+(x(i)**(k-1))*f(i) u(k)=s do i=1,nn+1 do j=1,nn+1 aa(i,j)=sx((i-1)+j) call gaussdecomp(nn+1,aa,ipvt,info) call gausssolve(nn+1,aa,u,ipvt,info)

do k=1,nn+1 a(k)=u(k) return end Τα αποτελέσματα που προκύπτουν για πολυώνυμου 1 ου βαθμού είναι: Least Squares Method Polynomial degree is 1 Polynomial Coefficients a_ 0 = 31.9265871 a_ 1 = 0.658581601 f( 7. ) = 36.5366583 f( 57. ) = 69.4657383 f( 107. ) = 102.394818 Θέτοντας την τιμή 2 στην παράμερο nn, προκύπτουν τα αποτελέσματα για πολυώνυμο 2 ου βαθμού: Least Squares Method Polynomial degree is 2 Polynomial Coefficients a_ 0 = -12.101508 a_ 1 = 3.05660143 a_ 2 = -0.0207854741 f( 7. ) = 8.27621379 f( 57. ) = 94.5927681 f( 107. ) = 76.9819521 Τέλος, θέτοντας την τιμή 3 στην παράμερο nn, προκύπτουν τα αποτελέσματα για πολυώνυμο 3 ου βαθμού: Least Squares Method Polynomial degree is 3 Polynomial Coefficients a_ 0 = 14.9691522 a_ 1 = -0.529600782 a_ 2 = 0.0635634659 a_ 3 = -0.000501614907 f( 7. ) = 14.2045026 f( 57. ) = 98.4040389 f( 107. ) = 71.5401591

Η σύγκριση των αποτελεσμάτων για τη μέθοδο των Ελαχίστων Τετραγώνων με το Mathematica γίνεται δίνοντας: data={{0,16},{14,19},{27,36},{33,48},{41,53},{48,90},{62,119},{74,120}, {89,96},{99,114},{114,36}}; PSquares1[x_]=Fit[data,{1,x},x]; N[PSquares1[{7,57,107}]] Τα αποτελέσματα που προκύπτουν για πολυώνυμο 1 ου βαθμού είναι: {36.5367,69.4657,102.395}. Για την περίπτωση πολυωνύμου 2 ου βαθμού: PSquares2[x_]=Fit[data,{1,x,x 2 },x]; N[PSquares2[{7,57,107}]] και προκύπτουν τα αποτελέσματα: {8.27621,94.5928,76.982}. Τέλος, για την περίπτωση πολυωνύμου 3 ου βαθμού: PSquares3[x_]=Fit[data,{1,x,x 2,x 3 },x]; N[PSquares3[{7,57,107}]] και προκύπτουν τα αποτελέσματα: {14.2045,98.404,71.5402}.