Laser profiles

Warning

This section is currently in development.

pydantic model picmistandard.PICMI_GaussianLaser[source]

Specifies a Gaussian laser distribution.

More precisely, the electric field near the focal plane is given by:

\[E(\boldsymbol{x},t) = a_0\times E_0\, \exp\left( -\frac{r^2}{w_0^2} - \frac{(z-z_0-ct)^2}{c^2\tau^2} \right) \cos[ k_0( z - z_0 - ct ) - \phi_{cep} ]\]

where \(k_0 = 2\pi/\lambda_0\) is the wavevector and where \(E_0 = m_e c^2 k_0 / q_e\) is the field amplitude for \(a_0=1\).

Note

The additional terms that arise far from the focal plane (Gouy phase, wavefront curvature, …) are not included in the above formula for simplicity, but are of course taken into account by the code, when initializing the laser pulse away from the focal plane.

Parameters

parameter E0: float | None = None

Maximum amplitude of the laser field [V/m]. Specify either a0 or E0 (if both are given, they must be consistent).

parameter a0: float | None = None

Normalized vector potential at focus. Specify either a0 or E0 (if both are given, they must be consistent).

parameter beta: float | None = None

Angular dispersion at focus (in the lab frame) [rad.s]

parameter centroid_position: list[float] [Required]

Vector of length 3 of floats. Position of the laser centroid at time 0 [m]

parameter duration: float [Required]

Duration of the Gaussian pulse [s], defined as \(\tau\) in the above formula

parameter fill_in: bool = True

Flags whether to fill in the empty spaced opened up when the grid moves

parameter focal_position: list[float] [Required]

Vector of length 3 of floats. Position of the laser focus [m]

parameter name: str | None = None

Optional name of the laser

parameter phi0: float | None = None

Carrier envelope phase (CEP) [rad]

parameter phi2: float | None = None

Temporal chirp at focus (in the lab frame) [s^2]

parameter polarization_direction: list[float] [Required]

Unit vector of length 3. Direction of polarization [1]

parameter propagation_direction: list[float] [Required]

Unit vector of length 3. Direction of propagation [1]

parameter waist: float [Required]

Waist of the Gaussian pulse at focus [m], defined as \(w_0\) in the above formula

parameter wavelength: float [Required]

Laser wavelength [m], defined as \(\lambda_0\) in the above formula

parameter zeta: float | None = None

Spatial chirp at focus (in the lab frame) [m.s]

Properties

property k0: float

Laser wavenumber [1/m], \(k_0 = 2\pi/\lambda_0\)

pydantic model picmistandard.PICMI_AnalyticLaser[source]

Specifies a laser with an analytically described distribution

Parameters can be used in the field expression, with their values given as keyword arguments.

Parameters

parameter Emax: float | None = None

Maximum amplitude of the laser field [V/m]. Specify either amax or Emax (if both are given, they must be consistent). This should be built into the expression, but some codes require a specified value for numerical purposes.

parameter amax: float | None = None

Maximum normalized vector potential. Specify either amax or Emax (if both are given, they must be consistent). This should be built into the expression, but some codes require a specified value for numerical purposes.

parameter field_expression: Expression [Required]

Analytic expression describing the electric field of the laser [V/m]. Expression should be in terms of the position, ‘X’, ‘Y’, in the plane orthogonal to the propagation direction, and ‘t’ the time. The expression should describe the full field, including the oscillitory component. Parameters can be used in the expression with the values given as keyword arguments.

parameter fill_in: bool = True

Flags whether to fill in the empty spaced opened up when the grid moves

parameter name: str | None = None

Optional name of the laser

parameter polarization_direction: list[float] [Required]

Unit vector of length 3. Direction of polarization [1]

parameter propagation_direction: list[float] [Required]

Unit vector of length 3. Direction of propagation [1]

parameter user_defined_kw: dict [Optional]

Constants referenced in the field expression, collected from otherwise-unrecognized keyword arguments.

parameter wavelength: float [Required]

Laser wavelength. This should be built into the expression, but some codes require a specified value for numerical purposes.

Properties

property k0: float

Laser wavenumber [1/m], \(k_0 = 2\pi/\lambda_0\)