kqcircuits.simulations.cross_section_simulation¶
- class kqcircuits.simulations.cross_section_simulation.CrossSectionSimulation(layout, **kwargs)[source]¶
Bases:
object
Class for co-planar waveguide cross-section simulations.
This class is intended to be subclassed by a specific simulation implementation; The subclass should implement the method ‘build’ which defines the simulation geometry and material properties.
Layer names in cross-section geometry don’t need to obey KQC default layers. The layers use following name coding: - Layer name ‘vacuum’ is reserved for vacuum material. The vacuum layer can be left empty; then the simulation export fills the empty space inside the ‘box’ with vacuum. - All layers that include word ‘signal’ are considered as signal metals. Different signal layers are considered as separate signals so that the result matrices has row and column for each signal layer. The order of signals is the same as where they are introduced by calling ‘get_sim_layer’ function. - All layers that include word ‘ground’ are considered as ground metal. - Any other layer is considered as dielectric. The permittivity can be set using the ‘set_permittivity’ function.
Initialize a CrossSectionSimulation.
The initializer parses parameters, creates a top cell, and then calls self.build to create the simulation geometry.
- Parameters
layout – the layout on which to create the simulation
- Keyword Arguments
**kwargs – Any parameter can be passed as a keyword argument.
- LIBRARY_NAME = None¶
- classmethod get_schema(noparents=False, abstract_class=None)¶
Returns the combined parameters of the class “cls” and all its ancestor classes.
- Parameters
noparents – If True then only return the parameters of “cls”, not including ancestors.
abstract_class – Return parameters up to this abstract class if specified.
- abstract build()[source]¶
Build simulation geometry.
This method is to be overridden, and the overriding method should create the geometry to be simulated.
- register_cell_layers_as_sim_layers()[source]¶
Takes all layers that contain any geometry and registers them as simulation layers
This method resets the internal simulation layer dictionary.
london_penetration_depth (Double) - London penetration depth is implemented for one signal simulation only, default=
0.0
, unit=m
xsection_source_class (None) - Class from which the simulation was generated from using the XSection tool. Used to get the correct schema., default=
None
box (Shape) - Boundary box, default=
(0,0;10000,10000)
name (String) - Name of the simulation, default=
Simulation
extra_json_data (None) - This field may be used to store ‘virtual’ parameters useful for your simulations, default=
None
