lightpipes | LightPipes for Python , Pure Python version
kandi X-RAY | lightpipes Summary
kandi X-RAY | lightpipes Summary
LightPipes is a set of functions written in Python (Before version 2.0.0 these functions are in C++). It is designed to model coherent optical devices when the diffraction is essential. We put the C++ based version of LightPipes in another repository: opticspy/clightpipes. The pure Python version is as fast as the C++ version due to the use of the numpy, scipy and pyFFTW packages. The toolbox consists of a number of functions. Each function represents an optical element or a step in the light propagation. There are apertures, intensity filters, beam-splitters, lenses and models of free space diffraction. There are also more advanced tools for manipulating the phase and amplitude of the light. The program operates on a large data structure, containing square two-dimensional arrays of complex amplitudes of the optical field of the propagating light beam. The LightPipes routines are modifications of the LightPipes C routines written by Gleb Vdovin for Unix, Linux, DOS and OS2 workstations. Visit the website of Flexible Optical: where you can find the source code of LightPipes and a manual.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Example of the example
- Calculates the coefficients of the ABCD field
- Fresnel lens
- Wrapper around Gauss - Laguerre function
- Decorator for Gauss Hermite
- Gain a field
- Generates a Gaussian Beam using Gauss - Hermite
- Interpolate data to a given function
- Compute FFT using FFT
- Interpolate data
- Initialize the grid
- Inverse of inv_squery
- Unwrap the phase of the phase
- Unwap a value
- Compute the FFT using FFT
- Return a shallow copy of the object
- Fresnel Tunnel
- Resolve a field
- Generate Zernike Method
- Compute zernike polynomials
- Generate row of fields in input field
- Function for Gauss - Laguerre
- Create lens for a given lens
- Generate a Gauss - Hermite beam
- R Propagates a given function
- Forward an array of data
- Gain of a field
- Compute the Fourier coefficients of a given field
- Convenience function to create Airy field
- Plot two F1 and F2
- R Gauss - Hermite
- Plot a density matrix
- Pip the phase of the FFT - plane
- Convenience function to create a 2D Field
lightpipes Key Features
lightpipes Examples and Code Snippets
Community Discussions
Trending Discussions on lightpipes
QUESTION
I am trying to use programming to increase my understanding of Fourier optics. I know that physically and mathematically the Fourier transform of a Fourier transform is inverted -> F{F{f(x)} = f(-x). I am having two problems 1) The second transform doesn't return anything like the original function except in the simple gaussian case (which makes it even more confusing), and 2) there seems to be some scaling factor that requires me to "zoom in" and distort the transformed image to a point that it is much less helpful (as illustrated below). **Editted with suggestions from @Cris Luengo
...ANSWER
Answered 2021-Apr-18 at 21:01After chatting with Cris, it seems that there is no scaling factor, this type of DFT just works this way it seems. So the solution I have found is to increase the pixels to the point that I can zoom in and have a clear enough image. It's not a great solution but paired with LightPipes
it is now possible to get an idea of what the transform of light modes will look like, as well as illustrate that at the image plane of a lens system they will appear as they did in the front focal field.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install lightpipes
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page