New forge coding added

This commit is contained in:
=
2026-06-04 23:21:39 +08:00
parent 518eb06591
commit 8da92ced57
288 changed files with 52017 additions and 1913 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 KiB

+5 -11
View File
@@ -1,16 +1,10 @@
.. mxpic_handbook documentation master file, created by
sphinx-quickstart on Sun May 3 16:05:57 2026.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
# mxPIC Handbook
Welcome to the automated documentation for the mxPIC silicon photonics library.
# Welcome to the automated documentation for the mxPIC silicon photonics library.
```{toctree}
:maxdepth: 2
:caption: Components:
mxpic/components/primitives/beam_splitters
mxpic/components/primitives/directional_couplers
mxpic/components/primitives/EC_dual_layer_px3
mxpic/components/primitives/grating_couplers
mxpic/components/primitives/multimode_interferometers
mxpic/components/primitives/spiral
mxpic/components/index
```
@@ -0,0 +1,6 @@
# mxpic.components.basic
```{eval-rst}
.. automodule:: mxpic.components.basic
:no-members:
```
@@ -0,0 +1,15 @@
# mxpic.components.composites.LoopMirror
```{eval-rst}
.. automodule:: mxpic.components.composites.LoopMirror
:no-members:
```
## LoopMirror
```{eval-rst}
.. autoclass:: mxpic.components.composites.LoopMirror.LoopMirror
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,69 @@
# mxpic.components.composites.MZI
```{eval-rst}
.. automodule:: mxpic.components.composites.MZI
:no-members:
```
## MZI
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI.MZI
:members:
:undoc-members:
:show-inheritance:
```
## MZI_NS
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI.MZI_NS
:members:
:undoc-members:
:show-inheritance:
```
## MZI_NS_ubend
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI.MZI_NS_ubend
:members:
:undoc-members:
:show-inheritance:
```
## MZI_2st_ubend
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI.MZI_2st_ubend
:members:
:undoc-members:
:show-inheritance:
```
## MZI_Eubend
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI.MZI_Eubend
:members:
:undoc-members:
:show-inheritance:
```
## MZI_Ubend
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI.MZI_Ubend
:members:
:undoc-members:
:show-inheritance:
```
## MZI_Butterfly
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI.MZI_Butterfly
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,60 @@
# mxpic.components.composites.MZI_mesh
```{eval-rst}
.. automodule:: mxpic.components.composites.MZI_mesh
:no-members:
```
## W_waveguide
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI_mesh.W_waveguide
:members:
:undoc-members:
:show-inheritance:
```
## UMat_2x2_S
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI_mesh.UMat_2x2_S
:members:
:undoc-members:
:show-inheritance:
```
## MZI_mesh_U
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI_mesh.MZI_mesh_U
:members:
:undoc-members:
:show-inheritance:
```
## AMZI_W
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI_mesh.AMZI_W
:members:
:undoc-members:
:show-inheritance:
```
## MZI_mesh_Parl
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI_mesh.MZI_mesh_Parl
:members:
:undoc-members:
:show-inheritance:
```
## MZI_mesh_Tri
```{eval-rst}
.. autoclass:: mxpic.components.composites.MZI_mesh.MZI_mesh_Tri
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,15 @@
# mxpic.components.composites.SptTree
```{eval-rst}
.. automodule:: mxpic.components.composites.SptTree
:no-members:
```
## SplittingTree
```{eval-rst}
.. autoclass:: mxpic.components.composites.SptTree.SplittingTree
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,6 @@
# mxpic.components.composites.advance
```{eval-rst}
.. automodule:: mxpic.components.composites.advance
:no-members:
```
@@ -0,0 +1,11 @@
# Composites
```{toctree}
:maxdepth: 2
LoopMirror
MZI
MZI_mesh
SptTree
advance
```
@@ -0,0 +1,51 @@
# mxpic.components.electronics.eic_units
```{eval-rst}
.. automodule:: mxpic.components.electronics.eic_units
:no-members:
```
## ISL
```{eval-rst}
.. autoclass:: mxpic.components.electronics.eic_units.ISL
:members:
:undoc-members:
:show-inheritance:
```
## Vias
```{eval-rst}
.. autoclass:: mxpic.components.electronics.eic_units.Vias
:members:
:undoc-members:
:show-inheritance:
```
## PAD
```{eval-rst}
.. autoclass:: mxpic.components.electronics.eic_units.PAD
:members:
:undoc-members:
:show-inheritance:
```
## PADs
```{eval-rst}
.. autoclass:: mxpic.components.electronics.eic_units.PADs
:members:
:undoc-members:
:show-inheritance:
```
## Vias_arc
```{eval-rst}
.. autoclass:: mxpic.components.electronics.eic_units.Vias_arc
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,7 @@
# Electronics
```{toctree}
:maxdepth: 2
eic_units
```
@@ -0,0 +1,21 @@
# mxpic.components.gds_devices
```{eval-rst}
.. automodule:: mxpic.components.gds_devices
:no-members:
```
## gds_lib_load
```{eval-rst}
.. autoclass:: mxpic.components.gds_devices.gds_lib_load
:members:
:undoc-members:
:show-inheritance:
```
## generate_gds_lib
```{eval-rst}
.. autofunction:: mxpic.components.gds_devices.generate_gds_lib
```
+16
View File
@@ -0,0 +1,16 @@
# Components
```{toctree}
:maxdepth: 2
composites/index
electronics/index
others/index
pdks/index
primitives/index
basic
gds_devices
pins
routing
structures
```
@@ -0,0 +1,7 @@
# Others
```{toctree}
:maxdepth: 2
simulation/index
```
@@ -0,0 +1,99 @@
# mxpic.components.others.simulation.DualPortElements
```{eval-rst}
.. automodule:: mxpic.components.others.simulation.DualPortElements
:no-members:
```
## DEVICE_PORTS
```{eval-rst}
.. autoclass:: mxpic.components.others.simulation.DualPortElements.DEVICE_PORTS
:members:
:undoc-members:
:show-inheritance:
```
## DEVICE_RING_BUS
```{eval-rst}
.. autoclass:: mxpic.components.others.simulation.DualPortElements.DEVICE_RING_BUS
:members:
:undoc-members:
:show-inheritance:
```
## DEVICE_COUPLER
```{eval-rst}
.. autoclass:: mxpic.components.others.simulation.DualPortElements.DEVICE_COUPLER
:members:
:undoc-members:
:show-inheritance:
```
## EULER_CROW_INTER_CP
```{eval-rst}
.. autoclass:: mxpic.components.others.simulation.DualPortElements.EULER_CROW_INTER_CP
:members:
:undoc-members:
:show-inheritance:
```
## EULER_CROW_BUS
```{eval-rst}
.. autoclass:: mxpic.components.others.simulation.DualPortElements.EULER_CROW_BUS
:members:
:undoc-members:
:show-inheritance:
```
## RESONATOR
```{eval-rst}
.. autoclass:: mxpic.components.others.simulation.DualPortElements.RESONATOR
:members:
:undoc-members:
:show-inheritance:
```
## RING_PHASE
```{eval-rst}
.. autoclass:: mxpic.components.others.simulation.DualPortElements.RING_PHASE
:members:
:undoc-members:
:show-inheritance:
```
## PortParas
```{eval-rst}
.. autofunction:: mxpic.components.others.simulation.DualPortElements.PortParas
```
## MonitorParas
```{eval-rst}
.. autofunction:: mxpic.components.others.simulation.DualPortElements.MonitorParas
```
## DEVICE_2X2_FDTD_INIT
```{eval-rst}
.. autofunction:: mxpic.components.others.simulation.DualPortElements.DEVICE_2X2_FDTD_INIT
```
## tuple_to_complex
```{eval-rst}
.. autofunction:: mxpic.components.others.simulation.DualPortElements.tuple_to_complex
```
## SimuDataFigurePlot
```{eval-rst}
.. autofunction:: mxpic.components.others.simulation.DualPortElements.SimuDataFigurePlot
```
@@ -0,0 +1,7 @@
# Simulation
```{toctree}
:maxdepth: 2
DualPortElements
```
@@ -0,0 +1,33 @@
# mxpic.components.pdks.AMF_pdk
```{eval-rst}
.. automodule:: mxpic.components.pdks.AMF_pdk
:no-members:
```
## GC_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.AMF_pdk.GC_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## GC_TE_1310
```{eval-rst}
.. autoclass:: mxpic.components.pdks.AMF_pdk.GC_TE_1310
:members:
:undoc-members:
:show-inheritance:
```
## PD_Cband_Cell
```{eval-rst}
.. autoclass:: mxpic.components.pdks.AMF_pdk.PD_Cband_Cell
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,105 @@
# mxpic.components.pdks.CUMEC_pdk
```{eval-rst}
.. automodule:: mxpic.components.pdks.CUMEC_pdk
:no-members:
```
## PAD_60_80
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.PAD_60_80
:members:
:undoc-members:
:show-inheritance:
```
## GPD_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.GPD_1550
:members:
:undoc-members:
:show-inheritance:
```
## EC_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.EC_1550
:members:
:undoc-members:
:show-inheritance:
```
## GC_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.GC_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## GC_TM_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.GC_TM_1550
:members:
:undoc-members:
:show-inheritance:
```
## GC_TE_1310
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.GC_TE_1310
:members:
:undoc-members:
:show-inheritance:
```
## MMI_1x2_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.MMI_1x2_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## MMI_1x2_TE_1310
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.MMI_1x2_TE_1310
:members:
:undoc-members:
:show-inheritance:
```
## MMI_2x2_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.MMI_2x2_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## CRX_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.CRX_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## PBS_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.CUMEC_pdk.PBS_1550
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,132 @@
# mxpic.components.pdks.IMECAS_pdk
```{eval-rst}
.. automodule:: mxpic.components.pdks.IMECAS_pdk
:no-members:
```
## Template
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.Template
:members:
:undoc-members:
:show-inheritance:
```
## EC_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.EC_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## GC_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.GC_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## GC_TM_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.GC_TM_1550
:members:
:undoc-members:
:show-inheritance:
```
## GC_TE_1310
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.GC_TE_1310
:members:
:undoc-members:
:show-inheritance:
```
## GC_TM_1310
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.GC_TM_1310
:members:
:undoc-members:
:show-inheritance:
```
## DC_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.DC_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## MMI_2x2_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.MMI_2x2_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## MMI_1x2_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.MMI_1x2_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## MMI_2x2_TE_1310
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.MMI_2x2_TE_1310
:members:
:undoc-members:
:show-inheritance:
```
## MMI_1x2_TE_1310
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.MMI_1x2_TE_1310
:members:
:undoc-members:
:show-inheritance:
```
## Ybranch_TE
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.Ybranch_TE
:members:
:undoc-members:
:show-inheritance:
```
## CRX_TE_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.CRX_TE_1550
:members:
:undoc-members:
:show-inheritance:
```
## CRX_TE_1310
```{eval-rst}
.. autoclass:: mxpic.components.pdks.IMECAS_pdk.CRX_TE_1310
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,33 @@
# mxpic.components.pdks.hgl_pdk_A
```{eval-rst}
.. automodule:: mxpic.components.pdks.hgl_pdk_A
:no-members:
```
## DC_bend_50_50_Cband
```{eval-rst}
.. autoclass:: mxpic.components.pdks.hgl_pdk_A.DC_bend_50_50_Cband
:members:
:undoc-members:
:show-inheritance:
```
## DC_bend_20_80_Cband
```{eval-rst}
.. autoclass:: mxpic.components.pdks.hgl_pdk_A.DC_bend_20_80_Cband
:members:
:undoc-members:
:show-inheritance:
```
## DC_bend_4_96_Cband
```{eval-rst}
.. autoclass:: mxpic.components.pdks.hgl_pdk_A.DC_bend_4_96_Cband
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,11 @@
# Pdks
```{toctree}
:maxdepth: 2
AMF_pdk
CUMEC_pdk
IMECAS_pdk
hgl_pdk_A
qy_pdk_A
```
@@ -0,0 +1,51 @@
# mxpic.components.pdks.qy_pdk_A
```{eval-rst}
.. automodule:: mxpic.components.pdks.qy_pdk_A
:no-members:
```
## DC_pX3_50_50_Cband
```{eval-rst}
.. autoclass:: mxpic.components.pdks.qy_pdk_A.DC_pX3_50_50_Cband
:members:
:undoc-members:
:show-inheritance:
```
## MMG_1D_D14um_1550_2modes
```{eval-rst}
.. autoclass:: mxpic.components.pdks.qy_pdk_A.MMG_1D_D14um_1550_2modes
:members:
:undoc-members:
:show-inheritance:
```
## MDM_ADC_TE1_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.qy_pdk_A.MDM_ADC_TE1_1550
:members:
:undoc-members:
:show-inheritance:
```
## MDM_ADC_TE2_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.qy_pdk_A.MDM_ADC_TE2_1550
:members:
:undoc-members:
:show-inheritance:
```
## MDM_ADC_TE3_1550
```{eval-rst}
.. autoclass:: mxpic.components.pdks.qy_pdk_A.MDM_ADC_TE3_1550
:members:
:undoc-members:
:show-inheritance:
```
+6
View File
@@ -0,0 +1,6 @@
# mxpic.components.pins
```{eval-rst}
.. automodule:: mxpic.components.pins
:no-members:
```
@@ -17,4 +17,3 @@
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,33 @@
# mxpic.components.primitives.active.dev_ps
```{eval-rst}
.. automodule:: mxpic.components.primitives.active.dev_ps
:no-members:
```
## Route
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.dev_ps.Route
:members:
:undoc-members:
:show-inheritance:
```
## Heater_NDoped
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.dev_ps.Heater_NDoped
:members:
:undoc-members:
:show-inheritance:
```
## PS_PIN
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.dev_ps.PS_PIN
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,9 @@
# Active
```{toctree}
:maxdepth: 2
dev_ps
pin_wg
rings
```
@@ -0,0 +1,24 @@
# mxpic.components.primitives.active.pin_wg
```{eval-rst}
.. automodule:: mxpic.components.primitives.active.pin_wg
:no-members:
```
## waveguide_PIN
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.pin_wg.waveguide_PIN
:members:
:undoc-members:
:show-inheritance:
```
## WGDoped
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.pin_wg.WGDoped
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,60 @@
# mxpic.components.primitives.active.rings
```{eval-rst}
.. automodule:: mxpic.components.primitives.active.rings
:no-members:
```
## Route
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.rings.Route
:members:
:undoc-members:
:show-inheritance:
```
## AED_Ring_PIN
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.rings.AED_Ring_PIN
:members:
:undoc-members:
:show-inheritance:
```
## STD_Ring_PIN
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.rings.STD_Ring_PIN
:members:
:undoc-members:
:show-inheritance:
```
## PIN_MRR_MM_Allpass
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.rings.PIN_MRR_MM_Allpass
:members:
:undoc-members:
:show-inheritance:
```
## PIN_MRR_MM_Adddrop
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.rings.PIN_MRR_MM_Adddrop
:members:
:undoc-members:
:show-inheritance:
```
## PIN_MRR_STD_Allpass
```{eval-rst}
.. autoclass:: mxpic.components.primitives.active.rings.PIN_MRR_STD_Allpass
:members:
:undoc-members:
:show-inheritance:
```
@@ -30,4 +30,3 @@
:undoc-members:
:show-inheritance:
```
@@ -5,6 +5,19 @@
:no-members:
```
## ring_bus_wg
```{eval-rst}
.. image:: ring_bus_wg.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.directional_couplers.ring_bus_wg
:members:
:undoc-members:
:show-inheritance:
```
## ADC_STD_2x2
```{eval-rst}
@@ -18,6 +31,19 @@
:show-inheritance:
```
## DC
```{eval-rst}
.. image:: DC.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.directional_couplers.DC
:members:
:undoc-members:
:show-inheritance:
```
## BS_tdc
```{eval-rst}
@@ -31,14 +57,14 @@
:show-inheritance:
```
## DC
## MDM
```{eval-rst}
.. image:: DC.png
.. image:: MDM.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.directional_couplers.DC
.. autoclass:: mxpic.components.primitives.directional_couplers.MDM
:members:
:undoc-members:
:show-inheritance:
@@ -69,30 +95,3 @@
:undoc-members:
:show-inheritance:
```
## MDM
```{eval-rst}
.. image:: MDM.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.directional_couplers.MDM
:members:
:undoc-members:
:show-inheritance:
```
## ring_bus_wg
```{eval-rst}
.. image:: ring_bus_wg.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.directional_couplers.ring_bus_wg
:members:
:undoc-members:
:show-inheritance:
```
@@ -5,84 +5,6 @@
:no-members:
```
## FA
```{eval-rst}
.. image:: FA.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.FA
:members:
:undoc-members:
:show-inheritance:
```
## GC_STD_1D
```{eval-rst}
.. image:: GC_STD_1D.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.GC_STD_1D
:members:
:undoc-members:
:show-inheritance:
```
## GC_STD_2D
```{eval-rst}
.. image:: GC_STD_2D.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.GC_STD_2D
:members:
:undoc-members:
:show-inheritance:
```
## Grating_2D_Hole
```{eval-rst}
.. image:: Grating_2D_Hole.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.Grating_2D_Hole
:members:
:undoc-members:
:show-inheritance:
```
## Grating_2D_Hole_3Rec
```{eval-rst}
.. image:: Grating_2D_Hole_3Rec.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.Grating_2D_Hole_3Rec
:members:
:undoc-members:
:show-inheritance:
```
## Grating_2D_Hole_4Rec
```{eval-rst}
.. image:: Grating_2D_Hole_4Rec.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.Grating_2D_Hole_4Rec
:members:
:undoc-members:
:show-inheritance:
```
## Nano_ant
```{eval-rst}
@@ -109,3 +31,59 @@
:show-inheritance:
```
## Grating_2D_Hole
```{eval-rst}
.. image:: Grating_2D_Hole.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.Grating_2D_Hole
:members:
:undoc-members:
:show-inheritance:
```
## GC_STD_2D
```{eval-rst}
.. image:: GC_STD_2D.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.GC_STD_2D
:members:
:undoc-members:
:show-inheritance:
```
## GC_STD_1D
```{eval-rst}
.. image:: GC_STD_1D.png
:align: center
:width: 600px
.. autoclass:: mxpic.components.primitives.grating_couplers.GC_STD_1D
:members:
:undoc-members:
:show-inheritance:
```
## FA
```{eval-rst}
.. autoclass:: mxpic.components.primitives.grating_couplers.FA
:members:
:undoc-members:
:show-inheritance:
```
## GC_SiN_Si_Dual_Layer
```{eval-rst}
.. autoclass:: mxpic.components.primitives.grating_couplers.GC_SiN_Si_Dual_Layer
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,15 @@
# Primitives
```{toctree}
:maxdepth: 2
active/index
passive/index
pic/index
EC_dual_layer_px3
beam_splitters
directional_couplers
grating_couplers
multimode_interferometers
spiral
```
@@ -30,4 +30,3 @@
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,69 @@
# mxpic.components.primitives.passive.crows
```{eval-rst}
.. automodule:: mxpic.components.primitives.passive.crows
:no-members:
```
## STD_CROW_V
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.crows.STD_CROW_V
:members:
:undoc-members:
:show-inheritance:
```
## CROW_Eul_Ring
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.crows.CROW_Eul_Ring
:members:
:undoc-members:
:show-inheritance:
```
## CROW_Eul_RCK
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.crows.CROW_Eul_RCK
:members:
:undoc-members:
:show-inheritance:
```
## CROW_Circular_ring
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.crows.CROW_Circular_ring
:members:
:undoc-members:
:show-inheritance:
```
## CROW_STD_Allpass
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.crows.CROW_STD_Allpass
:members:
:undoc-members:
:show-inheritance:
```
## CROW_STD_Adddrop
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.crows.CROW_STD_Adddrop
:members:
:undoc-members:
:show-inheritance:
```
## CROW_AED
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.crows.CROW_AED
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,9 @@
# Passive
```{toctree}
:maxdepth: 2
crows
rings
unit
```
@@ -0,0 +1,132 @@
# mxpic.components.primitives.passive.rings
```{eval-rst}
.. automodule:: mxpic.components.primitives.passive.rings
:no-members:
```
## Route
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.Route
:members:
:undoc-members:
:show-inheritance:
```
## SOCR
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.SOCR
:members:
:undoc-members:
:show-inheritance:
```
## SOCR_Cband
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.SOCR_Cband
:members:
:undoc-members:
:show-inheritance:
```
## SOCR_Adiabatic
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.SOCR_Adiabatic
:members:
:undoc-members:
:show-inheritance:
```
## SOCR_Adiabatic_Cband
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.SOCR_Adiabatic_Cband
:members:
:undoc-members:
:show-inheritance:
```
## MRR_AED
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.MRR_AED
:members:
:undoc-members:
:show-inheritance:
```
## MRR_STD_Ring
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.MRR_STD_Ring
:members:
:undoc-members:
:show-inheritance:
```
## MRR_STD_Allpass
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.MRR_STD_Allpass
:members:
:undoc-members:
:show-inheritance:
```
## MRR_STD_Adddrop
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.MRR_STD_Adddrop
:members:
:undoc-members:
:show-inheritance:
```
## MRR_MM_Allpass
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.MRR_MM_Allpass
:members:
:undoc-members:
:show-inheritance:
```
## MRR_MM_Adddrop
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.MRR_MM_Adddrop
:members:
:undoc-members:
:show-inheritance:
```
## MRR_DW_Adddrop
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.MRR_DW_Adddrop
:members:
:undoc-members:
:show-inheritance:
```
## MRR_DW_Allpass
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.MRR_DW_Allpass
:members:
:undoc-members:
:show-inheritance:
```
## STD_ring_AMZI_adddrop
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.rings.STD_ring_AMZI_adddrop
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,51 @@
# mxpic.components.primitives.passive.unit
```{eval-rst}
.. automodule:: mxpic.components.primitives.passive.unit
:no-members:
```
## waveguide
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.unit.waveguide
:members:
:undoc-members:
:show-inheritance:
```
## PS_2st
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.unit.PS_2st
:members:
:undoc-members:
:show-inheritance:
```
## PS_2st_Straight
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.unit.PS_2st_Straight
:members:
:undoc-members:
:show-inheritance:
```
## PSR_1x2
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.unit.PSR_1x2
:members:
:undoc-members:
:show-inheritance:
```
## Brag_WDM
```{eval-rst}
.. autoclass:: mxpic.components.primitives.passive.unit.Brag_WDM
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,15 @@
# mxpic.components.primitives.pic.PBS
```{eval-rst}
.. automodule:: mxpic.components.primitives.pic.PBS
:no-members:
```
## PBS_3wg
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.PBS.PBS_3wg
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,24 @@
# mxpic.components.primitives.pic.YBS
```{eval-rst}
.. automodule:: mxpic.components.primitives.pic.YBS
:no-members:
```
## YBranch
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.YBS.YBranch
:members:
:undoc-members:
:show-inheritance:
```
## Ybranch_3wg
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.YBS.Ybranch_3wg
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,24 @@
# mxpic.components.primitives.pic.bragg
```{eval-rst}
.. automodule:: mxpic.components.primitives.pic.bragg
:no-members:
```
## Bragg_apodized
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.bragg.Bragg_apodized
:members:
:undoc-members:
:show-inheritance:
```
## Bragg
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.bragg.Bragg
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,69 @@
# mxpic.components.primitives.pic.couplers
```{eval-rst}
.. automodule:: mxpic.components.primitives.pic.couplers
:no-members:
```
## ring_bus_wg
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.couplers.ring_bus_wg
:members:
:undoc-members:
:show-inheritance:
```
## ADC_STD_2x2
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.couplers.ADC_STD_2x2
:members:
:undoc-members:
:show-inheritance:
```
## DC
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.couplers.DC
:members:
:undoc-members:
:show-inheritance:
```
## BS_tdc
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.couplers.BS_tdc
:members:
:undoc-members:
:show-inheritance:
```
## MDM
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.couplers.MDM
:members:
:undoc-members:
:show-inheritance:
```
## DC_bend
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.couplers.DC_bend
:members:
:undoc-members:
:show-inheritance:
```
## DC_pX_3sg
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.couplers.DC_pX_3sg
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,24 @@
# mxpic.components.primitives.pic.cross
```{eval-rst}
.. automodule:: mxpic.components.primitives.pic.cross
:no-members:
```
## Cross
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.cross.Cross
:members:
:undoc-members:
:show-inheritance:
```
## Cross_Sine
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.cross.Cross_Sine
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,78 @@
# mxpic.components.primitives.pic.gratings
```{eval-rst}
.. automodule:: mxpic.components.primitives.pic.gratings
:no-members:
```
## Nano_ant
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.gratings.Nano_ant
:members:
:undoc-members:
:show-inheritance:
```
## Taper
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.gratings.Taper
:members:
:undoc-members:
:show-inheritance:
```
## Grating_2D_Hole
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.gratings.Grating_2D_Hole
:members:
:undoc-members:
:show-inheritance:
```
## Grating_2D_Hole_4Rec
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.gratings.Grating_2D_Hole_4Rec
:members:
:undoc-members:
:show-inheritance:
```
## Grating_2D_Hole_3Rec
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.gratings.Grating_2D_Hole_3Rec
:members:
:undoc-members:
:show-inheritance:
```
## GC_STD_2D
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.gratings.GC_STD_2D
:members:
:undoc-members:
:show-inheritance:
```
## GC_STD_1D
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.gratings.GC_STD_1D
:members:
:undoc-members:
:show-inheritance:
```
## FA
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.gratings.FA
:members:
:undoc-members:
:show-inheritance:
```
@@ -0,0 +1,17 @@
# Pic
```{toctree}
:maxdepth: 2
PBS
YBS
bragg
couplers
cross
gratings
mmi
racetrack
rings
spiral
taper
```
@@ -0,0 +1,24 @@
# mxpic.components.primitives.pic.mmi
```{eval-rst}
.. automodule:: mxpic.components.primitives.pic.mmi
:no-members:
```
## MMI_ML
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.mmi.MMI_ML
:members:
:undoc-members:
:show-inheritance:
```
## MMI_STD
```{eval-rst}
.. autoclass:: mxpic.components.primitives.pic.mmi.MMI_STD
:members:
:undoc-members:
:show-inheritance:
```

Some files were not shown because too many files have changed in this diff Show More