File size: 1,314 Bytes
22da9a9 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
import numpy as np
def series_impedance(impedance_array):
n_bins = len(impedance_array)
tmatrix = np.array(
[
[np.ones(n_bins), impedance_array],
[np.zeros(n_bins), np.ones(n_bins)],
]
)
return tmatrix
def inductance_series(inductance_value, angular_freq_array):
impedance_array = 1j * angular_freq_array * inductance_value
return series_impedance(impedance_array)
def capacitance_series(capacitance_value, angular_freq_array):
impedance_array = 1 / (1j * angular_freq_array * capacitance_value)
return series_impedance(impedance_array)
def resistance_series(resistance_value, n_bins):
impedance_array = np.ones(n_bins) * resistance_value
return series_impedance(impedance_array)
def transformer(transformer_value, n_bins):
transformer_array = np.ones(n_bins) * transformer_value
transformer = np.array(
[
[transformer_array, np.zeros(n_bins)],
[np.zeros(n_bins), 1 / transformer_array],
]
)
return transformer
def gyrator(gyrator_value, n_bins):
gyrator_array = np.ones(n_bins) * gyrator_value
gyrator = np.array(
[
[np.zeros(n_bins), gyrator_array],
[1 / gyrator_array, np.zeros(n_bins)],
]
)
return gyrator
|