next up previous
Next: 3.5 The New Method Up: 3. Treatment of Interface Previous: 3.3 Implementation of Interface


3.4 Transformations of the Equation System in MINIMOS-NT

In a generic device simulator as MINIMOS-NT the number of grid points and the number of equations to be solved for each grid point is not known a priori. The number of equations per grid point can even change during the simulation. For example for simulations using the hydrodynamic model first a drift-diffusion simulation is performed to find an appropriate initial guess for the electrostatic potential and the carrier concentrations. As soon as convergence of the simplified model is achieved, the equations for the carrier temperatures are added to the equation system for all grid points which describe the semiconductor part of the device. Therefore a sophisticated system is necessary to manage the assembly and modification of the equation system. With the equation assembly system (EAS) used by MINIMOS-NT there is also the possibility to perform transformations of the equation system and to eliminate specified variables [21].

The general form of the equation system to solve in an iteration of the process of solving the nonlinear equation system is

A . x = b. (3.2)

Here $\ensuremath{\mathbf{A}}$ is the system matrix, $\ensuremath{\mathbf{x}}$ is the vector of unknowns, and $\ensuremath{\mathbf{b}}$ is the right hand side vector. The contributions of the model functions form the right hand side vector, whereas the derivatives of the model functions with respect to the unknowns are entered into the system matrix.

In the EAS the system matrix $\ensuremath{\mathbf{A}}$ is split into two parts $\ensuremath{\mathbf{A}}_{\mathrm{B}}$ and $\ensuremath{\mathbf{A}}_{\mathrm{S}}$. The matrix $\ensuremath{\mathbf{A}}_{\mathrm{B}}$ is built from entries of boundary and interface models. The matrix $\ensuremath{\mathbf{A}}_{\mathrm{S}}$ contains entries from models for points which not located on an interface or a boundary. Before adding $\ensuremath{\mathbf{A}}_{\mathrm{S}}$ to $\ensuremath{\mathbf{A}}_{\mathrm{B}}$ it is multiplied by a transformation matrix $\ensuremath{\mathbf{T}}_{\mathrm{B}}$.

A = AB + TB . AS (3.3)

With the transformation matrix $\ensuremath{\mathbf{T}}_{\mathrm{B}}$ it is possible to form linear combinations of the rows in $\ensuremath{\mathbf{A}}_{\mathrm{S}}$. The diagonal elements of $\ensuremath{\mathbf{T}}_{\mathrm{B}}$ can be used to scale the equations. With non-zero off-diagonal elements one row can be added to another row. For most points located inside a segment there is no need for a transformation.

By setting a diagonal element of $\ensuremath{\mathbf{T}}_{\mathrm{B}}$ to zero the contribution of the segment models to the equation of the respective unknown can be eliminated. Then an appropriate entry into $\ensuremath{\mathbf{A}}_{\mathrm{B}}$ by a boundary or interface model is necessary to keep the system matrix nonsingular.

Analogous to the system matrix the right hand side vector $\ensuremath{\mathbf{b}}$ is built from two parts $\ensuremath{\mathbf{b}}_{\mathrm{B}}$ and $\ensuremath{\mathbf{b}}_{\mathrm{S}}$ for the boundary and inner segment points, respectively.

b = bB + TB . bS (3.4)

The separation of the system matrix and the right hand side vector into a part for inner segment points and one for boundary and interface points allows a separate treatment of those points within the simulator. This enables the use of separate models for inner segment points and for interface and boundary points. When choosing models used for inner segment points and for interface and boundary points one has to make sure that the models are consistent.


next up previous
Next: 3.5 The New Method Up: 3. Treatment of Interface Previous: 3.3 Implementation of Interface
Martin Rottinger
1999-05-31