Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
finesse
pykat
Commits
e3f26bf2
Commit
e3f26bf2
authored
Dec 01, 2014
by
Andreas Freise
Browse files
adding help text
parent
0e2c7295
Changes
1
Hide whitespace changes
Inline
Side-by-side
pykat/optics/fabry_perot.py
View file @
e3f26bf2
# ------------------------------------------------------
"""
# Moving some utility function from Simtools
------------------------------------------------------
# http://www.gwoptics.org/simtools/
Utility functions to compute parameters of Fabry
# to PyKat. Work in progress, currently these
Perot cavities. Functions based on earlier version
# functions are not tested.
in Matlab( http://www.gwoptics.org/simtools/)
#
Work in progress, currently these functions are
# Andreas 30.11.2014
untested!
# ------------------------------------------------------
Andreas 30.11.2014
http://www.gwoptics.org/pykat/
------------------------------------------------------
"""
from
__future__
import
absolute_import
from
__future__
import
absolute_import
from
__future__
import
division
from
__future__
import
division
from
__future__
import
print_function
from
__future__
import
print_function
...
@@ -15,6 +19,13 @@ from __future__ import unicode_literals
...
@@ -15,6 +19,13 @@ from __future__ import unicode_literals
import
numpy
as
np
import
numpy
as
np
def
cavity_info
(
Lambda
,
L
,
Rc1
,
Rc2
):
def
cavity_info
(
Lambda
,
L
,
Rc1
,
Rc2
):
"""
Function computes several cavity paramaters
Input: Lambda, L (length), Rc1, Rc2 (radii of curvature of cavity mirrors)
Output: zr (Rayleigh range), w0 (waist size), z1 (distance waist<->mirror1)
w1, w2 (spot size on both mirrors)
See examples/optics/cavity_w_Rc.py for an example usage.
"""
g1
=
1
-
L
/
Rc1
g1
=
1
-
L
/
Rc1
g2
=
1
-
L
/
Rc2
g2
=
1
-
L
/
Rc2
G
=
g1
*
g2
G
=
g1
*
g2
...
@@ -31,6 +42,11 @@ def cavity_info(Lambda, L, Rc1, Rc2):
...
@@ -31,6 +42,11 @@ def cavity_info(Lambda, L, Rc1, Rc2):
return
[
zr
,
w0
,
z1
,
w1
,
w2
]
return
[
zr
,
w0
,
z1
,
w1
,
w2
]
def
cavity_w1w2_Rc1Rc2
(
Lambda
,
L
,
w1
,
w2
):
def
cavity_w1w2_Rc1Rc2
(
Lambda
,
L
,
w1
,
w2
):
"""
Function computes the radii of curvatures (Rc1, Rc2) for a linear
cavity to produce the requested mirror spot sizes (w1,w2) for a given
length (L) and wavelength (Lambda).
"""
C
=
(
Lambda
*
L
/
np
.
pi
)
**
2
C
=
(
Lambda
*
L
/
np
.
pi
)
**
2
g1
=
-
1.0
*
np
.
sqrt
(
1
-
C
/
(
w1
*
w2
)
**
2
)
*
(
w2
/
w1
)
g1
=
-
1.0
*
np
.
sqrt
(
1
-
C
/
(
w1
*
w2
)
**
2
)
*
(
w2
/
w1
)
g2
=
-
1.0
*
np
.
sqrt
(
1
-
C
/
(
w1
*
w2
)
**
2
)
*
(
w1
/
w2
)
g2
=
-
1.0
*
np
.
sqrt
(
1
-
C
/
(
w1
*
w2
)
**
2
)
*
(
w1
/
w2
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment