from math import *
#Axicon focus: https://www.edmundoptics.com/knowledge-#center/application-notes/lasers/an-in-depth-look-at-axicons/
#constant ring size t, but totoal size dr increase with distance L
alpha = 40 # angle of apha in degree unit
alpha = alpha*pi/180
D = 4 # Beam diameter mm
R = D/2 # radius of incident beam
n= 1.46 # refractive index of lens
L = 5 # distance from lens
#DOF
DOF1 = Rsqrt(1-nnsin(alpha)sin(alpha))
DOF2 = sin(alpha)cos(alpha)(ncos(alpha)-sqrt(1-nnsin(alpha)sin(alpha)))
DOF = DOF1/DOF2
#t: ring thickness
t1 = DOF1
t2 = cos(alpha)* (nsin(alpha)sin(alpha)+cos(alpha)sqrt(1-nnsin(alpha)sin(alpha)))
t= t1/t2
#dr: totoal spot size (outside of ring edge)
dr1 = sin(alpha)(ncos(alpha)-sqrt(1-nnsin(alpha)sin(alpha))) dr2 = nsin(alpha)sin(alpha) + cos(alpha)sqrt(1-nnsin(alpha)sin(alpha)) dr = 2L*dr1/dr2
print(f’Incident beam size ={2*R} (mm)’)
print(f’DOF={DOF} (mm)’)
print(f’Ring thickness={t} (mm)’)
print(f’Ring size in total={dr} (mm)’)
from math import *
# Axicon focus: https://www.edmundoptics.com/knowledge-center/application-notes/lasers/an-in-depth-look-at-axicons/
# constant ring size t, but totoal size dr increase with distance L
#
alpha = 40 # angle of apha in degree unit
alpha = alpha*pi/180
D = 4 # Beam diameter mm
R = D/2 # radius of incident beam
n= 1.46 # refractive index of lens
L = 5 # distance from lens
# DOF
DOF1 = R*sqrt(1-n*n*sin(alpha)*sin(alpha))
DOF2 = sin(alpha)*cos(alpha)*(n*cos(alpha)-sqrt(1-n*n*sin(alpha)*sin(alpha)))
DOF = DOF1/DOF2
#t: ring thickness
t1 = DOF1
t2 = cos(alpha)* (n*sin(alpha)*sin(alpha)+cos(alpha)*sqrt(1-n*n*sin(alpha)*sin(alpha)))
t= t1/t2
#dr: totoal spot size (outside of ring edge)
dr1 = sin(alpha)*(n*cos(alpha)-sqrt(1-n*n*sin(alpha)*sin(alpha)))
dr2 = n*sin(alpha)*sin(alpha) + cos(alpha)*sqrt(1-n*n*sin(alpha)*sin(alpha))
dr = 2*L*dr1/dr2
print(f'Incident beam size ={2*R} (mm)')
print(f'DOF={DOF} (mm)')
print(f'Ring thickness={t} (mm)')
print(f'Ring size in total={dr} (mm)')