60
Μεταπτυχιακή Εργασία: «Computerized Ray Tracing» Θεοδωρίδης Δημήτριος Ηράκλειο 2006

Ηράκλειο 2006 - Optics

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Ηράκλειο 2006 - Optics

Μεταπτυχιακή Εργασία: «Computerized Ray Tracing» Θεοδωρίδης Δημήτριος

Ηράκλειο 2006

Page 2: Ηράκλειο 2006 - Optics

Το πόνημα αυτό, αφιερώνεται στους γονείς μου, τη σύζυγο

μου, τον παππού μου Γιώργο και την γιαγιά μου

Γεωργία Κουρλαύτη και επίσης, στην αγαπημένη μου

Μπίλιο Μέξη, για την εμπιστοσύνη της που έδειξε

στο πρόσωπο μου.

2

Page 3: Ηράκλειο 2006 - Optics

Το κείμενο αυτό αποτελεί την μεταπτυχιακή εργασία του φοιτητή Θεοδωρίδη Δημήτρη, η οποία εκπονήθηκε στα πλαίσια του διατμηματικού Μεταπτυχιακού Προγράμματος Σπουδών ‘Οπτική και Όραση’, του Πανεπιστημίου Κρήτης. Η εργασία ολοκληρώθηκε υπό την επίβλεψη του Δρ. Δημήτρη Παπάζογλου.

3

Page 4: Ηράκλειο 2006 - Optics

Περιεχόμενα

1. Εισαγωγή 2. Raytracing

a. Βασικές έννοιες b. Υπάρχουσες εμπορικές εφαρμογές c. Παραδείγματα εφαρμογών με Raytracing

3. Optica a. Σύντομη περιγραφή

i. Σχεδίαση οπτικών συστημάτων ii. Ανάπτυξη οπτικών διατάξεων

iii. Ανάλυση επιδόσεων 4. Ανάλυση σφαλμάτων απεικόνισης

a. Μονοχρωματικά σφάλματα Seidel i. Σφαιρικής εκτροπής

ii. Κόμης iii. Αστιγματισμού iv. Καμπύλωση πεδίου v. Παραμόρφωση

b. Χρωματικά σφάλματα 5. Σύνθετα οπτικά συστήματα

a. Υπολογισμός χαρακτηριστικών σημείων i. Κύριες εστίες

ii. Κύρια επίπεδα iii. Δεσμικά σημεία

6. Παράρτημα 7. Abstract 8. Βιβλιογραφία και διευθύνσεις στο Internet

4

Page 5: Ηράκλειο 2006 - Optics

1. Εισαγωγή

Οι αυξημένες ανάγκες της σύγχρονης Βιομηχανίας, αλλά και της Ιατρικής, για την καλύτερη κατανόηση και σχεδιασμό οπτικών συστημάτων, με οδήγησαν στα πλαίσια του Μεταπτυχιακού προγράμματος, να επιλέξω για εργασία μου, τη μελέτη του Ray tracing για διάφορα οπτικά συστήματα και ταυτόχρονα να κάνω μια εργασία προσιτή σε κάθε φοιτητή του συγκεκριμένου Μεταπτυχιακού τμήματος και όχι μόνο, έτσι ώστε δοθεί ένα αρκετά αξιόλογο εργαλείο για κάθε φοιτητή και ερευνητή που θέλει να κάνει μία προσέγγιση των προβλημάτων στα διάφορα οπτικά συστήματα, αλλά και στον τρόπο που μπορούν να αντιμετωπιστούν. Στην εργασία μου αυτή προσπαθώ να αναδείξω της δυνατότητες του υπολογιστικού πακέτου Optica στο να εκτελεί Ray Tracing και να σχεδιάζει διάφορα οπτικά συστήματα. Για να αναδείξω αυτή τη δυνατότητα του Optica, επέλεξα να κάνω μία ανάλυση των οπτικών σφαλμάτων ενός οπτικού συστήματος (Μονοχρωματικών και Χρωματικών) και έναν προσδιορισμό των κύριων σημείων ενός οπτικού συστήματος. Το Optica ενσωματώνεται στο ευρύτερο υπολογιστικό πακέτο του Mathematica. Ίσως το πόνημα αυτό καταστεί και ένα μελλοντικό μάθημα του Μεταπτυχιακού τμήματος. Κάπου εδώ θα ήθελα να ευχαριστήσω τον επιβλέποντα καθηγητή Δημήτρη Παπάζογλου , για την αμέριστη βοήθεια που μου προσέφερε κατά την συγγραφή του πονήματος αυτού, επίσης τον ερευνητή Α του ΙΤΕ Δρ. Κωνσταντίνο Καλπούζο για την ηθική στίρηξη όλων των χρόνων του Μεταπτυχιακού Προγράμματος ,τον καθ. του Μαθηματικού Τμήματος Δρ. Μιχάλη Ταρουδάκη, για τις πολύτιμες συμβουλές του, γύρο από την εργασία μου και τον θείο μου Dr. V.J.Theodorides, γιατί ήταν ο κύριος υπαίτιος για την επιθυμία μου να εγγραφώ στο Μεταπτυχιακό Πρόγραμμα «Οπτική και Όραση». Ευχαριστώ Πολύ Θεοδωρίδης Δημήτριος

5

Page 6: Ηράκλειο 2006 - Optics

2. Ray tracing

2.a Βασικές έννοιες

Προτού προχωρήσουμε στις έννοιες των σφαλμάτων, ας δούμε πρώτα την έννοια του Ray tracing. Δεν είναι τίποτα άλλο παρά η καταγραφή της πορείας μιας ακτίνας φωτός, προερχόμενης από το χώρο του αντικειμένου και διερχόμενη μέσα από διάφορες διαθλαστικές επιφάνειες, θα φτάσει κάποια στιγμή να δημιουργήσει ένα είδωλο. Αυτή την πορεία θα εξηγήσουμε με λίγα και όσον το δυνατό απλούστερα λόγια. Δεν θα χρησιμοποιήσουμε καμία προσεγγιστική μέθοδο, όχι γιατί αυτές δεν έχουν αξία, κάθε άλλο, εδώ όμως θέλουμε να δείξουμε μία μέθοδο μεγαλύτερης ακρίβειας και η οποία εφαρμόζεται από το υπολογιστικό πρόγραμμα του Optica. Θα πάρουμε μία τυχαία ακτίνα, η οποία θα ξεκινάει από κάποιο αντικείμενο. Οι κανόνες που θα διέπουν αυτή την ακτίνα, θα είναι ίδιοι και με εκείνους που διέπουν μία παραξονική ακτίνα. Στο Σχ.1 φαίνεται η ακτίνα που διέρχεται μέσα από μία επιφάνεια. Κατά τη σύμβαση, οι γωνίες που έχουν την φορά των δεικτών του ρολογιού θεωρούνται θετικές, ενώ αυτές που έχουν αντίθετη φορά είναι αρνητικές. Η απόσταση του αντικειμένου από την διαθλαστική επιφάνεια θεωρείται αρνητική, ενώ η απόσταση του ειδώλου από την διαθλαστικά επιφάνεια θεωρείται θετική.

it−

1it +

1iR +

iθ1iθ +

1iβ +−

φ

yi 1+

yi

6

Page 7: Ηράκλειο 2006 - Optics

Σχ.1 Αρχή του Ray Tracing Στο Σχ.1 οι μεταβλητές y

i και y i+1 παριστάνουν τα ύψη της φωτεινής δέσμης πριν και μετά τη διάθλαση, τα θι , θι+1 τις γωνίες πρόσπτωσης και διάθλασης, τα βi ,βi+1 είναι οι κλίση της φωτεινής δέσμης σε σχέση με τον οπτικό άξονα πριν και μετά την διάθλαση της. Τα ti και ti+1 είναι οι αποστάσεις του αντικειμένου και του ειδώλου από την κορυφή της διαθλαστικής επιφάνειας αντίστοιχα. Και τέλος τα Ri+1 και Φ είναι η ακτίνα της διαθλαστικής επιφάνειας και η γωνία που σχηματίζει η κάθετη πρόσπτωσης με τον οπτικό άξονα. Ο βασικός αλγόριθμος του Ray Tracing, γνωρίζοντας την αρχική γωνία κλίσης της ακτίνας και την αρχική της θέση, μέσα από τον νόμο του Snell και τις στοιχειώδεις γνώσεις Τριγωνομετρίας, φτάνουμε στον υπολογισμό της τελικής θέσης αλλά και κατεύθυνσης της ακτίνας μας μετά την διαθλαστική επιφάνεια. Παρακάτω δίνονται οι σχετικές σχέσεις:

1 1sin sini i i in nθ θ+ += Νόμος Snell

Η νέα θέση της ακτίνας, μετά την διαθλαστική επιφάνεια, δίνεται από την σχέση:

1 tani i i ii

ny y tn

β+ = + Ενώ από το ορθογώνιο τρίγωνο που σχηματίζεται από το σημείο τομής της καθέτου πρόσπτωσης της επιφάνειας και του νέου ύψους της ακτίνας και το σημείο τομής της προέκτασης της καθέτου πρόσπτωσης με τον οπτικό άξονα, παίρνω τις εξής σχέσεις: i iθ φ β= +

1 1i iφ θ β+ += −

7

Page 8: Ηράκλειο 2006 - Optics

11 1

1 1

sin sini i

i i

y yR R

φ φ −+ +

+ +

= → = Και επειδή το τότε από τις παραπάνω σχέσεις και τον νόμο αθροίσματος γωνιών του ημιτόνου, η νέα κλίση της ακτίνας θα δίνεται από την παρακάτω σχέση:

1 1 1 11

1 1

sin sin sin sini i

i i

n 1

1

i

i

y yn Rι ιβ β− −

R−+ +

++ +

⎧ ⎫⎡ ⎤⎪ ⎪= + −⎨ ⎬⎢ ⎥⎪ ⎪⎣ ⎦⎩ ⎭

+

Εάν οι διαθλαστικές επιφάνειες είναι περισσότερες της μίας, η παραπάνω διαδικασία επαναλαμβάνεται συνεχώς. Η διαδικασία της επανάληψης είναι μία διαδικασία που χαρακτηρίζει το Ray Tracing. Παρακάτω παραθέτω για του λόγου το αληθές, ένα λογικό διάγραμμα που δείχνει αυτήν την επαναληπτική διαδικασία

8

Page 9: Ηράκλειο 2006 - Optics

yi,βι RayTracing

.

Όπου τα yi,βi είναι τα αρχικά δεδομένα και yi+1,βi+1 τα τελικά αποτελέσματα και N, ο αριθμός των διαθλαστικών επιφανειών.

2.b Υπάρχουσες εμπορικές εφαρμογέςΣήμερα, υπάρχουν πολλά υπολογιστικά προγράμματα σε σχέση με το Ray

tracing, θα παραθέσω εδώ δύο από τα πιο αξιόπιστα του χώρου αυτού.

α) Το ZEMAX είναι ένα πολύ καλό υπολογιστικό εργαλείο για τον

σχεδιασμό και την εκτίμηση οπτικών συστημάτων, είναι ένα πολύ

εξειδικευμένο εργαλείο, το οποίο είδη χρησιμοποιείται στη βιομηχανία

κατασκευής οπτικών συστημάτων αλλά και σε διάφορα ερευνητικά κέντρα

του κόσμου. Το μειονέκτημα του είναι το υψηλό κόστος και η

πολυπλοκότητα του και το σπουδαιότερο, ότι δεν επιδέχεται αναβάθμιση

από τον απλό χρήστη. Δεν συνιστάτε για εκπαιδευτικές εφαρμογές. Εδώ

παραθέτω μερικές από τις εφαρμογές του.

i N≤

ifelse

then

yi+1,βi+1

9

Page 10: Ηράκλειο 2006 - Optics

Άλλη μια αξιόλογη εφαρμογή είναι το Code V , είναι και αυτό γρήγορο ,

αξιόπιστο και πολύ αποτελεσματικό κατά τη μελέτη οπτικών συστημάτων ,

10

Page 11: Ηράκλειο 2006 - Optics

αλλά και εδώ έχουμε αυξημένο κόστος αγοράς του, πάλι δεν επιδέχεται

αναβάθμιση από τον απλό χρήστη . Δεν συνιστάτε για εκπαιδευτικές

εφαρμογές.

Εδώ παραθέτω κάποιες από τις ικανότητες του σε ανάλυση επεξεργασία και

παρουσίαση διάφορων αποτελεσμάτων του Code V.

11

Page 12: Ηράκλειο 2006 - Optics

Άλλο ένα πρόγραμμα με το οποίο μπορείς να κάνεις Ray tracing σε οπτικά

συστήματα και με το οποίο ασχολήθηκα σ’αυτή τη μεταπτυχιακή εργασία

είναι το Optica. Το Optica είναι ένα υπολογιστικό πακέτο ενσωματωμένο

στο Mathematica. Είναι αρκετά αξιόπιστο, ίσως όχι όσο τα προηγούμενα,

αλλά είναι πιο προσιτό στον χρήστη και το σημαντικότερο, λόγω της

γλώσσας προγραμματισμού με την οποία είναι εφοδιασμένο, είναι δυνατόν

να επέμβουμε στο λογισμικό του και να δημιουργήσουμε νέες συναρτήσεις ,

έτσι ώστε ο χρήστης να κάνει επιπλέον εργασίες που ο ίδιος επιθυμεί.

Συνιστάτε για εκπαιδευτικά και ερευνητικά προγράμματα, γι’ αυτό και

επιλέχτηκε στην παρούσα εργασία ως ένα εργαλείο για την καλύτερη

κατανόηση του φαινόμενου του Ray tracing.

12

Page 13: Ηράκλειο 2006 - Optics

Παρακάτω παραθέτω κάποια χαρακτηριστικά από το περιβάλλον εργασία

του Optica.

13

Page 14: Ηράκλειο 2006 - Optics

2c. Παραδείγματα εφαρμογών με Ray tracing

Εδώ θα παραθέσουμε δυο παραδείγματα εφαρμογών Ray tracing με τη

βοήθεια του Optica.

Το πρώτο είναι ένα απλό Τηλεσκόπιο με δυο επιπεδόκυρτους φακούς. Ο

πρώτος είναι 20 διοπτρίες και ο δεύτερος είναι 10 διοπτρίες, η μεταξύ τους

ναι 15 εκατοστά. απόσταση εί

14

Page 15: Ηράκλειο 2006 - Optics

A Simple Telescope Η ιδιότητα του τηλεσκόπιου είναι να φέρνει τα μακρινά αντικείμενα κοντά στον οφθαλμό μας και μεγενθυμένα. Παρόμοια ιδιότητα έχει και το μικροσκόπιο, μόνο που αυτό έχει εφαρμογή στο μικρόκοσμο και τα πολύ μικρά αντικείμενα τα φέρνει μεγενθυμένα στο μάτι μας. Παρακάτω παραθέτω μια εφαρμογή μικροσκοπίου, το οποίο αποτελείται από δύο αμφίκυρτους φακούς, με τον πρώτο να έχει ισχύ 20 διοπτριών και τον δεύτερο 10 διοπτρίες, και ο ένας φακός έχει απόσταση από τον άλλο 26 εκατοστά.

15

Page 16: Ηράκλειο 2006 - Optics

A Microscope

3. Optica 3.a Σύντομη περιγραφή Το Optica είναι ένα υπολογιστικό πακέτο που ενσωματώνεται στο υπολογιστικό πακέτο Mathematica. Το Optica ορίζει και αναλύει απλά και σύνθετα οπτικά συστήματα. Βασίζεται στη γλώσσα προγραμματισμού του Mathematica, με επιπλέον εντολές, οι οποίες ορίζουν τους φακούς, κάτοπτρα, πρίσματα, φράγματα κλπ., είναι εύχρηστο πρόγραμμα και δουλεύει στους περισσότερους υπολογιστές. 3.a.i Σχεδίαση οπτικών συστημάτων Επιστήμονες και Μηχανικοί που σχεδιάζουν οπτικά συστήματα και πειραματικές διατάξεις, βρίσκουν στο Optica, ένα χρήσιμο εργαλείο, για την εκτίμηση και τον προσδιορισμό των δυνατοτήτων ενός οπτικού συστήματος πριν αυτό βγει στην παραγωγή. Η υψηλή ποιότητα γραφικών του Optica μπορεί να αξιοποιηθεί σε επιστημονικές παρουσίες και ερευνητικά προτώκολα. Παρακάτω παραθέτω ένα οπτικό συμβολόμετρο.

16

Page 17: Ηράκλειο 2006 - Optics

Σχ.2 Οπτικό Συμβολόμετρο Αποτελείται από 7 καθρέπτες και δύο πρίσματα. Στέλνουμε δύο δέσμες διαφορετικού μήκους κύματος και μετά από διαδοχικές ανακλάσεις θα συμβάλουν σε ένα σημείο του χώρου με κάποια χρονική καθυστέρηση του ενός κύματος ως προς το άλλο. Η χρονική αυτή καθυστέρηση φαίνεται καθαρά στο παρακάτω γράφημα.

0100

200300

4000

100

200

300

-20246

0100

200300

400

Uv delay

t

Green delay

17

Page 18: Ηράκλειο 2006 - Optics

3.a.ii Εκπαιδευτικό εργαλείο

Το Optica, μπορεί ακόμη να χρησιμοποιηθεί σαν ένα καλό εκπαιδευτικό εργαλείο για την καλλίτερη εκμάθηση της οπτικής. Παρέχει μια μεγάλη βάση δεδομένων από εργαστηριακά πειράματα, όπου σε κάποιες περιπτώσεις παρέχει πειράματα φυσικής με χρήση Laser και χρησιμοποιεί ευαίσθητο και ακριβό εργαστηριακό εξοπλισμό. Ο φοιτητής έρχεται πιο κοντά με τα πειράματα της οπτικής, γρήγορα και με μεγάλη ακρίβεια και σε λίγο χρόνο μαθαίνει να χειρίζεται τα όργανα οπτικής.

4. Ανάλυση σφαλμάτων απεικόνισης

Τα σφάλματα απεικόνισης προέρχονται από τις κατασκευαστικές ατέλειες των φακών και οι οποίες προκαλούν σκέδαση του φωτός, με αποτέλεσμα, η εικόνα που θα πάρουμε να μην είναι καθαρή, αλλά αλιωμένη. Δηλαδή, όπως βλέπουμε και στο παρακάτω σχήμα,

Επίπεδο αντικειμένου Επίπεδο

κόρης εισόδου Επίπεδο

κόρης εξόδου

Επίπεδο παραξονικού ειδώλου

Σχ.3 όταν μία ακτίνα φωτός ξεκινάει από ένα σημείο P0 στο επίπεδο του αντικειμένου, εμείς θα περιμένουμε να εστιαστεί σε ένα σημείο P1 στο επίπεδο του παραξονικού ειδώλου, αυτό όμως δεν συμβαίνει και εστιάζεται στο σημείο P1

* , τότε λέμε ότι αυτή η διαφορά ΔP=P1*-P1 είναι το σφάλμα εστίασης.

18

Page 19: Ηράκλειο 2006 - Optics

Τα σφάλματα χωρίζονται σε δύο κατηγορίες a. Tα Μονοχρωματικά ή Seidel σφάλματα b. Tα Χρωματικά σφάλματα 4.a.i Μονοχρωματικά ή Seidel σφάλματα(Χαμηλής Τάξης) Σφαιρική εκτροπή Τα σφάλματα σφαιρικής εκτροπής είναι αυτά που δημιουργούνται από την αδυναμία του οπτικού συστήματος να εστιάσει όλες τις φωτεινές ακτίνες ενός αντικειμένου, πάνω στο ίδιο σημείο του οπτικού άξονα που δημιουργείται η εικόνα του αντικειμένου. Τα σφαιρικά σφάλματα χωρίζονται σε δύο κατηγορίες, στα διαμήκη και στα εγκάρσια. Τα διαμήκη δημιουργούνται πάνω στον οπτικό άξονα στο χώρο του ειδώλου και τα εγκάρσια είναι αυτά που δημιουργούνται στο επίπεδο του ειδώλου. Ως επί το πλείστον τα σφαιρικά σφάλματα οφείλονται στο σχήμα του φακού. Δεν υπάρχει φακός που να είναι από μόνος του απαλλαγμένος από σφαιρικά σφάλματα, γι’ αυτό φροντίζουμε να χρησιμοποιήσουμε συνδυασμό φακών(αρνητικών και θετικών) για να περιορίσουμε και να ελαχιστοποιήσουμε τα σφαιρικά σφάλματα. Η ελαχιστοποίηση των σφαιρικών σφαλμάτων είναι πρώτης προτεραιότητας, εάν θέλουμε να ελαχιστοποιήσουμε και τα υπόλοιπα μονοχρωματικά σφάλματα (Κόμη,Αστιγματισμό,Καμπύλωση πεδίου, Παραμόρφωση). Παρακάτω δίνονται περιπτώσεις φακών με τα σφαιρικά τους σφάλματα, τα οποία αναλύονται και καταγράφονται και ταυτόχρονα γίνεται μια προσπάθεια ελάττωσης των σφαιρικών εκτροπών με συνδυασμό φακών ή αλλαγής του σχήματος τους. Στα παρακάτω παραδείγματα, κατά τη μελέτη των σφαλμάτων Seidel, χρησιμοποιήθηκε παράλληλη δέσμη φωτός συμμετρικά του οπτικού άξονα, με μήκος κύματος άλλοτε στο πράσινο και άλλοτε στο κόκκινο και με εύρος δέσμης περίπου τα 2/3 της διαμέτρου του φακού. Πρώτα παίρνω έναν επιπεδόκυρτο φακό με ισχύ 10 διοπτρίες

19

Page 20: Ηράκλειο 2006 - Optics

LSATSA

Σχ.4 Στο σχ.3 φαίνεται καθαρά το σφάλμα σφαιρικής εκτροπής, ενώ παρακάτω γίνεται και η μέτρηση του από την γραφική παράσταση , μετρημένο σε χιλιοστά. Όπου τα LSA και TSA είναι το διαμήκες και το εγκάρσιο σφάλμα αντίστοιχα.

20

Page 21: Ηράκλειο 2006 - Optics

το Δx=0.72 mm. Ο οριζόντιος άξονας δείχνει την κόρη εισόδου και ο κατακόρυφος το εγκάρσιο σφάλμα. Παρακάτω φαίνεται το διαμήκες σφάλμα.

Το Δz παριστάνει το διαμήκες σφάλμα και είναι ίσο με 3mm, ενώ το Y παριστάνει το ύψος του φακού. Το ότι η καμπύλη δείχνει να πηγαίνει στην αρνητική κατεύθυνση, σημαίνει ότι η διαθλώμενες ακτίνες κλείνουν προς τον οπτικό άξονα. Παρακάτω γίνεται μια προσπάθεια μείωσης του σφάλματος, φτιάχνοντας ένα συνδυασμό 2 επιπεδόκυρτων φακών από 10 διοπτρίες ο καθένας.

-2 -1.5 -1 -0.5 00

5

10

15

20

25

1

0.75

0.5

0.25

0

-15 -10 -5 0 5 10 15

-0.75

-0.5

-0.25

Δx(mm)

TSA

Κόρη εισόδου(mm)

Y(mm)

LSA

Δz(mm)

21

Page 22: Ηράκλειο 2006 - Optics

σχ.5 Τώρα το Δz έγινε 2.5 mm και το Δx ίσο με 0.63 mm. Παρακάτω βλέπουμε και τα αντίστοιχα γραφηματά τους.

1

0.75

-15 -10 -5 0 5 10 15

-0.75

-0.5

-0.25

0

0.25

0.5

LSA TSA

Δx(mm)

TSA

Κόρη εισόδου(mm)

22

Page 23: Ηράκλειο 2006 - Optics

25

20

Τώρα θα δούμε πως επηρεάζεται το σφάλμα το σφαιρικό από το σχήμα κρατώντας την ισχύ σταθερή και αλλάζοντας την καμπυλότητα του φακού.

a b

c d

-2.5 -2 -1.5 -1 -0.5 00

5

10

15

Y(mm)

LSA

Κόρη εισόδου(mm)

23

Page 24: Ηράκλειο 2006 - Optics

. R1 R2

e f Σχ.6 Βλέπουμε ότι όταν R2 μικραίνει σε σχέση με το R1 μεγαλώνει το σφαιρικό σφάλμα. Θα δείξουμε τώρα ότι όταν το R2 μεγαλώνει σε σχέση με το R1, κρατώντας την ισχύ του φακού σταθερή, το σφάλμα σφαιρικότητας μειώνεται.

a b

c d

24

Page 25: Ηράκλειο 2006 - Optics

e f Σχ.7 4.a.ii Κόμη Ένα σφάλμα φακού ή οπτικού συστήματος δια του οποίου ένα σημείο του αντικειμένου, εκτός οπτικού άξονος, απεικονίζεται σαν ένα αχλάδι ή σαν ένα κομήτη, ονομάζεται Κόμη(Coma). Η Κόμη εξαρτάται και αυτή από το σχήμα του φακού σαν και τη σφαιρική εκτροπή. Διορθώνεται, αφού πρώτα έχει διορθωθεί το σφαιρικό σφάλμα. Παρακάτω δείχνω ένα παράδειγμα εξάρτησης κόμης από το σχήμα του φακού, στέλνοντας μια δέσμη φωτός στο οριζόντιο επίπεδο υπό γωνία.

a b

c d

e f

25

Page 26: Ηράκλειο 2006 - Optics

g Σχ.8 4.a.iii. Αστιγματισμός Ποτέ η Κόμη δεν εμφανίζεται μόνη της, αλλά σε σύνθεση με ένα ακόμη εκτός άξονος σφάλμα, τον Αστιγματισμό. Εάν σε ένα φακό στείλουμε από ένα σημείο ενός αντικειμένου δύο δέσμες φωτός, μια στο οριζόντιο και μία στο κατακόρυφο επίπεδο, τότε στο πεδίο της εικόνας, η οριζόντια δέσμη θα εστιαστεί πέρα από την κατακόρυφη δέσμη και μπροστά από το παραξονικό επίπεδο. Αυτό έχει ως αποτέλεσμα να πάρουμε δύο εικόνες, υπό τη μορφή γραμμής η κάθε μία. Οι δύο αυτές γραμμές, ευρισκόμενες στη σωστή γωνία η μία από την άλλη και με μία κυκλική περιοχή ανάμεσα τους, συνθέτουν μια θολή εικόνα ,ένα θολό κύκλο, γνωστός και ως κύκλος της ελάχιστης σύγχυσης. Το σφάλμα αυτό είναι ο Αστιγματισμός και οφείλεται στη μεταβολή της ισχύος του φακού κατά τον οριζόντιο και κατακόρυφο άξονα του. Στο παρακάτω παράδειγμα βλέπουμε καθαρά πως ο Αστιγματισμός εξαρτάται από την μεταβολή της ισχύς του φακού αλλά και από το σχήμα του

a b

c d

26

Page 27: Ηράκλειο 2006 - Optics

e f Σχ.9 Τοποθετώντας έναν αμφίκοιλο φακό στο μεταβαλλόμενο φακό, μπορούμε εύκολα να διαπιστώσουμε ότι το πρόβλημα του Αστιγματισμού βελτιώνεται.

a b

c d

e f Σχ.10

27

Page 28: Ηράκλειο 2006 - Optics

4.a.iv. Καμπύλωση πεδίου Ακόμη και εάν έχουμε διόρθωση την σφαιρική εκτροπή, την Κόμη και τον Αστιγματισμό, το οπτικό μας σύστημα πάλι δεν είναι απαλλαγμένο από σφάλματα. Ένα σύστημα με διορθωμένο Αστιγματισμό, έχει το οριζόντιο επίπεδο του, να συμπίπτει με το κατακόρυφο επίπεδο του σε ένα και μόνο επίπεδο εικόνας, ονομαζόμενο και επιφάνεια Petzval, η οποία δυστυχώς δεν μοιάζει στην κλασσική επίπεδη εικόνα, αλλά της περισσότερες φορές δείχνει σαν μία καμπυλωμένη επιφάνεια.

a b

c d

e f

28

Page 29: Ηράκλειο 2006 - Optics

g h

k l

m Σχ.11 4.a.v. Παραμόρφωση Εάν η καμπύλωση πεδίου παριστάνει μία διαμήκης συστροφή του εικονικού πεδίου κατά μήκος του οπτικού άξονα, η παραμόρφωση, παριστάνει μία

29

Page 30: Ηράκλειο 2006 - Optics

εγκάρσια δίπλωση του εικονικού πεδίου. Αυτό σημαίνει ότι εάν έχουμε ένα ορθογώνιο πλέγμα ως αντικείμενο, στο πεδίο της εικόνας θα παρουσιαστεί σαν ένα πλέγμα καμπυλομένω. Αυτό γίνεται γιατί η εγκάρσια μεγέθυνση, σε ένα σύστημα με παραμόρφωση, αλλάζει συναρτήσει της απόστασης από τον οπτικό άξονα. Εάν η μεγέθυνση μειώνεται όσο η απόσταση μεγαλώνει από τον οπτικό άξονα, τότε το σχήμα της εικόνας του πλέγματος που θα πάρουμε, θα είναι Βαρελοειδές, ενώ εάν η μεγέθυνση αυξάνεται όταν αυξάνεται και η απόσταση από τον οπτικό άξονα, τότε το σχήμα της εικόνας θα είναι «Pincushion» (δηλ, σαν ένα μαξιλαράκι με καρφίτσες) ή σαν ένα Μηνισκοειδές.

a. Βαρελοειδές εικόνα

b. Μηνισκοειδές εικόνα Σχ. 12 4.b. Χρωματικά σφάλματα

30

Page 31: Ηράκλειο 2006 - Optics

Τα χρωματικά σφάλματα παρουσιάζονται εξαιτίας του φαινόμενου της διασποράς που εμφανίζεται στα οπτικά υλικά (δηλ: αλλάζει ο δείκτης διάθλασης του υλικού ανάλογα με το μήκος κύματος της φωτεινής δέσμης που διέρχεται μέσα από το υλικό). Το χρωματικό σφάλμα μπορεί να προσδιοριστεί με την παραξονική προσέγγιση. Απ’ τη στιγμή που θα εντοπιστεί το χρωματικό σφάλμα, ο μόνος τρόπος για να το ελλατώσουμε, είναι ο συνδυασμός διάφορων οπτικών μέσων, με διαφορετική διασπορά. Χαρακτηριστικό της διασποράς ενός υλικού είναι ο Αριθμός Abbe(V) που δίνεται από την σχέση V=(nd-1)/(nF-nC) , όπου nd, nF, nC είναι οι δείκτες διάθλασης σε συγκεκριμένα μήκη κύματος. Εάν το V είναι μεγάλο, έχουμε μικρή διασπορά, ενώ, εάν είναι μικρό, η διασπορά αυξάνει. Έτσι για να πετύχουμε ένα σύστημα, πχ δύο φακών να είναι αχρωματικό (δηλ, χωρίς χρωματικό σφάλμα) πρέπει να ισχύει η παρακάτω σχέση. fAVA + fBVB=0 όπου fA, fB είναι οι εστιακές αποστάσεις των φακών και VB A,VBB οι αριθμοί Abbe των αντίστοιχων φακών. Παρακάτω δίνεται ένας πίνακας με πυρολιθικά υλικά και υλικά από στεφανύαλο και τους αντίστοιχους αριθμούς τους Abbe.

Παρακάτω, παραθέτω κάποια παραδείγματα χρωματικών σφαλμάτων και τρόποι διόρθωσης τους. Χρησιμοποιώ μια δέσμη κύματος από 350 nm έως 700

31

Page 32: Ηράκλειο 2006 - Optics

nm. Παίρνω ένα επιπεδόκυρτο φακό BK7 (από στεφανύαλο) και βρίσκω ότι το διαμήκες χρωματικό είναι 6 mm, ενώ το εγκάρσιο είναι 0.4mm.

Όπου Lch είναι το διαμήκες χρωματικό σφάλμα και το Tch είναι το εγκάρσιο χρωματικό σφάλμα. Παρακάτω βλέπουμε τη διασπορά του χρωματικού σφάλματος μέσα από τη γραφική του παράσταση.

Σχ.13

-15 -10 -5 0 5 10 15

-0.75

-0.5

-0.25

0

0.25

0.5

0.75

1

Lch

Tch

Tch

Δx(mm)

Εύρος διασποράς

Κόρη εισόδου(mm)

32

Page 33: Ηράκλειο 2006 - Optics

Παρακάτω, δίνονται δύο ίδιες οπτικές διατάξεις (Triplet), κατασκευασμένες από διαφορετικό υλικό, με τον τρόπο αυτό φαίνεται καθαρά πως το υλικό επηρεάζει το χρωματικό σφάλμα. Και οι δύο διατάξεις αποτελούνται από δύο επιπεδόκυρτους και έναν αμφίκοιλο φακό. Στη πρώτη διάταξη το υλικό που χρησιμοποιήθηκε ανήκει στο SF5 (υλικό από πυρόλιθο), έχει V =32,3 που σημαίνει ότι έχει μεγάλη διασπορά και κάνοντας μια μέτρηση του σφάλματος στη ζώνη σφάλματος με τη βοήθεια του Optica, βρίσκω το διαμήκες χρωματικό σφάλμα ίσο με 7mm, ενώ το εγκάρσιο βρέθηκε ίσο με 1.17 mm.

Tch

Lch

33

Page 34: Ηράκλειο 2006 - Optics

6

4

2

0

-2

-4

-6

TchΔx(mm)

-20 -10 0 10 20

Κόρη εισόδου(mm)

Σχ.14 Αλλάζοντας τώρα το υλικό και βάζοντας BK7 (υλικό από στεφανύαλο) και

κρατώντας την ίδια διάταξη, βρίσκω ότι μειώνεται το διαμήκες χρωματικό

σφάλμα σε 5 mm ενώ το εγκάρσιο σε 1.024 mm και αυτό γιατί το V του BK7

είναι 64,7, που σημαίνει μικρή διασπορά. Αυτό φαίνεται καθαρά και από τη

σύγκριση των διαγραμμάτων τους.

34

Page 35: Ηράκλειο 2006 - Optics

Lch

Tch

Δx(mm)

Σχ.15

-20 -10 0 10 20

-6

-4

-2

0

2

4

6

Κόρη εισόδου(mm)

35

Page 36: Ηράκλειο 2006 - Optics

5. Σύνθετα οπτικά συστήματα Εδώ θέλησα να αναδείξω μια ακόμη φορά την ικανότητα που έχει το Optica, στο να αναλύει ένα οπτικό σύστημα και να υπολογίζει τα κύρια επίπεδα του, τα εστιακά επίπεδα, την ενεργό εστιακή απόσταση και τα δεσμικά σημεία. Δίνεται παρακάτω ένα παράδειγμα. Έχουμε ένα σύστημα τριών φακών (αμφίκυρτος, αμφίκοιλος, αμφίκυρτος) και όλοι με ισχύ 12,5 διοπτρίων. Χρησιμοποιώ την παραξονική προσέγγιση, στέλνω τρεις παράλληλες ακτίνες τυχαίου μήκους κύματος (350 nm έως 700 nm). Η παραπάνω διαδικασία εκτελείται εις διπλούν, δηλ: πρώτα στέλνω τη δέσμη από τα αριστερά του οπτικού συστήματος και μετά από τα δεξιά του οπτικού συστήματος (βλέπε σχήμα 15). Τα αποτελέσματα μας δείχνουν τις θέσεις των συγκεκριμένων μεγεθών που ψάχνουμε να βρούμε.

Σχ.16

F= 120.602 mm (μπροστινό εστιακό επίπεδο) F'= 308.513 mm (πίσω κύριο επίπεδο) f= 77.295 mm (ενεργός εστιακή απόσταση) H1= 197.896 mm (μπροστινό κύριο επίπεδο) H1'= 231.218 mm (πίσω κύριο επίπεδο) Im= 407.592 mm (θέση ειδώλου)

36

Page 37: Ηράκλειο 2006 - Optics

6. Παράρτημα Εδώ παραθέτω όλους τους κώδικες του Optica που χρησιμοποιήθηκαν για την παραγωγή των παραπάνω αποτελεσμάτων του πονήματος αυτού.

(*simple telescope*) dsteps=12; h4=Range[dsteps+1]; di=0; Do[ di=di+1; h4[[di]]=DrawSystem[Move[LineOfRays[8,NumberOfRays→10],5,0,1.5dy], Move[Ray[WaveLength→0.35],0,0,0], Move[PlanoConvexLens[50,40,10],90,0,0], Move[PlanoConvexLens[100,50,10],240,0,180], Move[Screen[200],400,0,0], Boundary[-100,-150,-150,400,150,150],PlotPoints→80,PlotType→TopView,PlotRange→0,400,-60,60,OutputType→StandardGraphics]; ,dy,-6,6] Export["C:\\test36.gif",h4,"GIF",ConversionOptions→"AnimationDisplayTime"->.2,"Loop"->True,ImageSize->400,120,ImageResolution→150]

37

Page 38: Ηράκλειο 2006 - Optics

(*microscope*) dsteps=12; h5=Range[dsteps+1]; di=0; Do[ di=di+1; h5[[di]]=DrawSystem[Move[ConeOfRays[8,NumberOfRays→15],5,dy,0], Move[Ray[WaveLength→0.35],0,0,0], Move[BiConvexLens[50,40,10],90,0,0], Move[BiConvexLens[100,50,10],350,0,0], Move[Screen[200],600,0,0], Boundary[-100,-150,-150,1000,150,150],PlotPoints→80,PlotType→TopView,PlotRange→0,600,-60,60,OutputType→StandardGraphics]; ,dy,-6,6] Export["C:\\test50.gif",h5,"GIF",ConversionOptions→"AnimationDisplayTime"->.2,"Loop"->True,ImageSize->400 120 ImageResolution→150]

(*planoconvex,sferical aberration*) sys1=PropagateSystem[Move[LineOfRays[30,NumberOfRays→7,WaveLength-> 0.55],0,0,0],Move[Screen[50],100,0,0], Move[PlanoConvexLens[100,50,10],100,0,0], Move[Screen[50],198,0,0], Boundary[500]]; ShowSystem[sys1,Boxed→False,PlotType→TopView]; sys1=PropagateSystem[Move[LineOfRays[30,NumberOfRays→8,WaveLength-> 0.55],0,0,0],Move[Screen[50],100,0,0], Move[BiConvexLens[100,50,10],100,0,0], Move[Screen[50],195,0,0], Move[Screen[50],210,0,0], Boundary[500]]; ShowSystem[sys1,Boxed→False,PlotType→TopView,ShowRange→3,4];

38

Page 39: Ηράκλειο 2006 - Optics

(*Optical Interferometer*) FindDelay[system_]:=Module[ OPLPump,OPLProbe,dsystem, dsystem=PropagateSystem[system]; OPLPump=Max[ReadRays[dsystem,OpticalLength,RayLabel→pump]]; OPLProbe=Max[ ReadRays[dsystem,OpticalLength,RayLabel→probe]]; (OPLProbe-OPLPump)/300. (*Remove[grdelay,uvdelay];*) delays= grdelay→125.+150. (* max 475 *), uvdelay→362.(* max 325 *); $PartsDesign=Solid; nrays=2; system= Move[LineOfRays[10,NumberOfRays→nrays,WaveLength→.248,Resonate→True,RayLabel→pump],0,-30,90], Move[Mirror[25,5,GraphicDesign:>$PartsDesign],0.,0.,135], Move[Mirror[50,5,GraphicDesign:>$PartsDesign],925.+uvdelay,-0.,45], Move[Mirror[50,5,GraphicDesign:>$PartsDesign],925.+uvdelay,-50.,-45], Move[Mirror[25.4,5,GraphicDesign:>$PartsDesign],910.,-50.,-135], Move[Baffle[30,1,GraphicDesign→Off],910.,390.,90], Move[LineOfRays[10,NumberOfRays→nrays,WaveLength→.490,Resonate→True,RayLabel→probe],110,-30,90], Move[Mirror[25,5,GraphicDesign:>$PartsDesign],110,110,135], Move[Mirror[50,5,GraphicDesign:>$PartsDesign],1400,120,-45], Move[Prism[45,50,45,40,GraphicDesign:>$PartsDesign],1400,120+grdelay,0], Move[Mirror[50,5,GraphicDesign:>$PartsDesign],1400,120,-45], Move[Prism[45,40,45,30,GraphicDesign:>$PartsDesign],750,130,-45], Move[Mirror[25,5,GraphicDesign:>$PartsDesign],750,385,135], Move[Baffle[30,1,GraphicDesign→Off],910.,385.,0], Boundary[1000] ; DrawSystem[system/.delays,Boxed→False,PlotPoints→10,QuickTrace→True,RayLineThickness→.3,RayPointSize→0,LightSources→0,5,5,RGBColor[.2,1,.5],2,0,2,RGBColor[.9,.2,.4],1,1,0,RGBColor[1,.5,1]]; Print["Delay: "<>ToString[FindDelay[system/.delays]]<> " ns"] Plot3D[FindDelay[system/.grdelay:>x , uvdelay:>y],x,0,475,y,0,375]

39

Page 40: Ηράκλειο 2006 - Optics

(*planoconvex, graphic for Transverse spherical aberration*) dsteps=1; dlist=Range[dsteps]; Do[ dwav=.35; mysystem= LineOfRays[45,NumberOfRays→20,WaveLength:>dwav], Move[Screen[50],100,0,0], Move[PlanoConvexLens[100,50,10],100,0,0], Move[Screen[50],198,0,0], Boundary[300]; drays=PropagateSystem[mysystem]; (* read ray coordinates from the lens input screen*) dposIn=ReadRays[drays,SurfaceCoordinates,ComponentNumber→1]; (* read ray coordinates on the screen *) dposOut=ReadRays[drays,SurfaceCoordinates,ComponentNumber→3]; (* keep only x values and create xin,xout list *) dlist[[di]]=(dposIn/.x_,y_ƒx,0.)+(dposOut/.x_,y_ƒ0.,x); (* ListPlot[dlist,PlotJoined→False,PlotRange→All,-4,4,AxesOrigin→-22.5,-4,GridLines→0,0,AxesLabel→"entr.pupil","Δχ"] *) ,di,1,dsteps ] g1=Range[dsteps]; Do[ g1[[di]]=ListPlot[dlist[[di]],PlotJoined→True,PlotRange→All,-4,4,AxesOrigin→-22.5,-4,GridLines→0,0,AxesLabel→"entr.pupil(mm)","Δχ(mm)",PlotStyleƒ Hue[0.35]] ; ,di,1,dsteps ]; Show[g1,AxesLabel→"entr.pupil","Δχ"] Show[g1[[10]],AxesLabel→"entr.pupil","Δχ"];Export["C:\\Documents and Settings\\dt\\Desktop\\test12.gif",g1,"GIF",ConversionOptions→"AnimationDispla Time" > 2 "Loop" >T e]

40

Page 41: Ηράκλειο 2006 - Optics

(* Logitudinal,PlanoConvex *) dLFocus=; doffset=0; Do[ mysystem= Move[LineOfRays[dy,NumberOfRays→15,WaveLengthƒ.5],0,0,0], Move[PlanoConvexLens[100,50,10],100,0,0], Boundary[500] ; dumy=FocalPoint/.FindFocusFast[mysystem,ComponentNumber→2]; If[dy 0.1,doffset=dumy[[1]];]; dLFocus=Append[dLFocus,dumy[[1]]-doffset,dy]; ,dy,.1,30,2]; gr1=ListPlot[dLFocus,Frame→True,PlotJoined→True,PlotStyle→Hue[1],Thickness[0.008]];

(*2Planoconvex, spherical aberration*) sys3=PropagateSystem[Move[LineOfRays[30,NumberOfRays→7,WaveLength→.7],0,0,0], Move[PlanoConvexLens[100,50,10],90,0,0], Move[PlanoConvexLens[100,50,10],160,0,180], Boundary[300]]; ShowSystem[sys3,Boxed→False,PlotType→TopView]; sys3=PropagateSystem[Move[LineOfRays[30,NumberOfRays→7,WaveLength→.7],0,0,0],Move[Screen[50],90,0,0], Move[PlanoConvexLens[100,50,10],90,0,0], Move[PlanoConvexLens[100,50,10],160,0,180], Move[Screen[50],175,0,0], Move[Screen[50],195,0,0], Boundary[300]]; ShowSystem[sys3,Boxed→False,PlotType→TopView,ShowRange→4,5];

41

Page 42: Ηράκλειο 2006 - Optics

(*2 planoconvex,graphic for Transverse aberration*) dsteps=1; dlist=Range[dsteps]; Do[ mysystem= LineOfRays[30,NumberOfRays→7,WaveLength→.7], Move[Screen[50],100,0,0], Move[PlanoConvexLens[100,50,10],90,0,0], Move[PlanoConvexLens[100,50,10],160,0,180], Move[Screen[50],182,0,0], Boundary[300]; drays=PropagateSystem[mysystem]; (* read ray coordinates from the lens input screen*) dposIn=ReadRays[drays,SurfaceCoordinates,ComponentNumber→1]; (* read ray coordinates on the screen *) dposOut=ReadRays[drays,SurfaceCoordinates,ComponentNumber→4]; (* keep only x values and create xin,xout list *) dlist[[di]]=(dposIn/.x_,y_ƒx,0.)+(dposOut/.x_,y_ƒ0.,x); (* ListPlot[dlist,PlotJoined→False,PlotRange→All,-20,20,AxesOrigin→-15.5,-20,GridLines→0,0,AxesLabel→"entr.pupil(mm)","Δχ(mm)"] *) ,di,1,dsteps ] g5=Range[dsteps]; Do[ g5[[di]]=ListPlot[dlist[[di]],PlotJoined→True,PlotRange→All,-20,20,AxesOrigin→-15.5,-20,GridLines→0,0,AxesLabel→"entr.pupil(mm)","Δχ(mm)",PlotStyleƒ Hue[0.7]] ; ,di,1,dsteps ];

42

Page 43: Ηράκλειο 2006 - Optics

(* Longitudinal aberration for 2Planoconvex*) dLFocus=; doffset=0; Do[ mysystem= Move[LineOfRays[dy,NumberOfRays→15,WaveLengthƒ.5],0,0,0], Move[PlanoConvexLens[100,50,10],90,0,0], Move[PlanoConvexLens[200,50,10],170,0,180], Boundary[500] ; dumy=FocalPoint/.FindFocusFast[mysystem,ComponentNumber→3]; If[dy 0.1,doffset=dumy[[1]];]; dLFocus=Append[dLFocus,dumy[[1]]-doffset,dy]; ,dy,.1,30,2]; gr2=ListPlot[dLFocus,Frame→True,PlotJoined→True,PlotStyle→Hue[1],Thickness[0.008]]; Export["F:\\masterat1\\gr2.dat",dLFocus,"TSV"]

(*Aberration Shape*) dsteps = 6; h8 = Range[dsteps + 1]; di=0; d=0; b=0; n = 1.63; Ptot = .020; Do[di = di + 1;

( 1)12 * 11

1

r d nr

Ptot r

n

− −=

−−

;

b=b; mysystem = Move[LineOfRays[20], 0,0,0], Move[ SphericalLens[r1,r2,30,d,test],10,0,0], Boundary[100]; h8[[di]]=DrawSystem[mysystem,PlotType->TopView, OutputType->StandardGraphics, PlotPoints->60, PlotRange->0,100,-30,30];, r1,-200,-20,30]

Export["C:\\test53.gif",h8,"GIF",ConversionOptions->"AnimationDisplayTime"->.2, "Loop"-

>True,ImageSize->200,120,ImageResolution->150]

43

Page 44: Ηράκλειο 2006 - Optics

(*minimum Spherical Aberration*) d=10; b=0; n=1.63; Ptot=.020; dsteps=6; h9=Range[dsteps+1]; di=0; Do[di=di+1;

( 1)12 * 11

1

r d nr

Ptot r

n

− −=

−−

;

b=b; mysystem=Move[LineOfRays[20], 0,0,0],Move[SphericalLens[r1,r2,30,d,test], 10,0,180], Boundary[100]; h9[[di]]=DrawSystem[mysystem,PlotType->TopView,OutputType->StandardGraphics, PlotPoints->60, PlotRange->0,100,-30,30];, r1,-20,-200,-30] Export["C:\\test54.gif",h9,"GIF",ConversionOptions->"AnimationDisplayTime"->.2, "Loop"-

>True,ImageSize->200,120,ImageResolution->150]

(*Coma depending from shape of Lens*) d=10; b=10; n=1.53; Ptot=.015;

Do[ ( 1)12 * 11

1

r d nr

Ptot r

n

− −=

−−

;

b=b; mysystem=Move[LineOfRays[20], 0,0,b],Move[SphericalLens[r1,r2,30,d,test], 10,0,0], Boundary[150]; DrawSystem[mysystem,PlotType->TopView,Boxed->False, PlotPoints->60, ];, r1,-200,-5,30]

44

Page 45: Ηράκλειο 2006 - Optics

(*astigmatism*) dsteps=5; h3=Range[dsteps+1]; di=0; d=10; Do[di=di+1; f=1/p; mysystem= Move[LineOfRays[50],0,0,0,TwistAngle→90], Move[LineOfRays[50,WaveLength→.6],0,0,0], Move[BiConvexLens[f,50,d],10,0,0], Boundary[300]; h3[[di]]=DrawSystem[mysystem,PlotType→Full3D,Boxed→False,PlotPoints→60,PlotRange→0,300,-30,30,-30,30,OutputType→StandardGraphics];, p,-.020,-.010,.002] Export["C:\\test51.gif",h3,"GIF",ConversionOptions→"AnimationDisplayTime"->.8,"Loop"->True,ImageSize->300,120,ImageResolution→150]

(*astigmatism minim*) dsteps=5; h6=Range[dsteps+1]; di=0; d=10; Do[di=di+1; f=1/p; mysystem= Move[LineOfRays[50],0,0,0,TwistAngle→90], Move[LineOfRays[50,WaveLength→.6],0,0,0], Move[BiConvexLens[f,50,d],10,0,0], Move[BiConcaveLens[150,50,10],30,0,180], Boundary[300]; h6[[di]]=DrawSystem[mysystem,PlotType→Full3D,Boxed→False,PlotPoints→60,PlotRange→0,300,-30,30,-30,30,OutputType→StandardGraphics];, p,-.020,-.010,.002] Export["C:\\test52.gif",h6,"GIF",ConversionOptions→"AnimationDisplayTime"->.2,"Loop"->True,ImageSize->300,120,ImageResolution→150]

45

Page 46: Ηράκλειο 2006 - Optics

H*field curvature*Lgr1= Range@23D;dfocus= Range@11D;di= 0;d= 5;n= 1.53;Ptot= .020;r1= 100;

r2=r1- dHn- 1L1- Ptotr1

n-1

;

Do@di= di+1;mysystem=8Move@LineOfRays@5, NumberOfRays® 4D,80,0,dang<D,Move@SphericalLens@r1,r2,30,d,testD,83, 0,0<D,Boundary@200D<;

dfocus@@diDD=FocalPoint. FindFocusFast@mysystem,ComponentNumber® 2D;

,8dang, - 25,25,5<D;dfocus= dfocus.8x_,y_,z_<¦ 8x,y<;

di=0; Do[di=di+1; mysystem= Move[LineOfRays[5,NumberOfRays→4],0,0,dang], Move[SphericalLens[r1,r2,30,d,test],3,0,0], Boundary[200]; dumy=DrawSystem[mysystem,Boxed→False,PlotType→TopView,OutputType→StandardGraphics,PlotRange→0,70,-30,30,DisplayFunction→Identity];gr1[[di]]=Show[dumy,Graphics[Thickness[.006],Hue[1],Line[dfocus]],DisplayFunction→$DisplayFunction]; ,dang,-25,25,5] Export["E:\\masterat1\\19_12_05\\filedcov.gif",Take[gr1,11],"GIF",ConversionOptions→"AnimationDisplayTime"->.3,"Loop"->True,ImageSize->200 120 ImageResolution→150]

46

Page 47: Ηράκλειο 2006 - Optics

H*cromatical abberation,planoconv*Ldsteps= 10;dFocus= Range@dstepsD;DoAdwav= .350+di

.700- .350dsteps

;

dFocus@@diDD=PropagateSystem@8Move@LineOfRays@30, NumberOfRays® 7, WaveLength¦ dwavD,80,0,0<

D,Move@Screen@50D,8100,0,0<D,Move@PlanoConvexLens@100,50,10D,8100,0,0<D,Move@Screen@50D,8195,0,0<D,Boundary@500D<D;

,8di,1,dsteps<E;ShowSystem@dFocus, Boxed® False,PlotType® TopViewD;dsteps= 10;dFocus= Range@dstepsD;DoAdwav= .350+di

.700- .350dsteps

;

dFocus@@diDD=PropagateSystem@8Move@LineOfRays@30, NumberOfRays® 7, WaveLength¦ dwavD,80,0,0<

D,Move@Screen@50D,8100,0,0<D,Move@PlanoConvexLens@100,50,10D,8100,0,0<D,Move@Screen@50D,8195,0,0<D,Move@Screen@50D,8210,0,0<D,Boundary@500D<D;

,8di,1,dsteps<E;ShowSystem@dFocus, Boxed® False,PlotType® TopView,ShowRange®83,4<

D;

47

Page 48: Ηράκλειο 2006 - Optics

H* *Cromatical,planoconvex,graphicLdsteps= 10;dlist= Range@dstepsD;DoAdwav= .350+di

.700- .350dsteps

;

mysystem=8LineOfRays@30, NumberOfRays® 20,WaveLength:> dwavD,Move@Screen@50D,8100,0,0<D,Move@PlanoConvexLens@100,50,10D,8100,0,0<D,Move@Screen@50D,8198,0,0<D,Boundary@300D<;

drays= PropagateSystem@mysystemD;H* read ray coordinates from the lens inputscreen*L

dposIn= ReadRays@drays,SurfaceCoordinates,ComponentNumber® 1D;H* read ray coordinates on the screen *L

dposOut= ReadRays@drays,SurfaceCoordinates,ComponentNumber® 3D;H* keep only x values and create xin,xout list *

Ldlist@@diDD=HdposIn.8x_,y_<¦ 8x,0.<L+HdposOut.8x_,y_<¦ 80.,x<L;H* ListPlot@dlist,PlotJoined®False,PlotRange®8All,8-1,1<<,AxesOrigin®8-15.5,-1<,GridLines®880<,80<<D*L

,8di,1,dsteps<Eg1= Range@dstepsD;

48

Page 49: Ηράκλειο 2006 - Optics

(*the rest from above*) DoA@@DD A@@DDg1 di = ListPlot dlist di ,PlotJoined® True,

PlotRange®88<<All, -1, 1 ,AxesOrigin®8-15.5, - 1<,GridLines®880<,80<<,PlotStyle¦ HueA1

2. di- 1dsteps

+0.5EE;,8di,1,dsteps<E;

Show[g1] Show[g1[[10]]];Export["F:\\masterat1\\DT\\test.gif",g1,"GIF",ConversionOptions→"AnimationDisplayTime"->.2,"Loop"->True]

(*FindFocus*) mysystem= LineOfRays[40,NumberOfRays→20,WaveLength→.35], Move[PlanoConvexLens[100,50,10],100,0,0], Move[BiConcaveLens[100,50,10],110,0,0], Move[PlanoConvexLens[100,50,10],130,0,180], Boundary[500];dCompNumber=Count[mysystem,_Component]; FindFocusFast[mysystem,ComponentNumberƒdCompNumber]

49

Page 50: Ηράκλειο 2006 - Optics

H*Triplet Lens SF5*Ldsteps= 10;dFocus= Range@dstepsD;DoAdwav= .350+di

.700- .350dsteps

;

dFocus@@diDD=PropagateSystem@8Move@LineOfRays@30, NumberOfRays® 7, WaveLength¦ dwavD,80,0,0<D,Move@PlanoConvexLens@100,50,10,ComponentMedium ®SF5D,8100,0, 0<DMove@BiConcaveLens@200,50,10,ComponentMedium ®SF5D,8110,0, 0 ,<D,Move@PlanoConvexLens@100,50,10,ComponentMedium ®SF5D,8130,0,180<D,Boundary@300D<D;

,8di,1,dsteps<E;ShowSystem@dFocus, Boxed® False,PlotType® TopViewD;dsteps= 10;dFocus= Range@dstepsD;DoAdwav= .350+di

.700- .350dsteps

;

dFocus@@diDD= @8Move@LineOfRays@30, NumberOfRays® 7, WaveLength¦ dwavD,80,0,0<DPropagateSystem,

Move@Screen@50D,8100,0,0<D,Move@PlanoConvexLens@100,50,10,ComponentMedium ®SF5D,8100,0, 0<DMove@BiConcaveLens@200,50,10,ComponentMedium ®SF5D,8110,0, 0 ,<D,Move@PlanoConvexLens@100,50,10,ComponentMedium ®SF5D,8130,0,180<D,Move@Screen@50D,8155,0,0<D,Move@Screen@50D,8175,0,0<D,Boundary@300D<D;

,8di,1,dsteps<E;ShowSystem@dFocus, Boxed® False,PlotType® TopView,ShowRange®85,6<D;

50

Page 51: Ηράκλειο 2006 - Optics

H*cromatical,planocon,biconcav,planconv,SF5,Graphic*Ldsteps= 10;dlist= Range@dstepsD;DoAdwav= .350+di

.700- .350dsteps

;

mysystem=8LineOfRays@45, NumberOfRays® 20,WaveLength:> dwavD,Move@Screen@50D,8100,0,0<D,Move@PlanoConvexLens@100,50,10,ComponentMedium® SF5D,8100,0,0<D,

Move@BiConcaveLens@100,50,10,ComponentMedium® SF5D,8110,0,0<D,

Move@PlanoConvexLens@100,50,10,ComponentMedium® SF5D,8130,0,180<D,

Move@Screen@50D,8165,0,0<D,Boundary@400D<;

drays= PropagateSystem@mysystemD;H* read ray coordinates from the lens inputscreen*L

dposIn= ReadRays@drays,SurfaceCoordinates,ComponentNumber® 1D;H* read ray coordinates on the screen *L

dposOut= ReadRays@drays,SurfaceCoordinates,ComponentNumber® 5D;H* keep only x values and create xin,xout list *

Ldlist@@diDD=HdposIn.8x_,y_<¦ 8x,0.<L+HdposOut.8x_,y_<¦ 80.,x<L;H* ListPlot@dlist,PlotJoined®False,PlotRange®8All,8-7,7<<,AxesOrigin®8-23.5,-7<,GridLines®880<,80<<D*L

,8di,1,dsteps<E

51

Page 52: Ηράκλειο 2006 - Optics

(*The Rest of Above*) g15= Range@dstepsD;DoAg15@@diDD= ListPlotAdlist@@diDD,PlotJoined® True,

PlotRange®8All,8-7, 7<<,AxesOrigin®8-23.5, -7<,GridLines®880<,80<<,PlotStyle¦ HueA1

2. di- 1dsteps

+0.5EE;,8di,1,dsteps<E

Show[g15] Show[g15[[10]]];Export["F:\\masterat1\\DT\\test40.gif",g15,"GIF",ConversionOptions→"AnimationDisplayTime"->.2,"Loop"->True]

52

Page 53: Ηράκλειο 2006 - Optics

H*tripletBK7*Ldsteps= 10;dFocus= Range@dstepsD;DoAdwav= .350+di

.700 - .350

dsteps;

dFocus@@diDD=PropagateSystem@8Move@LineOfRays@30,NumberOfRays® 7, WaveLength ¦ dwavD,80, 0,0<D,Move@PlanoConvexLens@100,50, 10,ComponentMedium® PSD,8100,0, 0<D,Move@BiConcaveLens@100,50, 10,ComponentMedium® PSD,8110,0, 0<D,Move@PlanoConvexLens@100,50, 10,ComponentMedium® PSD,8130,0, 180<D,Boundary@300D<D;

,8di, 1,dsteps<E;ShowSystem@dFocus,Boxed® False, PlotType® TopViewD;dsteps= 10;dFocus= Range@dstepsD;DoAdwav= .350+di

.700 - .350

dsteps;

dFocus@@diDD=PropagateSystem@8Move@LineOfRays@30,NumberOfRays® 7, WaveLength ¦ dwavD,80, 0,0<D,Move@Screen@50D,8100, 0,0<D,Move@PlanoConvexLens@100,50, 10,ComponentMedium® PSD,8100,0, 0<D,Move@BiConcaveLens@100,50, 10,ComponentMedium® PSD,8110,0, 0<D,Move@PlanoConvexLens@100,50, 10,ComponentMedium® PSD,8130,0, 180<D,Move@Screen@50D,8148, 0,0<D,Move@Screen@50D,8170, 0,0<D,Boundary@300D<D;

,8di, 1,dsteps<E;ShowSystem@dFocus,Boxed® False, PlotType® TopView,ShowRange®85, 6<D;

53

Page 54: Ηράκλειο 2006 - Optics

H*Cromatical,planoconv,biconcav,planoconv,BK7*Ldsteps 10;dlist= Range@dstepsD;DoAdwav= .350+di

.700- .350

=

dsteps;

mysystem=8LineOfRays@45, NumberOfRays® 20,WaveLength:> dwavD,Move@Screen@50D,8100,0,0<D,Move@PlanoConvexLens@100,50,10D,8100,0,0<D,Move@BiConcaveLens@100,50,10D,8110,0,0<D,Move@PlanoConvexLens@100,50,10D,8130,0,180<D,Move@Screen@50D,8164,0,0<D,Boundary@400D<;

drays= PropagateSystem@mysystemD;H* read ray coordinates from the lens inputscreen*L

dposIn= ReadRays@drays,SurfaceCoordinates,ComponentNumber® 1D;H* read ray coordinates on the screen *L

dposOut= ReadRays@drays,SurfaceCoordinates,ComponentNumber® 5D;H* keep only x values and create xin,xout list *L

dlist@@diDD=HdposIn.8x_,y_<¦ 8x,0.<L+HdposOut.8x_,y_<¦ 80.,x<L;H* ListPlot@dlist,PlotJoined®False,PlotRange®8All,8-7,7<<,AxesOrigin®8-23.5,-7<,GridLines®880<,80<<D*L

,8di,1,dsteps<Eg6= Range@dstepsD;DoAg6@@diDD= ListPlotAdlist@@diDD,PlotJoined® True,

PlotRange®8All,8-7, 7<<,AxesOrigin®8-23.5, -7

54

<,GridLines®880<,80<<,PlotStyle¦ HueA1

2. di- 1dsteps

+0.5EE;,8di,1,dsteps<E

Page 55: Ηράκλειο 2006 - Optics

(*The Rest of Above*)Show[g6] Show[g6[[10]]];Export["F:\\masterat1\\DT\\test5.gif",g6,"GIF",ConversionOptions→"AnimationDisplayTime"->.2,"Loop"->True]

H* Distorsion Barel*Ldi= 0;d= 5;n= 1.53;Ptot= .020;r1= 100;

r2=r1- dHn- 1L1- Ptotr1

n-1

;

myobj=Table@Move3D@ConeOfRays@2, NumberOfRays® 3D,80,dy,dz<,81,0,0<, 0D,8dz, - 12,12,6<,8dy, -12, 12,2<D;

mysystem=8Move@SphericalLens@r1,r2,30,d,testD,880, 0,0<

D,Boundary@200D<;

mysystem= Join@myobj, mysystemD;DrawSystem@mysystem, Boxed® FalseD;

55

Page 56: Ηράκλειο 2006 - Optics

H* *Distorsion MiniscusLdi= 0;d= 5;n= 1.53;Ptot= .020;r1= 100;

r2=r1- dHn- 1L1- Ptotr1

n-1

;

myobj=Table@Move3D@ConeOfRays@2, NumberOfRays® 3D,80,dy,dz<,81,0,0<, 0D,8dz, - 20,20,2<,8dy, -14, 14,4<D;

mysystem=8Move@SphericalLens@r1,r2,30,d,testD,880, 0,0<

D,Boundary@200D<;

mysystem= Join@myobj, mysystemD;DrawSystem@mysystem, Boxed® FalseD;

56

Page 57: Ηράκλειο 2006 - Optics

(*Principal Points*) dbound=500.; x1=200; x2=270; d=5; mysystem:= Move[BiConvexLens[80,50,d],x1,0,0], Move[BiConcaveLens[80,50,d],240,0,0], Move[BiConvexLens[80,50,d],x2,0,0], Boundary[dbound,100] ; dCompNumber=Count[mysystem,_Component]; (* Modular Code *) Rsystem=Join[ Move[LineOfRays[1,NumberOfRays→3,WaveLength→.55],0,0,0], mysystem]; RProp=PropagateSystem[Rsystem]; Lsystem=Join[ Move[LineOfRays[1,NumberOfRays→3,WaveLength→.55],dbound,0,180], mysystem]; LProp=PropagateSystem[Lsystem]; FrontFocus=FindFocusFast[LProp,ComponentNumberƒ dCompNumber][[1,2,1]]; BackFocus=FindFocusFast[RProp,ComponentNumberƒ dCompNumber][[1,2,1]]; Print["F=",FrontFocus,mm] Print["F'=",BackFocus,mm] (* test imaging *) imageSystem=Join[ Move[WedgeOfRays[1,NumberOfRays→3,WaveLength→.55],FrontFocus-.5 FrontFocus,0,0], mysystem]; dImageProp=PropagateSystem[imageSystem]; dImagePos=FindFocusFast[dImageProp,ComponentNumberƒ dCompNumber][[1,2,1]]; dFocus=Sqrt[Abs[.5 FrontFocus (dImagePos-BackFocus)]]; Print["f=",dFocus,mm] H1=FrontFocus+dFocus; H2=FrontFocus-dFocus; H1'=BackFocus-dFocus; H2'=BackFocus+dFocus; If[FrontFocus<x1,Print["H1=",H1,mm],Print["H2=",H2,mm]] If[BackFocus>x2+d ,Print["H1'=",H1',mm],Print["H2'=",H2',mm]] Print["dImagePos=",dImagePos,mm] ShowSystem[ RProp,PlotType→TopView]; ShowSystem[ LProp,PlotType→TopView]; ShowSystem[dImageProp,PlotType→Full3D,Boxed→False];

57

Page 58: Ηράκλειο 2006 - Optics

6. Abstract The increased needs of modern industry and medicine for the better understanding and design of optical systems, led me to choose the study of ray tracing for various optical systems as the subject of my MSc dissertation. At the same time, my aim was to elaborate a study which would be accessible to every student on the MSc degree course, in order to provide a useful tool for any student and researcher wishing to examine the problems of various optical systems, and ways and means of solving them. In this dissertation I attempt to promote the capabilities of the Optica computer programme in executing ray tracing and designing various optical systems. In order to do so, I have chosen to analyse the optical errors (monochromatic and chromatic) of a specific optical system, and to define the main points of this system. Optica forms part of the wider Mathematica computing package. This effort may even constitute a course in the MSc department in future. I would like to thank my supervisor Dr Dimitris Papazoglou for his unstinting help in the writing of this dissertation. Many thanks are also due to Dr Konstantinos Kalpouzos, Grade 1 Researcher at FORTH, for his moral support throughout the course of the MSc, to Dr Mihalis Taroudakis of the Mathematics Department for his valuable advice, and to my uncle Dr V.J.Theodorides, who was the main inspiration for my desire to register for the “Optics and Vision” MSc Programme. Thank you very much, Dimitrios Theodoridis

58

Page 59: Ηράκλειο 2006 - Optics

6. Βιβλιογραφία και διευθύνσεις στο Internet 1. Donald C. O’Shea, Elements of Modern Optical Design 2. W.J.Smith, Modern Optical Engineering (McGraw-Hill, New York,

1966) 3. R. Kingslake, Lens Design Fundamentals (Academic Press, New York,

1978). 4. Applied Optics and Optical Engineering, Vol. VIII, edited by R.

Shannon and J. C. Wyant (Academic Press, New York, 1980). 5. F. W.Sears, M. W. Zemansky, and H. D. Young, University Physics, 6th

ed. (Addison-Wesley, Reading, Mass., 1982). 6. F. A. Jenkins and H. E. White, Fundamentals of Optics, 4th ed.

(McGraw-Hill, New York, 1976). 7. J. R. Meyer-Arendt, Introduction to Classical and Modern

Optics(Prentice-Hall, Englewood Cliffs, N.J., 1972). 8. W T Welford, Aberrations of Optical Systems, Adam Hilger, 1986 9. R E Fischer and K L Mason, “Spherical Aberration – Further

Fascinating Observations”, Proc SPIE V1013, p156 – 167, 1988 10. D. Shafer, “The triplet: an ‘embarrassment of riches’” Optical

Engineering Vol.27 No. 12 December 1988. 11. G. Corbasson, “Variable-Focus Objective-Lens Device and a Mrthod for

the Control of Said Device,”United States Patent No. 4,854,685, 1989. 12. Y. Arai, “Variable-Power Copying Lens,” United States Patent No.

4,597,641, 1986. 13. http://www.opticasoftware.com/ 14. http://astron.berkeley.edu/~jrg/Aberrations/node7.html 15. http://ece-

www.colorado.edu/~mcleod/teaching/oesd/lecturenotes/aberrations.pdf#search='wavefront%20aberrations'

16. http://www.nuigalway.ie/research/applied_optics/people/chris/chrispapers/Paper111.pdf#search='wave%20aberrations'

17. http://electron9.phys.utk.edu/optics421/modules/m3/Stops.htm 18. http://www.tejraj.com/Choosing_Eyepiece.pdf#search='calculating%20t

he%20exit%20pupil'

59

Page 60: Ηράκλειο 2006 - Optics

60