sech_pulse
boulderopal.signals.sech_pulse(duration, amplitude, width=None, center_time=None)
Create a Signal object representing a hyperbolic secant pulse.
Parameters
- duration (float) – The duration of the signal, T.
- amplitude (float or complex) – The amplitude of the pulse, A.
- width (float or None , optional) – The characteristic time for the hyperbolic secant pulse, tpulse. Defaults to T/12, giving the pulse a full width at half maximum (FWHM) of 0.22T.
- center_time (float or None , optional) – The time at which the pulse peaks, tpeak. Defaults to T/2.
Returns
The hyperbolic secant pulse.
Return type
SEE ALSO
boulderopal.signals.cosine_pulse
: Create a Signal object representing a cosine pulse.
boulderopal.signals.gaussian_pulse
: Create a Signal object representing a Gaussian pulse.
Graph.signals.sech_pulse_pwc
: Graph operation to create a Pwc representing a hyperbolic secant pulse.
Graph.signals.sech_pulse_stf
: Graph operation to create a Stf representing a hyperbolic secant pulse.
boulderopal.signals.square_pulse
: Create a Signal object representing a square pulse.
Notes
The hyperbolic secant pulse is defined as
Sech(t)=cosh((t−tpeak)/tpulse)A.The FWHM of the pulse is about 2.634tpulse.
Examples
Define a displaced sech pulse.
>>> pulse = bo.signals.sech_pulse(duration=1, amplitude=1, center_time=0.4)
>>> pulse.export_with_time_step(time_step=0.1)
array([0.02998441, 0.09932793, 0.32180487, 0.84355069, 0.84355069,
0.32180487, 0.09932793, 0.02998441, 0.00903298, 0.00272073])