V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
guyskk
V2EX  ›  分享创造

[LightPipes]还记得杨氏双缝干涉实验吗

  •  3
     
  •   guyskk ·
    guyskk · 2017-03-15 22:40:07 +08:00 · 4411 次点击
    这是一个创建于 2841 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在经典力学里,双缝实验又称为“杨氏双缝实验”,或“杨氏实验”,专门演示光波的干涉行为,是因物理学者托马斯·杨而命名。

    实验原理:

    实验原理

    现在,有一个神奇的 Python 工具包,可以仿真这个实验了!!

    第 0 步,安装软件:

    pip install numpy matplotlib
    pip install LightPipes
    

    第 1 步,开始做实验:

    import matplotlib.pyplot as plt
    from LightPipes import *
    

    第 2 步,一束光(F 是一个表示光场的矩阵):

    wavelength = 20*um
    size = 30.0*mm
    N = 500
    F = Begin(size,wavelength,N)
    

    第 3 步,分别穿过 2 个小孔,再汇聚到一起:

    F1 = CircAperture(0.15*mm, -0.6*mm,0, F)
    F2 = CircAperture(0.15*mm, 0.6*mm,0, F)    
    F = BeamMix(F1,F2)
    

    第 4 步,在空间中菲涅尔衍射一段距离:

    F = Fresnel(10*cm,F)
    

    第 5 步,计算光强度:

    I = Intensity(2,F)
    

    第 6 步,将图像显示出来:

    plt.imshow(I, cmap='rainbow');
    plt.axis('off');
    plt.title('intensity pattern')
    plt.show()
    

    实验结果

    这个库在近距离衍射方面非常出色,作者是 Fred van Goor ,来自荷兰的已退休教授,一个慈祥的老爷爷:

    I am a retired assistant professor in optics and laser physics at the University of Twente, Enschede, The Netherlands ( http://lpno.tnw.utwente.nl/). I live in The Netherlands, UTC + 1. Retired since 1-1-2014. I gave the lecture "Introduction to Optics" during about 20 years, theory as well as practical. During this period I used LightPipes as a bunch of computer assignments for my students. They had to do some exercises such as Fabry Perot, two holes, Michelson interferometers and also diffraction experiments like Fraunhofer and Fresnel from a small hole. Later they had to repeat those experiments in a real lab. Besides education I also did research in laser physics, I realized a very big XeCl laser system (1kHz, 1kW at 308nm). For that laser I wanted to design an unstable resonator with a Gaussian outcoupler, to get single transverse mode operation in an (almost) fundamental Gauss mode. For that I used Gleb Vdovin's LightPipes optical toolbox for the first time in the beginning of 1990. (It is the same set of c-routines you found on his company's website okotech.com) In 1990 they were meant for ms-dos: output from one command = input for the next one, it uses the "pipe" feature of ms-dos. That's why it is called LightPipes. Later (1994) I made versions for Mathcad and Matlab and sold a number of those packages all over the world. Gleb and I shared the profits. (I believe it is more or less obsolete now, but you can still buy it from okotech, although the selling is low at this moment).

    Now I have time to improve LightPipes using modern software like Python and Qt, especially for education in optics, although companies can use it as well I believe (for companies there is expensive software like ZEMAX available. Very good but too expensive for students and even universities). I have no commercial interests, but donations from companies could be welcome of course.

    As Gleb Vdovin already published the source code of the library on okotech.com, it is not a problem to do that for the Python library as well.

    项目地址: https://github.com/opticspy/lightpipes

    欢迎大家分享给身边的朋友,尤其是做物理,光学方面的研究人员。
    我们期待更多的人一起学习、研究和完善。
    任何问题都可以通过issues反馈给我们。
    也欢迎加入 https://github.com/opticspy 组织,一起完善 LightPipes!

    6 条回复    2017-03-16 14:58:14 +08:00
    ericls
        1
    ericls  
       2017-03-16 00:07:59 +08:00   ❤️ 1
    要不要发到 hacker news?
    Jasmine2016
        2
    Jasmine2016  
       2017-03-16 08:54:27 +08:00   ❤️ 1
    看到名字里有 van 的就感觉是荷兰人。。。
    guyskk
        3
    guyskk  
    OP
       2017-03-16 09:24:08 +08:00 via Android
    @ericls 有这个打算
    blessyou
        4
    blessyou  
       2017-03-16 10:03:07 +08:00 via iPhone   ❤️ 1
    还记得,但是记不清了
    adoyle
        5
    adoyle  
       2017-03-16 12:42:53 +08:00   ❤️ 1
    不明觉厉,献上一个 star
    guyskk
        6
    guyskk  
    OP
       2017-03-16 14:58:14 +08:00
    @adoyle #5 感谢!说实话我也不懂,我只是帮忙构建安装包,具体内容要做光学研究的才明白。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5350 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 07:45 · PVG 15:45 · LAX 23:45 · JFK 02:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.