"""Module containing helpers for small calculation involing nonlinear optics"""# %%fromskultrafast.unit_conversionsimportcfromscipy.optimizeimportminimize_scalarimportnumpyasnp
[docs]deftl_pulse_from_nm(center_wl:float,fhwm:float,shape:str='gauss')->float:""" Calculates the transformlimted pulselength in fs from given center wavelength and fwhm in nanometers. Parameters ---------- center_wl : float fhwm : float shape : str, optional, by default 'gauss' Returns ------- float """ifshape=='gauss':tbw=0.44elifshape=='sech':tbw=0.315returntbw/(c*1e9*fhwm/center_wl**2)*1e15