有关Jones矩阵、Jones向量的基本原理,可参考这个: 通过Python理解Jones矩阵,本文主要介绍sympy中提供的有关偏振光学的符号计算工具
Jones向量
Jones向量是描述光线偏振状态的重要工具,例如一个偏振角度为 ψ \psi ψ的Jones向量可表示为
J ^ = [ cos ψ sin ψ ] \hat J=\begin{bmatrix} \cos\psi\\ \sin\psi \end{bmatrix} J^=[cosψsinψ]
【jones_vector】是sympy.physics.optics.polarization中用于表示Jones向量的对象,其调用方法为
jones_vector(psi, chi)
其中,psi为 x x x方向的极化角度;chi为与晶体主轴的夹角。
import sympy
from sympy.physics.optics.polarization import jones_vector
psi = sympy.symbols('psi')
V = jones_vector(psi, 0)
sympy.pprint(V)
'''
⎡cos(ψ)⎤
⎢ ⎥
⎣sin(ψ)⎦
'''
Jones矩阵
Jones矩阵可以描述Jones向量在通过偏振元件后的变化,例如偏振光在经过 x x x线偏振片之后, sin ψ \sin\psi sinψ会被滤掉,从而其对应的Jones矩阵可表示为
[ 1 0 0 0 ] \begin{bmatrix} 1&0\\0&0 \end{bmatrix} [1000]
sympy.physics.optics.polarization
中封装了多种偏振器件的Jones矩阵。
-
linear_polarizer(theta=0)
线偏振光 -
half_wave_retarder(theta)
半波片 -
quarter_wave_retarder(theta)
λ / 4 \lambda/4 λ/4波片 -
phase_retarder(theta=0, delta=0)
相位延迟 -
reflective_filter(R)
反射滤光片,R
为反射率 -
transmissive_filter(T)
透射滤光片,T
为透过率 -
polarizing_beam_splitter(Tp=1, Rs=1, Ts=0, Rp=0, phia=0, phib=0)
偏振片
import sympy
from sympy.physics.optics.polarization import half_wave_retarder
theta = sympy.symbols("theta", real=True)
HWP = half_wave_retarder(theta)
sympy.latex(HWP)
结果如下
[ − i ( − sin 2 θ + cos 2 θ ) − 2 i sin θ cos θ − 2 i sin θ cos θ − i ( sin 2 θ − cos 2 θ ) ] \left[\begin{matrix}- i \left(- \sin^{2}\theta + \cos^{2}{\theta}\right) & - 2 i \sin\theta \cos\theta\\- 2 i \sin\theta\cos\theta & - i \left(\sin^{2}\theta - \cos^{2}\theta\right)\end{matrix}\right] [−i(−sin2θ+cos2θ)−2isinθcosθ−2isinθcosθ−i(sin2θ−cos2θ)]文章来源:https://www.toymoban.com/news/detail-844670.html
偏振片的参数较多,现列如下polarizing_beam_splitter(Tp=1, Rs=1, Ts=0, Rp=0, phia=0, phib=0)
文章来源地址https://www.toymoban.com/news/detail-844670.html
- J 琼斯矩阵
- Tp p偏振光的透过率
- Rs s偏振光的反射率
- Ts s偏振光的透过率
- Rp p偏振光的反射率
- phia 透射和反射分量的相位差
- phib 透射和反射分量的相位差
到了这里,关于Jones矩阵符号运算的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!