# ipkiss3.all.circuit_sim.BSplineSModel¶

class ipkiss3.all.circuit_sim.BSplineSModel(**kwargs)

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 (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.

Parameters: 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. reciprocal: When set to True, the part of the smatrix below the diagonal is replicated to the upper part of the smatrix.

create_bsplinesmodel_class
static calculate_smatrix(parameters, env, S)
static from_smatrix(smatrix_1dsweep, **kwargs)
parameters = ['t_abs', 'c_abs', 'k_abs', 't_phase', 'c_phase', 'k_phase', 'reciprocal', '_n_terms']
reciprocal = False