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
Official pytorch implementation of "DSPoint: Dual-scale Point Cloud Recognition with High-frequency Fusion"

DSPoint Official implementation of "DSPoint: Dual-scale Point Cloud Recognition with High-frequency Fusion". Paper link: https://arxiv.org/abs/2111.10

Ziyao Zeng 14 Feb 26, 2022
Source code for models described in the paper "AudioCLIP: Extending CLIP to Image, Text and Audio" (https://arxiv.org/abs/2106.13043)

AudioCLIP Extending CLIP to Image, Text and Audio This repository contains implementation of the models described in the paper arXiv:2106.13043. This

458 Jan 02, 2023
Official pytorch code for SSC-GAN: Semi-Supervised Single-Stage Controllable GANs for Conditional Fine-Grained Image Generation(ICCV 2021)

SSC-GAN_repo Pytorch implementation for 'Semi-Supervised Single-Stage Controllable GANs for Conditional Fine-Grained Image Generation'.PDF SSC-GAN:Sem

tyty 4 Aug 28, 2022
Visualizer for neural network, deep learning, and machine learning models

Netron is a viewer for neural network, deep learning and machine learning models. Netron supports ONNX (.onnx, .pb, .pbtxt), Keras (.h5, .keras), Tens

Lutz Roeder 21k Jan 06, 2023
An implementation of quantum convolutional neural network with MindQuantum. Huawei, classifying MNIST dataset

关于实现的一点说明 山东大学 2020级 苏博南 www.subonan.com 文件说明 tools.py 这里面主要有两个函数: resize(a, lenb) 这其实是我找同学写的一个小算法hhh。给出一个$28\times 28$的方阵a,返回一个$lenb\times lenb$的方阵。因

ぼっけなす 2 Aug 29, 2022
Flexible time series feature extraction & processing

tsflex is a toolkit for flexible time series processing & feature extraction, that is efficient and makes few assumptions about sequence data. Useful

PreDiCT.IDLab 206 Dec 28, 2022
VR Viewport Pose Model for Quantifying and Exploiting Frame Correlations

This repository contains the introduction to the collected VRViewportPose dataset and the code for the IEEE INFOCOM 2022 paper: "VR Viewport Pose Model for Quantifying and Exploiting Frame Correlatio

0 Aug 10, 2022
This is the pytorch re-implementation of the IterNorm

IterNorm-pytorch Pytorch reimplementation of the IterNorm methods, which is described in the following paper: Iterative Normalization: Beyond Standard

Lei Huang 32 Dec 27, 2022
Analyzes your GitHub Profile and presents you with a report on how likely you are to become the next MLH Fellow!

Fellowship Prediction GitHub Profile Comparative Analysis Tool Built with BentoML Table of Contents: Features Disclaimer Technologies Used Contributin

Damir Temir 51 Dec 29, 2022
FMA: A Dataset For Music Analysis

FMA: A Dataset For Music Analysis Michaël Defferrard, Kirell Benzi, Pierre Vandergheynst, Xavier Bresson. International Society for Music Information

Michaël Defferrard 1.8k Dec 29, 2022
Source code for "UniRE: A Unified Label Space for Entity Relation Extraction.", ACL2021.

UniRE Source code for "UniRE: A Unified Label Space for Entity Relation Extraction.", ACL2021. Requirements python: 3.7.6 pytorch: 1.8.1 transformers:

Wang Yijun 109 Nov 29, 2022
Implementation of the Paper: "Parameterized Hypercomplex Graph Neural Networks for Graph Classification" by Tuan Le, Marco Bertolini, Frank Noé and Djork-Arné Clevert

Parameterized Hypercomplex Graph Neural Networks (PHC-GNNs) PHC-GNNs (Le et al., 2021): https://arxiv.org/abs/2103.16584 PHM Linear Layer Illustration

Bayer AG 26 Aug 11, 2022
GRF: Learning a General Radiance Field for 3D Representation and Rendering

GRF: Learning a General Radiance Field for 3D Representation and Rendering [Paper] [Video] GRF: Learning a General Radiance Field for 3D Representatio

Alex Trevithick 243 Dec 29, 2022
The official PyTorch implementation of the paper: *Xili Dai, Xiaojun Yuan, Haigang Gong, Yi Ma. "Fully Convolutional Line Parsing." *.

F-Clip — Fully Convolutional Line Parsing This repository contains the official PyTorch implementation of the paper: *Xili Dai, Xiaojun Yuan, Haigang

Xili Dai 115 Dec 28, 2022
Statsmodels: statistical modeling and econometrics in Python

About statsmodels statsmodels is a Python package that provides a complement to scipy for statistical computations including descriptive statistics an

statsmodels 8.1k Jan 02, 2023
End-to-end beat and downbeat tracking in the time domain.

WaveBeat End-to-end beat and downbeat tracking in the time domain. | Paper | Code | Video | Slides | Setup First clone the repo. git clone https://git

Christian J. Steinmetz 60 Dec 24, 2022
Supplementary materials to "Spin-optomechanical quantum interface enabled by an ultrasmall mechanical and optical mode volume cavity" by H. Raniwala, S. Krastanov, M. Eichenfield, and D. R. Englund, 2022

Supplementary materials to "Spin-optomechanical quantum interface enabled by an ultrasmall mechanical and optical mode volume cavity" by H. Raniwala,

Stefan Krastanov 1 Jan 17, 2022
PyTorch implementation of MuseMorphose, a Transformer-based model for music style transfer.

MuseMorphose This repository contains the official implementation of the following paper: Shih-Lun Wu, Yi-Hsuan Yang MuseMorphose: Full-Song and Fine-

Yating Music, Taiwan AI Labs 142 Jan 08, 2023
In-Place Activated BatchNorm for Memory-Optimized Training of DNNs

In-Place Activated BatchNorm In-Place Activated BatchNorm for Memory-Optimized Training of DNNs In-Place Activated BatchNorm (InPlace-ABN) is a novel

1.3k Dec 29, 2022
ANN model for prediction a spatio-temporal distribution of supercooled liquid in mixed-phase clouds using Doppler cloud radar spectra.

VOODOO Revealing supercooled liquid beyond lidar attenuation Explore the docs » Report Bug · Request Feature Table of Contents About The Project Built

remsens-lim 2 Apr 28, 2022