From 8fbbd9def22b1949507fade1a6c7ec5afeba2c85 Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Tue, 1 Jul 2025 15:27:33 +0100 Subject: [PATCH 01/10] start Literate README --- README.md | 14 ++++---------- examples/readme/README.jl | 9 +++++++++ examples/readme/makereadme.jl | 3 +++ 3 files changed, 16 insertions(+), 10 deletions(-) create mode 100644 examples/readme/README.jl create mode 100644 examples/readme/makereadme.jl diff --git a/README.md b/README.md index 91853ee..f2a777e 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,10 @@ -# HiSol -[![Stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://LupoLab.github.io/HiSol.jl/stable/) -[![Dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://LupoLab.github.io/HiSol.jl/dev/) -[![Build Status](https://github.com/LupoLab/HiSol.jl/actions/workflows/CI.yml/badge.svg?branch=master)](https://github.com/LupoLab/HiSol.jl/actions/workflows/CI.yml?query=branch%3Amaster) +> [!WARNING] +> This package is a work in progress. Please use with caution and contribute corrections or improvements if possible. HiSol.jl is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. -To install, use `]add` in Julia with the GitHub repository: +--- -``` -]add https://github.com/LupoLab/HiSol.jl -``` +*This page was generated using [Literate.jl](https://github.com/fredrikekre/Literate.jl).* -> **Warning** -> The HiSol.jl package is a **work in progress**, and as such the package and this repository are subject to drastic changes and/or removal without notice. Use at your own risk! diff --git a/examples/readme/README.jl b/examples/readme/README.jl new file mode 100644 index 0000000..a524d0b --- /dev/null +++ b/examples/readme/README.jl @@ -0,0 +1,9 @@ +import PyPlot: plt, pygui #hide +pygui(false); #hide + +# > [!WARNING] +# > This package is a work in progress. Please use with caution and contribute corrections or improvements if possible. + +#= +HiSol.jl is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. +=# \ No newline at end of file diff --git a/examples/readme/makereadme.jl b/examples/readme/makereadme.jl new file mode 100644 index 0000000..760a8be --- /dev/null +++ b/examples/readme/makereadme.jl @@ -0,0 +1,3 @@ +# To be run from the root of the repository to generate the README.md file. +using Literate +Literate.markdown("examples/readme/README.jl", "."; flavor = Literate.CommonMarkFlavor(), execute = true) \ No newline at end of file From a69b25472e8c22c93bcbc15d7d4ebc559daaa418 Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Fri, 4 Jul 2025 14:23:53 +0100 Subject: [PATCH 02/10] continuing README with Literate --- README.md | 53 +- examples/readme/README.jl | 50 +- examples/readme/figures/readme_ex_1a.svg | 3590 ++++++++++++++++++++++ examples/readme/figures/readme_ex_1b.svg | 1656 ++++++++++ src/Design.jl | 62 +- src/HiSol.jl | 3 + 6 files changed, 5383 insertions(+), 31 deletions(-) create mode 100644 examples/readme/figures/readme_ex_1a.svg create mode 100644 examples/readme/figures/readme_ex_1b.svg diff --git a/README.md b/README.md index f2a777e..9db537a 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,57 @@ > [!WARNING] -> This package is a work in progress. Please use with caution and contribute corrections or improvements if possible. +> This package is a work in progress. Function signatures and internals are subject to change without notice. Please use with caution and contribute corrections or improvements if possible. -HiSol.jl is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. +# HiSol.jl + +**HiSol.jl** is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. It does this by implementing a collection of design rules developed in the [Laboratory of Ultrafast Physics and Optics](https://lupo-lab.com). + +## Installation +HiSol.jl is not yet a registered Julia package. You therefore need to nstall it directly from GitHub, using the following commands in the Julia REPL: +```julia +] add https://github.com/LupoLab/HiSol.jl +``` +**or** +```julia +using Pkg +Pkg.add(url="https://github.com/LupoLab/HiSol.jl") +``` + +## Basic usage +The main functionality of HiSol.jl is to find the parameter space for soliton self-compression and especially resonant dispersive wave (RDW) emission in gas-filled hollow capillary fibres. The main function which shows the available design space is `design_space_a_energy`. It requires 5 input arguments: +```julia +design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) +``` +- `λ_target::Number`: the target wavelength for RDW emission in metres. +- `gas::Symbol`: the gas species. +- `λ0::Number`: the pump/driving wavelength in metres. +- `τfwhm::Number`: the pump/driving pulse duration in seconds +- `maxlength::Number`: the maximum **total** length of the HCF system in metres. + +As an example, we will design the HCF system used in the first demonstration of RDW emission in a hollow capillary fibre [Travers et al., Nature Photonics 13, 547 (2019)]. First we need to load the package and define our fixed parameters and constraints, then we call the function. + +````julia +using HiSol; + +λ_target = 160e-9 # 160 nm RDW +gas = :He # helium gas +λ0 = 800e-9 # 800 nm driving pulse +τfwhm = 10e-15 # 10 fs driving pulse +maxlength = 5 # 5 m maximum setup length + +figs, params, a, energy, ratios = design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) +figs[1].savefig(joinpath(dir, "readme_ex_1a.svg")) +figs[2].savefig(joinpath(dir, "readme_ex_1b.svg")) +```` + +```` +sys:1: UserWarning: No contour levels were found within the data range. + +```` + +This will produce the following plots (the `Figure` objects returned in the `figs` variable above.) +![Filtered FROG trace](examples/readme/figures/readme_ex_1a.svg) +![Filtered FROG trace](examples/readme/figures/readme_ex_1b.svg) --- diff --git a/examples/readme/README.jl b/examples/readme/README.jl index a524d0b..e122254 100644 --- a/examples/readme/README.jl +++ b/examples/readme/README.jl @@ -2,8 +2,52 @@ import PyPlot: plt, pygui #hide pygui(false); #hide # > [!WARNING] -# > This package is a work in progress. Please use with caution and contribute corrections or improvements if possible. +# > This package is a work in progress. Function signatures and internals are subject to change without notice. Please use with caution and contribute corrections or improvements if possible. #= -HiSol.jl is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. -=# \ No newline at end of file +# HiSol.jl + +**HiSol.jl** is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. It does this by implementing a collection of design rules developed in the [Laboratory of Ultrafast Physics and Optics](https://lupo-lab.com). + +## Installation +HiSol.jl is not yet a registered Julia package. You therefore need to nstall it directly from GitHub, using the following commands in the Julia REPL: +```julia +] add https://github.com/LupoLab/HiSol.jl +``` +**or** +```julia +using Pkg +Pkg.add(url="https://github.com/LupoLab/HiSol.jl") +``` +=# + +#= +## Basic usage +The main functionality of HiSol.jl is to find the parameter space for soliton self-compression and especially resonant dispersive wave (RDW) emission in gas-filled hollow capillary fibres. The main function which shows the available design space is `design_space_a_energy`. It requires 5 input arguments: +```julia +design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) +``` +- `λ_target::Number`: the target wavelength for RDW emission in metres. +- `gas::Symbol`: the gas species. +- `λ0::Number`: the pump/driving wavelength in metres. +- `τfwhm::Number`: the pump/driving pulse duration in seconds +- `maxlength::Number`: the maximum **total** length of the HCF system in metres. + +As an example, we will design the HCF system used in the first demonstration of RDW emission in a hollow capillary fibre [Travers et al., Nature Photonics 13, 547 (2019)]. First we need to load the package and define our fixed parameters and constraints, then we call the function. +=# +using HiSol; +dir = joinpath(pkgdir(HiSol), "examples/readme/figures/") #hide + +λ_target = 160e-9 # 160 nm RDW +gas = :He # helium gas +λ0 = 800e-9 # 800 nm driving pulse +τfwhm = 10e-15 # 10 fs driving pulse +maxlength = 5 # 5 m maximum setup length + +figs, params, a, energy, ratios = design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) +figs[1].savefig(joinpath(dir, "readme_ex_1a.svg")) +figs[2].savefig(joinpath(dir, "readme_ex_1b.svg")) + +# This will produce the following plots (the `Figure` objects returned in the `figs` variable above.) +# ![Criteria ratios for design space example](examples/readme/figures/readme_ex_1a.svg) +# ![Fission length and soliton order in design space example](examples/readme/figures/readme_ex_1b.svg) \ No newline at end of file diff --git a/examples/readme/figures/readme_ex_1a.svg b/examples/readme/figures/readme_ex_1a.svg new file mode 100644 index 0000000..4338d51 --- /dev/null +++ b/examples/readme/figures/readme_ex_1a.svg @@ -0,0 +1,3590 @@ + + + + + + + + 2025-07-04T14:21:41.661331 + image/svg+xml + + + Matplotlib v3.5.3, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/readme/figures/readme_ex_1b.svg b/examples/readme/figures/readme_ex_1b.svg new file mode 100644 index 0000000..e237732 --- /dev/null +++ b/examples/readme/figures/readme_ex_1b.svg @@ -0,0 +1,1656 @@ + + + + + + + + 2025-07-04T14:21:41.886166 + image/svg+xml + + + Matplotlib v3.5.3, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Design.jl b/src/Design.jl index fb90e34..b1f8fc7 100644 --- a/src/Design.jl +++ b/src/Design.jl @@ -8,6 +8,7 @@ import HiSol.Limits: critical_intensity, barrier_suppression_intensity, Nmin, Nm import HiSol.HCF: intensity_modeavg, loss_length, ZDW, αbar_a, δ, fβ2, get_unm, Aeff0, dispersion, Δ import HiSol.Focusing: max_flength import HiSol.Data: n2_0, n2_solid +import Logging: @warn function params_maxlength(λ_target, gas, λ0, τfwhm, maxlength; thickness=1e-3, material=:SiO2, Bmax=0.2, @@ -198,7 +199,7 @@ function boundaries( end -function aeplot_maxlength(λ_target, gas, λ0, τfwhm, maxlength; +function design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength; thickness=1e-3, material=:SiO2, Bmax=0.2, entrance_window=true, exit_window=true, LIDT=2000, S_fluence=5, @@ -225,7 +226,7 @@ function aeplot_maxlength(λ_target, gas, λ0, τfwhm, maxlength; fig = plt.figure() fig.set_size_inches(12, 3.5) plt.subplot(1, 4, 1) - plt.pcolormesh(1e6a, 1e6energy, ratios.loss; cmap="Spectral_r") + plt.pcolormesh(1e6a, 1e6energy, ratios.loss; cmap="Spectral_r", rasterized=true) plt.clim(0, 2) # plt.contour(1e6a, 1e6energy, idcs.loss, 0; colors="0.4") plt.contour(1e6a, 1e6energy, idcs.all, 0; colors="k") @@ -238,7 +239,7 @@ function aeplot_maxlength(λ_target, gas, λ0, τfwhm, maxlength; plt.ylim(extrema(1e6energy)) plt.xlim(extrema(1e6a)) plt.subplot(1, 4, 2) - plt.pcolormesh(1e6a, 1e6energy, ratios.fiss; cmap="Spectral_r") + plt.pcolormesh(1e6a, 1e6energy, ratios.fiss; cmap="Spectral_r", rasterized=true) plt.clim(0, 2) # plt.contour(1e6a, 1e6energy, idcs.fiss, 0; colors="0.4") plt.plot(full.length*1e6, energyb*1e6, color="0.4") @@ -248,7 +249,7 @@ function aeplot_maxlength(λ_target, gas, λ0, τfwhm, maxlength; plt.ylim(extrema(1e6energy)) plt.xlim(extrema(1e6a)) plt.subplot(1, 4, 3) - plt.pcolormesh(1e6a, 1e6energy, ratios.Nmin; cmap="Spectral_r") + plt.pcolormesh(1e6a, 1e6energy, ratios.Nmin; cmap="Spectral_r", rasterized=true) plt.clim(0, 2) # plt.contour(1e6a, 1e6energy, idcs.Nmin, 0; colors="0.4") plt.plot(1e6ab, 1e6full.Nmin, color="0.4") @@ -258,7 +259,7 @@ function aeplot_maxlength(λ_target, gas, λ0, τfwhm, maxlength; plt.ylim(extrema(1e6energy)) plt.xlim(extrema(1e6a)) plt.subplot(1, 4, 4) - plt.pcolormesh(1e6a, 1e6energy, ratios.Nmax; cmap="Spectral_r") + plt.pcolormesh(1e6a, 1e6energy, ratios.Nmax; cmap="Spectral_r", rasterized=true) plt.clim(0, 2) # plt.contour(1e6a, 1e6energy, idcs.Nmax, 0; colors="0.4") plt.plot(1e6ab, 1e6full.Nmax, color="0.4") @@ -270,30 +271,39 @@ function aeplot_maxlength(λ_target, gas, λ0, τfwhm, maxlength; fig.tight_layout() - Lfiss_ok = params.Lfiss[idcs.all] + Lfiss_ok = copy(params.Lfiss) + Lfiss_ok[.~idcs.all] .= NaN + + N_ok = copy(params.N) + N_ok[.~idcs.all] .= NaN fig2 = plt.figure() - fig2.set_size_inches(6, 3.5) - plt.subplot(1, 2, 1) - plt.pcolormesh(1e6a, 1e6energy, params.Lfiss) - plt.clim(0, 1.5*maximum(Lfiss_ok)) - plt.contour(1e6a, 1e6energy, idcs.loss, 0; colors="0.4") - plt.contour(1e6a, 1e6energy, idcs.fiss, 0; colors="0.4") - plt.contour(1e6a, 1e6energy, idcs.all, 0; colors="k") - plt.xlabel("Core radius (μm)") - plt.ylabel("Energy (μJ)") - # plt.colorbar() - # plt.colorbar(label="Fission length (m)") - plt.subplot(1, 2, 2) - plt.pcolormesh(1e6a, 1e6energy, params.N) - plt.clim(1, 1.5maximum(params.Nmax)) - plt.contour(1e6a, 1e6energy, idcs.Nmax, 0; colors="0.4") - plt.contour(1e6a, 1e6energy, idcs.Nmin, 0; colors="0.4") - plt.contour(1e6a, 1e6energy, idcs.all, 0; colors="k") - plt.xlabel("Core radius (μm)") - # plt.colorbar(label="Soliton order") + fig2.set_size_inches(8, 3.5) + gs = fig2.add_gridspec(1, 2) + gss = gs[1].subgridspec(1, 2; width_ratios=(1, 0.05), wspace=0.05) + ax = fig2.add_subplot(gss[1]) + img = ax.pcolormesh(1e6a, 1e6energy, Lfiss_ok, rasterized=true) + ax.set_xlabel("Core radius (μm)") + ax.set_ylabel("Energy (μJ)") + ax.set_title("Fission length") + cax = fig2.add_subplot(gss[2]) + fig2.colorbar(img; cax, label="Fission length (m)") + gss = gs[2].subgridspec(1, 2; width_ratios=(1, 0.05), wspace=0.05) + ax = fig2.add_subplot(gss[1]) + img = ax.pcolormesh(1e6a, 1e6energy, N_ok, rasterized=true) + ax.set_xlabel("Core radius (μm)") + ax.set_ylabel("Energy (μJ)") + ax.set_title("Soliton order") + cax = fig2.add_subplot(gss[2]) + fig2.colorbar(img; cax, label="Soliton order") + fig2.tight_layout() + + (fig, fig2), f, a, energy, ratios +end - fig, f, a, energy, ratios +function aeplot_maxlength(args...; kwargs...) + @warn "aeplot_maxlength has been replace by design_space_a_energy and will be removed soon." + design_space_a_energy(args...; kwargs...) end function aplot_energy_maxlength(λ_target, gas, λ0, τfwhm, energy, maxlength; diff --git a/src/HiSol.jl b/src/HiSol.jl index 932775d..1b8f905 100644 --- a/src/HiSol.jl +++ b/src/HiSol.jl @@ -9,4 +9,7 @@ include("Compressor.jl") include("GasFlow.jl") include("Design.jl") +import .Design: design_space_a_energy +export design_space_a_energy + end From f3769168783e2a02ecbeb7ffef756586dcdb2c33 Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Fri, 4 Jul 2025 14:50:07 +0100 Subject: [PATCH 03/10] try resizing --- README.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 9db537a..cc2a666 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ **HiSol.jl** is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. It does this by implementing a collection of design rules developed in the [Laboratory of Ultrafast Physics and Optics](https://lupo-lab.com). ## Installation -HiSol.jl is not yet a registered Julia package. You therefore need to nstall it directly from GitHub, using the following commands in the Julia REPL: +HiSol.jl is not yet a registered Julia package. You therefore need to install it directly from GitHub, using the following commands in the Julia REPL: ```julia ] add https://github.com/LupoLab/HiSol.jl ``` @@ -40,8 +40,6 @@ gas = :He # helium gas maxlength = 5 # 5 m maximum setup length figs, params, a, energy, ratios = design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) -figs[1].savefig(joinpath(dir, "readme_ex_1a.svg")) -figs[2].savefig(joinpath(dir, "readme_ex_1b.svg")) ```` ```` @@ -49,9 +47,9 @@ sys:1: UserWarning: No contour levels were found within the data range. ```` -This will produce the following plots (the `Figure` objects returned in the `figs` variable above.) -![Filtered FROG trace](examples/readme/figures/readme_ex_1a.svg) -![Filtered FROG trace](examples/readme/figures/readme_ex_1b.svg) +This will produce the following plots (the `Figure` objects are returned in the `figs` variable above.) +![](examples/readme/figures/readme_ex_1a.svg) +![](examples/readme/figures/readme_ex_1b.svg) --- From aa0da2f7546f959de8d0b4e837217ac50d4aa2f0 Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Fri, 4 Jul 2025 16:01:35 +0100 Subject: [PATCH 04/10] more readme --- README.md | 46 ++++++++++++++++++++++++++++++++++--- examples/readme/README.jl | 48 ++++++++++++++++++++++++++++++++++----- 2 files changed, 85 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index cc2a666..eeba098 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,8 @@ **HiSol.jl** is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. It does this by implementing a collection of design rules developed in the [Laboratory of Ultrafast Physics and Optics](https://lupo-lab.com). +HiSol.jl is based on analytical expressions for the various parameters involved in soliton dynamics (e.g. the phase-matching wavelength for RDW emission). Since soliton self-compression is a highly dynamical process, any analytical model is only approximate. Design parameters found with HiSol.jl should be checked with full numerical simulations, e.g. using [Luna.jl](https://github.com/LupoLab/Luna.jl), before basing experimental designs on them. + ## Installation HiSol.jl is not yet a registered Julia package. You therefore need to install it directly from GitHub, using the following commands in the Julia REPL: ```julia @@ -39,7 +41,7 @@ gas = :He # helium gas τfwhm = 10e-15 # 10 fs driving pulse maxlength = 5 # 5 m maximum setup length -figs, params, a, energy, ratios = design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) +figs, params, as, energies, ratios = design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) ```` ```` @@ -48,8 +50,46 @@ sys:1: UserWarning: No contour levels were found within the data range. ```` This will produce the following plots (the `Figure` objects are returned in the `figs` variable above.) -![](examples/readme/figures/readme_ex_1a.svg) -![](examples/readme/figures/readme_ex_1b.svg) +![Criteria ratios for design space example](examples/readme/figures/readme_ex_1a.svg) +![Fission length and soliton order in design space example](examples/readme/figures/readme_ex_1b.svg) + +The top row of plots shows parameter ratios which correspond to the four criteria we need to fulfill to observe RDW emission +- Loss: the fission length needs to be shorter than the $1/e$ loss length of the capillary. Equivalently, we need $\frac{L_\mathrm{fiss}}{L_\mathrm{loss}} < 1$. +- Fission length: the fission length needs to be shorter than the maximum capillary length which can fit into the available space for these parameters: $\frac{L_\mathrm{fiss}}{L_{\mathrm{HCF}}} < 1$. +- Minimum soliton order: for any soliton self-compression to occur, we need $N \geq 1.5$. Additionally, for RDWs far away from the pump wavelength (i.e. very short RDW wavelengths), we need $N \geq N_\mathrm{min}$ where the minimum soliton order $N_\mathrm{min}$ is based on an empirical relation. The relevant ratio is thus $\frac{N_\mathrm{min}}{N} < 1$. +- Maximum soliton order: we must not exceed the maximum soliton order, which encodes intensity limits due to photoionisation and plasma or self-focusing: $\frac{N}{N_\mathrm{max}} < 1$. + +In each plot, the grey line shows the boundary between regions where the respective ratio is above and below $1$. The first plot also shows the resulting design space: the region where all four ratios are below $1$, and thus RDW emission should be possible. + +The second figure shows the two key parameters for the soliton dynamics—the fission length and the soliton order—within the design space outlined by the four criteria. + +To be more precise in our choices, instead of reading numbers off of the plot, we can use the `params` function returned by `design_space_a_energy`. This takes the two coordinates of the figure (core radius, pulse energy) and returns a full list of the specifications of the system. For example, we can find the exact configuration for a 125 μm core radius and 200 μJ: + +````julia +a = 125e-6 # 125 μm +energy = 200e-6 # 200 μJ +p = params(a, energy) +```` + +```` +(radius = 0.000125, density = 1.7914408055571105e25, pressure = 0.7253185622214363, intensity = 7.535276434231073e17, flength = 2.8737700334469096, energy = 0.0002, τfwhm = 1.0e-14, N = 2.5016708999581865, Nmin = 2.0856934877556217, Nmax = 3.4849157606268664, Lfiss = 1.6345326571134293, Lloss = 7.059317026423643, Isupp = 1.4622559752929698e19, Icrit = 1.5677245191881308e19) +```` + +Here `p` is now a `NamedTuple` containing the parameters. Its fields are: +- `radius`: (input) the chosen core radius. +- `energy`: (input) the chosen pulse energy. +- `density`: gas density (m⁻³). +- `pressure`: pressure (bar). +- `Lfiss`: fission length. +- `N`: soliton order. +- `flength`: *maximum* fibre length which fits into the space for the chosen parameters. +- `τfwhm`: FWHM pulse duration. +- `Nmin`: minimum soliton order. +- `Nmax`: maximum soliton order. +- `Lloss`: loss length of the HCF. +- `intensity`: peak intensity of the driving pulse (W/m²). +- `Isupp`: barrier suppression intensity of the filling gas. +- `Icrit`: critical intensity for self-focusing, calculated as $I_\mathrm{crit} = P_\mathrm{crit}/A_\mathrm{eff}$, where $P_\mathrm{crit}$ is the critical *power* and $A_\mathrm{eff}$ is the effective area of the waveguide. --- diff --git a/examples/readme/README.jl b/examples/readme/README.jl index e122254..8f51e07 100644 --- a/examples/readme/README.jl +++ b/examples/readme/README.jl @@ -9,8 +9,10 @@ pygui(false); #hide **HiSol.jl** is a Julia package to aid in the design of gas-filled hollow-core fibre systems for pulse compression and soliton dynamics using ultrashort laser pulses. It does this by implementing a collection of design rules developed in the [Laboratory of Ultrafast Physics and Optics](https://lupo-lab.com). +HiSol.jl is based on analytical expressions for the various parameters involved in soliton dynamics (e.g. the phase-matching wavelength for RDW emission). Since soliton self-compression is a highly dynamical process, any analytical model is only approximate. Design parameters found with HiSol.jl should be checked with full numerical simulations, e.g. using [Luna.jl](https://github.com/LupoLab/Luna.jl), before basing experimental designs on them. + ## Installation -HiSol.jl is not yet a registered Julia package. You therefore need to nstall it directly from GitHub, using the following commands in the Julia REPL: +HiSol.jl is not yet a registered Julia package. You therefore need to install it directly from GitHub, using the following commands in the Julia REPL: ```julia ] add https://github.com/LupoLab/HiSol.jl ``` @@ -44,10 +46,44 @@ gas = :He # helium gas τfwhm = 10e-15 # 10 fs driving pulse maxlength = 5 # 5 m maximum setup length -figs, params, a, energy, ratios = design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) -figs[1].savefig(joinpath(dir, "readme_ex_1a.svg")) -figs[2].savefig(joinpath(dir, "readme_ex_1b.svg")) +figs, params, as, energies, ratios = design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) +figs[1].savefig(joinpath(dir, "readme_ex_1a.svg")) #hide +figs[2].savefig(joinpath(dir, "readme_ex_1b.svg")) #hide -# This will produce the following plots (the `Figure` objects returned in the `figs` variable above.) +# This will produce the following plots (the `Figure` objects are returned in the `figs` variable above.) # ![Criteria ratios for design space example](examples/readme/figures/readme_ex_1a.svg) -# ![Fission length and soliton order in design space example](examples/readme/figures/readme_ex_1b.svg) \ No newline at end of file +# ![Fission length and soliton order in design space example](examples/readme/figures/readme_ex_1b.svg) + +#= +The top row of plots shows parameter ratios which correspond to the four criteria we need to fulfill to observe RDW emission +- Loss: the fission length needs to be shorter than the $1/e$ loss length of the capillary. Equivalently, we need $\frac{L_\mathrm{fiss}}{L_\mathrm{loss}} < 1$. +- Fission length: the fission length needs to be shorter than the maximum capillary length which can fit into the available space for these parameters: $\frac{L_\mathrm{fiss}}{L_{\mathrm{HCF}}} < 1$. +- Minimum soliton order: for any soliton self-compression to occur, we need $N \geq 1.5$. Additionally, for RDWs far away from the pump wavelength (i.e. very short RDW wavelengths), we need $N \geq N_\mathrm{min}$ where the minimum soliton order $N_\mathrm{min}$ is based on an empirical relation. The relevant ratio is thus $\frac{N_\mathrm{min}}{N} < 1$. +- Maximum soliton order: we must not exceed the maximum soliton order, which encodes intensity limits due to photoionisation and plasma or self-focusing: $\frac{N}{N_\mathrm{max}} < 1$. + +In each plot, the grey line shows the boundary between regions where the respective ratio is above and below $1$. The first plot also shows the resulting design space: the region where all four ratios are below $1$, and thus RDW emission should be possible. + +The second figure shows the two key parameters for the soliton dynamics—the fission length and the soliton order—within the design space outlined by the four criteria. + +To be more precise in our choices, instead of reading numbers off of the plot, we can use the `params` function returned by `design_space_a_energy`. This takes the two coordinates of the figure (core radius, pulse energy) and returns a full list of the specifications of the system. For example, we can find the exact configuration for a 125 μm core radius and 200 μJ: +=# +a = 125e-6 # 125 μm +energy = 200e-6 # 200 μJ +p = params(a, energy) +#= +Here `p` is now a `NamedTuple` containing the parameters. Its fields are: +- `radius`: (input) the chosen core radius. +- `energy`: (input) the chosen pulse energy. +- `density`: gas density (m⁻³). +- `pressure`: pressure (bar). +- `Lfiss`: fission length. +- `N`: soliton order. +- `flength`: *maximum* fibre length which fits into the space for the chosen parameters. +- `τfwhm`: FWHM pulse duration. +- `Nmin`: minimum soliton order. +- `Nmax`: maximum soliton order. +- `Lloss`: loss length of the HCF. +- `Isupp`: barrier suppression intensity of the filling gas. +- `Icrit`: critical intensity for self-focusing, calculated as $I_\mathrm{crit} = P_\mathrm{crit}/A_\mathrm{eff}$, where $P_\mathrm{crit}$ is the critical *power* and $A_\mathrm{eff}$ is the effective area of the waveguide. +- `intensity`: peak intensity of the driving pulse (W/m²), calculated as $P_0/A_\mathrm{eff}$ where $P_0$ is the pulse peak power. +=# \ No newline at end of file From e1b27862cba461749a92d0a28c0ad5ab9d2bad20 Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Sun, 6 Jul 2025 10:06:13 +0100 Subject: [PATCH 05/10] limits --- README.md | 37 ++++++++++++++++++++++++++++++++++++- examples/readme/README.jl | 24 ++++++++++++++++++++++++ src/Design.jl | 10 +++++----- 3 files changed, 65 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index eeba098..0f90271 100644 --- a/README.md +++ b/README.md @@ -87,9 +87,44 @@ Here `p` is now a `NamedTuple` containing the parameters. Its fields are: - `Nmin`: minimum soliton order. - `Nmax`: maximum soliton order. - `Lloss`: loss length of the HCF. -- `intensity`: peak intensity of the driving pulse (W/m²). - `Isupp`: barrier suppression intensity of the filling gas. - `Icrit`: critical intensity for self-focusing, calculated as $I_\mathrm{crit} = P_\mathrm{crit}/A_\mathrm{eff}$, where $P_\mathrm{crit}$ is the critical *power* and $A_\mathrm{eff}$ is the effective area of the waveguide. +- `intensity`: peak intensity of the driving pulse (W/m²), calculated as $P_0/A_\mathrm{eff}$ where $P_0$ is the pulse peak power. + +To find, for example, the gas pressure for one point in the design space, we can access the respective field: + +````julia +p.pressure +```` + +```` +0.7253185622214363 +```` + +Or, similarly, the fission length: + +````julia +p.Lfiss +```` + +```` +1.6345326571134293 +```` + +## Additional options +The `design_space_a_energy` function takes a large range of additional keyword arguments which affect the design rules it applies. The two main categories concern a) safety factors for the nonlinear dynamics themselves b) limitations on the maximum HCF length in the given space (`maxlength`). + +### Safety factors +The three main keyword arguments which affect the "safety margin" in the calculations are: +- `S_sf`: safety factor on the critical power for self-focusing. The driving-pulse peak power will not exceed $P_\mathrm{crit}/S_\mathrm{sf}$. (Default: 5) +- `S_ion`: safety factor on strong-field photoionisation. The driving-pulse intensity (in the mode-averaged sense, i.e. $P_0/A_\mathrm{eff}$) will not exceed $I_\mathrm{supp}/S_\mathrm{ion}$, where $I_\mathrm{supp}$ is the barrier suppression intensity of the gas. (Default: 10) +- `S_fiss`: safety factor on the fission length. The *minimum* fibre length for efficient RDW emission is taken to be $S_\mathrm{fiss}L_\mathrm{fiss}$, where $L_\mathrm{fiss}$ is the fission length. (Default: 1.5) + +`S_fiss` affects both the loss cut-off and the length cut-off: for a parameter combination to be included in the design space, $S_\mathrm{fiss}\times L_\mathrm{fiss}$ needs to be shorter than both the maximum HCF length *and* the loss length. A fourth keyword argument can alter that behaviour: + +- `S_loss`: safety factor on the loss length. The fission length (multiplied by the safety factor) will be shorter than $L_\mathrm{loss}/S_\mathrm{loss}$. (Default: 1) + +The default safety factors are intentionally very conservative, with the aim of generating parameter combinations which are very likely to work in practice. In extreme cases, it can be necessary to adjust the safety factors. For example, RDW emission at very short wavelengths is commonly ionisation-limited. To achieve efficient frequency conversion, the conservative limit can be exceeded by several times—at the cost of relying on more extreme nonlinear dynamics which can be more sensitive to minor perturbations. Similarly, the loss limit can be exceeded (see e.g. Chen *et al.*, 10.1364/OL.553345) at the cost of a potentially significant reduction in conversion efficiency to the RDW. --- diff --git a/examples/readme/README.jl b/examples/readme/README.jl index 8f51e07..7f98dda 100644 --- a/examples/readme/README.jl +++ b/examples/readme/README.jl @@ -86,4 +86,28 @@ Here `p` is now a `NamedTuple` containing the parameters. Its fields are: - `Isupp`: barrier suppression intensity of the filling gas. - `Icrit`: critical intensity for self-focusing, calculated as $I_\mathrm{crit} = P_\mathrm{crit}/A_\mathrm{eff}$, where $P_\mathrm{crit}$ is the critical *power* and $A_\mathrm{eff}$ is the effective area of the waveguide. - `intensity`: peak intensity of the driving pulse (W/m²), calculated as $P_0/A_\mathrm{eff}$ where $P_0$ is the pulse peak power. + +To find, for example, the gas pressure for one point in the design space, we can access the respective field: +=# +p.pressure +# Or, similarly, the fission length: +p.Lfiss + +#= +## Additional options +The `design_space_a_energy` function takes a large range of additional keyword arguments which affect the design rules it applies. The two main categories concern a) safety factors for the nonlinear dynamics themselves b) limitations on the maximum HCF length in the given space (`maxlength`). + +### Safety factors +The three main keyword arguments which affect the "safety margin" in the calculations control safety factors. For each safety factor, a *larger* number implies a *more conservative* rule, which implies a smaller design space. +- `S_sf`: safety factor on the critical power for self-focusing. The driving-pulse peak power will not exceed $P_\mathrm{crit}/S_\mathrm{sf}$. (Default: 5) +- `S_ion`: safety factor on strong-field photoionisation. The driving-pulse intensity (in the mode-averaged sense, i.e. $P_0/A_\mathrm{eff}$) will not exceed $I_\mathrm{supp}/S_\mathrm{ion}$, where $I_\mathrm{supp}$ is the barrier suppression intensity of the gas. (Default: 10) +- `S_fiss`: safety factor on the fission length. The *minimum* fibre length for efficient RDW emission is taken to be $S_\mathrm{fiss}L_\mathrm{fiss}$, where $L_\mathrm{fiss}$ is the fission length. (Default: 1.5) + +`S_fiss` affects both the loss cut-off and the length cut-off: for a parameter combination to be included in the design space, $S_\mathrm{fiss}\times L_\mathrm{fiss}$ needs to be shorter than both the maximum HCF length *and* the loss length. A fourth keyword argument can alter that behaviour: + +- `S_loss`: safety factor on the loss length. The fission length (multiplied by the safety factor) will be shorter than $L_\mathrm{loss}/S_\mathrm{loss}$. (Default: 1) + +Note that `S_loss` follows the same convention as the other safety factors: a larger value results in a more conservative design rule. + +The default safety factors are intentionally very conservative, with the aim of generating parameter combinations which are very likely to work in practice. In extreme cases, it can be necessary to adjust the safety factors. For example, RDW emission at very short wavelengths is commonly ionisation-limited. To achieve efficient frequency conversion, the conservative limit can be exceeded by several times—at the cost of relying on more extreme nonlinear dynamics which can be more sensitive to minor perturbations. Similarly, the loss limit can be exceeded (see e.g. Chen *et al.*, 10.1364/OL.553345) at the cost of a potentially significant reduction in conversion efficiency to the RDW. =# \ No newline at end of file diff --git a/src/Design.jl b/src/Design.jl index b1f8fc7..2ac008d 100644 --- a/src/Design.jl +++ b/src/Design.jl @@ -67,7 +67,7 @@ function maxlength_limitratios(λ_target, gas, λ0, τfwhm, maxlength; thickness=1e-3, material=:SiO2, Bmax=0.2, entrance_window=true, exit_window=true, LIDT=2000, S_fluence=5, - S_sf=5, S_ion=10, S_fiss=1.5, Nplot=512, kwargs...) + S_sf=5, S_ion=10, S_fiss=1.5, S_loss=1, Nplot=512, kwargs...) _, f = params_maxlength(λ_target, gas, λ0, τfwhm, maxlength; thickness, material, Bmax, entrance_window, exit_window, @@ -99,8 +99,8 @@ function maxlength_limitratios(λ_target, gas, λ0, τfwhm, maxlength; flength = getindex.(p, :flength) Lfiss = getindex.(p, :Lfiss) - loss_ratio = (S_fiss .* Lfiss) ./ Lloss - fiss_ratio = (S_fiss .* Lfiss) ./flength + loss_ratio = (S_fiss .* Lfiss) ./ (Lloss/S_loss) + fiss_ratio = (S_fiss .* Lfiss) ./ flength N = getindex.(p, :N) Nmax = getindex.(p, :Nmax) @@ -203,13 +203,13 @@ function design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength; thickness=1e-3, material=:SiO2, Bmax=0.2, entrance_window=true, exit_window=true, LIDT=2000, S_fluence=5, - S_sf=5, S_ion=10, S_fiss=1.5, Nplot=512, kwargs...) + S_sf=5, S_ion=10, S_fiss=1.5, S_loss=1, Nplot=512, kwargs...) a, energy, ratios, params, idcs, f = maxlength_limitratios( λ_target, gas, λ0, τfwhm, maxlength; thickness, material, Bmax, entrance_window, exit_window, LIDT, S_fluence, - S_sf, S_ion, S_fiss, Nplot, kwargs...) + S_sf, S_ion, S_fiss, S_loss, Nplot, kwargs...) ab, energyb, full, cropped = boundaries( λ_target, gas, λ0, τfwhm, maxlength; From 898216d75919ae78b46262ce5bfe87611ba69299 Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Sun, 6 Jul 2025 10:06:18 +0100 Subject: [PATCH 06/10] increment version --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index d1f12d9..b088c3c 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "HiSol" uuid = "b3f70d9b-428d-48dd-a02b-de2d62b823ae" authors = ["Christian Brahms ", "John Travers "] -version = "0.1.0" +version = "0.2.0" [deps] CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" From 509356ad27fc2947babd14efeb12c6db4f6c864f Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Sun, 6 Jul 2025 12:51:02 +0100 Subject: [PATCH 07/10] more readme --- README.md | 14 +++++++++++++- examples/readme/README.jl | 14 ++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0f90271..ef5bf71 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,10 @@ figs, params, as, energies, ratios = design_space_a_energy(λ_target, gas, λ0, ```` ```` +Precompiling HiSol... + 38589.0 ms ✓ Luna + 9693.5 ms ✓ HiSol + 2 dependencies successfully precompiled in 51 seconds. 260 already precompiled. sys:1: UserWarning: No contour levels were found within the data range. ```` @@ -115,7 +119,7 @@ p.Lfiss The `design_space_a_energy` function takes a large range of additional keyword arguments which affect the design rules it applies. The two main categories concern a) safety factors for the nonlinear dynamics themselves b) limitations on the maximum HCF length in the given space (`maxlength`). ### Safety factors -The three main keyword arguments which affect the "safety margin" in the calculations are: +The three main keyword arguments which affect the "safety margin" in the calculations control safety factors. For each safety factor, a *larger* number implies a *more conservative* rule, which implies a smaller design space. - `S_sf`: safety factor on the critical power for self-focusing. The driving-pulse peak power will not exceed $P_\mathrm{crit}/S_\mathrm{sf}$. (Default: 5) - `S_ion`: safety factor on strong-field photoionisation. The driving-pulse intensity (in the mode-averaged sense, i.e. $P_0/A_\mathrm{eff}$) will not exceed $I_\mathrm{supp}/S_\mathrm{ion}$, where $I_\mathrm{supp}$ is the barrier suppression intensity of the gas. (Default: 10) - `S_fiss`: safety factor on the fission length. The *minimum* fibre length for efficient RDW emission is taken to be $S_\mathrm{fiss}L_\mathrm{fiss}$, where $L_\mathrm{fiss}$ is the fission length. (Default: 1.5) @@ -124,8 +128,16 @@ The three main keyword arguments which affect the "safety margin" in the calcula - `S_loss`: safety factor on the loss length. The fission length (multiplied by the safety factor) will be shorter than $L_\mathrm{loss}/S_\mathrm{loss}$. (Default: 1) +Note that `S_loss` follows the same convention as the other safety factors: a larger value results in a more conservative design rule. + The default safety factors are intentionally very conservative, with the aim of generating parameter combinations which are very likely to work in practice. In extreme cases, it can be necessary to adjust the safety factors. For example, RDW emission at very short wavelengths is commonly ionisation-limited. To achieve efficient frequency conversion, the conservative limit can be exceeded by several times—at the cost of relying on more extreme nonlinear dynamics which can be more sensitive to minor perturbations. Similarly, the loss limit can be exceeded (see e.g. Chen *et al.*, 10.1364/OL.553345) at the cost of a potentially significant reduction in conversion efficiency to the RDW. +### Maximum HCF length +> [!NOTE] +> This part of HiSol.jl is currently being re-developed to be more flexible. The API will change in the near future. + +Because capillary fibres need to be kept perfectly straight, the maximum HCF length is determined by the available straight length of optical table. In most cases, space is required on both sides of the HCF to allow the incoming/outgoing beam to converge/diverge without being detrimentally affected by nonlinearities (in windows) or damaging the steering and focusing optics. + --- *This page was generated using [Literate.jl](https://github.com/fredrikekre/Literate.jl).* diff --git a/examples/readme/README.jl b/examples/readme/README.jl index 7f98dda..f890fc3 100644 --- a/examples/readme/README.jl +++ b/examples/readme/README.jl @@ -110,4 +110,18 @@ The three main keyword arguments which affect the "safety margin" in the calcula Note that `S_loss` follows the same convention as the other safety factors: a larger value results in a more conservative design rule. The default safety factors are intentionally very conservative, with the aim of generating parameter combinations which are very likely to work in practice. In extreme cases, it can be necessary to adjust the safety factors. For example, RDW emission at very short wavelengths is commonly ionisation-limited. To achieve efficient frequency conversion, the conservative limit can be exceeded by several times—at the cost of relying on more extreme nonlinear dynamics which can be more sensitive to minor perturbations. Similarly, the loss limit can be exceeded (see e.g. Chen *et al.*, 10.1364/OL.553345) at the cost of a potentially significant reduction in conversion efficiency to the RDW. + +### Maximum HCF length +> [!NOTE] +> This part of HiSol.jl is currently being re-developed to be more flexible. The API will change in the near future. + +Because capillary fibres need to be kept perfectly straight, the maximum HCF length is determined by the available straight length of optical table. In most cases, space is required on both sides of the HCF to allow the incoming/outgoing beam to converge/diverge without being detrimentally affected by nonlinearities (in windows) or damaging the steering and focusing optics. Several keywords are available to tailor these length constraints to your requirements: + +- `entrance_window`: whether a window is present at the entrance of the HCF. If `false`, the damage threshold of a mirror is taken into account (see below) instead of a nonlinearity limit in a window. (Default: `true`) +- `exit_window`: same as above, but for the exit side of the HCF. (Default: `true`) +- `thickness`: thickness of the window(s). (Default: `1e-3`, i.e. 1 mm) +- `material`: material of the window(s). (Default: `SiO2`, i.e. fused silica. Other options include `MgF2`.) +- `Bmax`: maximum B-integral in the window. (Default: 0.2, see 10.1364/OE.482749) +- `LIDT`: damage treshold of the last mirror before/first mirror after the HCF **in SI units**, i.e. J/m². (Default: 2000, i.e. 0.2 J/cm²) +- `S_fluence`: safety factor on the mirror fluence. The maximum fluence is the LIDT divided by `S_fluence`. (Default: 5) =# \ No newline at end of file From 1b20e560197535635c4329dbab9c59392c9a3c88 Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Sun, 6 Jul 2025 12:51:06 +0100 Subject: [PATCH 08/10] more readme --- examples/readme/README.jl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/examples/readme/README.jl b/examples/readme/README.jl index f890fc3..d27f197 100644 --- a/examples/readme/README.jl +++ b/examples/readme/README.jl @@ -124,4 +124,6 @@ Because capillary fibres need to be kept perfectly straight, the maximum HCF len - `Bmax`: maximum B-integral in the window. (Default: 0.2, see 10.1364/OE.482749) - `LIDT`: damage treshold of the last mirror before/first mirror after the HCF **in SI units**, i.e. J/m². (Default: 2000, i.e. 0.2 J/cm²) - `S_fluence`: safety factor on the mirror fluence. The maximum fluence is the LIDT divided by `S_fluence`. (Default: 5) + +Again, the defaults are conservative limits with the aim of producing unproblematic parameter combinations. Note that it is currently not possible to define separate thicknesses/materials/damage thresholds for the entrance and exit sides; this is under development as part of a larger refactor. =# \ No newline at end of file From 3de0f080ab2c7eda1733f73e74389aa5bf760c8e Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Sun, 6 Jul 2025 14:34:32 +0100 Subject: [PATCH 09/10] wording --- examples/readme/README.jl | 2 +- examples/readme/figures/readme_ex_1a.svg | 130 +++++++++++------------ examples/readme/figures/readme_ex_1b.svg | 102 +++++++++--------- 3 files changed, 117 insertions(+), 117 deletions(-) diff --git a/examples/readme/README.jl b/examples/readme/README.jl index d27f197..199c098 100644 --- a/examples/readme/README.jl +++ b/examples/readme/README.jl @@ -125,5 +125,5 @@ Because capillary fibres need to be kept perfectly straight, the maximum HCF len - `LIDT`: damage treshold of the last mirror before/first mirror after the HCF **in SI units**, i.e. J/m². (Default: 2000, i.e. 0.2 J/cm²) - `S_fluence`: safety factor on the mirror fluence. The maximum fluence is the LIDT divided by `S_fluence`. (Default: 5) -Again, the defaults are conservative limits with the aim of producing unproblematic parameter combinations. Note that it is currently not possible to define separate thicknesses/materials/damage thresholds for the entrance and exit sides; this is under development as part of a larger refactor. +Again, the defaults are conservative limits with the aim of producing working parameter combinations. Note that it is currently not possible to define separate thicknesses/materials/damage thresholds for the entrance and exit sides; this is under development as part of a larger refactor. =# \ No newline at end of file diff --git a/examples/readme/figures/readme_ex_1a.svg b/examples/readme/figures/readme_ex_1a.svg index 4338d51..ab32ff0 100644 --- a/examples/readme/figures/readme_ex_1a.svg +++ b/examples/readme/figures/readme_ex_1a.svg @@ -6,7 +6,7 @@ - 2025-07-04T14:21:41.661331 + 2025-07-06T12:43:55.509681 image/svg+xml @@ -38,7 +38,7 @@ z " style="fill: #ffffff"/> +iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AAADtklEQVR4nO3cMbITRxhGUQl+86rAUDbk5CzEG/LeSfw0LW9AN+4OzllBR7e+aY3m/vvff543gBfmj18/dp8BONR8/Pl99xmAQ839x9+7zwAcam7fv+0+A3CouX35a/cZgEPN/e3r7jMAh5rb25+7zwAcam6fPu8+A3CoWXfvSQGvzWP9t/sMwKHm8RQI4DULAkhzPd93nwE41KzntfsMwKHmej52nwE4lEcMIM37uu8+A3CoeQgEECwIIAkEkObxFAjgNQsCSLP8mRMIFgSQZrmDAIJHDCB5xACSBQGkudxBAMGCAJJfMYDkkhJIHjGANJdAAOHD7gMA57IggOQOAkgWBJAEAkgCASS/YgDJJSWQPGIASSCA5A4CSO4ggOQRA0geMYBkQQDJggCSr1oDya8YQPKIASSXlECyIIBkQQDJggDSrLX7CMCpLAggCQSQXFICyYIAkgUBJAsCSP6sBSQLAkgCASSXlECyIIBkQQDJggCSQADJIwaQLAggCQSQvGoNJAsCSAIBJL9iAMmCAJJAAEkggDRr3XefATiUBQEkgQDSrMsjBvCaBQEkgQCSQADJz5xAsiCAJBBAEggguYMAkgUBJIEAkkAAyR0EkCwIIAkEkAQCSAIBJB+MAZIFASSBAJJAAEkggORNSiBZEEASCCAJBJAEAkguKYFkQQBJIIAkEEASCCDNWruPAJzKggCSQABJIIAkEEASCCD5aC2QLAggCQSQBAJIAgEkgQCSQADJF6WAZEEASSCAJBBAEgggCQSQBAJIfuYEkgUBJIEAkkAASSCAJBBAEgggCQSQ5vJVayBYEEASCCAJBJAEAkgCASSBAJJAAMn3IIBkQQBJIIAkEEASCCAJBJAEAkgCASTvQQDJggCSQABJIIAkEEASCCAJBJAEAkgCASSBAJI3KYFkQQBJIIAkEEASCCAJBJAEAkgCASSBAJJAAGnW5U1K4DULAkgCASSBAJJAAEkggCQQQBIIIAkEkAQCSAIBJB+tBZIFASSBAJJAAEkggCQQQBIIIAkEkAQCSAIBJIEAkkAAyX8xgGRBAEkggCQQQBIIIAkEkAQCSAIBJIEAkkAASSCAJBBAEggg+bMWkCwIIAkEkAQCSAIBJIEAkkAASSCAJBBAEgggCQSQBAJIAgEkgQCSQABp1uXv3sBrFgSQBAJIAgEkgQCSQABJIIAkEEASCCAJBJAEAkgCASSBAJJAAEkggCQQQJq1fA8CeM2CAJJAAEkggCQQQBIIIAkEkAQCSP8DnHOcJKFXd10AAAAASUVORK5CYII=" id="image22dc7a5bb6" transform="scale(1 -1)translate(0 -185.04)" x="51.12" y="-25.2" width="190.08" height="185.04"/> +" clip-path="url(#pb7a9083dd5)" style="fill: #808080; opacity: 0.3"/> - - + @@ -1019,7 +1019,7 @@ z - + @@ -1050,7 +1050,7 @@ z - + @@ -1384,12 +1384,12 @@ z - - + @@ -1403,7 +1403,7 @@ L -3.5 0 - + @@ -1418,7 +1418,7 @@ L -3.5 0 - + @@ -1433,7 +1433,7 @@ L -3.5 0 - + @@ -1474,7 +1474,7 @@ z - + @@ -1489,7 +1489,7 @@ z - + @@ -1538,7 +1538,7 @@ z - + @@ -1553,7 +1553,7 @@ z - + @@ -1589,7 +1589,7 @@ z - + @@ -2768,12 +2768,12 @@ L 65.165215 203.537456 L 64.793762 203.898708 L 65.165215 204.259961 z -" clip-path="url(#p78c41c01d1)" style="fill: none; stroke: #000000; stroke-width: 1.5"/> +" clip-path="url(#pb7a9083dd5)" style="fill: none; stroke: #000000; stroke-width: 1.5"/> +" clip-path="url(#pb7a9083dd5)" style="fill: none; stroke: #666666; stroke-width: 1.5; stroke-linecap: square"/> +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" id="imageb7157cf280" transform="scale(1 -1)translate(0 -185.04)" x="254.88" y="-25.2" width="190.08" height="185.04"/> - + @@ -2845,7 +2845,7 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AAA2JUlEQVR4nO19bZqruNJkSALX6Xtn1jY7 - + @@ -2860,7 +2860,7 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AAA2JUlEQVR4nO19bZqruNJkSALX6Xtn1jY7 - + @@ -2898,63 +2898,63 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AAA2JUlEQVR4nO19bZqruNJkSALX6Xtn1jY7 - + - + - + - + - + - + - + - + - + @@ -2988,7 +2988,7 @@ L 375.304697 49.335254 L 373.945517 27.197004 L 373.82921 25.44 L 373.82921 25.44 -" clip-path="url(#p2795edf476)" style="fill: none; stroke: #666666; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#pedf2b4b265)" style="fill: none; stroke: #666666; stroke-width: 1.5; stroke-linecap: square"/> +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" id="imageaef8e46f36" transform="scale(1 -1)translate(0 -185.04)" x="459.36" y="-25.2" width="190.08" height="185.04"/> - + @@ -3121,7 +3121,7 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AABU00lEQVR4nO293ZbjqtIsGkiu6vWd93+E - + @@ -3136,7 +3136,7 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AABU00lEQVR4nO293ZbjqtIsGkiu6vWd93+E - + @@ -3174,63 +3174,63 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AABU00lEQVR4nO293ZbjqtIsGkiu6vWd93+E - + - + - + - + - + - + - + - + - + @@ -3266,7 +3266,7 @@ L 641.886229 85.174198 L 649.414149 75.436552 L 652.6404 71.154736 L 652.6404 71.154736 -" clip-path="url(#p3006c02210)" style="fill: none; stroke: #666666; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p911063525b)" style="fill: none; stroke: #666666; stroke-width: 1.5; stroke-linecap: square"/> +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" id="imagea8ca1f0464" transform="scale(1 -1)translate(0 -185.04)" x="663.12" y="-25.2" width="190.08" height="185.04"/> - + @@ -3362,7 +3362,7 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AABdvUlEQVR4nO2965LkuI406JQUWXXO7Pub - + @@ -3377,7 +3377,7 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AABdvUlEQVR4nO2965LkuI406JQUWXXO7Pub - + @@ -3415,63 +3415,63 @@ iVBORw0KGgoAAAANSUhEUgAAAQgAAAEBCAYAAACE+Ts3AABdvUlEQVR4nO2965LkuI406JQUWXXO7Pub - + - + - + - + - + - + - + - + - + @@ -3506,7 +3506,7 @@ L 792.227876 19.619607 L 798.321906 3.412267 L 799.939857 -1 L 799.939857 -1 -" clip-path="url(#p85168a8ac2)" style="fill: none; stroke: #666666; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#pdf5bc39aa1)" style="fill: none; stroke: #666666; stroke-width: 1.5; stroke-linecap: square"/> + - + - + - + diff --git a/examples/readme/figures/readme_ex_1b.svg b/examples/readme/figures/readme_ex_1b.svg index e237732..66ab34c 100644 --- a/examples/readme/figures/readme_ex_1b.svg +++ b/examples/readme/figures/readme_ex_1b.svg @@ -6,7 +6,7 @@ - 2025-07-04T14:21:41.886166 + 2025-07-06T12:43:55.781981 image/svg+xml @@ -38,17 +38,17 @@ z " style="fill: #ffffff"/> +iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAcQUlEQVR4nO1dW8xm1Vl+1t4ftYlGo9GYWquA2iY1QRMueuEpGikziTeNbeqpoA2gSGidEzMchpYWCj1BG4pYYlsNFaNUqyX1H6DDqQxnKAc5lsNQLNbohemNyfzz7eXFXod3vetda6/9H7/DepIve++19/6G4X/+93new96jflu9W0M1AADVKEA1botGAUqZc02/b7aqbf15u26vaZv+/pYeK+jW33/o8Y/0X1wxV1Baa5zWvEc7ogAiaThh0CgoSiqlgLYNCOKOzZpuGqAB0IT7tz78oUqeOYHSWruD09r36ijKAGWksRGGnENDolDTX6ebBmj7Nbtvt7fdf7ASZ8YREAYA3nnC70USFREG6AnQNmGUoRGFSlOjArnSSvWkacz+pOnlSinoRuH2I5dU4swoIsIAnjRrjjIBYVTaz5jvsd5G22jTKLOvcPjOCyt5ZggiYSze+YY/0GKUAWTStIRMJdJE/Uzr1zhpdKNwx+EDlTgzgCxhAOD0N/6hXleUKZWmyNd4wlip0q3Cnbftr8TZRgwSBiCkGYoy1MNQUkkeh6XaQcSx0UbBk4ZFnLtWLqjE2QYUEcbi9B88o794o6IMzZoaH3Fy0tTvGyK1Cvd8bV8lzhZiFGEAQxopY0oV83iUGSjo6Yg8KsigHGkscSb92je/urcSZwswmjCAQJrSKDOiNmPJk5Kmzh5b4jQKXQsc+UolzmZiTYQBgNN/6EwdEAaI6zIlUUYp6Enr/AtNuZ0BViqWpondh4829LgF7r9pTyXPBmPNhLHY8cN/oh0hWlPwk8xvLsrQjMkShRhgmiVJBrgnDyGM2XaTfv/BG3dX4mwQmvV+waHvf8n/MDrtt9p8us7vW+jOX0vPmX1Fjzu7DqgOUBqAhlk356a6P9dpv2av7zTeccbV6/utqHBYd4Sx2PEj79cwpjcpS1LGtFFRhkuTy6a8v9EN8PCXarRZDzaMMACw40fP0oOdbCtL1Mvw6i9tGRDyZNNsZoCdEZ6AkAg9cVqFR2/YVYmzBmwoYQBgx4+drUdHGet/lNrYKGO3E+5rgK5VQAM8dn0lzhhsOGEAYMePn6OVbSfQ/hI3vzby8EJeKmNaY5ShBthFGbNvZevxaytxSrBu0yvh0P/coLTu+oOc+QVCgwz0hrej9yEwwoqZZOU+xhAz4ysZ5n5fuzXVAb/0gWuqMS7ApkQYi50/8Wc6K0s0xR4ZZfREqP4ORBndAp1LwWGKfwgijW6AJ6+p0SaFTSUMIJBGMr92jRT3gnkZ6mvc1jQpFcq9DCNMcB0hTdcAaICnPlWJw7HphAGAnT95rhajjDT7a9b76i7S1d/E+EORl2njKIMGLvV25DH7T19ViWOxKR6GY+W/rpf/h1v/0jFvI+0bS+Q8TOBLRngZcx+cn9He2wgfaOAXL6z+xmJLCAMAK9/7SxWYXwmS+bXrdNvF10fV3wwBQIiltK8QOyKRrV17+yWVNMAWSRLFzjedp5M1GdKQHDS/VI7cPoa9TGvTaV/9Da+LTbCXsv7z3IeXV6K2nDAAsPPN52uRMGzsQTS/pJDnajLWt1gfo9JepnOEYSQhxbzAyyizncREev7g8hFnyySJYuW716qkZ+HHRH4UkyYVSBi8nABJL2M9jJcn/wnrNGbLv9vuA3jr5csnU9sSYSx2/vQHdJAt5WSJpdjirAxPsVUcZYIqrxBhxIxJkQjD5cpUjl/cvxzRZlsJAwA73/JBHRAmJ0u0eNe2vlVAvIuYYitCDudxSLtgoC6jLYHoGku9+4/GS3sWuxu+LZJEsfLaZ1WUVgM+3QZ8qwAIWwQdObYyY84FKTbsOrw8IZdFxRkTlbJon9x38jWLPXuz7YQJQAer3FqiJhMMXZHzwTX+vOI/Rh2e9z5GrssE/oXuk/RbdQqqA07+zNX6pGs/vZDEmQnCrHznM2EYZ01KJZEGLNpw8+uuCc1vWH9JR5jIEKM8ytg/58TrFo80M0EYAFg5eo0aJUtREc/IiLnPypL7HvdDtRGFRhYfpRSJMpQYEYlYxsSjDDrVk+b6Ty0Uabbd9HLsPGm3LsqWUnMyzugmzC992qChBpcV8ui8TNNnSbYp2bUwxpvsk2PdalO70X3W1Wqg1Th69vw/dDczEcZi5ZWr+/+pQ7LUheuRLJH7uPmNooy7ln5CCYOwDcwx/LGNMlyqfvYLn5it3841YOYijMXOn9+nw0qwCiu9dHzT1mZSNRlS+RUfSWnB1liKbVJwNGGU0S3bVyzKTMzWRBk90VA22pwxny8VmLkIY7Hy4if9/1Chm82rvvxRlX4f3uNATqOT5tfez6MMyBpLuQHherrf9YkgOuDEG6+azd/UAcwsYQBg5dufCH4LFY+Gkiy5a8P7QknCKPPr7yn7UNPbl4ntORV8TvrylXNHmpkmDIDIy9CI4c7T9eC3nUYihFkX4ijjvzP+BNcK9/L02tVuXF9KuUxKm8iktcLJN31M/9w/XDE3xJl5wrgoQwt6nERcloI1hCTjskMgSxaJQPb7SiONI5AQZbp+q83xL9x8+VyQZmZNL8fOtx3QuRmZcF6G7TfKpL79Wx+C3tKQ+SXNSpt2c/ObTLGt6bUmmKTYujUGuNFo2g7NpEPTarRNh2ffNbuvoZ35CGOx8vxVCjC/8bQ1wCXKICVLPLKkpMVBjBih+U2l2HTdF/TQRxf7MdKkuwa66yPOKbdcOrO/xXNDGABYefbKuIVAt8THhOfpOZ2VJYtIluz3ZKSJk8d5l+A+5a7VRqJ6oliLpTDtGvzy1w/OJGnmijAAQp8C+sOUtzxbckgMiUsNSTHC6Nj8ciLylkKuX6W7PsrAEqdTOHXl4pkjzdx4GIqdb79IB685k55bovO+A88uQTE/0/p9P0iVmPlVwhrfdz4G0I1cyFNNB9X2fmYy6XDCZIq27XBCM8UbJlMcOe3jM+Fr5i/CAFh55mO+fWAxJEv0nDk/JEuAEBVA9pkUSW0EnxnBp9hEtmwhT2viZwBMjUx16CXq1w/vm4nf7LkkTIBcei2NPGh+D4pkSZHv4jUZ92cAaQK5OeJ0IU93fqu1Qtc1mHaN8zW/eceebSfNXEqSxY5TLtE8pU7KkulWdxMz0jlClsRxzqCzLciS6XCH62UpdntC10tT22HSTjFpO7yhneKEdoofaI/jje1x3PJr126LRM11hDn05OWk3yRcQH8XhPZBqSy57xJkSepkDw5j5cyvthmTQmcijTYRptMKx7sGx3WDdx05b1t+0+eaMABw6ImPetKkajM0LbbbkbJE02vepJRqMpw8IZGILHXKpN6q/yYNki15omgNTLsG2pKma/Ce+87dctLMPWEAlPsYIOpeRzPEiIt4YWoO2QDTfXocrIc1GVqjcebXmt1OOc52nUKHPtIc1z2BOrP/+w+cs6WkWQjCHHrioyrsVIfyQ6u+dp2TQCJHAC4fZC2QJUCUnOi4S5hfkGxJkCRNyNJLVIv3PXjWlpFmIQgDoP83JKkUJdLraHKP/69OyBKv+hbJEkLyRP4GQFz5hWtIWnI4STL7U+39TIeePOc8cuaWkGZhCAMAt37rMvkRXCkTpEu06luAUlmK03kEspQ3v/aTNr8dzFY3WNUN/vyxP9J7n3jvphJnoQjjkPjBcx8j+ZNkM1L6ABE5qCzxa4NeEyNPXI+xkSZvfr089furXYMDT75700izcIS59dHLfFebbplESel1ACZLKQOckyXJ08iVYyZLIEU8LZvfDszL6AbHdYvObA8+9a5NIc3CEQYAbn3kw2boyiy4H0xIIrrmrpN8DQN9OnKzZKk3vQjkiEYau6WfqVZY1Y3zOlc8/TsbTpqFJAwA/29hp7rZZHZFSq+5LCUlCYjIoiKCsD8r2JdkCYH5tftWktwYBDW/usHxrvXSpFus6hafeGan/txzv7VhxFlYwmTBZIXuF1d+zfcEkqQR9ZbWIktheh3WZLQhikuvSabUoY8wq7pFhwZTs7+qJ/j887+xIaRZaMLc9tCloZ/pOEGYHFFQedIhmWx6nSzoMTkaK0them3lyctSL0nhsa3JUPO7qltMdYMp+ojzxRd+dd2kWWjCAMBtD1xqpClcj54msODHbt2TJ1xHvJ7wJeWyBEIeuSZjTa9PrQlxdCxNU/QR6KYX37Eu0iw8YQDgtvsPyn4m0ybg6XUAKZLA7yt6HTBaluKqr5cjvw2NL5WmqVYuqvTn+2hzTE+wqlvc/NKpaybNUhAmAG9EQvYxHGITUTgfSA8SsmTPa+X2OZkkWYIGus77F1qToUU8b4AVpjCexkScqTl/y8un6DuOvm00cZaGMLffd4k4P5L0Mbx7nbg3ihLwxxKBonNuP5SilCxphNN4tCZDm5KdiTDHAx8zMZGmdVI1FktDGAC4/cglxgT3x1kfw0HJI/gSfw1Lq4GAIFFWFV0bTuHJssQNcNjBtjUZX5tpsdpNMIUyXqbB1Hzue/XkUVFmqQgDIOpcl/qYLITrFDvnvp+s57KlnCxRstiajPUw1rPYjMlKU3+ucZGljzb95+HvnKifee3NRcRZOsIAELOgIR8jveFhKL2OIogUmYL9tcsSzaIcQdCbX1qT6XS/PzXR55i2Xkfh5f940yBplo4wt997MZnQ6zdFPmYIKTJAXhNNdHD9OFmi6fVxV4tpA1miNRkbXToo42karGqF176bJ83SEQYAvnHPxSryMUDexzgyJHwMj0gCWSKJ45GF3TdWlrz0KJcVcVmiNRnrY7ynUZhq4L9fT8vTUhIGAL5x90VKIkjKx5RAIkTgX1KRJ4pMsjSNkSXaKrCytOoqwY2ryazqCYkwDVahsKo1/vf1t4h/66UlTAAyH2MRmVhd4GMCOfPGN0kWhISy6bUKiLM2WfIf3yqYBl5GOS/TQTm56jQwhcYUGv/3nydFpFlqwhy+6yI16GOk4xyyplau9CaNMcbIksrKEm0V+PRamQgzwSr67OkYGqxqYFV36NCh+95bg7/9UhNGRK6vVOBjxNQZ4blI4kxkEWUp+HNjWaIepkSWKIGO6Yn3MC7C2MyqJ82qPh78py49YQ7feaEKCngWzMcUZUrk+myBTiKZFu7lBGKyBFB5whplyWRRMH4GLVa1wjHdy1LHwuvSEwYADt9xoYoKeMI+UOhj6P1AHCnImkgqeq3zMGaZRJ7Aw2BtsmTT63SEmQZ//0oYhhRZxmRLAOJUm0WR4Pu5DFmC6PgRFPd1xMdQDzNWljqorCzVCJPAHYcPqODlRMEPmzGlwMdwCeIkiQt17IP0Oe5jvIcBiy7DsmQzpWO6FWVplT13XAlDcMftB8KOdqfZD5URaQg6EbEGpIlnUWXpNdYlS65lwCLMVGt8//WfcX+LShgOLheQpWizfIz/7wizpJL0WkyxKXlIb4kOVkmyZFsFXJYqYRjuvG2/GvIx0QReAlIxT8yG6DlauAMCw5uXpbBNIEUa2luyskSbkVSWbKuAy1IljIA7b90fzQGLhndkPWawTYD4O0rS64AsfKhqoLdUKksWlTApDHawS74Dso9JkCXpcaiPMWuxLAE8QxqSpVXylEEqW1rVCqtVkoZx1yETZboEcQyK+kpgPobus0gSRqFEek1B/Ev4sJssS3QSz8qOq8MIRTzbwbaohMng7n+7IH67FcJGZA7RnAsg+pgA3Nfw+7iPcf95nixAKr1uQDMlu0ZHN1NFPItKmAIMZUwAZC8jnC/zMUomVS69BvEzyfSaHluChM8wpYp4FpUwA7j76xe4wXG5aajTfiZBnsgQm62YNfF9yOm1HG0E4sDKke0j+QhDZcl1sk0Rz6ISZi3IPnrCRiXoOiCTIEGUlI+h17kH9oHIxwxVfblU0em7vpNdI8yacPct+/yTk0K0iGoq0voIHxNFGn4fW6MRJ0qvI1lqIpLwoSorV1SWLCphSiH9UAsLeMF3cD+0Xh9jl7XvK9FIAyCOMDS9ZvUYOxTOJ/Gef+2nNFAJU4x7vrYv42V0+Nuf+hiIowypbUKqYh/jiULJMpRed6Tiawt39EE3a4yPGapUwoyAbHrH3R90NwUfw6VI8jHBvdT0ElkCEPkYAIEcdeRtVfQRFNoyOGaalPb+SpgRuOdf91ENiM7zAl5EAncvYmlCfJz1Mf5qkbR5H8OiDRqXatNHUDq7b8gEVMKMBzO+4j/7J0DqYufqMi6yDPoYv5byMbn0mr7VYWpJQ5qRNHMCKmFG45v/4qPMUBFPahHY8+I4JhLbAh8jPX5C02tAML/CFB6t+vJmJFAJsybc+897Vdb4cpDokmxEAknSlPgYXsij6TUQvrGK12L4uIOPOGF6DVTCrB8jjS8gNyLFEU6M8DH2FJElukYjC0DNcBNIFU2vedUXqIRZM+79p72KG1+xWCetWSTMb4osOR9DK77u64d8DCXNQHpdI8wGoqRzHUAiSsq7OCmK76U+xtdi0j7GyRP1MNr3lXLp9VRX07tuHPmK4GUsNJuNEaRLLOAliDPkY6Q5X94mAOK6jFvLpNd27heohFk3jty8J6zNDHkaK09sTTK/43wMOcXSawt5Ei+ckaEG13Wva1q9wViD8ZXuoxFntI9x0SX0MQBEHwOEmVN/HDcmaXoNVMJsCO77xz3BTyka3k6YYQcp3Qa5psTHJJ9XGhh3YPMxAMLhKUIcoBJmQ1FS8Q2Q8zB0LdgKPoZdP+RjADDiNHkfoz2ZKmE2CPf//Z5IC6Kh8Iz5LS7gcQRZkopPDfqYxqzHPoan10AlzMaj8DGUaALP7IvdaiTWAy+DwMdE5EnVY1jRTmoT2PQaqITZUNx/UxxlilCSJREJCsc02R85wsdYdIF/idsENr0GKmE2HA/83R43aMVlKGt8EUaNwWFwsvU1mrBFUORjhN4SbxMAqB5mM7EW4ytmSew6d44aX3KOGt4c0kPhXnqmxNtYH3PzS6fqSphNwANf3h2MQJQYX4Ct8QiCTAEPNrVG5GOo8c35GABFPqYSZrNQkGKnjG8JWeICXvg9Y/pKgPcxqXEH62MqYTYJD964e5wBTqXWdD9TwPPnY0mS5mOAkCxhih37GNsmqITZbKzF+Ar7gwU8LRteSfrkNzyE9RgAwbgD0LcOKmE2E6XmlxnfocdQUlLHX5xY5GOkVgHxMQCCKFMJs4l46G9DWcqNOjgkZGmogMfTcP6s9dCcL1BWj6mE2WQEj51w6PUb3+B69h30BdASAj9TUI+pEWYL8NDfjDC/azW+IOdoAY/4mOxz1wM+xq4BtXC3dcgZX+lag3Ljq4Lrco3I6G2b/MnITD2mEmYL8PAXB6IM9yFYm/H1szGICngpSE8S5HxMJcwW4ZEvlElTkigo7VyH95Q84AaknsEOK8A1wmwxUi2CaMYXCH/wJcaXrJkzgwW8ZItAmPO165UwW4hH/rpMmqI1vp+r+BI/M1TAA4S5XpJC9+dDH1MJM4tgxCkzviBEASNauoBHQVNpANGcb40w24BHb9ilki0CFgXWanzp9dLkXdSIZHUXAP6FQ9rP+QI1rZ45iKl2gfEVH9I3+9T4ckjRhs/G0DnfSphtwGOf36W48eWQBsNHGV9awEO6gEfBB6r6Nf+ISZWkGYLYIrDHBcY3Ggq3u5mONS/c0UYk4NNpwEeZSphtwmN/tSuZMUmytNHG1y0LaTUgD1QB1cNsK0paBLmH/e130ONgzaznOtccYaSJB6oqYbYRj13PokwmWyop4pUYX47cjG9/PmxEVsLMKqToIkWRRGTqt8PGN/msUqKAVwmzzfjWdT5jGmwRgMvN2o1vKs0OJvBYAa/2kmYU4kP9mkWVbGo9bHwtkrMxQgEPqKZ3JvD45xIZU8oM0/OQM6hS40tnYzikAl4lzIwg9RSBPTc08hCsjzS+7vYo0nh62AJeJcyM4PFrSZRJkSdHFOdneCc7b3z5w21UjoBwAg+okjTzKGoRcBQYX17A4wiGwLX3M5UwM4QnPrtLZed8Uy0Cck4xsqSMrzvUeePLJ/AqYWYUqQpwesJuuCkpGV+7zwt4FNT4VsLMGJ74jJAxFWRK0TZzP+8lSeAV336tmt65QVGmRI2vRCBdRhaK8O0NVZJmEm7MYSBaDL64SMqUrDSZc8nXsgoVX6BK0kziyavDFLukp5S8hmdKZN9dkjG+FrbiWwkzL5B6SpEUkXNknWZK/G3h0ogDRfjMdfUwM4unPr1L/ocvUl4mIgs7ptfCNx9LXmdGK76VMDOOXMvAIZUpZVoEY1EHqOYQuUwplicVX5NoEYwxvpUwM4ynPrVLlWRKRcaXFOlS0arE+FbCzAMSmdLg+3yBwOCKszEkuqRAjW8lzIzj3z8pdLEphOgijW9GrwHhX1NofCth5hEDmRJHikDu39EoNMG1DjMnePrj5EnJFKI5mMRWeA0IUF7xrYSZM6wrU2J+ho5plqISZk7w9FXCM0wGyZdB0+sSLQIL/qKh1GxMJcwcYfBJAoT7RS0CwQTnHm6rhJkjPH1lwssUZEq5wSuAtgrS8lTT6nmGHk6lUzMxdutIQk4PGd9KmDnDM1ek3/ogtwPoebuTrsMMoRJmDpGbjxmfKfE5mbzxrYSZQzxzufB0wZhMSTC6qdd/cFTCzDsGajJipmSXrAwJa6lMqRJmTvHsR7yXSdVhxmRKuRaBjTxf/ZXrVCXMPCMlQyMypfjBtrhFAKDOwywCnrssHONUhgAARmdKqSypFu6WAYWZkp/p9bfyFgFHJcyigGVNJZkSP1/y4udKmDnHcx9iY5wjM6X+OKzD5N6yWQmzKFhrpqTDQw7+FodKmAXA85f2KfZQgzEdidKZEkclzIKhaHSTZEqpV4DQtZolLSDE17HS/UxPKZcpcVTCLAieP5gxv3yNkofdkxumAiphFg+D5ndcpsRRCbNAeOFi018aiDS58YjoFGsRVMIsKAan8cyxJh5HypQ4KmEWDMVNSDbSQPfpMR2mAiphFg4vXGSHq4QWgJQpBcTx+7UOs4xIjGVKa7lnr7uaJS02vn1AHq6SkXoHnpwpVcIsKsY2IQsyJaASZmHx4n5huAoQm5BjMqVKmEVHtuLr90t6SkAlzELjxX27w0Le4NjmcE+pEmZZkGxCkksStRmgepjlQUkTkqylnlOyqIRZcLy0d3fC/NIIEhf5Us8pVcIsC1JNSPIEgbs0M31XCbMEeGn37nCEM9OtHnpTVSXMsiGTMWlS0JPe6ABUwiwNXv6L3YQB9C0OcPtAnCnVwt0yI/U6DynqsAj06M4rFFAJs7yISJJvQlpUwiwRXv4gN79CxBl4sK0SpiJOrUmxrhbulhyvnL+H9ZfCol2qHmNRCbOMSGVGmSakRSXMEuKV8/eoZMaEfBOyEmbJEVV/B55pqoRZZhSk1rwJWQmzpDh63h42UpcYdWCohFl2pJ6xTmRLlTBLjKPn7jW6U55aV8IsO/gjJ4nU2qISpkJE6knISpiKZGpdTW9FhKN/ujdsFSTmey0qYSqyqKa3IsLRs/cF2ZKUWltUwlT0KEytK2EqAACvnrVPlaTWlTAVSViyvPC7B12IqYSpCDGQWlfCVDi8+v4LDDvSszKVMBVp1NZAxRCO/vF+BaRT60qYihi1NVCxUaiEqYhw9Mz9KnqiwKASpiKNanorSnH0jANibl0JU5FHlaSKUtQsqWIUjr4vlqVKmIoseJT5f/6ojOeL9tOBAAAAAElFTkSuQmCC" id="imaged0d8bd3083" transform="scale(1 -1)translate(0 -160.56)" x="64.8" y="-43.2" width="100.8" height="160.56"/> - - + @@ -110,7 +110,7 @@ z - + @@ -141,7 +141,7 @@ z - + @@ -475,12 +475,12 @@ z - - + @@ -494,7 +494,7 @@ L -3.5 0 - + @@ -509,7 +509,7 @@ L -3.5 0 - + @@ -524,7 +524,7 @@ L -3.5 0 - + @@ -565,7 +565,7 @@ z - + @@ -580,7 +580,7 @@ z - + @@ -629,7 +629,7 @@ z - + @@ -644,7 +644,7 @@ z - + @@ -680,7 +680,7 @@ z - + @@ -921,20 +921,20 @@ z " style="fill: #ffffff"/> - + +iVBORw0KGgoAAAANSUhEUgAAAA0AAAEBCAYAAACjXi+zAAABSUlEQVR4nO2awQ0CMRADszlKowT6LwX40MDOSYO1Cn/L3lkndyDqWa/Pan4eq3ZXsx61qy8Kd1rMCYhqk3jEaYlOBET2ntKRizN58QY2Ihv5h8Vra+KRTwQRPhOL19fQeCIIywnR82rkNcJDDp2IiDw1vHgTkY+cid17xGkiveN0yyn8AWCJZi7XcgqP1/6dDjulgziNuCE6e/qJtHjgzejQ+4fTqv4de/Z0UyQhZ4fQRA5AmHtCImumcOTg+0l+I1Y/nngIS1zuvBqhmVC88D0BI0zPQr7FePNm2uDei58p2wki1+KFiwi99JnSQbwtp+yZLnEmC/kVHo8h9+h5IIgTWS5zQudJ657pFN299BqxmbyTazXCu/fQnhg9rUbsuIv0rNcc1j0xnvfG0tbgGhEnFg/8UQTGQ05ABGciTmwm8O98GA859UVfJwiNBIV9cj4AAAAASUVORK5CYII=" id="imageb4d723e706" transform="scale(1 -1)translate(0 -185.04)" x="233.28" y="-25.2" width="9.36" height="185.04"/> - - + @@ -959,7 +959,7 @@ z - + @@ -975,7 +975,7 @@ z - + @@ -1003,7 +1003,7 @@ z - + @@ -1019,7 +1019,7 @@ z - + @@ -1035,7 +1035,7 @@ z - + @@ -1051,7 +1051,7 @@ z - + @@ -1067,7 +1067,7 @@ z - + @@ -1127,12 +1127,12 @@ z " style="fill: #ffffff"/> +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" id="image7906d4805b" transform="scale(1 -1)translate(0 -160.56)" x="350.64" y="-43.2" width="100.8" height="160.56"/> - + @@ -1146,7 +1146,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1161,7 +1161,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1199,7 +1199,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1213,7 +1213,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1228,7 +1228,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1243,7 +1243,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1258,7 +1258,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1273,7 +1273,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1288,7 +1288,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1303,7 +1303,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1318,7 +1318,7 @@ iVBORw0KGgoAAAANSUhEUgAAAIwAAADfCAYAAAAk2jtnAAAuk0lEQVR4nO2d25IkyXGeP/fIrO6dPWFB - + @@ -1429,15 +1429,15 @@ z " style="fill: #ffffff"/> - + +iVBORw0KGgoAAAANSUhEUgAAAA0AAAEBCAYAAACjXi+zAAABSUlEQVR4nO2awQ0CMRADszlKowT6LwX40MDOSYO1Cn/L3lkndyDqWa/Pan4eq3ZXsx61qy8Kd1rMCYhqk3jEaYlOBET2ntKRizN58QY2Ihv5h8Vra+KRTwQRPhOL19fQeCIIywnR82rkNcJDDp2IiDw1vHgTkY+cid17xGkiveN0yyn8AWCJZi7XcgqP1/6dDjulgziNuCE6e/qJtHjgzejQ+4fTqv4de/Z0UyQhZ4fQRA5AmHtCImumcOTg+0l+I1Y/nngIS1zuvBqhmVC88D0BI0zPQr7FePNm2uDei58p2wki1+KFiwi99JnSQbwtp+yZLnEmC/kVHo8h9+h5IIgTWS5zQudJ657pFN299BqxmbyTazXCu/fQnhg9rUbsuIv0rNcc1j0xnvfG0tbgGhEnFg/8UQTGQ05ABGciTmwm8O98GA859UVfJwiNBIV9cj4AAAAASUVORK5CYII=" id="image09e1cf20c8" transform="scale(1 -1)translate(0 -185.04)" x="519.12" y="-25.2" width="9.36" height="185.04"/> - + @@ -1452,7 +1452,7 @@ iVBORw0KGgoAAAANSUhEUgAAAA0AAAEBCAYAAACjXi+zAAABSUlEQVR4nO2awQ0CMRADszlKowT6LwX4 - + @@ -1467,7 +1467,7 @@ iVBORw0KGgoAAAANSUhEUgAAAA0AAAEBCAYAAACjXi+zAAABSUlEQVR4nO2awQ0CMRADszlKowT6LwX4 - + @@ -1514,7 +1514,7 @@ z - + @@ -1570,7 +1570,7 @@ z - + @@ -1585,7 +1585,7 @@ z - + @@ -1600,7 +1600,7 @@ z - + @@ -1646,10 +1646,10 @@ z - + - + From f947edff12aaba498a34bc4c8f4f417d5573fbc3 Mon Sep 17 00:00:00 2001 From: chrisbrahms Date: Tue, 8 Jul 2025 08:55:38 +0200 Subject: [PATCH 10/10] minor fix --- README.md | 24 ++++++++++++------------ examples/readme/README.jl | 5 ++++- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index ef5bf71..ff1d674 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,3 @@ - > [!WARNING] > This package is a work in progress. Function signatures and internals are subject to change without notice. Please use with caution and contribute corrections or improvements if possible. @@ -33,7 +32,7 @@ design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) As an example, we will design the HCF system used in the first demonstration of RDW emission in a hollow capillary fibre [Travers et al., Nature Photonics 13, 547 (2019)]. First we need to load the package and define our fixed parameters and constraints, then we call the function. ````julia -using HiSol; +using HiSol λ_target = 160e-9 # 160 nm RDW gas = :He # helium gas @@ -44,15 +43,6 @@ maxlength = 5 # 5 m maximum setup length figs, params, as, energies, ratios = design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) ```` -```` -Precompiling HiSol... - 38589.0 ms ✓ Luna - 9693.5 ms ✓ HiSol - 2 dependencies successfully precompiled in 51 seconds. 260 already precompiled. -sys:1: UserWarning: No contour levels were found within the data range. - -```` - This will produce the following plots (the `Figure` objects are returned in the `figs` variable above.) ![Criteria ratios for design space example](examples/readme/figures/readme_ex_1a.svg) ![Fission length and soliton order in design space example](examples/readme/figures/readme_ex_1b.svg) @@ -136,7 +126,17 @@ The default safety factors are intentionally very conservative, with the aim of > [!NOTE] > This part of HiSol.jl is currently being re-developed to be more flexible. The API will change in the near future. -Because capillary fibres need to be kept perfectly straight, the maximum HCF length is determined by the available straight length of optical table. In most cases, space is required on both sides of the HCF to allow the incoming/outgoing beam to converge/diverge without being detrimentally affected by nonlinearities (in windows) or damaging the steering and focusing optics. +Because capillary fibres need to be kept perfectly straight, the maximum HCF length is determined by the available straight length of optical table. In most cases, space is required on both sides of the HCF to allow the incoming/outgoing beam to converge/diverge without being detrimentally affected by nonlinearities (in windows) or damaging the steering and focusing optics. Several keywords are available to tailor these length constraints to your requirements: + +- `entrance_window`: whether a window is present at the entrance of the HCF. If `false`, the damage threshold of a mirror is taken into account (see below) instead of a nonlinearity limit in a window. (Default: `true`) +- `exit_window`: same as above, but for the exit side of the HCF. (Default: `true`) +- `thickness`: thickness of the window(s). (Default: `1e-3`, i.e. 1 mm) +- `material`: material of the window(s). (Default: `SiO2`, i.e. fused silica. Other options include `MgF2`.) +- `Bmax`: maximum B-integral in the window. (Default: 0.2, see 10.1364/OE.482749) +- `LIDT`: damage treshold of the last mirror before/first mirror after the HCF **in SI units**, i.e. J/m². (Default: 2000, i.e. 0.2 J/cm²) +- `S_fluence`: safety factor on the mirror fluence. The maximum fluence is the LIDT divided by `S_fluence`. (Default: 5) + +Again, the defaults are conservative limits with the aim of producing working parameter combinations. Note that it is currently not possible to define separate thicknesses/materials/damage thresholds for the entrance and exit sides; this is under development as part of a larger refactor. --- diff --git a/examples/readme/README.jl b/examples/readme/README.jl index 199c098..d3955d3 100644 --- a/examples/readme/README.jl +++ b/examples/readme/README.jl @@ -1,5 +1,8 @@ import PyPlot: plt, pygui #hide pygui(false); #hide +using HiSol; #hide +figs, _ = design_space_a_energy(200e-9, :He, 800e-9, 10e-15, 10); #hide +plt.close("all"); #hide # > [!WARNING] # > This package is a work in progress. Function signatures and internals are subject to change without notice. Please use with caution and contribute corrections or improvements if possible. @@ -37,7 +40,7 @@ design_space_a_energy(λ_target, gas, λ0, τfwhm, maxlength) As an example, we will design the HCF system used in the first demonstration of RDW emission in a hollow capillary fibre [Travers et al., Nature Photonics 13, 547 (2019)]. First we need to load the package and define our fixed parameters and constraints, then we call the function. =# -using HiSol; +using HiSol dir = joinpath(pkgdir(HiSol), "examples/readme/figures/") #hide λ_target = 160e-9 # 160 nm RDW