- class ipkiss3.all.circuit_sim.BSplineSModel¶
Numerical S-matrix model consisting of a univariate B-spline representations over wavelength.
Every S-parameter in the matrix is represented by t, c, k (knots, coefficients, degree) for both amplitude and phase, expressing the S-parameter as a function of wavelength.
The implementation is directly based on scipy’s BSpline.
The (i, j) th item in the t, c, k matrices, i.e., t[i, j, :], c[i, j, :], k[i, j] is associated with S-matrix element S[i, j]. Hence the order of the terms in the CompactModel is important to determine the order in which items appear in the t, c, k matrices.
- t_abs, c_abs, k_abs:
- t_phase, c_phase, k_phase:
t[i, j, :]: vector of knots for the S(i,j) c[i, j, :]: B-spline coefficients for S(i, j) k[i, j]: degree of the spline for S(i, j) where _abs is used to represent the absolute value, and _phase used to represent the angle.
When set to True, the part of the smatrix below the diagonal is replicated to the upper part of the smatrix.
- parameters = ['t_abs', 'c_abs', 'k_abs', 't_phase', 'c_phase', 'k_phase', 'reciprocal', '_n_terms']¶
- reciprocal = False¶
- static calculate_smatrix(parameters, env, S)¶
- static from_smatrix(smatrix_1dsweep, **kwargs)¶
Generate a BSplineSModel from a SMatrix1DSweep
Since BSplineSModel is expressed as function of wavelength, SMatrix1DSweep must be expressed as function of wavelength (sweep_parameter_name==’wavelength’) or it will be converted automatically with micrometer as a default wavelength unit. If your system simulation is in different units (e.g. nanometer), please convert smatrix_1dsweep upfront.
- smatrix_1dsweep: SMatrix1DSweep
the data from which to interpolate, can come from a simulation or measurement.
the keyword arguments are passed to scipy’s splrep to alter the B-splines used for interpolation. Most notably, k is used to set the order of the spline, ‘s’ is a smoothing factor which can be used for smoothing in case of noisy input data. This function uses
splrep, please check scipy’s documentation on splrep for more information.
- A BSplineSModel