class kqcircuits.simulations.single_xmon.SingleXmon(layout, **kwargs)[source]

Bases: kqcircuits.simulations.simulation.Simulation

Initialize a Simulation.

The initializer parses parameters, creates a top cell, and then calls self.build to create the simulation geometry, followed by self.create_simulation_layers to process the geometry so it is ready for exporting.


layout – the layout on which to create the simulation

Keyword Arguments


Any parameter can be passed as a keyword argument.

In addition, cell can be passed as keyword argument. If cell is supplied, it will be used as the top cell for the simulation. Otherwise, a new cell will be created. See Simulation.from_cell for creating simulations from existing cells.


Build simulation geometry.

This method is to be overridden, and the overriding method should create the geometry to be simulated and add any ports to self.ports.

ports: List[kqcircuits.simulations.port.Port]
PCell parameters:

  • qubit_face (List) - Bottom or top face qubit position, default=['2b1', '1t1']

  • junction_inductance (List) - Qubit junction inductance, default=1.1497e-08, unit=H

  • junction_capacitance (List) - Qubit junction capacitance, default=1e-16, unit=F

  • a (Double) - Width of center conductor, default=10, unit=μm

  • b (Double) - Width of gap, default=6, unit=μm

  • n (Int) - Number of points on turns, default=64

  • r (Double) - Turn radius, default=100, unit=μm

  • margin (Double) - Margin of the protection layer, default=5, unit=μm

  • face_ids (List) - Chip face IDs list, default=['1t1', '2b1', '1b1', '2t1']

  • display_name (String) - Name displayed in GUI (empty for default), default=

  • protect_opposite_face (Boolean) - Add opposite face protection too, default=False

  • mirror_squid (Boolean) - Mirror SQUID by its Y axis, default=False

  • junction_total_length (Double) - Simulation junction total length, default=33, unit=µm

  • junction_type (String) - Junction Type, default=Manhattan, choices=['NoSquid', 'Manhattan', 'Manhattan Single Junction', 'Sim']

  • junction_width (Double) - Junction width (only used for code generated element), default=0.02, unit=μm

  • junction_parameters (String) - Extra Junction Parameters, default={}

  • _junction_parameters (String) - Previous state of *_parameters, default={}

  • loop_area (Double) - Loop area, default=100, unit=μm^2

  • fluxline_type (String) - Fluxline Type, default=Fluxline Standard, choices=['none', 'Fluxline Standard', 'Fluxline Straight']

  • fluxline_gap_width (Double) - Fluxline gap width, default=2, unit=μm

  • fluxline_parameters (String) - Extra Fluxline Parameters, default={}

  • _fluxline_parameters (String) - Previous state of *_parameters, default={}

  • arm_length (List) - Arm length (um, WNES)), default=[150.0, 150.0, 150.0, 150.0]

  • arm_width (List) - Arm metal width (um, WNES), default=[24, 24, 24, 24]

  • gap_width (List) - Arm gap width (um, WNES), default=[12, 12, 12, 12]

  • cpl_width (List) - Coupler width (um, WNE), default=[24, 24, 24]

  • cpl_length (List) - Coupler lengths (um, WNE), default=[120, 120, 120]

  • cpl_gap (List) - Coupler gap (um, WNE), default=[102, 102, 102]

  • port_width (List) - Port width (um, WNE), default=[10, 10, 10]

  • cl_offset (List) - Chargeline offset (um, um), default=[200, 200]

  • island_r (Double) - Center island rounding radius, default=5, unit=μm