working gas simulations
This commit is contained in:
@@ -12,7 +12,7 @@ from .plotting import (
|
||||
transform_mean_values,
|
||||
get_extent,
|
||||
)
|
||||
from .spectra import Pulse, Spectrum, SimulationSeries
|
||||
from .spectra import Spectrum, SimulationSeries
|
||||
from ._utils import Paths, open_config, parameter
|
||||
from ._utils.parameter import Configuration, Parameters
|
||||
from ._utils.utils import PlotRange
|
||||
|
||||
@@ -1094,6 +1094,7 @@ default_rules: list[Rule] = [
|
||||
priorities=[2, 2, 2],
|
||||
),
|
||||
Rule("hr_w", fiber.delayed_raman_w),
|
||||
Rule("n_gas_2", materials.n_gas_2),
|
||||
Rule("n_eff", fiber.n_eff_hasan, conditions=dict(model="hasan")),
|
||||
Rule("n_eff", fiber.n_eff_marcatili, conditions=dict(model="marcatili")),
|
||||
Rule("n_eff", fiber.n_eff_marcatili_adjusted, conditions=dict(model="marcatili_adjusted")),
|
||||
@@ -1109,6 +1110,7 @@ default_rules: list[Rule] = [
|
||||
Rule("A_eff", fiber.A_eff_from_diam),
|
||||
Rule("A_eff", fiber.A_eff_hasan, conditions=dict(model="hasan")),
|
||||
Rule("A_eff", fiber.A_eff_from_gamma, priorities=-1),
|
||||
Rule("A_eff", fiber.A_eff_marcatili, priorities=-2),
|
||||
Rule("A_eff_arr", fiber.A_eff_from_V, ["core_radius", "V_eff_arr"]),
|
||||
Rule("A_eff_arr", fiber.load_custom_A_eff),
|
||||
Rule("A_eff_arr", fiber.constant_A_eff_arr, priorities=-1),
|
||||
|
||||
@@ -192,6 +192,22 @@ def n_eff_marcatili_adjusted(wl_for_disp, n_gas_2, core_radius, he_mode=(1, 1),
|
||||
return np.sqrt(n_gas_2 - (wl_for_disp * u / (pipi * corrected_radius)) ** 2)
|
||||
|
||||
|
||||
def A_eff_marcatili(core_radius: float) -> float:
|
||||
"""Effective mode-field area for fundamental mode hollow capillaries
|
||||
|
||||
Parameters
|
||||
----------
|
||||
core_radius : float
|
||||
radius of the core
|
||||
|
||||
Returns
|
||||
-------
|
||||
float
|
||||
effective mode field area
|
||||
"""
|
||||
return 1.5 * core_radius ** 2
|
||||
|
||||
|
||||
@np_cache
|
||||
def n_eff_hasan(
|
||||
wl_for_disp: np.ndarray,
|
||||
|
||||
@@ -10,9 +10,9 @@ from .units import NA, c, kB, me, e, hbar
|
||||
|
||||
|
||||
def n_gas_2(
|
||||
wl_for_disp: np.ndarray, gas: str, pressure: float, temperature: float, ideal_gas: bool
|
||||
wl_for_disp: np.ndarray, gas_name: str, pressure: float, temperature: float, ideal_gas: bool
|
||||
):
|
||||
material_dico = utils.load_material_dico(gas)
|
||||
material_dico = _utils.load_material_dico(gas_name)
|
||||
|
||||
if ideal_gas:
|
||||
n_gas_2 = sellmeier(wl_for_disp, material_dico, pressure, temperature) + 1
|
||||
|
||||
@@ -11,7 +11,7 @@ from .. import env, math
|
||||
from ..const import PARAM_FN, PARAM_SEPARATOR
|
||||
from ..physics import fiber, units
|
||||
from ..plotting import plot_setup
|
||||
from ..spectra import Pulse, SimulationSeries
|
||||
from ..spectra import SimulationSeries
|
||||
from .._utils import auto_crop, open_config, save_toml, translate_parameters
|
||||
from .._utils.parameter import (
|
||||
Configuration,
|
||||
|
||||
Reference in New Issue
Block a user