# finesse simulation O4

This simulation aims to replicate simulation result from
[Optickle](https://git.ligo.org/virgo/virgoapp/simulinkNoiseBudget/-/blob/master/DRITF/scatterRadiationPressure.m)
to get transfer functions between sensitivity and benches movement.

The final objective is to use [Finesse](https://finesse.ifosim.org) to compute
future backscatter noise projection.

## Getting started

This project use [uv](https://docs.astral.sh/uv/) to manage dependencies, and
[mise](https://mise.jdx.dev/) to manage python version and virtual environment.

To run the program, you can use
[jupyter lab](https://jupyterlab.readthedocs.io/en/latest/) to run the
[main](main.ipynb) notebook. By running the following command:

```bash
uv sync
jupyter lab
```

> [!NOTE]
> You can still use pip to manage dependencies using [pyproject.toml](pyproject.toml)

## Sensitivities

The [reference file](sensitivities/O4_nominal_reference.txt) is taken from
Virgo observation data on the 7th of June 2024, (500 second from GPS time:
1401789000)

The [other file](sensitivities/finesse-virgo.npy) is generated using
[this notebook](generate_from_finesse-virgo.ipynb)

## Optickle comparison

The file [optickle.mat] was obtained using this
[version](https://git.ligo.org/virgo/virgoapp/simulinkNoiseBudget/-/blob/9848794f00ccb5b6c6fa74309f9019df3f2e1387/DRITF/scatterRadiationPressure.m)
with the 59 & 60 lines of `DRITF/scatterRadiationPressure` removed and the lines
51 & 52 updated to:

```matlab
par.P_darkFringe = 8
par.P_laser = 25
```

## License

This project is licensed under the GNU GPL v3+.
See [license file](LICENSE) for more information.

## Acknowledgment

Thanks to all the people that worked on
[Finesse](https://finesse.ifosim.org/docs/latest/backmatter/about.html), and on
all the software and library used in this project.
