1. Cython compile system build. 2. License system build. 3. Auto md file generation for Sphinx build.

This commit is contained in:
2026-05-07 13:51:42 +08:00
parent 15610b623c
commit dda69d5b84
129 changed files with 4458 additions and 516 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 MiB

-47
View File
@@ -1,47 +0,0 @@
# Configuration file for the Sphinx documentation builder.
#
# For the full list of built-in configuration values, see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Project information -----------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
project = 'mxpic_handbook'
copyright = '2026, Qin Yue (PotatoMaxwell)'
author = 'Qin Yue (PotatoMaxwell)'
release = 'mxpic'
# -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
import os
import sys
sys.path.insert(0, os.path.abspath('..\\..\\')) # Points to your mxpic code
sys.path.insert(0, os.path.abspath('..\\')) # Points to your mxpic code
sys.path.insert(0, os.path.abspath('..\\..\\..\\')) # Points to your mxpic code
extensions = [
'sphinx.ext.autodoc', # Automatically pull docstrings
'sphinx.ext.napoleon', # Support for NumPy-style docstrings
'myst_parser', # Support for Markdown[cite: 1]
'sphinx_autodoc_typehints', # Use your Python type hints[cite: 1]
]
source_suffix = {
'.rst': 'restructuredtext',
'.md': 'markdown',
}
templates_path = ['_templates']
exclude_patterns = []
# -- Options for HTML output -------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
html_theme = "pydata_sphinx_theme"
# Apply your mxPIC colors to the theme
html_theme_options = {
"primary_color": "#6decff",
"accent_color": "#ff57c7",
}
-18
View File
@@ -1,18 +0,0 @@
.. 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 documentation
============================
Add your content using ``reStructuredText`` syntax. See the
`reStructuredText <https://www.sphinx-doc.org/en/master/usage/restructuredtext/index.html>`_
documentation for details.
Welcome to the automated documentation for the mxPIC silicon photonics library.
```{toctree}
:maxdepth: 2
:caption: Components:
primitives/edge_couplers/edge_couplers
@@ -1,25 +0,0 @@
# Edge Coupler Reference
This section covers the dual-layer edge coupler designs used for fiber-to-chip interfacing.
## Dual Layer PX3
The `EC_dual_layer_px3` is our standard spot-size converter.
```{eval-rst}
.. autoclass:: mxpic_forge.primitives.edge_couplers.EC_dual_layer_px3.EC_dual_layer_px3
:members:
:undoc-members:
:show-inheritance:
```
```{figure} ../../_static/images/ec_px3_layout.png
:width: 600px
:align: center
:alt: GDS layout of the dual-layer edge coupler
Figure 1: GDS layout of the EC_dual_layer_px3 showing the SiN-to-SOI taper transition.
```
## Design Notes
- Tapers: Ensure Ltp1, Ltp2, and Ltp3 provide enough length for adiabatic mode expansion.
- Alignment: The angle_tile parameter (default 8°) is critical for reducing back-reflections.