Computational modelling of ray propagation through optical elements using the principles of geometric optics (Ray Tracer)

Overview

Computational modelling of ray propagation through optical elements using the principles of geometric optics (Ray Tracer)

Introduction

By applying the principles of geometric optics, imaging performances of lenses were investigated via examining the propagation of optical rays through various optical systems. The optical system and its elements were modelled with an object-oriented approach using the Python programming language. Through utilising a ray bundle with specific parameters, the performances of a planoconvex lens with different orientations were analysed. The orientation with the convex surface facing the incident beam was found to be more effective at minimising the spherical aberration. This was evident from the value of the geometric RMS spot radius of 1.85 x 10^-5} m at the paraxial focus compared to 7.04 x 10^-5 m for the plano-convex orientation. This was further supported by the relatively slow rate of increase in the RMS spot radius with the beam size for the convex-plano orientation. Furthermore, by optimising the curvatures of a singlet lens with a image distance of 100 mm, the best form curvatures were approximated as 0.01417 mm^-1 and -0.00532 mm^-1 with the RMS spot radius of 6.07 x 10^-8 m, leading to a conclusion that the system was diffraction limited and the effect of diffraction was substantial when using a beam radius smaller than 13.60 mm.

Requirements

Python 2.x is required to run the scripts (except for those with name beginning with 'ODE_').

Create an environment using conda as follows:

  conda create -n python2 python=2.x

Then activate the new environment by:

  conda activate python2

Results

In an ideal case, optical rays refracting through a spherical lens can be made to converge at a single point known as the focal point. However, in practice, rays fail to converge at a single point and a blurring effect occurs. This optical effect, known as the spherical aberration, is a result of the rays propagating parallel to the optical axis through a spherical lens at different distances from the axis.$^{1, 3}$ The rays further away from the optical axis experience greater refraction and thus they intersect the optical axis slightly behind the paraxial focus before diverging (FIG. 1).

For a single lens, spherical aberration can be minimised either by changing the orientation of the lens or by carefully choosing the curvatures of the spherical surfaces into the best form. In this investigation, both cases are examined using collimated ray bundles with uniformly distributed rays of various diameters with the aim to minimise this effect.

SA Figure 1: A lens displaying spherical aberration - the marginal and paraxial rays focus at the points F_1 and F_2 respectively.


single

Figure 2: A ray bundle of radius 5 mm propagating through a single spherical surface with a curvature of 0.03 mm^-1 and refracting towards the optical axis.


spotplot2

Figure 3: The non-uniform ring pattern that is shown in the figure is symbolic of the spherical aberration effect. The aberration is significantly reduced using the convex-plano orientation.


RMSPC

Figure 4: A graph depicting the change in the RMS spot radius at the paraxial focus with increasing beam size.


RMSDL

Figure 5: A graph showing the relationships of the diffraction limit and the RMS spot radius with increasing beam size.

🔗 Links

linkedin

License

MIT License

Owner
Son Gyo Jung
Son Gyo Jung
Sequence lineage information extracted from RKI sequence data repo

Pango lineage information for German SARS-CoV-2 sequences This repository contains a join of the metadata and pango lineage tables of all German SARS-

Cornelius Roemer 24 Oct 26, 2022
A graphical Semi-automatic annotation tool based on labelImg and Yolov5

💕YOLOV5 semi-automatic annotation tool (Based on labelImg)

EricFang 247 Jan 05, 2023
D2LV: A Data-Driven and Local-Verification Approach for Image Copy Detection

Facebook AI Image Similarity Challenge: Matching Track —— Team: imgFp This is the source code of our 3rd place solution to matching track of Image Sim

16 Dec 25, 2022
Trajectory Extraction of road users via Traffic Camera

Traffic Monitoring Citation The associated paper for this project will be published here as soon as possible. When using this software, please cite th

Julian Strosahl 14 Dec 17, 2022
Open-Domain Question-Answering for COVID-19 and Other Emergent Domains

Open-Domain Question-Answering for COVID-19 and Other Emergent Domains This repository contains the source code for an end-to-end open-domain question

7 Sep 27, 2022
tf2-keras implement yolov5

YOLOv5 in tesnorflow2.x-keras yolov5数据增强jupyter示例 Bilibili视频讲解地址: 《yolov5 解读,训练,复现》 Bilibili视频讲解PPT文件: yolov5_bilibili_talk_ppt.pdf Bilibili视频讲解PPT文件:

yangcheng 254 Jan 08, 2023
A lossless neural compression framework built on top of JAX.

Kompressor Branch CI Coverage main (active) main development A neural compression framework built on top of JAX. Install setup.py assumes a compatible

Rosalind Franklin Institute 2 Mar 14, 2022
Search and filter videos based on objects that appear in them using convolutional neural networks

Thingscoop: Utility for searching and filtering videos based on their content Description Thingscoop is a command-line utility for analyzing videos se

Anastasis Germanidis 354 Dec 04, 2022
🐥A PyTorch implementation of OpenAI's finetuned transformer language model with a script to import the weights pre-trained by OpenAI

PyTorch implementation of OpenAI's Finetuned Transformer Language Model This is a PyTorch implementation of the TensorFlow code provided with OpenAI's

Hugging Face 1.4k Jan 05, 2023
To propose and implement a multi-class classification approach to disaster assessment from the given data set of post-earthquake satellite imagery.

To propose and implement a multi-class classification approach to disaster assessment from the given data set of post-earthquake satellite imagery.

Kunal Wadhwa 2 Jan 05, 2022
[IROS2021] NYU-VPR: Long-Term Visual Place Recognition Benchmark with View Direction and Data Anonymization Influences

NYU-VPR This repository provides the experiment code for the paper Long-Term Visual Place Recognition Benchmark with View Direction and Data Anonymiza

Automation and Intelligence for Civil Engineering (AI4CE) Lab @ NYU 22 Sep 28, 2022
Code for our WACV 2022 paper "Hyper-Convolution Networks for Biomedical Image Segmentation"

Hyper-Convolution Networks for Biomedical Image Segmentation Code for our WACV 2022 paper "Hyper-Convolution Networks for Biomedical Image Segmentatio

Tianyu Ma 17 Nov 02, 2022
Prososdy Morph: A python library for manipulating pitch and duration in an algorithmic way, for resynthesizing speech.

ProMo (Prosody Morph) Questions? Comments? Feedback? Chat with us on gitter! A library for manipulating pitch and duration in an algorithmic way, for

Tim 71 Jan 02, 2023
FluidNet re-written with ATen tensor lib

fluidnet_cxx: Accelerating Fluid Simulation with Convolutional Neural Networks. A PyTorch/ATen Implementation. This repository is based on the paper,

JoliBrain 50 Jun 07, 2022
Fast RFC3339 compliant Python date-time library

udatetime: Fast RFC3339 compliant date-time library Handling date-times is a painful act because of the sheer endless amount of formats used by people

Simon Pirschel 235 Oct 25, 2022
Black-Box-Tuning - Black-Box Tuning for Language-Model-as-a-Service

Black-Box-Tuning Source code for paper "Black-Box Tuning for Language-Model-as-a

Tianxiang Sun 149 Jan 04, 2023
Python/Rust implementations and notes from Proofs Arguments and Zero Knowledge

What is this? This is where I'll be collecting resources related to the Study Group on Dr. Justin Thaler's Proofs Arguments And Zero Knowledge Book. T

Thor 66 Jan 04, 2023
PyTorch trainer and model for Sequence Classification

PyTorch-trainer-and-model-for-Sequence-Classification After cloning the repository, modify your training data so that the training data is a .csv file

NhanTieu 2 Dec 09, 2022
Deep Unsupervised 3D SfM Face Reconstruction Based on Massive Landmark Bundle Adjustment.

(ACMMM 2021 Oral) SfM Face Reconstruction Based on Massive Landmark Bundle Adjustment This repository shows two tasks: Face landmark detection and Fac

BoomStar 51 Dec 13, 2022
Breaking the Dilemma of Medical Image-to-image Translation

Breaking the Dilemma of Medical Image-to-image Translation Supervised Pix2Pix and unsupervised Cycle-consistency are two modes that dominate the field

Kid Liet 86 Dec 21, 2022