Skip to content

About

光电方向的 Python 学习记录

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

photonics-python

光电方向研究生的 Python 学习仓库。从零开始学习 Python,并把它用在硅基电光调制器的设计计算中。

文件说明

文件 说明
photonics.py 光电计算函数库
sweep.py 调制器参数扫描脚本
day1.py ~ day6.py 第一周 Python 基础练习
spectrum.csv day5.py 生成的谐振透射谱示例数据

photonics.py

  • phase_shift(dn, L, wavelength):计算折射率变化引起的相移 Δφ = 2π·Δn·L/λ
  • dn_for_pi(L, wavelength):计算实现 π 相移所需的折射率变化 Δn = λ / (2L)
  • transmission(wl):中心波长 1550 nm 的洛伦兹型谐振透射谱

sweep.py

对器件长度 L 和折射率变化 Δn 的所有组合进行扫描:

  1. 调用 phase_shift 计算每组参数的相移 Δφ
  2. 判断 Δφ 是否达到 π(即能否实现调制器的完全开关)
  3. 将结果保存为 sweep_results.csv

扫描参数:

  • L:500、1000、1500、2000 μm
  • Δn:0.5e-3、1e-3、1.5e-3、2e-3
  • 波长:1550 nm

运行方法

环境:Python 3.12

python sweep.py

示例输出

共计算 16 组参数,结果已保存到 sweep_results.csv,其中 11 组达到了 π 相位变化

sweep_results.csv 的格式:

L_um dn dphi_rad dphi_over_pi reach_pi
500 0.001 2.027 0.645 No
1000 0.001 4.054 1.290 Yes

结论

器件越长,实现 π 相移所需的 Δn 越小(Δn ∝ 1/L)。这体现了电光调制器设计中驱动电压与器件长度之间的权衡,也是 VπL 指标的物理来源:器件更长可以降低驱动电压,但会带来更大的光损耗、更大的电容和更大的芯片面积。

学习进度

  • 第 1 周:Python 基础语法、函数、文件读写、模块、Git
  • 第 2 周:numpy 与 matplotlib,将计算结果可视化

About

光电方向的 Python 学习记录

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages