cavities | ||
components | ||
degree_of_freedom | ||
detectors | ||
layout | ||
links | ||
variables | ||
.gitignore | ||
LICENSE | ||
README.md |
Virgo model
Interferometer for Finesse 3. Can be used with the finesse-virgo package.
Getting started
For simple use, layout
file can be used. A layout is a list of files
separated by new lines to load in order to create a
finesse3 model. The "simple" model
present some quick model with little components which allows to
manipulate easily a finesse model.
The "finesse-virgo" model correspond to the model available in the
finesse-virgo package.
Example
Code example to build a Virgo model with these scripts.
from pathlib import Path
layout_file = Path("layout/finesse-virgo/no_benches") # path to layout file
with layout_file.open() as f:
files = f.read().splitlines() # convert layout file to list of path
virgo = Virgo(
files_to_parse = files, # create model with the given list of path
)
The advantage of this is the control we have over the interferometer simulation, and the readibility. Tracking change is also easier, variable definition being detached from setup configuration.
Sections
Katscript files are organized in different types, which are values
,
optical setup
, link
, cavities definition
, degree of freedom
,
detectors
and after variables
.
variables
Contains values used in the setup.
It can defines variable which depends of components in the setup for preprocessing (finesse-virgo package for example) too.
components
Defined part of the optical setup (Laser, Mirror, etc.) or set of parts.
links
Link together parts of the optical setup defined before
cavities
Defines Finesse3 cavity
degree of freedom
Defines Finesse3 degree of freedom
detectors
Add Finesse3 detectors