WEST ICRH Antenna RF Model
WEST ICRH Antenna RF Model
|
WEST ICRH Antenna circuit model. |
- class west_ic_antenna.antenna.WestIcrhAntenna(frequency: Frequency | None = None, Cs: Number | Sequence[Number] | ndarray = [50, 50, 50, 50], front_face: str | PathLike | Network | None = None)[source]
WEST ICRH Antenna circuit model.
- Parameters:
frequency (scikit-rf
skrf.frequency.Frequencyor None, optional) – frequency object to build the circuit with. The default is None: frequency band is the one from antenna elements.Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is [50,50,50,50] [pF]
front_face (str or :class: pathlib.Path or
skrf.network.Network, optional) – path to the Touchstone file of the antenna front face. Default is None (Vacuum case). If the frequency band of the front_face Network is a unique point, as typically for TOPICA results for example, the s-parameters of the front_face Network is duplicated for all the frequencies defined by frequency.
Note
front face ports are defined as (view from behind, ie from torus hall):
port1 port2 port3 port4
Capacitor names are defined as (view from behind the antenna):
C1 C3 C2 C4
Voltages are defined the same way:
V1 V3 V2 V4
Examples
Building a WEST ICRH antenna model for a given frequency band:
>>> freq = rf.Frequency(50, 60, 101, unit='MHz') >>> Cs = [50, 40, 60, 70] >>> west_antenna = WestIcrhAntenna(freq, Cs) # Vacuum loading case
Building a WEST ICRH antenna model for a given front-face configuration:
>>> # Here the s-param of the front_face are duplicated for all freq >>> WestIcrhAntenna(front_face='./data/Sparameters/front_faces/TOPICA/S_TSproto12_55MHz_Profile1.s4p')
- property Cs: List
Antenna capacitance array [C1, C2, C3, C4] in [pF].
- Pr(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Reflected power at antenna input.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
Pr – Reflected power [W] of both sides vs freq
- Return type:
complex array (nb_f, 2)
- Rc(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Coupling Resistances of both sides of the antenna.
\[R_c = 2 P_t / I_s^2\]where:
Pt is the transmitted (coupled) power
Is is the current average \(I_s^2 = |I_{top}|^2 + |I_{bot}|^2\)
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
Rc – Coupling resistances [Ohm] of both sides vs freq
- Return type:
array (nb_f, 2)
- Rc_WEST(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Coupling Resistances of both sides of the antenna - WEST Approximation.
\[R_c = 2 P_t / I_s^2\]where:
Pt is the transmitted (coupled) power
Is is the current average \(I_s^2 = |I_{top}|^2 + |I_{bot}|^2\)
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) –
antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs):
[C1] [C3] [C2] [C4] (view from the rear of the antenna)
- Returns:
Rc – Coupling resistances [Ohm] of both sides vs freq
- Return type:
array (nb_f, 2)
- Z_T(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Impedances Z_T at the T-junction.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
Z_T – Impedance at the T-junction [Z_T_left, Z_T_right]
- Return type:
complex array (nb_f, 2)
Examples
>>> Z_T = west_antenna.Z_T([1, 1], [0, pi])
- b(a: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Reflected power-wave from a given input power-wave, defined by b=S x a.
- Parameters:
a (array) – input power-wave array
Cs (list or array or None) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
b – output power-wave array
- Return type:
array
- capa(C: float, R: float = 0.01, L: float = 29.9, R1: float = 0.01, C1: float = 25.7, L1: float = 2.4, z0_bridge: float | None = None, z0_antenna: float | None = None, name: str = 'capa') Network[source]
Equivalent lumped Network model of a WEST ICRH antenna capacitor.
The electrical circuit of an equivalent lumped model is:
port1 (bridge side) port2 (antenna side) o-- R1 -- L1 --- R -- L -- C --- L1 -- R1 --o | | C1 C1 | | gnd gnd
The default values for R1, L1, C1, R and L have been adjusted to fit the full-wave modelling of the capacitors [1]
- Parameters:
C (float) – Capacitance in [pF]
R (float, optional) – series resitance in [Ohm]. The default is 1e-2.
L (float, optional) – series inductance in [nH]. The default is 29.9.
R1 (float, optional) – input/output serie resistance in [Ohm]. The default is 1e-2.
C1 (float, optional) – shunt capacitance in [pF]. The default is 25.7.
L1 (float, optional) – input/output series inductance in [nH]. The default is 2.4.
z0_bridge (float, optional) – Bridge side characteristic impedance in [Ohm]. The default is bridge z0.
z0_antenna (float, optional) – Antenna side characteristic impedance in [Ohm]. The default is the antenna z0
name (str, optional) – capacitor Network name. Default is ‘capa’.
- Returns:
capa – Equivalent lumped WEST capacitor model Network
- Return type:
scikit-rf Network
References
- capacitor_predictor(power: list, phase: list, Cs: list, z_T_target: complex = 2.89 - 0.17j, solution_number: int = 1, K: float = 0.7)[source]
Return a capacitance set toward matching.
The predictor does not return the final optimum values but only a set which goes toward the solution. Hence, this function should be re-itered until its converges (if so).
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF].
z_T_target (complex, optional) – Desired target (Set Point) for the input impedance at T-junction. The default is 2.89-0.17j.
solution_number (int) – Desired solution. 1 for C_top > C_bot and 2 for the opposite.
K (float, optional) – Gain. Default value: 0.7. Smaller value leads to higher number of iterations.
- Returns:
C_left (np.array (nb_f, 2)) – Left side capacitances (top, bottom)
C_right (np.array (nb_f, 2)) – Right side capacitances (top, bottom)
epsilons (np.array (nb_f, 2)) – Error signal (left, right)
- capacitor_velocities(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None, z_T_target: complex = 2.89 - 0.17j, K: float = 1) Tuple[Number | Sequence[Number] | ndarray, Number | Sequence[Number] | ndarray][source]
Velocity requests toward matching point.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
z_T_target (complex, optional) – Desired target (Set Point) for the input impedance at T-junction. Default is 2.89-0.17j.
K (float, optional) – Gain. Default is 1.
- Returns:
v_left (np.array (nb_f, 2)) – Left side velocities (v_top, v_bot)
v_right (np.array (nb_f, 2)) – Right side velocities (v_top, v_bot)
- circuit(Cs: List | None = None) Circuit[source]
Build the antenna circuit for a given set of capacitance.
- Parameters:
Cs (list or array or None) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs).
- Returns:
circuit – Antenna Circuit
- Return type:
skrf.circuit.Circuit
- currents(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Currents at the antenna front face ports (after capacitors).
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
Is – Currents at antenna front face ports [I1, I2, I3, I4]
- Return type:
complex array (nb_f,4)
Examples
>>> Is = west_antenna.currents([1, 1], [0, pi])
- currents_WEST(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Currents at the capacitors as calculated in WEST.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
Is – Currents at capacitors [I1, I2, I3, I4]
- Return type:
complex array (nb_f,4)
- error_signals(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None, z_T_target: complex = 2.89 - 0.17j) Number | Sequence[Number] | ndarray[source]
Normalized Error Signals for left and right sides.
Normalized Error signals is defined by:
epsilon = (z_T_target - z_T)/z_T
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
z_T_target (complex, optional) – Desired target (Set Point) for the input impedance at T-junction. The default is 2.89-0.17j.
- Returns:
epsilons – Error signals for left and right sides
- Return type:
complex array (nb_f, 2)
- property f
Antenna Frequency band values.
- Returns:
f – Antenna Frequency band values in [Hz]
- Return type:
array
- property f_scaled
Antenna Frequency band scaled to the Frequency unit.
- Returns:
f_scaled – Antenna frequency band values in the Frequency unit
- Return type:
array (nb_f,)
- property frequency
Antenna Frequency band.
- Returns:
frequency – Antenna Frequency band
- Return type:
scikit-rf Frequency
- front_face_Rc(Is: Number | Sequence[Number] | ndarray = [1, -1, -1, 1])[source]
(Ideal) front-face coupling resistances.
Coupling resistance is defined as :
\[R_c = 2 P_t / I_s^2\]where:
Pt is the transmitted (coupled) power
Is is the current average \(I_s^2 = |I_{top}|^2 + |I_{bot}|^2\)
Warning
Pay attention to the port indexing! Is is assumed with the following order:
[1] [2] [3] [4]
which is the one used in HFSS or in TOPICA models,
However, the indexing order of voltages probes and capacitors is:
[1] [3] [2] [4]
(both view from the rear of the antenna)
- Parameters:
Is (list or array (complex)) – Current excitation at antenna front-face ports. Default is [+1,-1,-1,+1] (dipole)
- front_face_current_waves(power: Number | Sequence[Number] | ndarray = [1, 1], phase: Number | Sequence[Number] | ndarray = [0, 3.141592653589793], Cs: None | list = None) Number | Sequence[Number] | ndarray[source]
Calculate the forward and reflected current waves I+ and I-.
The front face port indexes are defined as (view from behind, ie from torus hall):
port1 port2 port3 port4
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
I_fwd (complex array (nb_f, 4)) – Forward current wave in A.
I_ref (complex array (nb_f, 4)) – Reflected current wave in A.
- front_face_powers_phases(power: Number | Sequence[Number] | ndarray = [1, 1], phase: Number | Sequence[Number] | ndarray = [0, 3.141592653589793], Cs: None | list = None) Number | Sequence[Number] | ndarray[source]
Calculate the forward powers and phases at the input of the 4-port front-face.
The front face port indexes are defined as (view from behind, ie from torus hall):
port1 port2 port3 port4
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
power_fwd (real array (nb_f, 4)) – forward power magnitude in W.
phase_fwd (real array (nb_f, 4)) – forward power phase in degree.
- front_face_voltage_waves(power: Number | Sequence[Number] | ndarray = [1, 1], phase: Number | Sequence[Number] | ndarray = [0, 3.141592653589793], Cs: None | list = None) Number | Sequence[Number] | ndarray[source]
Calculate the forward and reflected voltages waves.
The front face port indexes are defined as (view from behind, ie from torus hall):
port1 port2 port3 port4
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
V_fwd (complex array (nb_f, 4)) – Forward voltage wave in V.
V_ref (complex array (nb_f, 4)) – Reflected voltage wave in V.
- classmethod interpolate_front_face(Rc: float, source: str = 'TOPICA-L-mode') Network[source]
Return a TOPICA front-face rf.Network interpolated from the L or H mode data.
- Parameters:
Rc (float) – Desired interpolated coupling resistance value. Rc must be within the interval of possible values, which depends of the front-face type:
source (str, optional) – ‘TOPICA-L-mode’: L-mode plasmas from TOPICA. Rc in [1, 2.91] (default) ‘TOPICA-H-mode’: H-mode plasmas from TOPICA. Rc in [0.39, 1.71]
- Returns:
interpolated_front_face – Network of the TOPICA front-face
- Return type:
rf.Network
Examples
>>> plasma = WestIcrhAntenna.interpolate_front_face(Rc=1, mode='TOPICA-L-mode')
- load(Rc: float, Xs: float | None = None)[source]
Load the antenna model with an ideal plasma load (no poloidal and toroidal cross coupling).
- Parameters:
Rc (float) – Coupling Resistance [Ohm]
Xs (float, optional) – Strap reactance. The default is None (uses frequency best fit).
- Return type:
None.
- match_both_sides(f_match: float = 55000000.0, power: Number | Sequence[Number] | ndarray = [1, 1], phase: Number | Sequence[Number] | ndarray = [0, 3.141592653589793], solution_number: int = 1, z_match: Number | Sequence[Number] | ndarray = [29.89 + 0j, 29.89 + 0j], decimals: int | None = None, verbose: bool = True, method: str = 'SLSQP', C0: None | list = None, delta_C: float = 5, maxiter: int = 500) Number | Sequence[Number] | ndarray[source]
Match both sides at the same time for a given frequency target.
Optimization is made for active Z parameters, that is taking into account the antenna excitation.
- Parameters:
f_match (float, optional) – match frequency in [Hz]. Default is 55 MHz.
power (list or array) – Input power at external ports in Watts [W]. Default is [1, 1] W.
phase (list or array) – Input phase at external ports in radian [rad]. Default is dipole [0, pi] rad.
solution_number (int, optional) – 1 or 2: 1 for C_top > C_lower or 2 for C_top < C_lower
z_match (array of complex, optional) – antenna feeder characteristic impedance to match on. Default is 30 ohm
decimals (int, optional) – Round the capacitances to the given number of decimals. Default is None (no rounding)
verbose (bool) – Display search information. Default is True.
method (str, optional) – Scipy Optimization method. ‘SLSQP’ (default) or ‘COBYLA’
C0 (list or None, optional) – Initial guess of the matching point. If None, the initial guess is obtained from matching both sides separately. Default is None.
delta_C (float, optional) – Maximum capacitance shift to look for a solution. Default is 5.
maxiter (int) – Maximum number of optimization function evaluations.
- Returns:
Cs_match – antenna 4 capacitances [C1, C2, C3, C4] in [pF].
- Return type:
list or array
- match_both_sides_iterative(f_match: float = 55000000.0, power: Number | Sequence[Number] | ndarray = [1, 1], phase: Number | Sequence[Number] | ndarray = [0, 3.141592653589793], C0: None | list = None, solution_number: int = 1, z_T_target: float = 2.89 - 0.17j, K: float = 0.7, verbose: bool = True, Cs: None | list = None) Number | Sequence[Number] | ndarray[source]
Match both sides using the automatic matching alg. (iterative).
- Parameters:
f_match (float, optional) – Matching frequency in Hz. The default is 55e6.
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
C0 (list or array, optional) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
z_T_target (complex, optional) – Desired target (Set Point) for the input impedance at T-junction. The default is 2.89-0.17j.
solution_number (int) – Desired solution. 1 for C_top > C_bot and 2 for the opposite.
K (float, optional) – Gain. Default value: 0.7. Smaller value leads to higher number of iterations.
verbose (bool, optional) – Display search information. Default is True.
Cs (list or array, optional) – Alias for C0, for backward compatibility. Default is None.
- Returns:
Cs_match – antenna 4 capacitances [C1, C2, C3, C4] in [pF].
- Return type:
list or array
- match_both_sides_separately(f_match: float = 55000000.0, solution_number: int = 1, z_match: Number | Sequence[Number] | ndarray = [29.89 + 0j, 29.87 + 0j], decimals: int | None = None, verbose: bool = True) Number | Sequence[Number] | ndarray[source]
Match both sides separately and returns capacitance values for each sides.
Match the left side with right side unmatched, then match the right side with the left side unmatched. Combine the results
- Parameters:
f_match (float, optional) – match frequency in [Hz]. Default is 55 MHz.
solution_number (int, optional) – 1 or 2: 1 for C_top > C_lower or 2 for C_top < C_lower
z_match (complex, optional) – antenna feeder characteristic impedance to match on. Default is 30 ohm
decimals (int, optional) – Round the capacitances to the given number of decimals. Default is None (no rounding)
verbose (bool) – Display search information. Default is True.
- Returns:
Cs_match – antenna 4 capacitances [C1, C2, C3, C4] in [pF].
- Return type:
list or array
- match_one_side(f_match: float = 55000000.0, solution_number: int = 1, side: str = 'left', z_match: complex = 29.89 + 0j, decimals: int | None = None, verbose: bool = True) Number | Sequence[Number] | ndarray[source]
Search for the best capacitance to match the specified side of the antenna.
The capacitances of the non-matched side are set to 120 [pF].
- Parameters:
f_match (float, optional) – match frequency in [Hz]. Default is 55 MHz.
solution_number (int, optional) – 1 or 2: 1 for C_top > C_lower or 2 for C_top < C_lower
side (str, optional) – antenna side to match: ‘left’ or ‘right’
z_match (complex, optional) – antenna feeder characteristic impedance to match on. Default is 30 ohm
decimals (int or None, optional) – Round the capacitances to the given number of decimals. Default is None (no rounding)
verbose (bool) – Display search information. Default is True.
- Returns:
Cs_match – antenna 4 capacitances [C1, C2, C3, C4] in [pF].
- Return type:
list or array
- optimize(fun, C0, args=(), method=None, jac=None, hess=None, hessp=None, bounds=None, constraints=(), tol=None, callback=None, options=None) list[float][source]
Optimize the capacitors for a given objective function.
- Parameters:
fun (callable) –
The objection function to be minimized:
fun(x, *args) -> float
(n (where x is a 1-D array with shape)
args (tuple, optional)
completely (is a tuple of the fixed parameters needed to)
scipy.optimize (specify the function. This function is passed to)
C0 (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF].
args – Extra arguments passed to the objective function and its derivatives (fun, jac and hess functions).
scipy.minimize (All other parameters are the same as in)
https (//docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.minimize.html#scipy.optimize.minimize)
- Returns:
Cs – antenna 4 capacitances [C1, C2, C3, C4] in [pF].
- Return type:
list or array
- optimum_frequency(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Optimum frequency with respect to active S-parameters for a given excitation.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
f_opt – optimum frequencies for each sides of the antenna
- Return type:
array (2x1)
- optimum_frequency_index(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Array indexes of the optimum frequency with respect to active S-parameters for a given excitation.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
f_opt_idx – array indexes of the optimum frequencies for each sides of the antenna
- Return type:
array (2x1)
- s_act(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Active S-parameters for a given excitation.
Active s-parameters are defined by :
\[\begin{split}\mathrm{active}(s)_{mn} = \sum_i s_{mi} \\frac{a_i}{a_n}\end{split}\]- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
s_act – Active S-parameters
- Return type:
complex array (nb_f, 2)
- s_act_db(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Active S-parameters magnitude in dB for a given excitation.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
s_act_db – Active S-parameters magnitude in dB
- Return type:
real array (nb_f, 2)
- swit_abcd() Number | Sequence[Number] | ndarray[source]
ABCD matrix of service Stub, Window and Impedance Transformer (aka “SWIT”).
- Returns:
a – ABCD matrix of the SWIT
- Return type:
np.array (nb_f,2,2)
- voltages(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Voltages at the antenna front face ports (after capacitors).
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
Vs – Voltages at antenna front face ports [V1, V2, V3, V4]
- Return type:
complex array (nb_f, 4)
Example
>>> Vs = west_antenna.voltages([1, 1], [0, pi])
- vswr_act(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Active VSWR for a given excitation.
The active VSWR is defined by :
\[\begin{split}\mathrm{active}(vswr)_{m} = \\frac{1 + |\mathrm{active}(s)_m|}{1 - |\mathrm{active}(s)_m|}\end{split}\]where \(\mathrm{active}(s)_m\) the active S-parameter of port \(m\).
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
vswr_act – Active VSWR-parameters
- Return type:
complex array (nb_f, 2)
- z_T(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Input impedance at the T-junction (input of the bridge) for a given excitation.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
z_T – Input impedances (left and right sides) at the T-junction for a given excitation.
- Return type:
np.array (nb_f, 2)
- z_act(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Active Z-parameters for a given excitation.
The active Z-parameters are defined by:
\[\begin{split}\mathrm{active}(z)_{m} = z_{0,m} \\frac{1 + \mathrm{active}(s)_m}{1 - \mathrm{active}(s)_m}\end{split}\]where \(z_{0,m}\) is the characteristic impedance and \(\mathrm{active}(s)_m\) the active S-parameter of port \(m\).
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
z_act – Active Z-parameters
- Return type:
complex array (nb_f, 2)
- z_coupler(power: Number | Sequence[Number] | ndarray, phase: Number | Sequence[Number] | ndarray, Cs: Number | Sequence[Number] | ndarray | None = None) Number | Sequence[Number] | ndarray[source]
Input impedance at the bidirective coupler for a given excitation.
Assume that the bidirective coupler is located just behind the RF window. In reality, there is a piece of transmission line from the window to the couplern which depends of each sides of each antenna in WEST.
- Parameters:
power (list or array) – Input power at external ports in Watts [W]
phase (list or array) – Input phase at external ports in radian [rad]
Cs (list or array) – antenna 4 capacitances [C1, C2, C3, C4] in [pF]. Default is None (use internal Cs)
- Returns:
z_coupler – Input impedance (left and right side) at the bidirective coupler for a given excitation.
- Return type:
np.array (nb_f, 2)