Composite Devices Models

These are models that combine the model used in SCEE along with various Neural Networks to make a full compact model.

Racetrack Resonator

class SiPANN.comp.racetrack_sb_rr(width, thickness, radius, gap, length, sw_angle=90, loss=[0.99])

Racetrack waveguide arc used to connect to a racetrack directional coupler. Ports labeled as:

|           -------         |
|         /         \       |
|         \         /       |
|           -------         |
|   1 ----------------- 2   |
Parameters:
  • width (float or ndarray) – Width of the waveguide in nm
  • thickness (float or ndarray) – Thickness of waveguide in nm
  • radius (float or ndarray) – Distance from center of ring to middle of waveguide in nm.
  • gap (float or ndarray) – Minimum distance from ring waveguide edge to straight waveguide edge in nm.
  • length (float or ndarray) – Length of straight portion of ring waveguide in nm.
  • sw_angle (float or ndarray, optional) – Sidewall angle of waveguide from horizontal in degrees. Defaults to 90.
update(**kwargs)

Takes in any parameter defined by __init__ and changes it.

Parameters:attribute (float or ndarray) – Included if any device needs to have an attribute changed.
predict(wavelength)

Predicts the output when light is put in port 1 and out port 2.

Parameters:wavelength (float or ndarray) – Wavelength(s) to predict at
Returns:k/t – The value of the light coming through
Return type:complex ndarray
sparams(wavelength)

Returns scattering parameters.

Runs SCEE to get scattering parameters at wavelength input.

Parameters:wavelength (float or ndarray) – wavelengths to get sparams at
Returns:
  • freq (ndarray) – frequency for s_matrix in Hz, size n (number of wavelength points)
  • s_matrix (ndarray) – size (2,2,n) complex matrix of scattering parameters
gds(filename=None, view=False, extra=0, units='nms')

Writes the geometry to the gds file.

Parameters:
  • filename (str, optional) – Location to save file to. Defaults to None.
  • extra (int, optional) – Extra straight portion to add to ends of waveguides to make room in simulation (units same as units parameter). Defaults to 0.
  • units ({'microns' or 'nms'}, optional) – Units to save gds file in. Defaults to microns.
  • view (bool, optional) – Whether to visually show gds file. Defaults to False.