4. Driven Maxwell Solver
This section explains the theory behind the driven
Maxwell Solver, which can be used to find the
electromagnetic field distribution in a device
excited by a known current source at a given frequency. Its governing equations
are the same as those of the
Maxwell eigenmode solver, but with an additional driving source term
that appears in the Ampère–Maxwell law [Che92]:
where \(\mathbf{E}\), \(\mathbf H\), and \(\varepsilon\) are, respectively, the
electric field, the magnetic field intensity, and the permittivity.
The term \(\mathbf{J}_{\text{src}}\) on the right hand side
of (4.14) is the current density
of the driving source at the given angular frequency \(\omega\).
The source term \(\mathbf{J}_{\text{src}}\) can be
imposed via the new_current_source() or
new_surf_current_density() methods of
the Device class.
The subsequent sections outline the Device boundary
conditions supported by the driven Maxwell Solver
and the post-processing methods for obtaining the \(Z\) and \(S\) parameters.
Boundary conditions
The driven Maxwell Solver supports the same
types of boundary conditions as the
Maxwell eigenmode solver, including
perfect electric conductor boundaries (new_pec_bnd()),
natural boundaries, and inductor boundaries (new_inductor()).
In addition, the driven solver allows for the specification of source terms
by imposing the
surface current density via new_surf_current_density()
or adding current sources via new_current_source().
Surface current density sources (API reference)
This type of boundary is used to impose a pre-defined surface current density. The surface current density source imposes a discontinuity in the tangential component of the magnetic field across a boundary [Poz12]:
where \(\mathbf{H}_1\) and \(\mathbf{H}_2\) are the magnetic fields on either side of the boundary, \(\mathbf{\hat n}_1\) is the unit vector normal to the boundary on side 1, pointing away from the simulation domain, and \(\mathbf{J}_S\) is the prescribed surface current density.
Fig. 4.1 Illustration of a boundary implemented by new_surf_current_density(),
having the surface current density \(\vec J_{S, \text{src}}\) and
the normal vector \(\hat n_1\), which points away from the computational
domain at points on side 1 of the boundary.
If the boundary is on the exterior of the simulation domain, \(\mathbf{H}_2\) is assumed to be zero, and the condition becomes:
where \(\mathbf{\hat n}\) is a unit normal vector normal to the boundary, pointing outside the simulation domain.
Current sources (API reference)
A current source is a specialized type of surface current density source where the total current \(I_{\text{src}}\) is specified instead of the current density. The surface current density is then calculated as:
where \(w_P\) is the width of the boundary and \(\mathbf{\hat t}_P\) is the unit vector in the direction of
the current flow.
This type of boundary supports the use of the get_current_source_voltage()
method to find the voltage drop across the terminals of the port after running the driven
Maxwell Solver.
Fig. 4.2 Illustration of a boundary implemented by
new_current_source().
On the left is the rectangular boundary of size \(l_P \times w_P\), where the surface current density
(4.17) is imposed. On the right is the
current source modeled by this boundary condition.
Microwave network analysis
In addition to finding the electromagnetic response of a device to current source excitation,
we can use the driven Maxwell Solver
to extract the device’s microwave network parameters, such as \(Z\) (impedance) and \(S\) (scattering) parameters.
In this type of microwave analysis, the current sources are treated as ports, which
can connect the device to external circuits.
The \(Z\) and \(S\) parameters characterize the behaviour of the device as
seen from those ports.
These microwave network parameters (in particular, the \(S\) parameters) are essential for studying the signal integrity of electrical interconnects [KCJ+05], understanding the superconducting qubit measurement systems [JSM+14], extracting resonator quality factors from microwave measurement results [PSB+15], and so on. The following sections provide an overview of the \(Z\) and \(S\) parameters and their extraction using QTCAD®.
Note
To compute the \(Z\) and \(S\) parameters, the driven
Maxwell Solver
must be run with split_excitations=True
so that the fields are computed for each port excitation independently.
\(Z\) parameters
Consider a device shown in Fig. 4.3, excited by \(N_{P}\) current sources. The impedance matrix for such a device, also known as the \(Z\) parameters, relates the voltages at these current source ports to the imposed currents [Poz12]:
where \(\mathbf{V}\) is the vector of voltages at the current source ports, \(\mathbf{I}\) is the vector of the source currents, and \(\mathbf{Z}\) is the impedance matrix:
Extraction of the \(Z\) parameters involves running the driven Maxwell
Solver and calling the get_impedance() method
as a post-processing step.
Fig. 4.3 Illustration of the \(Z\) parameters of a multi-port device for \(N_P = 2\).
\(S\) parameters
The \(N_P\)-port device from the previous section can also be described in terms of the scattering matrix, as illustrated in Fig. 4.4. The scattering matrix relates the waves incident on the ports to those reflected from the ports [Poz12]
where \(\mathbf{a}\) is the vector of incident power waves, \(\mathbf{b}\) is the vector of reflected power waves, and \(\mathbf{S}\) is the scattering matrix (also known as the \(S\)-parameter matrix):
The voltage and current at the ports can be written in terms of the incident and reflected power wave contributions as
where \(Z_R\) is the reference impedance of the port (assumed to be a real constant for simplicity) [1].
Similarly to the \(Z\) parameters, the \(S\) parameters are extracted as a post-processing step by
get_scattering_matrix(),
following the execution of the driven Maxwell
Solver.
Fig. 4.4 Illustration of the \(S\) parameters of a multi-port device for \(N_P = 2\).