Logo
IPKISS 3.4
  • Installation
    • Installing IPKISS on Windows
      • Downloading the software
      • Installing the software
        • License types
        • Obtaining and installing a license
      • License Troubleshooting
      • Luceda Control Center
      • Installing a code editor
    • Installing IPKISS on Linux
      • Installing miniconda on Linux
      • Installing IPKISS packages
      • Installing the license on Linux
      • Configuring your IDE
    • Using a floating license
      • Hosting the license server
      • Configure your floating license
    • Installing a GDSII viewer
    • Where to go next
    • For IPKISS.eda Users
      • Installing IPKISS.eda
      • Verify your installation
    • Environment variables used by IPKISS
  • Tutorials
    • Introduction to Python
      • Python essentials
        • Variables
        • Lists and arrays
        • Loops
        • Functions
        • Loading modules
      • Object Oriented Programming in Python
        • What is object oriented programming
        • Object Oriented Programming in Python
        • Inheritance
        • Intermezzo: plotting in Python
        • Using your classes
      • Advanced class features
        • Private methods
        • Operator overloading
      • Finishing the sample program
        • Adding the Noisy Signal class
        • Implementing the filter class
        • Adjusting the main file
    • Setting up the environment
      • Downloading & installing Python editor
        • Launching PyCharm
      • IPKISS sample project
        • Setting up the interpreter
      • Creating a new IPKISS design project
        • Adding a PDK to your project
        • Additional user libraries
      • Some useful PyCharm features
        • Autocompletion
        • Jump-to-definition
        • Debugging
        • Configuring Python interpreter after project creation
      • Managing conda virtual environments and installing extra packages
        • Creating a development environment
        • Installing extra packages
      • Setting up the editor environment in Wing IDE
        • Creating a new project and choosing the python executable
        • The editor environment
        • Adding a folder to the project
        • Executing your first file
    • Quickstart: First simple circuit design
      • Step 1: Creating the components
        • The technology file
      • Step 2: Building circuits
        • Making the building blocks
        • Layout
        • CircuitModel
    • What is IPKISS?
      • Python Scripting
      • History
    • Ipkiss 3 overview
      • Ipkiss framework
        • Properties
        • PCell framework
        • Geometry
        • Layout
        • Netlist
        • Circuit simulation
        • Technology
        • Traces and waveguides
        • Virtual fabrication
        • Visualization
        • Device simulation
      • Picazzo component library
    • Layout: basics
      • Drawing waveguides
      • Creating a PCell
      • Building a small circuit
        • Ignore errors in specs
      • Parametrize cell and reuse
        • Parametrize spiral length
        • Parametrizing the trace template
        • Parametrizing the directional coupler
      • Verifying your layout
        • Netlist extraction
      • Post-layout simulation
      • Where to go from here
    • PCell: Basics
      • Step 1: PCell and Properties
        • The very beginning
        • Using properties to specify the design parameters
        • Executing a first script
        • Recap
      • Step 2: PCell and Views
        • Views
        • Instantiating views
        • Recap
      • Step 3: Technology
        • Using technology
        • Selecting a technology
        • Recap
      • Step 4: Simple layout: First GDSII
        • Adding elements to a layout
        • Visualizing and export to GDSII
        • Recap
    • Layout: Advanced (hierarchy and waveguides)
      • Step 1: Layout level hierarchy: Two Rings
        • Using ChildCellProperty to create Hierarchical PCells
        • Placing layout instances
        • Instantiating a hierarchical cell
        • Using defaults
        • Caution setting properties of child cells of TwoRingsWithDefaults
        • Recap
      • Step 2: Using waveguides in a layout
        • Waveguides
        • Default waveguide template and ChildCells
        • Placing the waveguides in the Layout View
        • Instantiating the ring
        • Modifying the width of the waveguide template
      • Step 3: Using ports and routes
        • Defining ports to connect components together
        • Using Routes
        • Defining the directional coupler using routes
        • Recap
      • Step 4: Using rounded waveguides
        • Defining rounded waveguides
        • Recap
    • Circuit models: Basics
      • First example of a model
      • Defining the CircuitModel view
      • Building a custom CompactModel
      • Building a circuit
      • Adding time-domain behavior
      • Writing multimode models
      • Specifying default values for parameters
      • Accessing the layout from the model view
      • Running simulations
        • Running a frequency-domain simulation
        • Running a time-domain simulation
      • Additional resources
    • Circuit models: Advanced
      • Model definition guidelines
      • Debugging Models
      • Python Models
      • Polynomial dependent variables and coefficients
      • Writing a netlist manually
      • Troubleshooting
    • Circuit models based on S-parameter data
      • Loading from touchstone into SMatrix1DSweep
        • Specific 3rd party tool support
      • Loading S-matrices from a binary file
      • Creating a B-Spline interpolation model
      • Assigning an smatrix model to your PCell
    • Physical device simulation
      • General concept
      • API example
      • Supported tools
        • Interfacing with Dassault Systèmes SIMULIA CST Studio Suite ®
        • Interfacing with Ansys Lumerical FDTD
    • Interfacing with Dassault Systèmes SIMULIA CST Studio Suite ®
      • 1. Define the Simulation Geometry
        • Layout
        • Verifying the device geometry in IPKISS
        • Simulation Geometry
      • 2. Define the simulation
      • 3. Inspect the simulation job
      • 4. Retrieve and plot simulation results
      • 5. Tune the geometry settings
        • Geometry Configuration
        • Process Flow
        • Excluding Layers
        • Bounding Box
      • 6. Tune the generic simulation settings
        • Multimode waveguides
      • 7. Use tool-specific settings
        • Using materials defined by the simulation tool
        • Export additional settings from CST Studio Suite to IPKISS
        • Multiphysics simulations
    • Interfacing with Ansys Lumerical FDTD
      • 1. Define the Simulation Geometry
        • Layout
        • Verifying the device geometry in IPKISS
        • Simulation Geometry
        • 2. Define the simulation
      • 3. Inspect the simulation job
      • 4. Retrieve and plot simulation results
      • 5. Tune the geometry settings
        • Geometry Configuration
        • Process Flow
        • Excluding Layers
        • Bounding Box
      • 6. Tune the generic simulation settings
        • Multimode waveguides
      • 7. Use tool-specific settings
        • Using materials defined by the simulation tool
        • Export additional settings from FDTD Solutions to IPKISS
        • Verifying the device geometry in IPKISS
  • Sample gallery
    • Modifying the GDSII table of an existing technology
    • Loading a touchstone file
      • See also
    • Creating a Cell from an existing GDSII file with a new technology
      • Adding the missing layers to a tech file
      • Importing a cell with GDSII layers in the new tech file
    • A Ring Resonator based Filter based on the Vernier principle
      • Defining the Vernier Filter PCell
        • Embedding the design algorithm in the PCell
      • Running the design, simulation and layout
    • Spirals with controlled length and port location
    • Example MZI (layout + circuit)
      • Running circuit simulation
    • Creating a Cell from an Existing GDSII file
      • Export a grating coupler to GDSII
      • Importing the GDSII file
    • Disk Resonator with Wraparound waveguide
      • Defining the Parametric Cell
      • Generating the Disk Layout using geometric primitives
      • Creating a Waveguide child cell
        • Creating a Rounded Waveguide
        • Calculating the correct control shape
        • Using Waveguide Templates
        • Adding Ports
        • Recap
    • Using Inheritance for component specialization
      • General Class: MMI
      • Specialized Class: MMI_12
      • Specialized Class: MMI_21
      • Specialized Class: MMI_22
      • Specialized Class: SquareMMI
    • Layout and simulation of a Mach-Zehnder interferometer with spiral delay line.
      • Purpose
    • Quickstart sample
      • Importing the technology file
      • Creating the ring resonator
      • Running a circuit simulation
      • Creating the grating coupler
      • Creating a small circuit with the ring and grating coupler
    • Mach-Zehnder lattice filter
    • Spiral with Expanded Waveguides and Spline Bends
      • Defining the Spline Rounding Algorithm
      • Defining the trace template
      • Defining a spiral
    • Archimedian Spiral
    • Defining a customized technology
      • Getting started
      • Adding a process layer
      • Defining rules
      • Visualization and import/export settings
      • Overwriting technology keys
      • Example: ring resonator with back-end opening cover layer
      • Defining the virtual fabrication
    • Netlist extraction from layout
      • Importing the technology file
      • Creating a MZI in layout
      • Extracting the netlist
      • Run a simulation
    • Example of an Athermal Mach-Zehnder Interferometer
      • Operation principle and design
      • Constructing the Mach-Zehnder Interferometer
      • Designing the component and running the simulation
      • Incorporating the design logic into the device
      • Layout
    • Coarse WDM (CWDM) filter using cascaded MZIs
      • Introduction
      • Design and simulation
      • Influence of variations/inaccuracies
      • Using a foundry PDK
    • Variability analysis of Mach-Zehnder lattice design
  • Guides
    • Technology
      • General structure of a TECH-tree
      • Required technology tree
      • Write your own TECH: Recommended file structure
      • Name of the technology
      • Metrics
      • Process
      • GDSII
      • Display Settings
      • Design Rules
      • Materials
      • Virtual Fabrication
        • Mask layers
        • From mask layers to material stacks
      • Traces
      • Grating Couplers
      • OpenAccess (IPKISS.eda only)
        • Layer settings
        • Routing settings
      • Required Technology Keys: IPKISS
      • Required Technology Keys: PICAZZO
    • Properties
      • DefinitionProperty
        • Using DefinitionProperty
        • Default Values
        • Restrictions
        • Preprocessors
      • Caching
      • Derivates of DefinitionProperty
    • Parametric Cells
      • IPKISS PCells
        • Properties
      • Views
        • Define the state of a View
        • Only one view instance per view class.
        • Retrieving Views
        • View property defaults
      • Making Fixed (P)Cells
      • IPKISS Views
    • The Layout View
      • Layout concepts
      • Defining the layout view
      • Shapes
      • Elements
        • Boundary and Path elements
        • PolygonText
      • Groups
      • Using shape operations
      • Working with process purpose layers
      • Defining ports
      • Adding instances
      • Layout view inheritance
    • Hierarchical PCells
      • ChildCells
      • ChildCellProperty
      • Adding the child views
      • Overriding views originating from ChildCellProperty
      • Caution setting properties of child cell
    • Netlist
      • What is a Netlist view
      • Netlist terms
      • Netlist instances
      • Netlist Links
      • Naming of terms, links and instances
      • Generate a NetlistView from a LayoutView
        • Basic use
        • Generating terms only
        • Full hierarchical extraction
    • Waveguides
      • Waveguides are cells
      • Waveguides are Traces
      • Trace Templates
      • Predefined waveguide templates
      • How to use waveguides in a circuit (IPKISS)
      • How to use waveguides in a circuit (IPKISS.eda module)
      • Basic waveguide example
      • See also
    • Caphe introduction
      • Circuit simulations
      • Building blocks for circuit simulations
      • Running circuit simulations in IPKISS
      • Advantages of using Caphe
      • Further reading
    • Boolean Operations
      • Booleans between Shapes
      • Booleans between Elements
        • Operations including Paths
      • Booleans between Layers
      • Booleans between ElementLists
      • A real-world example
  • IPKISS.eda user manual
    • Working with IPKISS.eda for L-Edit
      • Getting started with IPKISS.eda for L-Edit
        • Installing a license file
        • Using the example library
        • Starting L-Edit
        • Loading the demonstration project
      • Creating a new design based on a PDK
        • Step 1: Start a new design
        • Step 2: Instantiate cells
        • Step 3: Route and generate waveguides
        • Step 4: Adapt waveguide routes
      • Reusing cells in circuits
        • Create the MZI design
        • Create the test design
        • Conclusion
    • Library organization
      • Step 1: The PDK
      • Step 2: User libraries
      • Step 3: Designs in IPKISS (code-based)
      • Step 4: Designs in IPKISS (OpenAccess based)
      • Step 5: Exporting user libraries to OpenAccess
    • Known limitations and issues
      • Limitations
      • Issues
    • Logging configuration
      • File logging
        • Loglevel
        • Logfolder location

API Reference

  • IPKISS Reference
    • PCell Reference
      • PCell
      • Defining new Types with Properties
        • Adding Restrictions
        • Defining Default Values
        • Allowing None as a valid value
        • Caching
        • Locking Properties
        • Preprocessors
        • Documenting Properties
      • Properties & Restrictions Reference
        • Basic Properties
        • Properties Derived From DefinitionProperty
        • Restrictions
        • Property Preprocessors
        • Property Validation Errors
      • Library
    • Netlist Reference
      • Netlist view building blocks
        • Terms
        • Instances
        • Nets
      • Netlist extraction
        • ipkiss3.all.NetlistFromLayout
        • extract_terms
    • Layout Reference
      • Geometry Reference
        • Basic Shapes
        • Spline Shapes
        • Shape modifiers
      • Ports Reference
        • Optical Ports
        • Electrical Ports
        • Create Ports
      • Placement Reference
        • Functions
        • Specifications
      • Routing
        • ipkiss3.pcell.routing.RouteToLine
        • ipkiss3.pcell.routing.RouteToAngle
        • ipkiss3.pcell.routing.RouteManhattan
        • RouteToLine
        • RouteToAngle
        • Helper Functions
      • Transformations
        • ipkiss3.all.IdentityTransform
        • ipkiss3.all.Translation
        • ipkiss3.all.Rotation
        • ipkiss3.all.VMirror
        • ipkiss3.all.HMirror
        • ipkiss3.all.CMirror
        • ipkiss3.all.Stretch
        • ipkiss3.all.Magnification
      • Elements and Layers
        • Shape Elements
        • Reference Elements
      • SizeInfo
        • ipkiss.geometry.size_info.SizeInfo
        • Retrieving the size info
        • Operations
      • Generated Layers
        • get_elements_for_generated_layers
      • Importing Layouts from GDSII
      • IoColumn
      • Layout View
    • Traces
      • Traces and Trace Templates
        • Optical waveguides and waveguide templates
        • Electrical traces and trace templates
      • Bundles
      • Transitions
        • Waveguide transitions
        • Waveguide transitions starting from a port
        • AutoTraceTransitionFromPort
      • Electrical
        • ElectricalWire
        • ElectricalWindowWireTemplate
        • Electrical Vias
    • CircuitModel View reference
      • ipkiss3.all.CircuitModelView
      • ipkiss3.all.CompactModel
      • ipkiss3.all.HierarchicalModel
      • ipkiss3.all.Probe
      • ipkiss3.all.FunctionExcitation
      • ipkiss3.all.circuit_sim.SMatrix1DSweep
      • ipkiss3.all.circuit_sim.BSplineSModel
      • ipkiss3.all.circuit_sim.test_circuitmodel
    • Device simulation reference
      • ipkiss3.all.device_sim.SimulationGeometry
      • ipkiss3.all.device_sim.SMatrixOutput
      • ipkiss3.all.device_sim.LumericalFDTDSimulation
      • ipkiss3.all.device_sim.CSTTDSimulation
      • ipkiss3.all.device_sim.Port
      • ipkiss3.all.device_sim.Macro
      • ipkiss3.all.device_sim.MacroFile
    • Technology Reference
      • Technology
        • get_technology
        • ipkiss.technology.technology.TechnologyTree
        • ipkiss.technology.technology.DelayedInitTechnologyTree
      • Process
        • ipkiss.process.layer.ProcessLayer
        • ipkiss.process.layer.PatternPurpose
        • ipkiss.process.layer.ProcessPurposeLayer
        • ipkiss.process.layer.PPLayer
        • ipkiss.primitives.layer.Layer
      • GDSII
        • ipkiss.process.layer_map.GenericGdsiiPPLayerInputMap
        • ipkiss.process.layer_map.GenericGdsiiPPLayerOutputMap
        • ipkiss.io.gds_layer.AutoGdsiiLayerInputMap
        • ipkiss.io.gds_layer.AutoGdsiiLayerOutputMap
        • ipkiss.process.layer_map.UnconstrainedGdsiiPPLayerInputMap
        • ipkiss.process.layer_map.UnconstrainedGdsiiPPLayerOutputMap
      • Display
        • ipkiss.visualisation.display_style.DisplayStyle
        • ipkiss.visualisation.display_style.DisplayStyleSet
        • ipkiss.visualisation.display_style.CyclicDisplayStyleSet
      • Materials
        • pysics.basics.material.material.Material
        • pysics.basics.material.material.MaterialFactory
        • pysics.basics.material.material_stack.MaterialStack
        • pysics.basics.material.material_stack.MaterialStackFactory
      • Virtual Fabrication
        • ipkiss.plugins.vfabrication.process_flow.VFabricationProcessFlow
        • visualize_2d
        • cross_section
      • Example
    • File input/output
      • Touchstone import
        • import_touchstone_smatrix
    • PDK structure
      • PDK Source and distributable PDK
      • Requirements for IPKISS.eda
        • PDK Source requirements
        • Distributable PDK requirements
        • Config File (pdkname.cfg)
        • Contents File (all.py)
        • Technology File (pdkname.technology)
    • Indices and tables
  • Picazzo Reference
    • Logical Blocks
      • Logical Couplers
        • Coupler2x1
        • Coupler1x2
        • Coupler2x2
      • Model Parameters
      • Logical Inline Reflectors
        • Reflector
        • WaveguideReflector
      • Model
      • Logical Termination
        • Termination
        • PerfectTermination
    • Fiber Couplers
      • Curved Fiber Couplers
        • FiberCouplerCurvedGrating
        • FiberCouplerCurvedGratingGeneric
      • Uniform Line Fiber Couplers
        • UniformLineGrating
      • Fiber Coupler base classes
        • FiberCouplerGrating
    • Filters
      • Mach-Zehnder Interferometers
        • MZI
        • MZIWaveguides
        • MZIWithCells
        • MZIWaveguideArm
        • MZIContainerArm
      • Ring Resonators
        • Hierarchy of the ring circuit and layout
        • Coupler sections
        • Coupler positioning
        • Circuit model
      • Multi Mode Interferometers
        • Tapered MMIs
        • Untapered MMIs
        • Rib MMIs
    • Photonic Crystals
      • Generic Photonic Crystals
        • DodecPhCLayout
        • HexPhCLayout
        • OctPhCLayout
        • SquarePhCLayout
        • TriangularPhCLayout
        • RectangularPhCLayout
      • Photonic Crystal W1 Waveguides and Cavities
        • GenericW1Waveguide
        • W1Waveguide
        • W1WaveguideWithInlineCavity
        • W1WaveguideWithAllpass
      • Photonic Crystal HeteroWaveguide Layouts
        • W1HeteroCavity
        • W1HeteroCavity1Mirror
        • W1HeteroCavityMulti
    • Traces
      • Wire Waveguides
        • WireWaveguideTemplate
        • Transitions
      • Rib Waveguides
        • RibWaveguideTemplate
        • RibWireWaveguideTemplate
        • Transitions
      • Thinned Waveguides
        • ThinnedWaveguideTemplate
        • Transitions
      • Slot Waveguides
        • SlotWaveguideTemplate
        • DoubleSlotWaveguideTemplate
        • Transitions
      • Socket Waveguides
        • SocketWaveguideTemplate
        • SlottedSocketWaveguideTemplate
        • Transitions
      • Electrical Wire
        • ElectricalWireTemplate
      • Transitions
        • Transition circuit models
    • Waveguide Blocks
      • Waveguide Bends
        • WgBend
        • WgBend90
      • Waveguide Splitters
        • WgYSplitter
        • WgYCombiner
        • WgY90Splitter
        • WgY90Combiner
        • WgY180Splitter
        • WgY180Combiner
      • Directional Couplers
        • StraightDirectionalCoupler
        • BendDirectionalCoupler
        • SBendDirectionalCoupler
        • CircuitModel details
      • Waveguide Crossings
        • WgDirectCrossing
        • WgParabolicCrossing
      • Waveguide Gratings
        • WaveguideNonUniformGrating
        • WaveguideUniformGrating
        • WaveguideSectionsGratingPeriod
        • ModifiedWaveguideGratingPeriod
        • WaveguideSideGratingPeriod
        • WaveguideSideRibGratingPeriod
        • WaveguideSideBlockGratingPeriod
        • WaveguideGrooveGratingPeriod
        • Model details
      • Waveguide Bundles
        • WaveguideBundle
        • TemplatedWaveguideBundle
      • Spirals
        • SingleSpiral
        • SingleSpiralRounded
        • DoubleSpiral
        • DoubleSpiralRounded
        • DoubleSpiralWithInCoupling
        • DoubleSpiralWithInCouplingRounded
        • FixedLengthSpiral
        • FixedLengthSpiralRounded
      • Waveguide Connectors
        • WaveguideConnector
        • RoundedWaveguideConnector
    • Routing
      • Placement and routing
        • PlaceComponents
        • ConnectComponents
        • PlaceAndConnect
        • PlaceAndAutoRoute
    • Apertures
      • OpenAperture
      • WireWgAperture
    • Containers and Adapters
      • AutoTransitionPorts
        • AutoTransitionPorts
      • ExtendPorts
        • ExtendPorts
      • FanoutPorts
        • FanoutPorts
      • IoFibcoup
        • IoFibcoupGeneric
        • IoFibcoupEastWest
        • IoFibcoup
      • Containers with Waveguides
        • ContainerWithWaveguides
        • ContainerWithWaveguideBundle
        • ContainerWithRoundedWaveguides
        • ContainerWithRoundedWaveguideBundle
      • Route Ports
        • RoutePortsEastWest
        • RoutePortsAroundCorner
      • TerminatePorts
        • TerminatePorts
    • Electrical Components
      • Vias
        • ContactHole
        • Via12
    • Modulators
      • Phase modulators
        • Phase modulator trace templates
        • Phase modulator
    • single page reference
      • Logical Blocks
        • Coupler1x2
        • Coupler2x1
        • Coupler2x2
        • Reflector
        • WaveguideReflector
        • Termination
        • PerfectTermination
      • Grating Couplers
        • FiberCouplerCurvedGrating
        • FiberCouplerCurvedGratingGeneric
        • UniformLineGrating
        • FiberCouplerGrating
      • Ringresonators
        • RingRect
        • RingRect180DropFilter
        • RingRoundedShape
        • RingRectNotchFilter
        • RingRect180DropFilter
        • RingRect90DropFilter
        • RingRectWrappedNotchFilter
        • RingRectWrapped180DropFilter
        • RingRectSymmNotchFilter
        • RingRectSymm180DropFilter
        • RingRectSymm90DropFilter
        • RingRectSBendNotchFilter
        • RingRectSBend180DropFilter
      • Multi-mode Interferometers
        • MMITapered
        • MMIIdenticalTapered
        • MMISymmetricTapered
        • MMI1x2Tapered
        • MMI2x1Tapered
        • MMI2x2Tapered
        • RibMMIIdenticalTapered
        • RibMMISymmetricTapered
        • RibMMI1x2Tapered
        • RibMMI2x1Tapered
        • RibMMI2x2Tapered
        • MMI
        • MMIIdentical
        • MMISymmetric
        • MMI1x2
        • MMI2x1
        • MMI2x2
      • Mach-Zehnder Interferometers (MZI)
        • MZI
        • MZIWaveguides
        • MZIWithCells
        • MZIWaveguideArm
        • MZIContainerArm
      • Generic Photonic Crystals
        • DodecPhCLayout
        • HexPhCLayout
        • OctPhCLayout
        • SquarePhCLayout
        • TriangularPhCLayout
        • RectangularPhCLayout
      • Photonic Crystal HeteroWaveguide Layouts
        • W1HeteroCavity
        • W1HeteroCavity1Mirror
        • W1HeteroCavityMulti
      • Photonic Crystal W1 Waveguides and Cavities
        • GenericW1Waveguide
        • W1Waveguide
        • W1WaveguideWithInlineCavity
        • W1WaveguideWithAllpass
      • Rib Waveguides
        • RibWaveguideTemplate
        • RibWireWaveguideTemplate
      • Slot Waveguides
        • SlotWaveguideTemplate
        • DoubleSlotWaveguideTemplate
      • Socket Waveguides
        • SocketWaveguideTemplate
        • SlottedSocketWaveguideTemplate
      • Thinned Waveguides
        • ThinnedWaveguideTemplate
        • ThinnedWaveguideTemplate
      • Wire Waveguides
        • WireWaveguideTemplate
      • Rib Transitions
        • WireRibWaveguideTransitionLinear
        • WireRibWaveguideTransitionFromPortLinear
      • Slot Transitions
        • SlottedWireWaveguideTransitionLinear
        • SlottedWireWaveguideTransitionFromPortLinear
      • Socket Transitions
        • WireSocketWaveguideTransitionLinear
        • WireSocketWaveguideTransitionFromPortLinear
      • Thinned Transitions
        • ThinnedWireWireWaveguideTransitionLinear
        • ThinnedWireWireWaveguideTransitionFromPortLinear
      • Wire Transitions
        • WireWaveguideTransitionLinear
        • WireWaveguideTransitionFromPortLinear
      • Bends
        • WgBend
        • WgBend90
      • Crossings
        • WgDirectCrossing
        • WgParabolicCrossing
      • Gratings
        • WaveguideUniformGrating
        • WaveguideNonUniformGrating
        • ModifiedWaveguideGratingPeriod
        • WaveguideSideGratingPeriod
      • Directional Couplers
        • StraightDirectionalCoupler
        • BendDirectionalCoupler
        • SBendDirectionalCoupler
      • Splitters
        • WgYSplitter
        • WgYCombiner
        • WgY90Splitter
        • WgY90Combiner
        • WgY180Splitter
        • WgY180Combiner
      • Waveguide Bundles
        • WaveguideBundle
      • Spirals
        • SingleSpiral
        • SingleSpiralRounded
        • DoubleSpiral
        • DoubleSpiralRounded
        • DoubleSpiralWithInCoupling
        • DoubleSpiralWithInCouplingRounded
        • FixedLengthSpiral
        • FixedLengthSpiralRounded
        • PlaceComponents
        • ConnectComponents
        • PlaceAndConnect
        • PlaceAndAutoRoute
        • OpenAperture
        • WireWgAperture
      • AutoTransitionPorts
        • AutoTransitionPorts
      • FanoutPorts
        • FanoutPorts
      • IoFibcoup
        • IoFibcoupGeneric
        • IoFibcoupEastWest
        • IoFibcoup
      • ContainerWithWaveguides
        • ContainerWithWaveguides
        • ContainerWithWaveguideBundle
        • ContainerWithRoundedWaveguides
        • ContainerWithRoundedWaveguideBundle
      • ExtendPorts
        • ExtendPorts
      • Route Ports
        • RoutePortsEastWest
        • RoutePortsAroundCorner
      • TerminatePorts
        • TerminatePorts
        • ContactHole
        • Via12
      • Phase Modulators
        • PhaseShifterWaveguideTemplate
        • LateralPNPhaseShifterTemplate
        • LongitudinalPNPhaseShifterTemplate
        • PhaseModulator

Support, Changelog and links

  • History
    • Change Log
      • Ipkiss 3.4
        • Installation
        • Ipkiss
        • Ipkiss.eda
        • Documentation
        • Backward compatibility notes
      • Ipkiss 3.3
        • Documentation
        • Ipkiss
        • Picazzo
        • Ipkiss.eda
      • Ipkiss 3.2.1
        • General
        • Ipkiss
        • Documentation
      • Ipkiss 3.2
        • General
        • Ipkiss
        • Ipcore
        • Caphe
        • Luceda control center
        • Ipkiss.eda
        • Documentation
      • Ipkiss 3.1.3
        • General
        • Ipcore
        • Ipkiss
        • Caphe
        • Picazzo
        • Ipkiss.eda
      • Ipkiss 3.1.2
        • Installation & Getting Started
        • Ipcore
        • Ipkiss
        • Pysics
        • Picazzo
        • Ipkiss.eda
        • Ipkiss 2.4 Compatibility
        • Documentation
      • Ipkiss 3.1.1
        • Ipkiss
        • Ipkiss-caphe interface
        • Picazzo
        • Samples & documentation
      • Ipkiss 3.1.0
        • Installation
        • Samples & documentation
        • Ipcore
        • Ipkiss
        • Picazzo
        • Picazzo 2.4
        • Ipkiss 2.4
        • Pysimul
      • Ipkiss 3.0.1
        • Ipcore
        • Ipkiss
        • Picazzo
        • Simulation
        • i-Python notebooks
        • Ipkiss 2.4 compatibility
      • Ipkiss 3.0
        • Functionality
        • User experience
        • Under the hood
    • Running Ipkiss 2.4 code in Ipkiss 3
      • Property system
        • Using properties on objects that don’t inherit from StrongPropertyInitializer
        • Overriding Properties with normal python attributes
        • Implementing Restrictions
        • Creating classes with definition names that are not declared at first
        • Number properties are cast to the correct type
      • Leading and trailing underscores
      • Layout
        • Magnification
      • Technology files
      • Mixing 3.0 and 2.4 syntax
    • Porting from Ipkiss 2.4 to Ipkiss 3
      • Importing Ipkiss
      • Property defaults: define_ → _default_
      • Structure (2.4) → PCell/LayoutView (3.0)
      • Port names
      • Using the Layout view
      • Netlist View
      • Hierarchy
        • Default children
        • Passing parameters from parent to default child
      • Waveguide Definition (2.4) → Waveguide Template (3.0)
        • Custom window waveguide definitions (2.4) -> window trace templates (3.0)
        • WgElDefinition
      • Waveguides: cells instead of layout elements
      • Picazzo
      • Technology
    • Porting from Ipkiss 3.0 to Ipkiss 3.0.1
      • The set method is more restrictive
      • Casting of Numbers in NumberProperties
      • PortList behaves similar to TermDict
      • Layer Properties in PICAZZO
      • Technology
      • Explicit Evaluations of child views are no longer required
      • Notebooks are now using IPython 3
    • Porting from Ipkiss 3.0.1 to Ipkiss 3.1
      • Luceda debug environment variables have changed
      • PICAZZO: The Transition between WireWaveguides has an adaptive length
      • PICAZZO: The default purpose of ElectricalWireTemplate has changed
    • Known backwards incompatibilities 3.1.2
    • Known backwards incompatibilities 3.1.3
      • Waveguide circuit models
      • Subclassing legacy CapheModel
      • ShapeWindowTraceTransition.straight_extension
    • Porting circuit models and user code from Ipkiss 3.1.2 to Ipkiss 3.1.3
      • 1. Convert PCell definition
      • 2. Convert user code
    • Layout changes 3.2.0
      • ShapeArc
      • route_to_parallel_line
    • Known backwards incompatibilities in 3.3.0
      • NetlistFromLayout
      • Spirals
      • Autotransition database
    • Known backwards incompatibilities in 3.4.0
      • TraceBundle
      • IPKISS.eda
    • IPKISS.eda logging
      • Timestamps: created, modified
      • Unit and Grid Properties
      • Locked properties
    • Porting from Ipkiss 3.3.0 to Ipkiss 3.4.0
      • Rebuilding your libraries
      • PDK Config File
      • Routing functions
  • Glossary
    • Design Automation
      • General
      • Semiconductor ecosystem
      • Layout and mask
      • Modeling
      • Formats
      • Verification
    • Photonics
    • IPKISS
    • Python Programming
  • Changelog
    • Ipkiss 3.4
      • Installation
      • Ipkiss
      • Ipkiss.eda
      • Documentation
      • Backward compatibility notes
    • Ipkiss 3.3
      • Documentation
      • Ipkiss
      • Picazzo
      • Ipkiss.eda
    • Ipkiss 3.2.1
      • General
      • Ipkiss
      • Documentation
    • Ipkiss 3.2
      • General
      • Ipkiss
      • Ipcore
      • Caphe
      • Luceda control center
      • Ipkiss.eda
      • Documentation
    • Ipkiss 3.1.3
      • General
      • Ipcore
      • Ipkiss
      • Caphe
      • Picazzo
      • Ipkiss.eda
    • Ipkiss 3.1.2
      • Installation & Getting Started
      • Ipcore
      • Ipkiss
      • Pysics
      • Picazzo
      • Ipkiss.eda
      • Ipkiss 2.4 Compatibility
      • Documentation
    • Ipkiss 3.1.1
      • Ipkiss
      • Ipkiss-caphe interface
      • Picazzo
      • Samples & documentation
    • Ipkiss 3.1.0
      • Installation
      • Samples & documentation
      • Ipcore
      • Ipkiss
      • Picazzo
      • Picazzo 2.4
      • Ipkiss 2.4
      • Pysimul
    • Ipkiss 3.0.1
      • Ipcore
      • Ipkiss
      • Picazzo
      • Simulation
      • i-Python notebooks
      • Ipkiss 2.4 compatibility
    • Ipkiss 3.0
      • Functionality
      • User experience
      • Under the hood
  • Support
    • Who is entitled to support
    • Software
    • Purchasing
    • Licensing
    • Foundry Process Design Kits
    • Training
    • Troubleshooting
  • 🌐 lucedaphotonics.com
  • 🎓 academy.lucedaphotonics.com
IPKISS
  • Docs »
  • Picazzo Library Reference »
  • Fiber Couplers

Fiber Couplers¶

  • curved gratings
  • uniform line gratings
  • generic fiber grating coupler classes
Next Previous

© Copyright Luceda Photonics

Built with Sphinx using a theme provided by Read the Docs.