{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "44677777",
"metadata": {
"execution": {
"iopub.execute_input": "2025-01-23T12:42:06.444291Z",
"iopub.status.busy": "2025-01-23T12:42:06.444014Z",
"iopub.status.idle": "2025-01-23T12:42:09.533304Z",
"shell.execute_reply": "2025-01-23T12:42:09.532362Z"
}
},
"outputs": [],
"source": [
"import finesse\n",
"finesse.configure(plotting=True)\n",
"\n",
"kat = finesse.Model()\n",
"kat.parse(\n",
" \"\"\"\n",
" # Laser with power 1W\n",
" laser L0 P=1\n",
" s s0 L0.p1 eom1.p1\n",
"\n",
" # Phase modulator at 40kHz, with a modulation index of 0.05\n",
" mod eom1 f=40k midx=.05 order=5 mod_type=pm\n",
"\n",
" # Three amplitude detectors, looking at the first three positive modulation\n",
" # sidebands\n",
" ad bessel1 eom1.p2.o f=40k\n",
" ad bessel2 eom1.p2.o f=80k\n",
" ad bessel3 eom1.p2.o f=120k\n",
" \"\"\"\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "fd3e229d",
"metadata": {
"execution": {
"iopub.execute_input": "2025-01-23T12:42:09.537311Z",
"iopub.status.busy": "2025-01-23T12:42:09.536214Z",
"iopub.status.idle": "2025-01-23T12:42:10.333236Z",
"shell.execute_reply": "2025-01-23T12:42:10.332457Z"
}
},
"outputs": [
{
"data": {
"image/svg+xml": [
"\n",
"\n",
"\n"
],
"text/plain": [
""
]
},
"metadata": {
"filenames": {
"image/svg+xml": "/builds/ifosim/finesse/finesse3/docs/build/jupyter_execute/examples/05_modulation_1_0.svg"
}
},
"output_type": "display_data"
}
],
"source": [
"# Sweep the modulation index of the modulator from 0 to 10\n",
"out = kat.run(\"xaxis(eom1.midx, lin, 0, 10, 300)\")\n",
"out.plot();"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.13.1"
}
},
"nbformat": 4,
"nbformat_minor": 5
}