Ομάδα Γ. Ο υπολογιστής ως επιστημονικό εργαλείο Πρόβλημα 10 a : Κλίση καμπύλης Πρόβλημα 10 b : Εμβαδόν καμπύλης Πρόβλημα 10 c : Βολές Πρόβλημα 10 d : Κινήσεις Πλανητών Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Πρόβλημα 10 f : Ελαστικές Κρούσεις Πως μπορεί κανείς να λύσει προβλήματα Φυσικής με τη βοήθεια της Mathematica
Προγραμματισμός με Mathematica Η Mathematica διαθέτει µια υψηλού επιπέδου γλώσσα προγραμματισμού η οποία µας δίνει την δυνατότητα να δηµιουργούµε τις δικές µας συναρτήσεις επεκτείνοντας µε τον τρόπο αυτό τις δυνατότητες της γλώσσας αυτής. H γλώσσα προγραµµατισµού του Mathematica εκτός από την δυνατότητα να διαχειρίζεται σύµβολα και νούµερα, διαθέτει επίσης και τρεις διαφορετικές µεθοδολογίες προγραµµατισµού : τον διαδικασιακό προγραµµατισµό (procedural programming), τον συναρτησιακό προγραµµατισµό (functional programming), και τον κανονοκεντρικό προγραµµατισµό (rule-based programming). ιαδικασιακός προγραµµατισµός (procedural programming): Στον διαδικασιακό προγραµµατισµό πρέπει εµείς να περιγράψουµε, µε την µορφή εντολών, τα βήµατα που θα πρέπει να ακολουθήσει ο υπολογιστής για να επιλύσει ένα πρόβληµα. Συνήθως διαχωρίζουµε το πρόβληµα µας σε επιµέρους ανεξάρτητα προβλήµατα (functions, procedures, subroutines) τα οποία αρχικά επιλύουµε και ελέγχουµε για την ορθότητα τους και στη συνέχεια τα συνθέτουµε ώστε να πάρουµε την επίλυση του αρχικού µας προβλήµατος, µια µέθοδος γνωστή ως σχεδίαση από πάνω προς τα κάτω (top-down design). Συναρτησιακός προγραµµατισµός (functional programming): Το επίκεντρο του συναρτησιακού προγραµµατισµού είναι ο υπολογισµός εκφράσεων και όχι η εκτέλεση εντολών (ανάθεση τιµών σε µεταβλητές όπως στον διαδικασιακό προγραµµατισµό). Οι εκφράσεις στην γλώσσα του συναρτησιακού προγραµµατισµού δηµιουργούνται µε την χρήση συναρτήσεων οι οποίες δέχονται ως ορίσµατα απλές τιµές ή άλλες συναρτήσεις. Κανονοκεντρικός προγραµµατισµός (rule-based programming): Στον κανονοκεντρικό προγραµµατισµό η εκτέλεση των εντολών δεν είναι ακολουθιακή όπως στον διαδικασιακό προγραµµατισµό, αλλά βασίζεται στην ενεργοποίηση συγκεκριµένων συνθηκών. Ο όρος κανόνας (rule) στον κανονοκεντρικό προγραµµατισµό αναφέρετε στον ορισµό της συνάρτησης. Ένα κανονοκεντρικό πρόγραµµα αποτελείται από ένα σύνολο ορισµών συναρτήσεων τα οποία όµως αφορούν πάντα την ίδια συνάρτηση. Κάθε ορισµός αναφέρεται σε διαφορετική µορφή που µπορούν να έχουν τα ορίσµατα της συνάρτησης.
Προγραμματισμός με Mathematica
Προγραμματισμός με Mathematica Επαναλαμβάνοντας διαδικασίες
Προγραμματισμός με Mathematica Επαναλαμβάνοντας διαδικασίες
Ομάδα Γ. Ο υπολογιστής ως επιστημονικό εργαλείο Πρόβλημα 10 a : Κλίση καμπύλης Πρόβλημα 10 b : Εμβαδόν καμπύλης Πρόβλημα 10 c : Βολές Πρόβλημα 10 d : Κινήσεις Πλανητών Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Πρόβλημα 10 f : Ελαστικές Κρούσεις Πως μπορεί κανείς να λύσει προβλήματα Φυσικής με τη βοήθεια της Mathematica
Πρόβλημα 10 a : Κλίση καμπύλης f[t_] := 3*t + 5 Plot[f[t], {t, -1,1 },GridLines->Automatic] Η κλίση μιας ευθείας γραμμής δείχνει πόσο απότομη είναι η ευθεία σε σχέση με τον οριζόντιο άξονα
Πρόβλημα 10 a : Κλίση καμπύλης Η κλίση της f(t) υπολογίζεται από τη σχέση f f ( t ) f ( t ) 2 1 f t 8 1 5 0 3 t t 2 t 1 επιλέγοντας 2 οποιαδήποτε σημεία από τη γραφική παράσταση της ευθείας f(t 2 )=8, t 2 =1, f(t 1 )=5, t 1 =0
Ο υπολογισμός της κλίσης μπορεί να γίνει και από τη σχέση θεωρώντας t 2 =t 1 +Δt, t=t 1 f f ( t t) f ( t) t t Ο υπολογισμός της κλίσης με τη Mathematica μπορεί να γίνει θεωρώντας ένα βήμα Δt και μια συνάρτηση Slope με βάση τον παραπάνω τύπο Δt=0.1; Πρόβλημα 10 a : Κλίση καμπύλης Slope[ t _]: f [ t t] t f [ t]
Πρόβλημα 10 a : Κλίση καμπύλης Slope[ t _]: f [ t t] t f [ t] Μπορώ άραγε να χρησιμοποιήσω την ίδια σχέση και σε μια καμπύλη γραμμή;
Πρόβλημα 10 a : Κλίση καμπύλης f[t_]:=sin[t]; Δt=0.1; Plot[f[t], {t, 0, 2*Pi}] Slope[ t _]: f [ t t] t f [ t] Plot[Slope[t], {t, 0, 2 pi}] Υπάρχει κάποια σχέση μεταξύ της κλίσης καμπύλης συνάρτησης και της παραγώγου της; Ποια συνάρτηση σας θυμίζει αυτή η καμπύλη; Η καμπύλη αυτή θυμίζει το Cos(t), όπως αναμένεται αν παραγωγίζαμε την συνάρτηση Sin(t).
Πρόβλημα 10 a : Κλίση καμπύλης Ο κανονικός υπολογισμός της κλίσης γίνεται από την παρακάτω σχέση όπου το Δt τείνει στο 0 df dt lim t 0 f ( t t) t f ( t) Η κλίση της καμπύλης μιας συνάρτησης ταυτίζεται με την παράγωγο της Η σχέση που χρησιμοποιήσαμε μέχρι τώρα μπορεί να θεωρηθεί μια προσεγγιστική σχέση για τον υπολογισμό της κλίσης, που ανάλογα με την τιμή του Δt δίνει σωστά ή όχι αποτελέσματα. Slope[ t _]: f [ t t] t f [ t]
Πρόβλημα 10 a : Κλίση καμπύλης Στην άσκηση αυτή καλείστε να διερευνήσετε την ορθότητα της προσεγγιστικής σχέσης για τον υπολογισμό της κλίσης. Slope[ t _]: 1. α). Υπολογίστε την κλίση της καμπύλης g(t)=2t 3 στο σημείο t=1.0 θεωρώντας το Δt=1.0, 0.5, 0.1, 0.01, 0.0001 β). Με τη βοήθεια της ListPlot σχεδιάστε το διάγραμμα (Κλίσης, Δt) γ). Τι συμβαίνει στην αριθμητική τιμή της κλίσης καθώς το Δt γίνεται ολοένα και μικρότερο; δ). Δείξτε με την εντολή Show την κλίση σε 2 ακραίες τιμές (Δt=10 και Δt=0.001) σε δύο διαστήματα i). 0<t<10 και ii). 0<t<100. Τι παρατηρείτε από τη σύγκριση των δύο καμπύλων σε κάθε διάγραμμα; 2. α). Σχεδιάστε την κλίση της καμπύλης f(t)=3t+4t 5 χρησιμοποιώντας Δt= 0.1 για τις τιμές 0 < t < 5. β). Επίσης σχεδιάστε την παράγωγο της παραπάνω συνάρτησης γ). Με την εντολή Show δείξτε στο ίδιο διάγραμμα τις δύο καμπύλες δ). Πόσο καλή είναι η συμφωνία μεταξύ κλίσης και παραγώγου; ε). Επαναλάβετε την άσκηση 2 για την καμπύλη h(t)=cos(t) με Δt=0.05 και 0<t<2π. 3. Να βρείτε τα τοπικά ακρότατα της συνάρτησης U[t] := 3t 3-9t 2 + 5t -12 στο διάστημα [-2, 2] με τη βοήθεια της παραγώγου της (Τοπικό ακρότατο αλλαγή πρόσημου παραγώγου) f [ t t] t f [ t] Ο έλεγχος αυτός θα γίνει δοκιμάζοντας διάφορες τιμές για την παράμετρο Δt και βλέποντας την επίδραση στη σχέση και συγκρίνοντας τη σχέση αυτή με την παράγωγο της συνάρτησης που αποτελεί και τον ακριβή τύπο υπολογισμού της κλίσης data = Table[{1.0, Slope[1]}, {0.5, Slope[0.5]}, {0.1, Slope[0.1]}, {0.01, Slope[0.01]}, {0.001, Slope[0.001]}]; ListPlot[data, AxesLabel->{ Δt",«Slope"}, AspectRatio->1.0]
Ομάδα Γ. Ο υπολογιστής ως επιστημονικό εργαλείο Πρόβλημα 10 a : Κλίση καμπύλης Πρόβλημα 10 b : Εμβαδόν καμπύλης Πρόβλημα 10 c : Βολές Πρόβλημα 10 d : Κινήσεις Πλανητών Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Πρόβλημα 10 f : Ελαστικές Κρούσεις Πως μπορεί κανείς να λύσει προβλήματα Φυσικής με τη βοήθεια της Mathematica
Πρόβλημα 10 b : Εμβαδόν καμπύλης a Το ολοκλήρωμα μιας συνάρτησης αποτελεί στην ουσία το εμβαδόν που περικλείεται από την συνάρτηση αυτή, τον άξονα των x και δύο κατακόρυφους άξονες στις θέσεις x=α και x=β. b ή : f ( x) dx Ένας πρακτικός τρόπος υπολογισμού του εμβαδού αυτού είναι η διαίρεση του διαστήματος [α,β] σε μικρά ίσα διαστήματα και στη συνέχεια να θεωρήσουμε το εμβαδόν σαν το άθροισμα των εμβαδών των ορθογωνίων που σχηματίζονται.
Πρόβλημα 10 b : Εμβαδόν καμπύλης Η ερώτηση που πηγάζει είναι γιατί να προσπαθώ να υπολογίσω αριθμητικά ολοκληρώματα από τη στιγμή που τελικά η Mathematica κάνει όλη τη δουλειά; Πέρα από τον καθαρά εκπαιδευτικό χαρακτήρα της άσκησης υπάρχουν και προβλήματα όπου δίνονται πειραματικά αποτελέσματα και δεν είναι δυνατή η εύρεση της συνάρτησης f(x), όποτε είμαστε αναγκασμένοι να καταφύγουμε σε αριθμητικές λύσεις.
Πρόβλημα 10 b : Εμβαδόν καμπύλης Έχουμε λοιπόν το ολοκλήρωμα της συνάρτησης f(x)=x 3 από 0 ως 1 0.25 Και την αριθμητική του προσέγγιση Εύκολα μπορεί να δοκιμάσει κανείς και να δει ότι ανεβάζοντας τον αριθμό των βημάτων Num, η αριθμητική προσέγγιση για το ολοκλήρωμα πλησιάζει την τιμή 0.25, ολοένα και με αργότερο ρυθμό. 0.237656
Πρόβλημα 10 b : Εμβαδόν καμπύλης 0.237656 Εναλλακτικά μπορεί να χρησιμοποιήσει και μια διαφορετική προσέγγιση (μεσαίας τιμής) με λίγο καλύτερα αποτελέσματα 0.249922
Πρόβλημα 10 b : Εμβαδόν καμπύλης Τι γίνεται σε περιπτώσεις όπου έχουμε εμβαδόν κάτω από τον άξονα των x; -0.25 0.75
Πρόβλημα 10 b : Εμβαδόν καμπύλης 1. α). Υπολογίστε με τις δύο προσεγγιστικές μεθόδους το εμβαδόν που περικλείεται από την καμπύλη f(x)=x 4 από x=1 ως x=4 θέτοντας τον αριθμό των βημάτων Ν=40. β). Υπολογίστε το αντίστοιχο ολοκλήρωμα. γ). Ποια από τις δύο προσεγγιστικές μεθόδους δίνει καλύτερο αποτέλεσμα; 2). α). Υπολογίστε με τη δεύτερη προσεγγιστική μέθοδο από t=1 ως t=4 (μεσαίας τιμής) το εμβαδόν της καμπύλης g(t)=4t 3 για Ν=30, 40, 50, 60, 70, 80, 90, 100. data2 = Table[{x, Emb2[x]}, {x, 30, 100, 10}] ListPlot[data2, AxesLabel->{ Δx",«Embadon"}, AspectRatio->1.0] β). Σχεδιάστε την αντίστοιχη καμπύλη. γ). Τι παρατηρείτε; 3). Το έργο μιας δύναμης δίνεται από το ολοκλήρωμα της δύναμης σε ένα συγκεκριμένο διάστημα. Με τη βοήθεια αυτής της σχέσης να σχεδιάσετε ένα διάγραμμα δύναμης-απομάκρυνσης για τις εξής δυνάμεις F=-Kx, F=-1/2 Kx 2, F=KCos(x) για x από -1 μέχρι 1 και Κ=100 και να υπολογίσετε το έργο κάθε δύναμης αλλά και το συνολικό έργο.
Ομάδα Γ. Ο υπολογιστής ως επιστημονικό εργαλείο Πρόβλημα 10 a : Κλίση καμπύλης Πρόβλημα 10 b : Εμβαδόν καμπύλης Πρόβλημα 10 c : Βολές Πρόβλημα 10 d : Κινήσεις Πλανητών Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Πρόβλημα 10 f : Ελαστικές Κρούσεις Πως μπορεί κανείς να λύσει προβλήματα Φυσικής με τη βοήθεια της Mathematica
Πρόβλημα 10 c : Βολές Για το πρόγραμμα αυτό θα χρειαστεί να υπολογίσουμε τις θέσεις του σώματος κάποιες χρονικές στιγμές, τις αντίστοιχες ταχύτητες και τις αντίστοιχες επιταχύνσεις. Η εντολή που θα χρησιμοποιήσουμε είναι η Do: Η εντολή Do επαναλαμβάνει μια σειρά εντολών σύμφωνα με την τιμή μιας παραμέτρου (n) Με τη βοήθεια της Do μπορούμε να δημιουργήσουμε και μια κινούμενη απεικόνιση της βολής καθώς προβάλλει τις διαδοχικές Η παραπάνω θέσεις του εντολή κινητού χρησιμοποιώντας ισοδυναμεί τις με τιμές την x[t], σειρά y[t] που υπολογίζονται. εντολών: -5-10 -15-20 -25 Από μέχρι με βήμα 2.5 5 7.5 10 12.5 15 17.5 20 Plot[Sin[1.00 x], {x,0,2π}] Plot[Sin[1.25 x], {x,0,2π}] Plot[Sin[1.50 x], {x,0,2π}] Plot[Sin[1.75 x], {x,0,2π}] Plot[Sin[2.00 x], {x,0,2π}] Plot[Sin[2.25 x], {x,0,2π}] Plot[Sin[2.50 x], {x,0,2π}] Plot[Sin[2.75 x], {x,0,2π}] Plot[Sin[3.00 x], {x,0,2π}]
Πρόβλημα 10 c : Βολές Η Mathematica μετά την έκδοση 6.0 άλλαξε τον τρόπο λειτουργίας της εντολής Plot. Για να βγάλει αποτέλεσμα η Plot μέσα σε μια εντολή Do πρέπει να συμπεριληφθεί και η παράμετρος: DisplayFunction->Print Do[Plot[Sin[n x], {x, 0, 2 Pi} ], DisplayFunction->Print, {n,1,3,0.25}] Η εντολή Do επαναλαμβάνει μια σειρά εντολών σύμφωνα με την τιμή μιας παραμέτρου (n) Ειδικά για γραφικές απεικονίσεις μπορεί να χρησιμοποιηθεί και η Animate που δημιουργεί ένα κινούμενο σχέδιο βασισμένο στην έκφραση που της δίνεται: Animate[έκφραση, {μεταβλητή, κάτω όριο, πάνω όριο, βήμα}] Έτσι το παραπάνω παράδειγμα γράφεται: Animate[Plot[Sin[n x], {x, 0, 2 Pi} ], {n,1,3,0.25}] http://reference.wolfram.com/language/ref/animate.html
Πρόβλημα 10 c : Βολές Οι κινούμενες απεικονίσεις στηρίζονται στην εμφάνιση των διαδοχικών θέσεων του κινητού. Οι εντολές που θα χρησιμοποιήσουμε είναι οι Graphics, Point: Η εντολή Graphics υπολογίζει τη θέση ενός σημείου με συντεταγμένες {x[t], y[t]} ενώ η εντολή Show το εμφανίζει στην οθόνη. Η εντολή PointSize[0.05] σημαίνει ότι το σημείο αυτό έχει μέγεθος ίσο με το 5% της οθόνης. Με τη βοήθεια της εντολής Do τοποθετούνται διαδοχικά σημεία στην οθόνη. Show[Graphics[{PointSize[0.05],Point[{x[t],y[t]}]}] Διάφορες γενικές ρυθμίσεις των γραφικών ρυθμίζονται με την εντολή Set. SetOptions[Graphics, AspectRatio->1, Axes->Automatic, PlotRange->{{0,20},{-25,0}}] Το εύρος των x, y καθορίζεται από την PlotRange->{{x min,x max },{y min,y max }} Η επιλογή AspectRatio->1 ορίζει την ίδια κλίμακα και στους δύο άξονες (x, y). Η επιλογή Axes->Automatic σχεδιάζει αυτόματα τους δύο άξονες (x, y).
Πρόβλημα 10 c : Βολές H μελέτη των βολών συνήθως αναφέρεται σε σφαιρικά αντικείμενα που εκτελούν μια σύνθετη κίνηση αποτελούμενη από δύο συνιστώσες: μια οριζόντια κίνηση παράλληλη στην επιφάνεια της γης και μια κατακόρυφη κίνηση. Σύμφωνα με την αρχή της ανεξαρτησίας των κινήσεων η κάθε κίνηση είναι ανεξάρτητη της άλλης και η θέση και η ταχύτητα του κινητού προκύπτουν για κάθε χρονική στιγμή από το διανυσματικό άθροισμα των αντίστοιχων συνιστωσών. Το σύστημα αναφοράς για τη μελέτη των βολών είναι ένα σύστημα συντεταγμένων x-y με διεύθυνση x παράλληλη στην επιφάνεια της γης και διεύθυνση y προς το κέντρο της γης. Αξονας x: y:
Πρόβλημα 10 c : Βολές Κίνηση στον άξονα των x: Η ταχύτητα V x είναι σταθερή αν δεν υπάρχει η αντίσταση του αέρα, οπότε α x =0. Κίνηση στον άξονα των y: Η επιτάχυνση είναι η επιτάχυνση της βαρύτητας g=9.8 m/s 2 Ας θεωρήσουμε την απλή περίπτωση όπου ένα σώμα κινείται πάνω στον άξονα-x (παράλληλα στην επιφάνεια της γης) με ταχύτητα V x =10 m/sec και V y =0. Το κινητό ξενικά από την αρχή των αξόνων (x=0, y = 0).
Πρόβλημα 10 c : Βολές Πρόγραμμα για τον υπολογισμό της κίνησης για ένα χρονικό διάστημα 2 sec: Clear[x,Vx, y, Vy]; ti=0;tf=2;δt=1/10; x[ti]=0; Vx[ti]=10; y[ti]=0; Vy[ti]=0; g= -9.8; Do[Vx[t+Δt]=Vx[t]; x[t+δt] = x[t] + Vx[t+Δt]*Δt; Vy[t+Δt] = Vy[t] + g*δt; y[t+δt] = y[t] + Vy[t+Δt]*Δt, {t,ti,tf,δt}] Κάθε φορά που εκτελείται η εντολή Do το πρόγραμμα υπολογίζει την νέα θέση του κινητού.
Πρόβλημα 10 c : Βολές Τα δεδομένα x[t] και y[t] για να γίνουν γραφική παράσταση πρώτα χρησιμοποιείται η εντολή Table (function) για να δημιουργηθεί μια λίστα δεδομένων και στη συνέχεια η εντολή ListPlot για να εμφανιστεί το γράφημα. data=table[{x[t],y[t]},{t,ti,tf,δt}]; ListPlot[data, AxesLabel {"x","y"}, PlotStyle->PointSize[0.015]] y 5 10 15 20 x -5-10 -15-20
Μπορείτε εύκολα να δημιουργήσετε μια ρεαλιστική απεικόνιση της βολής, αν είχατε διαδοχικά φωτογραφικά στιγμιότυπα της βολής SetOptions [Graphics, AspectRatio 1, Axes->Automatic, PlotRange {{0,20},{-25,0}}]; 1). Do[Show[Graphics[{PointSize[0.05], Point[{x[t],y[t]}]}], DisplayFunction Print], {t, ti,tf,δt}] ή εναλλακτικά: Πρόβλημα 10 c : Βολές 2). Animate[Show[Graphics[{PointSize[0.05], Point[{x[t], y[t]}]}]], {t, ti, tf, Δt}] To πρόγραμμα αυτό δημιουργεί μια 2.5 5 7.5 10 12.5 15 17.5 20 κινούμενη απεικόνιση της βολής καθώς προβάλλει τις διαδοχικές θέσεις του κινητού χρησιμοποιώντας τις τιμές x[t], y[t] που υπολογίστηκαν προηγουμένως. H παράμετρος DisplayFunction Print χρειάζεται στις εκδόσεις της Mathematica >6.0-5 -10-15 -20 Η Animate υποστηρίζεται από τις εκδόσεις > της 7-25
Πρόβλημα 10 c : Βολές 1. Να εμφανίσετε το διάγραμμα x-y καθώς και την κινούμενη απεικόνιση για ελεύθερη πτώση με τις εξής παραμέτρους: 2. Να εμφανίσετε το διάγραμμα x-y καθώς και την κινούμενη απεικόνιση για πλάγια βολή με τις εξής παραμέτρους:
Πρόβλημα 10 c : Βολές Για συνιστώσες αρχική ταχύτητας V x = 10 m/sec και V y = 15 m/sec υπολογίστε τη γωνία θ και την αρχική ταχύτητα V Επειδή η Mathematica υπολογίζει τη συνάρτηση ArcSin σε ακτίνια πρέπει να πολλαπλασιάσετε με (180/π) για να βγει το αποτέλεσμα σε μοίρες. To πρόβλημα μπορεί να υπολογιστεί και αντίστροφα με δεδομένη την αρχική ταχύτητα και την γωνία θ
Το πρόγραμμα αυτό υπολογίζει την τροχιά του κινητού σε πλάγια βολή με δεδομένα εισόδου την αρχική ταχύτητα V και τη γωνία θ Πρόβλημα 10 c : Βολές Ενώ η τροχιά του κινητού εμφανίζεται με τις παρακάτω εντολές data = Table[{x[t],y[t]}, {t,ti,tf,δt}]; ListPlot[data, AxesLabel->{"x","y"}, PlotStyle->PointSize[0.02]] 0.4 0.3 0.2 0.1 y 3. Στην συγκεκριμένη βολή το σώμα δεν φθάνει στο έδαφος. Ρυθμίζοντας το t f από τις αρχικές παραμέτρους μπορείτε να κάνετε το σώμα να φθάνει στο έδαφος; 2 4 6 8 x
Πρόβλημα 10 c : Βολές 4. Το βεληνεκές μιας πλάγιας βολής είναι η οριζόντια απόσταση που διανύει το κινητό μέχρι να ακουμπήσει το έδαφος. Δοκιμάζοντας διάφορες γωνίες από 10 ο ως 90 ο να συμπληρώσετε τον παρακάτω πίνακα υπολογίζοντας γραφικά το βεληνεκές και βάζοντας στο t f την κατάλληλη τιμή ώστε το σώμα να φθάνει κάθε φορά στο έδαφος. Σε ποιο διάστημα γωνιών βρίσκεται το μέγιστο βεληνεκές; θ 10 o 20 o 30 o 40 o 50 o 60 o 70 o 80 o 90 o Βεληνεκές
Ομάδα Γ. Ο υπολογιστής ως επιστημονικό εργαλείο Πρόβλημα 10 a : Κλίση καμπύλης Πρόβλημα 10 b : Εμβαδόν καμπύλης Πρόβλημα 10 c : Βολές Πρόβλημα 10 d : Κινήσεις Πλανητών Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Πρόβλημα 10 f : Ελαστικές Κρούσεις Πως μπορεί κανείς να λύσει προβλήματα Φυσικής με τη βοήθεια της Mathematica
Πρόβλημα 10 d : Κινήσεις Πλανητών O νόμος της βαρύτητας ανακαλύφθηκε από τον Νεύτωνα και εφαρμόζεται σε όλα τα αντικείμενα που έχουν μάζα. Η δύναμη αυτή είναι ελκτική και βρίσκεται πάνω στην ευθεία που ενώνει τα κέντρα των δύο μαζών. F G m A m B r 2 G=6.67 10-11 Ν m 2 /kg 2 Η περίπτωση m A >>m B είναι πιο απλή καθώς η κίνηση της μάζας m B έχει μικρή επίδραση στην κίνηση της μάζας m A. Σε αυτή την περίπτωση, είναι πιο εύκολο να χρησιμοποιήσουμε ένα σύστημα συντεταγμένων όπως η μάζα m A βρίσκεται στο κέντρο του συστήματος. Η m B είναι η μόνη μάζα που κινείται και βρίσκεται στη θέση (x, y) όπως φαίνεται στο σχήμα.
Πρόβλημα 10 d : Κινήσεις Πλανητών Θεωρείστε τις παρακάτω τιμές για τα φυσικά μεγέθη: η σταθερά της παγκόσμιας έλξης: G = 6.67 x 10-11 N m 2 /kg 2, η μάζα του ήλιου m A = 2.0 x 10 30 kg, η μάζα της γης m B = 6.0 x 10 24 kg. Ο χρόνος για μια πλήρη περιφορά της γης γύρω από τον ήλιο t f : 1 έτος = 365 μέρες = 3.1 x 10 7 sec και το χρονικό βήμα, t=t f /500. Επίσης η ταχύτητα της γης χρειάζεται σαν αρχική συνθήκη. Θεωρώντας την τροχιά της γης ως κυκλική με ακτίνα r = 1.5 x 10 11 m μπορεί να υπολογιστεί από τη σχέση: V y 2 t f r Ας κάνουμε ένα πρόγραμμα υπολογισμού της τροχιάς ενός πλανήτη Στο πρόγραμμα αυτό οι αρχικές συνθήκες είναι: x[0]=1.0 m και y[0]=0.0 m, και αρχική ταχύτητα Vy[0]=0.7 m/sec και Vx[0]=0. Επομένως ο πλανήτης αρχικά βρίσκεται στη δεξιά πλευρά του άξονα x και κινείται προς τα πάνω.
Πρόβλημα 10 d : Κινήσεις Πλανητών Στο συγκεκριμένο πρόβλημα έχουμε τις εξής σχέσεις: Και τις εξής αρχικές συνθήκες Με τη βοήθεια της εντολής Do υπολογίστε τις παρακάτω ποσότητες
Πρόβλημα 10 d : Κινήσεις Πλανητών Αν θέλω η Do να επαναλάβει περισσότερες από μία εντολές Το n είναι η παράμετρος που παίρνει τιμές από 0 μέχρι 600 (θα υπολογίσω τις διάφορες παραμέτρους 600 φορές) ο χρόνος ανεβαίνει κάθε φορά κατά το 1/600 της περιόδου περιφοράς της γης.
Πρόβλημα 10 d : Κινήσεις Πλανητών Η τροχιά του πλανήτη εμφανίζεται με την παρακάτω σειρά εντολών: data = Table[{x[n],y[n]}, {n,0,tf, Steps}]; ListPlot[data, AxesLabel->{"x","y"},AspectRatio->1.0] 1.5 10 11 1 10 11 5 10 10-1.5 10 11-1 10 11-5 10 10 5 10 10 1 10 11 1.5 10 11 x -5 10 10-1 10 11 y 1. Να υπολογίσετε με τη βοήθεια της εντολής Do τις παραστάσεις: V και a (όπως υπολογίσατε την r). 2. Να κάνετε τις γραφικές παραστάσεις V-r, a-r. 3. Να υπολογίσετε από το διάγραμμα τις μέγιστες τιμές ταχύτητας και επιτάχυνσης καθώς και σε ποιες θέσεις αυτές εμφανίζονται. -1.5 10 11
Ομάδα Γ. Ο υπολογιστής ως επιστημονικό εργαλείο Πρόβλημα 10 a : Κλίση καμπύλης Πρόβλημα 10 b : Εμβαδόν καμπύλης Πρόβλημα 10 c : Βολές Πρόβλημα 10 d : Κινήσεις Πλανητών Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Πρόβλημα 10 f : Ελαστικές Κρούσεις Πως μπορεί κανείς να λύσει προβλήματα Φυσικής με τη βοήθεια της Mathematica
Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Το απλό μαθηματικό εκκρεμές αποτελείται από μια μάζα που κρέμεται από ένα αβαρές σχοινί και κινείται περιοδικά. Η δύναμη του βάρους της μάζας είναι η αιτία της κίνησης αυτής. Εκτός της δύναμης του βάρους στη μάζα ασκείται και μία ακόμα δύναμη, η τάση του νήματος T, η οποία όμως εξουδετερώνεται από την συνιστώσα του βάρους στην κατεύθυνση του νήματος ενώ η άλλη συνιστώσα του βάρους είναι τελικά η υπεύθυνη για την παλινδρομική κίνηση του εκκρεμούς. Η συνιστώσα αυτή είναι η δύναμη επαναφοράς και έχει αντίθετη F=-m g sinθ προς τις αυξήσεις της γωνίας θ. γραμμική ταχύτητα: U=Lω, γωνιακή ταχύτητα: ω=dθ/dt 2 ος νόμος του Νεύτωνα: F=ma F=mdU/dt F=mL dω/dt dω/dt =F/mL ω(t+δt)=ω(t)+dω/dt Δt= ω(t)+f/ml Δt θ(t+δt)=θ(t)+ ω(t+δt) Δt
Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές g=9.8; L=2.0; q[0]=0.05; w[0]=0.0; Δt=0.005;TotalTime=2.9;Steps=Round[TotalTime/Δt]; Do[w[n+1]=w[n]-(g/L)*Sin[q[n]]*Δt; q[n+1]=q[n]+w[n+1]*δt,{n,0, Steps}] qdata = Table[{n*Δt,q[n]}, {n,0,totaltime, Steps}]; qplot = ListPlot[qData, AxesLabel->{"time, t","angle, q"}] Angle, 0.04 0.02-0.02-0.04 0.5 1 1.5 2 2.5 Πρόγραμμα Υπολογισμού θέσεων του εκκρεμούς time, t 2.8 0.0498388 2.805 0.0498802 2.81 0.0499156 2.815 0.0499448 2.82 0.0499679 2.825 0.0499849 2.83 0.0499958 2.835 0.0500005 2.84 0.0499992 2.845 0.0499917 2.85 0.0499781 2.855 0.0499583 2.86 0.0499325 2.865 0.0499005 2.87 0.0498624 2.875 0.0498183 2.88 0.049768 2.885 0.0497116 2.89 0.0496492 2.895 0.0495806 2.9 0.049506 Η μάζα του εκκρεμούς δεν εμφανίζεται στους υπολογισμούς καθώς απαλοίφεται μετά τις αντικαταστάσεις. Αυτό σημαίνει ότι ένα εκκρεμές μάζας 300 g θα έχει την ίδια περίοδο με ένα εκκρεμές μάζας 6 kg. Η αρχική γωνιακή ταχύτητα είναι w[0]=0 καθώς το εκκρεμές αφήνεται χωρίς αρχική γωνιακή ταχύτητα. Η γωνία στο πρόγραμμα συμβολίζεται με το γράμμα q και η αρχική της τιμή είναι q[0]=0.05 ακτίνια (~3 ). Το χρονικό βήμα Δt=0.005 είναι ένας αρκετά μικρός αριθμός που όσο μικρότερος είναι τόσο περισσότερα βήματα υπολογισμού απαιτούνται αλλά η περίοδος υπολογίζεται με μεγαλύτερη ακρίβεια. Ας δούμε γραφικά πως μεταβάλλεται η Ας δούμε τα 15 τελευταία στιγμιότυπα γωνία του εκκεμούς TableForm[Table[{n*Δt,q[n]},{n,Steps-20,Steps}]] Υπάρχει ένα μέγιστο (0.0500005) τη χρονική στιγμή t = 2.835. Άρα η περίοδος του εκκρεμούς είναι 2.835 seconds. Καθώς το βήμα των υπολογισμών ορίζεται από το Δt =0.005 η τελική απάντηση είναι : Τ=2.835 ± 0.005 s Αν θέλουμε μεγαλύτερη ακρίβεια μπορούμε να επιλέξουμε μικρότερο Δt. L Αντίστοιχος θεωρητικός υπολογισμός : T 2 π g
Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Διερεύνηση των παραμέτρων του απλού μαθηματικού εκκρεμούς 1. Μεταβολή του L: Με οδηγό τον παρακάτω πίνακα υπολογίστε την περίοδο του εκκρεμούς (βρίσκοντας ποια χρονική στιγμή η μάζα περνάει από μέγιστο για 2 η φορά). Η παράμετρος TotalTime πρέπει να ρυθμιστεί κατάλληλα ώστε το πρόγραμμα να καταγράφει τουλάχιστον 1 πλήρη περίοδο. Διατηρείστε την επιτάχυνση της βαρύτητας g=9.8 m/s 2 και το αρχικό πλάτος q[0]=0.05 ακτίνια. I. Σχεδιάστε το Τ 2 σαν συνάρτηση του L. Τι είδους καμπύλη παίρνετε; Πόση είναι η κλίση της; L II. Υπολογίστε τις αντίστοιχες θεωρητικές τιμές από τη σχέση T 2 π και στη συνέχεια τα αντίστοιχα σφάλματα π= (Τ πειρ -Τ θεωρ )/Τ θεωρ % g L (m) T πειρ (s) T θεωρ (s) π (%) 1.0 2.0 2.835 2.83845-0.12 3.0 4.0 5.0
Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Διερεύνηση των παραμέτρων του απλού μαθηματικού εκκρεμούς 2. Μεταβολή του g: Υπολογίστε την περίοδο του εκκρεμούς σύμφωνα με τους 2 πίνακες σε διαφορετικά ύψη από την επιφάνεια της γης και σε διαφορετικούς πλανήτες. Σε κάθε περίπτωση διατηρήστε το πλάτος 0.1 ακτίνια και το μήκος του εκκρεμούς 2.0 m. Πως μεταβάλλεται η περίοδος με την απόσταση από την επιφάνεια της γης (διάγραμμα-listplot); Σε ποιον πλανήτη το εκκρεμές ταλαντώνεται πιο αργά και σε ποιον πιο γρήγορα από τους υπόλοιπους; Πλανήτης g (m/s 2 ) Ερμής 3.61 Αφροδίτη 8.83 Άρης 3.75 Δίας 26.0 Κρόνος 11.2 Ουρανός 10.5 Ποσειδώνας 13.3 Πλούτων 0.61 Απόσταση από την επιφάνεια της γης (km) το κέντρο της γης (m) g (m/s 2 ) 0 km 6.38 x 10 6 m 9.8 1000 km 7.38 x 10 6 m 7.33 2000 km 8.38 x 10 6 m 5.68 3000 km 9.38 x 10 6 m 4.53 4000 km 1.04 x 10 7 m 3.70 5000 km 1.14 x 10 7 m 3.08 6000 km 1.24 x 10 7 m 2.60 7000 km 1.34 x 10 7 m 2.23 8000 km 1.44 x 10 7 m 1.93 9000 km 1.54 x 10 7 m 1.69 10000 km 1.64 x 10 7 m 1.49 50000 km 5.64 x 10 7 m 0.13
Ομάδα Γ. Ο υπολογιστής ως επιστημονικό εργαλείο Πρόβλημα 10 a : Κλίση καμπύλης Πρόβλημα 10 b : Εμβαδόν καμπύλης Πρόβλημα 10 c : Βολές Πρόβλημα 10 d : Κινήσεις Πλανητών Πρόβλημα 10 e : Απλό μαθηματικό εκκρεμές Πρόβλημα 10 f : Ελαστικές Κρούσεις Πως μπορεί κανείς να λύσει προβλήματα Φυσικής με τη βοήθεια της Mathematica
Πρόβλημα 10 f : Ελαστικές Κρούσεις Κρούση ονομάζεται το φαινόμενο όπου ένα σώμα συγκρούεται με ένα άλλο. Η περίπτωση της κρούσης όπου η ενέργεια διατηρείται καλείται ελαστική κρούση. Π.χ. οι μπάλες του μπιλιάρδου κάνουν σχεδόν ελαστικές κρούσεις. Για απλότητα θεωρούμε ότι τα δύο αντικείμενα είναι σφαίρες και κινούνται σε μία διάσταση όπως φαίνεται στο σχήμα. Αρχικά τα δύο σώματα βρίσκονται στις θέσεις x 1, x 2 ενώ μετά από χρόνο Δt στις θέσεις Χ 1 = x 1 +v 1 Δt, Χ 2 = x 2 +v 2 Δt Η σφαίρα 1 κινείται προς τα αριστερά και έχει αρνητική ταχύτητα ενώ η 2 η σφαίρα κινείται προς τα δεξιά και έχει θετική ταχύτητα. Όταν η απόσταση μεταξύ των δύο σφαιρών είναι ίση με τη διάμετρο των σφαιρών τότε συμβαίνει το φαινόμενο της κρούσης Dia=X 2 -X 1, t collis =(Dia-(x 2 -x 1 ))/(v 2 -v 1 ) Αρχή διατήρησης της ορμής: m 1 v 1 +m 2 v 2 =m 1 V 1 +m 2 V 2 Βασικές έννοιες κινητικής ενέργειας: ½ m 1 v 12 + ½ m 2 v 22 = ½ m 1 V 12 + ½ m 2 V 2 2 * Υπόθεση: οι σφαίρες απλώς ολισθαίνουν και δεν περιστρέφονται αλλιώς θα έπρεπε να συμπεριληφθεί και ενεργειακός όρος λόγω περιστροφής.
Πρόβλημα 10 f : Ελαστικές Κρούσεις Πρόγραμμα Υπολογισμού θέσεων και ταχυτήτων των δύο μαζών Με δεδομένα τις αρχικές θέσεις και ταχύτητες των δύο μαζών, είναι εύκολο να υπολογιστεί η χρονική στιγμή της κρούσης t collis. Αρχικές συνθήκες: η μάζα m 1 ηρεμεί αρχικά, v 1 =0 και βρίσκεται στην αρχή του άξονα-x, x1[0]=0 m και η μάζα m 2 κινείται προς τη m 1 με ταχύτητα v 1 =6 m/s, αρχική θέση x2[0]=-5 m. Διαδικασία: Το πρόγραμμα υπολογίζει τη θέση της κάθε μάζας σε 10 στιγμιότυπα πριν και 10 στιγμιότυπα μετά από την κρούση. x1[0]=0.;v1=0.;x2[0]=-5.;v2=6.; m1=1.; m2=1.; Dia=1.; tcollis=(dia-(x1[0]-x2[0]))/(v1-v2); NumFrames=10;Δt=tcollis/NumFrames; (* MOTION BEFORE THE COLLISION *) Do[x1[n+1]=x1[n]+v1*Δt; x2[n+1]=x2[n]+v2*δt, {n,0,numframes}] (* CHANGE IN VELCITY DUE TO COLLSION *) DeltaV2=2*(v2-v1)/(1+(m2/m1)); DeltaV1=-(m2/m1)*DeltaV2; v1=v1-deltav1; v2=v2-deltav2; (* MOTION AFTER THE COLLISION *) Do[x1[n+1]=x1[n]+v1*Δt; x2[n+1]=x2[n]+v2*δt, {n,numframes,2*numframes}] Το πρόγραμμα αυτό δεν εμφανίζει απευθείας έξοδο μετά την εκτέλεση του. Υπολογίζει τις θέσεις των δύο μαζών πριν και μετά την κρούση και οι θέσεις αυτές χρησιμοποιούνται στην αναπαράσταση της κρούσης. Για να εμφανιστούν οι ταχύτητες των δύο μαζών μετά την κρούση προσθέτω δύο ακόμη γραμμές στο τέλος του παραπάνω προγράμματος. Print["Velocity of particle 1 (after collision) =", v1] Print["Velocity of particle 2 (after collision) =", v2]
Πρόβλημα 10 f : Ελαστικές Κρούσεις Πρόγραμμα Απεικόνισης του φαινομένου της κρούσης Με δεδομένα τις θέσεις της κάθε μάζας σε 10 στιγμιότυπα πριν και 10 στιγμιότυπα μετά από την κρούση το πρόγραμμα απεικονίζει τα 20 στιγμιότυπα του φαινομένου. SetOptions[Graphics,AspectRatio->0.5,Axes->True, Ticks->{{-5.,-2.5,2.5,5.0},None}, PlotRange->{{-6.0,6.0},{-2.0,2.0}}]; Do[Point1=Graphics[{PointSize[0.09],Point[{x1[n],0.}]}]; Point2=Graphics[{PointSize[0.09],Point[{x2[n],0.}]}]; Show[{Point1,Point2}, {n,0,2*numframes}] -5-2.5 2.5 5 Μετά την έκδοση 6.0 η Show χρειάζεται την DisplayFunction->Print ή μπορεί Ας δούμε βήμα-βήμα τι κάνει η κάθε εντολή Axes->True: Εμφάνιση αξόνων x, y Ticks->{{-5.,-2.5,2.5,5.0},None}: τοποθετεί ticks στον οριζόντιο άξονα ενώ στον κάθετο όχι AspectRatio->0.5: η κλίμακα του άξονα y ρυθμίζεται στο ½ εκείνης του x PlotRange->{{-6.0,6.0},{-2.0,2.0}}]: ρυθμίζει τα όρια των αξόνων PointSize[0.09]: το σημείο ορίζεται στο 9% του πλάτους της οθόνης. Το Point1 αντιστοιχεί στη δεξιά σφαίρα με συντεταγμένες x1[t] and y1[t]=0. Η αριστερή σφαίρα έχει συντεταγμένες x2[t], y=0 Show: εμφανίζει ταυτόχρονα τις δύο σφαίρες στην οθόνη να αντικατασταθεί από την Animate
Πρόβλημα 10 f : Ελαστικές Κρούσεις Διερεύνηση του προβλήματος της κρούσης 1. Επαναλάβετε την παραπάνω διαδικασία θέτοντας τις μάζες από τους παρακάτω πίνακες διατηρώντας τις υπόλοιπες παραμέτρους ίδιες. Καταγράψτε κάθε φορά την νέα απεικόνιση και καταγράψτε τις τελικές ταχύτητες των μαζών μετά την κρούση. m 1 =1 m 1 =2 m 1 =4 m 1 =8 m 1 =16 m 1 =32 m 2 =1 m 2 =1 m 2 =1 m 2 =1 m 2 =1 m 2 =1 V 1 = V 1 = V 1 = V 1 = V 1 = V 1 = V 2 = V 2 = V 2 = V 2 = V 2 = V 2 = m 1 =1 m 1 =1 m 1 =1 m 1 =1 m 1 =1 m 1 =1 m 2 =1 m 2 =2 m 2 =4 m 2 =8 m 2 =16 m 2 =32 V 1 = V 1 = V 1 = V 1 = V 1 = V 1 = V 2 = V 2 = V 2 = V 2 = V 2 = V 2 = 2. Δημιουργήστε τη γραφική παράσταση των V 1, V 2 ως (χωριστές γραφικές παραστάσεις) συνάρτηση του m 2 (ListPlot) και σχολιάστε τα αποτελέσματα. Τι συμβαίνει όταν m 1 >>m 2 ή m 2 >>m 1 ;