Guest User

Untitled

a guest
Jan 23rd, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.94 KB | None | 0 0
  1. Efield[r_?NumericQ, z_?NumericQ, [Alpha]_?NumericQ] := (
  2. 2 [Pi])/([Lambda]laser z)*w0*w[z]*
  3. NIntegrate[
  4. Exp[-x^2]*
  5. Exp[I*[Pi]*(a [z] x^2 - x/[CapitalDelta][[Alpha], z])]*
  6. BesselJ[0, [Beta] [r, z] x]*x, {x, 0, [Infinity]}]
  7.  
  8. Intensity[r_?NumericQ, z_?NumericQ, [Alpha]_?NumericQ] :=
  9. Abs[Efield[r, z, [Alpha]]]^2
  10.  
  11. PowerLens =
  12. NIntegrate[(Intensity[r, distance, conv*20])*
  13. r*2 [Pi], {r, 0, 1}]
  14.  
  15. nm = 10^-6 mm;
  16. mm = 10^-3;
  17. [Mu]m = 10^-3 mm;
  18. [Lambda]laser = 532 nm;
  19. klaser = (2 [Pi])/[Lambda]laser;
  20. w0 = 5 mm;
  21. flens = 50 mm;
  22. ng = 1.5;
  23. conv = (2 [Pi])/360;
  24. Gaussian beam parameters
  25.  
  26. zR = [Pi] w0^2/[Lambda]laser // N
  27. w[z_] = w0*Sqrt[1 + z^2/zR^2]
  28. Rc[z_] = z*(1 + zR^2/z^2)
  29. Guoy[z_] = ArcTan[z/zR]
  30.  
  31. GaussianBeamField[[Rho]_, z_] = (w0/w[z])*Exp[-[Rho]^2/w[z]^2]*
  32. Exp[I*(klaser z - Guoy[z] + (klaser [Rho]^2)/(2 Rc[z]))]
  33.  
  34. GaussianBeamIntensity[[Rho]_, z_] =
  35. Abs[GaussianBeamField[[Rho], z] ]^2 // ComplexExpand
  36.  
  37. Normalisation[z_] :=
  38. Integrate[2 [Pi]*[Rho]*GaussianBeamIntensity[[Rho], z], {[Rho],
  39. 0, [Infinity]}, Assumptions -> {Element[{[Rho], z}, Reals]}]
  40.  
  41. GaussianBeamIntensityNormalised[[Rho]_, z_] = (1/Normalisation[0])*
  42. GaussianBeamIntensity[[Rho], z]
  43.  
  44. b[[Alpha]_] = (2 [Pi] (ng - 1) )/[Lambda]laser Tan[[Alpha]]
  45. [CapitalDelta][[Alpha]_, z_] = [Pi]/(b[[Alpha]]*w[z])
  46. [Beta][r_, z_] = (2 [Pi] w[z] r)/([Lambda]laser z)
  47. a[z_] = w[z]^2/[Lambda]laser*(1/z + (1/Rc[z] - 1/flens))
  48.  
  49. Efield[r_?NumericQ, z_?NumericQ, [Alpha]_?NumericQ] := (
  50. 2 [Pi])/([Lambda]laser z)*w0*w[z]*
  51. NIntegrate[
  52. Exp[-x^2]*Exp[I*[Pi]*(a [z] x^2 - x/[CapitalDelta][[Alpha], z])]*
  53. BesselJ[0, [Beta] [r, z] x]*x, {x, 0, [Infinity]}]
  54.  
  55. Intensity[r_?NumericQ, z_?NumericQ, [Alpha]_?NumericQ] :=
  56. Abs[Efield[r, z, [Alpha]]]^2
  57.  
  58.  
  59. p1 = Plot[GaussianBeamIntensityNormalised[r, flens], {r, 0, 15 mm}]
  60.  
  61. p2 = Plot[IntensityNormalised[r, flens, 20*conv], {r, 0, 15 mm}]
  62.  
  63. Show[p1, p2]
  64.  
  65. PowerLens =
  66. NIntegrate[Intensity[r, flens, conv*20]*r*2 [Pi], {r, 0, [Infinity]}]
Add Comment
Please, Sign In to add comment