blob: 56bb1a6bc17197896ff4d60e376d89a858dc838a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
Gaussian beam propagation package.
Eugeniy Mikhailov
2013
= Main features =
Can treat lenses and empty spaces (with a given refraction index). And able
to calculate Gaussian beam propagation via ABCD matrix formalism.
== Gaussian beam travel visualization ==
Given starting Gaussian mode parameter (q) calculates q in the given point(s)
along optical path. There is
It can propagate Gaussian beam back and force and compare the beam
profiles after such propagation.
For a quick demo run:
``` solution_visualization_demo.m
== Mode matching ==
Automatically search for a way to mode match a given Gaussian beam to
desired one at given distance via set of lenses in between. Very handy for
injection of a known beam to a single mode fiber or a cavity.
It might take a while to compute but for a quick demo run:
``` mode_match_demo.m
== Cavity design ==
- calculates if resonator is stable
- calculates and plots resonant mode profile
For demo run:
``` cavity_design_demo.m
= Brief history of the project =
The original code dates as old as 2004 (at least I find some files that
old), but logged changes started only in 2006. Initially development is
done by Eugeniy Mikhailov with first files dated by Jun 2006, but it
was started even earlier. In 2012-2013 Matt Argao extended code to
automatically find mode matching solution from given set of optical
elements.
== Version 4.1.1 ==
Small typos fixes.
Added real life mode matching example of the fiber mode to the gyro cavity mode.
== Version 4.1 ==
Cavity design polish up and bug fixes.
== Version 4.0 ==
Cavity design module
== Version 3.1 ==
Demos are added/modified
== Version 3.0 ==
Addition of the automatic mode matcher
== Versions 2.0 ==
Visual mode matcher check and beam propagation visualization
== Version 1.0 and earlier ==
Initial ABCD formalism and unrecorded modifications.
|