GaussianPulse#

class wake_t.physics_models.laser.laser_pulse.GaussianPulse(xi_c, a_0, w_0, tau, z_foc=0.0, l_0=8e-07, cep_phase=0.0, polarization='linear')[source]#

Class defining a Gaussian laser pulse.

Parameters:
xi_cfloat

Initial central position of the pulse along xi in units of m.

a_0float

The peak normalized vector potential at the focal plane.

w_0float

Spot size of the laser pulse, in units of m, at the focal plane.

taufloat

Longitudinal pulse length (FWHM in intensity) in units of s.

z_focfloat, optional

Focal position of the pulse.

l_0float, optional

Laser wavelength in units of m. By default, a Ti:Sa laser with l_0=0.8e-6 is assumed.

cep_phasefloat, optional

The Carrier Envelope Phase (CEP) in radian. This is the phase of the laser oscillation at the position where the envelope is maximum.

polarizationstr, optional

Polarization of the laser pulse. Accepted values are ‘linear’ (default) or ‘circular’.

Methods

envelope_function(xi, r, z_pos)

Return the complex envelope of the laser pulse.

evolve(chi, n_p)

Evolve laser envelope to next time step.

get_envelope()

Get the current laser envelope array.

get_group_velocity(n_p)

Get group velocity of the laser pulse for a given plasma density.

initialize_envelope()

Initialize laser envelope arrays.

set_envelope_solver_params(xi_min, xi_max, ...)

Set the parameters for the laser envelope solver.