# tidy3d.GaussianBeam#

class GaussianBeam[source]#

Gaussian distribution on finite extent plane.

Parameters:
• name (Optional[str] = None) β Optional name for the source.

• center (Tuple[float, float, float] = (0.0, 0.0, 0.0)) β [units = um]. Center of object in x, y, and z.

• size (Tuple[NonNegativeFloat, NonNegativeFloat, NonNegativeFloat]) β [units = um]. Size in x, y, and z directions.

• source_time (Union[GaussianPulse, ContinuousWave, CustomSourceTime]) β Specification of the source time-dependence.

• num_freqs (ConstrainedIntValue = 1) β Number of points used to approximate the frequency dependence of injected field. A Chebyshev interpolation is used, thus, only a small number of points, i.e., less than 20, is typically sufficient to obtain converged results.

• direction (Literal['+', '-']) β Specifies propagation in the positive or negative direction of the injection axis.

• angle_theta (float = 0.0) β [units = rad]. Polar angle of the propagation axis from the injection axis.

• angle_phi (float = 0.0) β [units = rad]. Azimuth angle of the propagation axis in the plane orthogonal to the injection axis.

• pol_angle (float = 0) β [units = rad]. Specifies the angle between the electric field polarization of the source and the plane defined by the injection axis and the propagation axis (rad). `pol_angle=0` (default) specifies P polarization, while `pol_angle=np.pi/2` specifies S polarization. At normal incidence when S and P are undefined, `pol_angle=0` defines: - `Ey` polarization for propagation along `x`.- `Ex` polarization for propagation along `y`.- `Ex` polarization for propagation along `z`.

• waist_radius (PositiveFloat = 1.0) β [units = um]. Radius of the beam at the waist.

• waist_distance (float = 0.0) β [units = um]. Distance from the beam waist along the propagation direction. When `direction` is `+` and `waist_distance` is positive, the waist is on the `-` side (behind) the source plane. When `direction` is `+` and `waist_distance``is negative, the waist is on the ``+` side (in front) of the source plane.

Example

```>>> pulse = GaussianPulse(freq0=200e12, fwidth=20e12)
>>> gauss = GaussianBeam(
...     size=(0,3,3),
...     source_time=pulse,
...     pol_angle=np.pi / 2,
...     direction='+',
```

Notebooks:

Attributes

Methods

Inherited Common Usage