Grid#
- class lasy.utils.grid.Grid(dim, lo, hi, npoints, n_azimuthal_modes=None, is_envelope=True, is_cw=False, is_plane_wave=False, position=0.0)[source]#
Store the envelope in temporal and spectral space and corresponding metadata.
- Parameters:
- dimstring
Dimensionality of the array. Options are:
'xyt': The laser pulse is represented on a 3D grid:Cartesian (x,y) transversely, and temporal (t) longitudinally.
'rt'The laser pulse is represented on a 2D grid:Cylindrical (r) transversely, and temporal (t) longitudinally.
- lo, hilist of scalars
Lower and higher end of the physical domain. One element per direction (2 for
dim='rt', 3 fordim='xyt')- npointstuple of int
Number of points in each direction. One element per direction (2 for
dim='rt', 3 fordim='xyt') For the moment, the lower end is assumed to be (0,0) in rt and (0,0,0) in xyt- n_azimuthal_modesint (optional)
Only used if
dimis'rt'. The number of azimuthal modes used in order to represent the laser field.- is_envelopebool (optional)
Whether the field provided uses the (complex) envelope representation, as used internally in lasy. If False, field is assumed to represent the the full (real) electric field (with fast oscillations).
- is_cwbool (optional)
Whether the laser pulse longitudinal profile is a continuous wave laer profile or not.
- is_plane_wavebool (optional)
Whether the laser pulse transverse profile is a plane wave laer profile or not.
- positionscalar (optional)
Longitudinal (z) position in a beamline at which the pulse is defined.