tidy3d.GaussianBeam#
- class GaussianBeam[source]#
- Bases: - AngledFieldSource,- PlanarSource,- BroadbandSource- 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/2specifies S polarization. At normal incidence when S and P are undefined,- pol_angle=0defines: -- Eypolarization for propagation along- x.-- Expolarization for propagation along- y.-- Expolarization 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 - directionis- +and- waist_distanceis positive, the waist is on the- -side (behind) the source plane. When- directionis- +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='+', ... waist_radius=1.0) - See also - Notebooks:
 - Attributes - Methods - waist_radius#
 - waist_distance#
 - __hash__()#
- Hash method.