You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The parameter ``frequency`` is not employed in small-signal analysis (See :class:`.IsothermalSSACAnalysis`).
19
+
This source represents a small-signal AC excitation defined by a DC operating point
20
+
voltage and the amplitude of the small signal perturbation.
20
21
21
-
Examples
22
-
--------
23
-
>>> import tidy3d as td
24
-
>>> signal = td.SinusoidalSignal(amplitude=0.1)
25
-
>>> ac_source = td.ACVoltageSource(
26
-
... name="VIN",
27
-
... voltage=0.8, # DC bias voltage
28
-
... signal=signal
29
-
... )
30
-
"""
31
-
32
-
amplitude: pd.FiniteFloat=pd.Field(
33
-
default=1.0,
34
-
title="Signal Amplitude",
35
-
description="Amplitude of the sinusoidal signal",
36
-
units=VOLT,
37
-
)
38
-
39
-
frequency: Optional[pd.PositiveFloat] =pd.Field(
40
-
default=None,
41
-
title="Frequency",
42
-
description="When using SSAC analysis, the value is optional, and even if provided it is overwritten by the 'ssac_freqs' in the analysis specification.",
43
-
units=HERTZ,
44
-
)
45
-
46
-
@pd.validator("amplitude")
47
-
defvalidate_amplitude(cls, val):
48
-
ifval==td_inf:
49
-
raiseValueError(f"Signal amplitude must be finite. Current amplitude={val}.")
50
-
returnval
51
-
52
-
@pd.validator("frequency")
53
-
defvalidate_frequency(cls, val):
54
-
ifvalisnotNoneandval==td_inf:
55
-
raiseValueError(f"Signal frequency must be finite. Current frequency={val}.")
56
-
returnval
57
-
58
-
59
-
ACSignalType=Union[SinusoidalSignal]
60
-
61
-
62
-
classACVoltageSource(Tidy3dBaseModel):
63
-
"""
64
-
AC voltage source.
65
-
66
-
Notes
67
-
-----
68
-
This source represents an AC excitation defined by a list of bias voltages,
69
-
and a signal specification.
70
-
71
-
The bias ``voltage`` refers to the DC operating point above the simulation ground.
22
+
The ``voltage`` refers to the DC operating point above the simulation ground.
23
+
The ``amplitude`` defines the magnitude of the small-signal perturbation.
72
24
Currently, full circuit simulation through electrical ports is not supported.
73
25
74
26
Examples
75
27
--------
76
28
>>> import tidy3d as td
77
-
>>> voltages = [-0.5, 0, 1, 2, 3, 4]
78
-
>>> signal = td.SinusoidalSignal(amplitude=1e-3)
79
-
>>> voltage_source = td.ACVoltageSource(
80
-
... voltage=voltages,
81
-
... signal=signal,
29
+
>>> ssac_source = td.SSACVoltageSource(
30
+
... name="VIN",
31
+
... voltage=0.8, # DC bias voltage
32
+
... amplitude=1e-3 # Small signal amplitude
82
33
... )
83
34
"""
84
35
85
36
name: Optional[str] =pd.Field(
86
37
None,
87
38
title="Name",
88
-
description="Unique name for the AC voltage source.",
39
+
description="Unique name for the SSAC voltage source.",
89
40
min_length=1,
90
41
)
91
42
@@ -96,10 +47,11 @@ class ACVoltageSource(Tidy3dBaseModel):
96
47
units=VOLT,
97
48
)
98
49
99
-
signal: ACSignalType=pd.Field(
100
-
default=SinusoidalSignal(),
101
-
title="AC signal properties",
102
-
description="Currently employed only for small-signal analysis.",
50
+
amplitude: pd.FiniteFloat=pd.Field(
51
+
default=1.0,
52
+
title="Small Signal Amplitude",
53
+
description="Amplitude of the small-signal perturbation for SSAC analysis.",
0 commit comments