- halfSinePulse
halfSinePulse
Works with all licenses.
Function for a sinusoidal pulse in the form of a Gaussian beam, modulated by a longitudinal half-sine function.
halfSinePulse Parameters
- omega (required float)
- Angular frequency of the wave \(\omega\). 
- k (required float vector)
- The wave vector \({\bf k}\). 
- amplitude (required float)
- Amplitude of the wave. 
- phase (optional float, default = 0)
- The phase, added to \(({\bf k} \cdot {\bf x} - \omega t)\). 
- origin (required float vector)
- The initial location of the peak of the pulse. This is usually located a distance - widths[0]outside the simulation domain, so that the value of the function is initially equal to zero everywhere in the simulation. The pulse then propagates into the simulation domain.
- widths (required float vector)
- The widths of the pulse: - widths[0]- Full half-width of the pulse in the longitudinal direction (i.e. along \(\mathbf{k}\)). The half-sine function reaches zero at this distance away from the peak. - widths[1]- The width of the Gaussian beam in the direction perpendicular to \(\mathbf{k}\) in the plane of \(\mathbf{k}\) and \(\mathbf{\hat{x}}\); if \(\mathbf{k}\) is parallel to \(\mathbf{\hat{x}}\), this is the width in the \(y\) direction. The width is the full-width at the \(1/\sqrt{e}\) points (of the function value, not function squared) at the beam waist. - widths[2]- The width of the Gaussian beam in the direction perpendicular to both \(\mathbf{k}\) and \(\mathbf{\hat{x}}\); if \(\mathbf{k}\) is parallel to \(\mathbf{\hat{x}}\), this is the width in the \(z\) direction. The width is the full-width at the \(1/\sqrt{e}\) points (of the function value, not function squared) at the beam waist. 
- vg (required float)
- Group velocity, by which the origin of the envelope is moved. 
- waistDisplacement (required float)
- Location of the pulse focus along its direction of propagation, measured from the initial peak location specified by - origin.
- skewness (optional float, default = 0)
- Skewness in the pulse, which is a distortion so that the pulse rises more rapidly than it falls (negative skewness) or vice versa. 
- keepon (optional integer, default = 0 (false))
- If nonzero, the pulse does not fall after getting to its peak value. 
Example halfSinePulse Block
<STFunc component0>
  kind = halfSinePulse
  omega = 3.0e7
  k = [5. 0. 0.]
  amplitude = 0.7
  origin = [0.  0.  0.]
  widths = [14.9896e-6  8.48528e-6  8.48528e-6]
  vg = 2.9998e8
  waistDisplacement = 0.2
</STFunc>