Comments (4)
Hi bzbaz,
You have to choose a correct aberration to reproduce the figure. It is vertical coma, the aberration is some wavelengths. The code below will reproduce the figure closely. (Sorry, I forgot the exact parameters for the figure...)
Fred van Goor.
#! /usr/bin/env python
from LightPipes import *
import matplotlib.pyplot as plt
wavelength=632.8*nm #wavelength of HeNe laser
size=15*mm # size of the grid
N=500 # number (NxN) of grid pixels
R=7*mm # laser beam radius
z1=8*cm # length of arm 1
z2=7*cm # length of arm 2
z3=3*cm # distance laser to beamsplitter
z4=5*cm # distance beamsplitter to screen
Rbs=0.5 # reflection beam splitter
tx=0*mrad; ty=0.0*mrad # tilt of mirror 1
#Generate a weak converging laser beam using a weak positive lens:
F=Begin(size,wavelength,N)
F=GaussBeam(F, R)
#Propagate to the beamsplitter:
F=Forvard(z3,F)
#Split the beam and propagate to mirror #2:
F2=IntAttenuator(1-Rbs,F)
F2=Forvard(z2,F2)
#Introduce aberration and propagate back to the beamsplitter:
F2=Tilt(tx,ty,F2)
F2=Zernike(F2, 3, -1, 6*mm, A=1.03*wavelength)
F2=Forvard(z2,F2)
F2=IntAttenuator(Rbs,F2)
#Split off the second beam and propagate to- and back from the mirror #1:
F10=IntAttenuator(Rbs,F)
F1=Forvard(z1*2,F10)
F1=IntAttenuator(1-Rbs,F1)
#Recombine the two beams and propagate to the screen:
F=BeamMix(F1,F2)
F=Forvard(z4,F)
I=Intensity(1,F)
plt.imshow(I,cmap='jet'); plt.axis('off');plt.title('intensity pattern')
plt.show()
from lightpipes.
I forgot to mention that you should also change one of the lengths (z1 or z2) of an arm with some fraction of a wavelength to fine-tune the result...
from lightpipes.
Thanks a lot. This works for me. I want to use the result in an art project. Hope this is OK for you.
from lightpipes.
from lightpipes.
Related Issues (20)
- Warning when paraxiality is violated HOT 2
- Shift with direct integration Forward
- Diffraction From Thin Wire HOT 4
- Step by Step Propagation With a Short Focal Length Lens HOT 3
- LightPipes on an iPad
- LPtest() fails on some systems while installation is correct HOT 1
- Intensity plot gets cut up when attempting to propagate finite airy beam HOT 9
- Cite lightpipes in a paper HOT 2
- lens Following Field Produced by Forward Function
- Airy Beam HOT 6
- LG doughnut mode HOT 4
- Microwave frequencies HOT 3
- A doc example of D4sigma seems to call Centroid instead of D4sigma HOT 1
- LensFarfield in lenses.py but not in __init__.py and documentation HOT 2
- Bessel Beam Simulation from an annulus of light HOT 4
- interference pattern with a focused x-ray beam (spherical coordinates propagation & Steps) HOT 1
- Calculate the power( ratio) in the bucket and times the diffraction limit
- Strehl ratio formula
- Intensity distribution of Gaussian beam Propagated in space through a Lens at twice the focal Length HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lightpipes.