Kyle M. Douglass
banner
kmdouglass.bsky.social
Kyle M. Douglass
@kmdouglass.bsky.social
Researcher in Optics and Biophysics @ EPFL | Fluorescence and Label-Free Single Molecule Imaging | Numerical Methods and Simulation

https://kylemdouglass.com
A holiday demonstration of the different penetration depths of red and blue light into tissue.

#optics
November 22, 2025 at 4:57 PM
The construction of the support of the 3D aperture (a.k.a. the optical transfer function or OTF) using the Ewald sphere in a brightfield microscope under partially coherent illumination.

#optics #microscopy
October 20, 2025 at 8:50 AM
How to use the Ewald Sphere to determine the support of the 3D aperture of a brightfield microscope under coherent illumination.

#optics #microscopy
October 14, 2025 at 1:23 PM
Check out my dope new fixed focal length lens.
September 25, 2025 at 11:38 AM
Trying to get a sense of how much current I can pass through salt water and happened to observe electrolysis by accident.
September 14, 2025 at 3:47 PM
Pro-tip: you can use the hole in a Thorlabs FC/PC fiber mount to self-center a domed LED when gluing it to a cage plate blank.

#optics
August 7, 2025 at 3:23 PM
I've resorted to printing out code and checking it by hand just to validate AI slop. #thefutureisnow
July 8, 2025 at 7:26 AM
Claude, you cheeky little troublemaker.
May 28, 2025 at 2:23 PM
One piece of advice I have for people living in Switzerland is to always stay grounded.
May 26, 2025 at 7:54 AM
I just added reflective surfaces to my ray tracer project and a concave mirror example. I had to choose a slightly unconventional sign notation to get the paraxial ray trace algos to work, but all the examples match what I calculated by hand.

kmdouglass.github.io/cherry
May 17, 2025 at 10:08 AM
Here I am computing the spot diagram in realtime for the 0 degree field angle of a f = +50 mm planoconvex lens at all 3 Fraunhofer lines in real time as I step through the image plane in 1 mm increments.

You can easily see the axial chromatic aberration of this lens.
May 7, 2025 at 3:09 PM
I decided I'd go for a bit of light reading for my next book. 💣
April 28, 2025 at 6:42 PM
A bit of coding fun today: the spot diagrams for a 10 mm diameter, f=+50 mm N-BK7 planoconvex lens with 0 and 5 degree field angles for each of the Fraunhofer F, d, and C lines.

Ray trace results computed by the Cherry Ray Tracer.

github.com/kmdouglass/p...

#optics
April 8, 2025 at 9:10 AM
I added the ability to model point source fields to my ray tracer just now. I also added a biconvex lens example to demonstrate it.

Check it out and let me know whether you find it useful.

kmdouglass.github.io/cherry/

#optics
March 27, 2025 at 9:36 AM
Not too bad. My first unoptimized, non-parallel algorithm for tracing about 600 rays through a convexplano lens takes about 4.3 us. My datatypes are not CPU cache friendly at all, so I'm hoping I can get a big performance boost before needing to parallelize anything.

github.com/kmdouglass/c...
February 23, 2025 at 9:43 AM
The metallic ring in the pupil of a 40x Nikon CFI60 phase contrast objective. 🤤

#microscopy #optics
February 17, 2025 at 7:36 PM
Cherry now has a database of materials and computes dispersion formulas on the fly. You can use it to compute paraxial values of lens systems across multiple wavelengths.

Big thanks to refractiveindex.info for open sourcing their database!

kmdouglass.github.io/cherry
February 3, 2025 at 8:19 AM
It ain't much, but it's honest work.
January 16, 2025 at 9:38 AM
An important thing I learned when writing my own ray tracer for #optics design is that a 3D ray tracer is useless without also having a paraxial ray tracer. I started with a 3D ray trace algo, but spent all my time on the paraxial algos instead 😜

kmdouglass.github.io/cherry/
December 5, 2024 at 8:37 AM
A model of a high NA, infinity corrected microscope objective as an aplanatic and telecentric optical system. 🤤

#optics #microscopy
November 21, 2024 at 9:31 AM