from math import * import numpy as np ne=1.747 # refractive index for extraordinary axis no=1.754 # refractive index for ordinary axis d=15e-2 # ITM thickness lamb=1064e-9 # laser wavelength Rs=1-0.4996 # BS reflectivity for s-pol Rp=0.3 # BS reflectivity for p-pol dlu={"X": 3.47e-9, "Y":4.07e-9} dls={"X": 25.9e-9, "Y":30.1e-9} for arm in ["X","Y"]: dlb=np.abs(2*dlu[arm]-2*dls[arm]) # optical path length between polarizations phi=2*pi*dlb/2/lamb # polarization rotation per one path loss=1-(np.cos(2*phi))**2 # 2 for double pass print "power loss in ITM reflection " + arm + ": ", loss print "power ratio at POP (p/(s+p)):", if arm == "Y": print loss*Rp/((1-loss)*Rs+loss*Rp) if arm == "X": print loss*(1-Rp)/((1-loss)*(1-Rs)+loss*(1-Rp)) rhoth=1000e-6 # loss threshold dlbth=sqrt(lamb**2*rhoth/(2*pi)**2) thetath=sqrt(dlbth*ne**2/(d*no*(no**2-ne**2)))/pi*180 print "minimum optical path length between polarizations:", dlbth print "minimum angle between c-axis and beam axis (deg):", thetath