tidy3d.GaussianBeam#
- class GaussianBeam[source]#
Bases:
AngledFieldSource
,PlanarSource
,BroadbandSource
Gaussian distribution on finite extent plane.
- Parameters:
name (Attribute:
name
) –Type
Optional[str]
Default
= None
Description
Optional name for the source.
center (Attribute:
center
) –Type
Tuple[float, float, float]
Default
= (0.0, 0.0, 0.0)
Units
um
Description
Center of object in x, y, and z.
size (Attribute:
size
) –Type
Tuple[NonNegativeFloat, NonNegativeFloat, NonNegativeFloat]
Default
Units
um
Description
Size in x, y, and z directions.
source_time (Attribute:
source_time
) –Type
Union[GaussianPulse, ContinuousWave, CustomSourceTime]
Default
Description
Specification of the source time-dependence.
num_freqs (Attribute:
num_freqs
) –Type
ConstrainedIntValue
Default
= 1
Description
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 (Attribute:
direction
) –Type
Literal[‘+’, ‘-‘]
Default
Description
Specifies propagation in the positive or negative direction of the injection axis.
angle_theta (Attribute:
angle_theta
) –Type
float
Default
= 0.0
Units
rad
Description
Polar angle of the propagation axis from the injection axis.
angle_phi (Attribute:
angle_phi
) –Type
float
Default
= 0.0
Units
rad
Description
Azimuth angle of the propagation axis in the plane orthogonal to the injection axis.
pol_angle (Attribute:
pol_angle
) –Type
float
Default
= 0
Units
rad
Description
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, whilepol_angle=np.pi/2
specifies S polarization. At normal incidence when S and P are undefined,pol_angle=0
defines: -Ey
polarization for propagation alongx
.-Ex
polarization for propagation alongy
.-Ex
polarization for propagation alongz
.waist_radius (Attribute:
waist_radius
) –Type
PositiveFloat
Default
= 1.0
Units
um
Description
Radius of the beam at the waist.
waist_distance (Attribute:
waist_distance
) –Type
float
Default
= 0.0
Units
um
Description
Distance from the beam waist along the propagation direction. When
direction
is+
andwaist_distance
is positive, the waist is on the-
side (behind) the source plane. Whendirection
is+
andwaist_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.