Compact model library

Compact models are used to model photonic integrated circuits. They are typically fast to evaluate, and at the same time sufficiently accurate to yield useful results for circuit designers.

IPKISS can run photonic IC circuit simulations in frequency and time domain based on compact model descriptions, i.e., mathematical equations describing the physical behavior of the components.

IPKISS provides a compact model library (CML) with predefined models. These are listed below. The models can be accessed from ipkiss3.all:

import ipkiss3.all as i3
wg_model = i3.cml.WG1(n_eff=1.9, n_g=2.1)

Users can also write their own models (see the circuit model basics tutorial). A foundry PDK may contain models dedicated to specific foundry devices. Please check the Luceda documentation shipped with each PDK to learn more.

List of models



Single mode waveguide model with a linear dispersion curve.


Single mode polynomial waveguide model.

Directional Couplers


Directional coupler model based on the difference between the n_eff of the two beating modes.

Fiber Coupler Gratings


Model for a grating coupler.



Simple (non-dispersive) model for a reflector.


Terms of a models provided by IPKISS follow the same standard naming strategy as PCell ports and terms. Specifically,

  • Optical terms are called in, out, in1, out2, …

  • DC electrical terms are called anode, cathode, bias, …

  • RF electrical terms are called rf_in, rf_out, …

Using the models

The models can be used by specifying them as the model property of a PCell’s CircuitModelView. See Defining the CircuitModel view for a detailed tutorial.

In some cases, the term names of a PCell may differ from the term names of the predefine models. In that case, use i3.circuit_sim.map_terms to adapt the terms of a model to that of the model view.