Σελίδα 3 από 22
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Τετ Ιαν 09, 2008 6:12 pm
από remilt
Ρε παιδιά στην άσκηση λέει h=2? γιατι μου φαίνεται λίγο περίεργο μήπως είναι 0.2?...επίσης υπάρχει κανείς expert επι του θέματος να περιγράψει πολύ γενικά σε δυο τρείς γραμμές το script του πρώτου ερωτήματος? Ξέρω είμαι λίγο σάπιος αλλά τρέχουν δέκα μαθήματα ακόμη και δεν έχω πολύ επαφή με το θέμα...
Κάποιος να βοηθήσει τον παπού!
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Τετ Ιαν 09, 2008 7:09 pm
από theos
Όλο λέτε για την εργασία, αλλά εγώ εργασία δεν έχω δει... Είναι ίδια με πέρσυ? Για ρίξτε μια ματιά σε αυτό το attachment
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Τετ Ιαν 09, 2008 7:49 pm
από remilt
Να σου πώ την αλήθεια δεν είμαι σίγουρος μάλλον είναι όμως! παρόλα αυτά το αρχείο που πόσταρες είναι πολύ βοηθητικό.
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Τετ Ιαν 09, 2008 8:24 pm
από O_Xamenos
αν ειναι ρε παιδια δεν μπορεις ενας καλος ανθρωπος να ανεβασει την εργασια τουτη???
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Τετ Ιαν 09, 2008 9:16 pm
από f_angel
Κατ'αρχάς το βήμα είναι 2 ! Τώρα όσον αφορά το script (ό,τι έχω καταλάβει κ γω, μην περιμένεις τίποτα τρελλό) :
Στο βρόχο θέλει ουσιαστικά να υποδιπλασιάζεται το βήμα.. Οπότε, ορίζεις έξω απ'αυτόν σε μια μεταβλητή πόσες φορές θέλεις να τρέξει αυτός (πχ εδώ λέει 10). Την πρώτη φορά που θα μπει στο βρόχο θα χει βήμα 2 και κάθε επόμενη φορά που θα μπαίνει θα χει h/2. Το σφάλμα το ορίζουμε όπως συνήθως ως τη διαφορά της πραγματικής από την προσεγγιστική τιμή. Στο ερώτημα που λέει για πηλίκα και ιστορίες επειδή ρώτησα και τον ίδιο, θέλει το εξής : έχεις το διάνυσμα err για την τελευταία φορά που έτρεξε ο βρόχος, δηλαδή για τη δέκατη φορά. Άρα έχεις ένα διάνυσμα με αριθμό στοιχείων όσο το μήκος του διανύσματος, και πρέπει να τα διαιρέσεις μεταξύ τους, δηλαδή το 1ο προς το 2ο το 2ο προς το 3ο κτλ.
Αν δεν τα κατάφερα να γίνω σαφής, στείλτε pm ή postάρετε εδώ.
Η εκφώνηση της εργασίας ανεβαίνει σύντομα.

Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Τετ Ιαν 09, 2008 10:07 pm
από theos
Επειδή έχει παιχτεί κάποιο προβληματάκι με το ανέβασμα των αρχείων, βάζω την εκφώνηση της εργασίας σε attachment εδώ, μέχρι να διορθωθεί
Η εργασία είναι όπως μου την έδωσε η f_angel και τελικά αυτό που έβαλα ως attachment προηγουμένως είναι η δεύτερη εργασία που θα έχετε να κάνετε. Παρόλα αυτά άμα ρίξετε καμιά ματιά, μπορείτε να βοηθηθείτε λιγάκι...
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Πέμ Ιαν 10, 2008 5:01 am
από remilt
Προχωράμε αλλά αργά... για δώστε τα φώτα σας ρε παιδιά για το πρώτο ερώτημα μέχρι τώρα έχω γράψει αυτόν τον κώδικα:
Κώδικας: Επιλογή όλων
i=1;
h=2;
OS=[];
% kirio loop
for k=1:i:10
step=h/2^(k-1)
[tout,yout]=rk4('f0',t0,tfinal,step,y1);
OS=[OS;abs(f0true(tout(size(tout)))-yout(size(yout)))];
end
plot(tout,yout,'+',tout,f0true(tout),'-');
OS
ο οποίος έχει output εκτός τις γραφικής παράστασης που φαίνεται να είναι σωστή το εξής:
Κώδικας: Επιλογή όλων
OS =
NaN
0
3.299626817868710e-02
0
1.171279788874485e-02
0
1.252684971608492e-03
0
9.205268006425016e-05
0
6.091831918776658e-06
0
3.896493473223850e-07
0
2.460375801011105e-08
0
1.545121197654709e-09
0
9.680047041715767e-11
0
>> size(OS)
ans =
20 1
το OS πρέπει να έχει ώς συντεταγμένες το ολικό σφάλμα στο τελευταίο σημείο της διαμέρησης και θα έπρεπε να είναι 10-διάστατο διάνυσμα αφού η λούπα εκτελείται 10 φορές έτσι δεν είναι; Προφανώς κάποια μ@λ@κία έχω κάνει αλλά τι; Επίσης το άλλο διάνυσμα που πρέπει να καταχωρείται θέλουμε να είναι της μορφής [OS(1)/OS(2),OS(2)/OS(3),......,OS(9)/OS(10)];
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Πέμ Ιαν 10, 2008 5:53 am
από f_angel
Δε χρειάζεται να αποθηκεύεις σε κάθε επανάληψη το σφάλμα, δηλαδή το OS. Σε ενδιαφέρει μόνο τη 10η φορά, άρα μπορείς να το βάλεις έξω από το βρόχο. Όχι ότι θα 'ρθει η συντέλεια, απλά αργεί πολύ... Το διάνυσμα με τα πηλίκα όπως και το OS δεν έχουν μήκος 10 ! Θα έχουμε μεν 10 διαφορετικά διανύσματα (αν γράψουμε τις 2 ενολές μέσα στο βρόχο), αλλά αυτό που θέλουμε είναι τα στοιχεία του OS. Χρησιμοποίησε την εντολή length(τάδε) να δεις πόσο μήκος έχει το OS και μετά διαίρεσε ανα δύο τα στοιχεία του..

Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Πέμ Ιαν 10, 2008 5:10 pm
από drcypher
Σχετικά με το μήκος του τελικού διανύσματος που λέτε... Εφ' όσον υπάρχει ένα h που ξεκινάει με την τιμή 2 και σε κάθε βρόχο υποδιπλασιάζεται, τότε στην πρώτη επανάληψη θα είναι 2, στη δεύτερη 1, στην τρίτη 1/2, στην
n-οστή θα'ναι
})
.
Αν υποθέσουμε πως το διάστημα που διαμερίζεται είναι π.χ.

, τότε θα έχει μήκος

, και με βήμα
n-οστής διαμέρησης αυτό που υπολογίσαμε παραπάνω, θα έχετε συνολικά περίπου

σημεία διαμέρισης (άρα και ισάριθμα στοιχεία διανύσματος για σφάλματα).
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Πέμ Ιαν 10, 2008 6:06 pm
από remilt
Ναι όντως αλλά στην άσκηση μας ζητάει το σφάλμα μόνο στο τελευταίο σημείο της διαμέρισης άρα ένα στοιχείο για κάθε βήμα. Εγώ τελικώς έχω γράψε το εξής script
Κώδικας: Επιλογή όλων
% script gia to erotima 1 gia to problima me AA 9
clear all
hold off
format long
clf
% orismos arxikon sinthikon kai diastimatos analisis tou problimatos
t0=1;
tfinal=20;
y1=-1;
i=1;
j=10;
h=2^(j-9);
OS=[];
% kirio loop
for k=1:i:j
step=h/2^(k-1)
[tout,yout]=rk4('f0',t0,tfinal,step,y1);
OS=[OS;abs(f0true(tout(length(tout)))-yout(length(yout)))];
end
OSF=[];
for k=1:1:j-1
OSF=[OSF;OS(k)/OS(k+1)];
end
plot(tout,yout,'+',tout,f0true(tout),'-');
OS
OSF
που έχω την εντύπωση ότι είναι σχετικά οκ. Βέβαια τώρα που σας βρήκα

μπορείτε να βοηθήσετε στο ΙΙ ?

Βασικά το σημείο που κολάω είναι στην κατασκευή του διανύσματος με συντεταγμένες το ολικό σφάλμα σε κάθε σημείο της διαμέρισης (
εκτώς του τελευταίου διαιρεμένο με το

όπου

το βήμα που χρησιμοποίησε η μέθοδος για τον υπολογισμό της προσεγγίσεως χρησιμοποιώντας την συνάρτηση diff. Προφανώς το πρόβλημα είναι πώς θα εξάγω το βήμα που είναι μεταβλητό.
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Πέμ Ιαν 10, 2008 9:18 pm
από remilt
Πώς σας φαίνεται αυτό το scriptάκι? Εχω κάνει αλχημείες το ξέρω αλλά έχω και πυρετό μαζί με όλα τα άλλα..
Κώδικας: Επιλογή όλων
% script gia to erotima II gia to problhma me AA 1
clear all;
clf;
format long e;
%Initialize problem
t0=1;
tfinal=4;
y1=0;
tol1=1.e-4;
% epilisi kai evresi tou dianismatos olikou sfalmatos
[tout1,yout1]=frk45('f2',t0,tfinal,y1,tol1);
err1=abs(yout1-f2true(tout1));
% kataskevi dianismatos xronou (mikroterou mikous apo to tout) gia
% to plotarisma tou v=(err(1)/(h2-h1)^5,...)
k=1;
tout1v=[];
while k<length(err1)-1
tout1v=[tout1v;tout1(k)];
k=k+1;
end
d=diff(tout1);
k=1;
v=[];
%loopa gia thn kataskevi tou v
while k<length(err1)-1
v=[v;err1(k)/(d(k))^5];
k=k+1;
end
subplot(2,1,1);
plot(tout1,yout1,'*',tout1,f2true(tout1),'-');
subplot(2,1,2);
plot(tout1v,v,'-');
ενώ η πραγματική λύση είναι η
=t\tan(\ln(t)))
και γράφημα

Τι έπρεπε να περιμένω από το γράφημα του διανύσματος; Πώς με βλέπετε υπάρχει κανά λογικό σφάλμα που μου διαφεύγει;
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Σάβ Ιαν 12, 2008 2:33 am
από remilt
Τελικά δεν έβγαλα άκρη, ποια είναι τα συμπεράσματα που υποτείθεται ότι έπρεπε να βγάλουμε οσον αφορά την σύγκλιση και την πληροφορία του διανύσματος στο πρώτο και δεύτερο ερώτημα ?
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Σάβ Ιαν 12, 2008 5:54 pm
από f_angel
Αν όλα πήγαν καλά στην εκτέλεση, το διάνυσμα των πηλίκων θα πρέπει να συγκλίνει στο 1. Και από τον ορισμό για το ολικό σφάλμα που μας έχει δώσει στην εκφώνηση βλέπεις ότι :
Καθώς το h σε κάθε επανάληψη υποδιπλασιάζεται, κάποια στιγμή θα συγκλίνει στο 0. Άρα ο δεύτερος όρος του

θα συγκλίνει στο 0. Οπότε το σφάλμα θα δίνεται πλέον από τη διαφορά
-y(x_n))
δηλαδή το βήμα. Οπότε όταν διαιρείς τα στοιχεία του σφάλματος μεταξύ τους (τα οποία για τον προηγούμενο λόγο είναι σχεδόν ίδια), ο λόγος τους θα είναι περίπου ίσος με 1.
Αυτά για το πρώτο ερώτημα. Όσον αφορά το δεύτερο ούτε εγώ έβγαλα κάποιο συμπέρασμα... Ο Θεός μαζί μας...

Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Κυρ Ιαν 13, 2008 1:32 am
από remilt
Δέν ξέρω έχω μπερδευτεί, το

δεν είναι το βήμα ? όχι το
-y(x_n))
που μπορεί να είναι οποιοσδήποτε αριθμός.
Re: [Μ5ο] Αριθμητική Ανάλυση ΙΙ
Δημοσιεύτηκε: Παρ Ιαν 18, 2008 7:52 pm
από remilt
Και ήρθε η ώρα της δεύτερης άσκησης... Έχει κανείς βγάλει το ερώτημα 7? βασικά εκεί που κολάω είναι πώς θα κάνω την frk45 και την nrk45 να μετράνε τον αριθμό των απορριπτόμενων και επιτυχών βημάτων.