Technolgy file archetecture revised with dictionary input method
This commit is contained in:
+291
-6
@@ -375,12 +375,54 @@
|
||||
|
||||
<section id="module-mxpic.components.composites.MZI">
|
||||
<span id="mxpic-components-composites-mzi"></span><h1>mxpic.components.composites.MZI<a class="headerlink" href="#module-mxpic.components.composites.MZI" title="Link to this heading">#</a></h1>
|
||||
<p>Mach-Zehnder interferometer composite layouts.</p>
|
||||
<section id="mzi">
|
||||
<h2>MZI<a class="headerlink" href="#mzi" title="Link to this heading">#</a></h2>
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI">
|
||||
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mxpic.components.composites.MZI.</span></span><span class="sig-name descname"><span class="pre">MZI</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_wg</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'strip'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_wg</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.45</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dL_Amzi</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_arm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">150</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">R_bend</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">D_arm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">75</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">D_port</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_arm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_heater</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'heater'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_heater</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ltp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">15</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_metal</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'metal'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_metal</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">via_h2m</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">isl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">outer_isl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dual_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS2</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sharp_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">show_pins</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>Mach-Zehnder interferometer with optional heaters and isolation.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>name</strong> (<em>str</em><em>, </em><em>optional</em>) – Nazca cell name. If omitted, the generated cell is not instantiated.</p></li>
|
||||
<li><p><strong>xs_wg</strong> (<em>str</em><em>, </em><em>optional</em>) – Optical waveguide cross-section name.</p></li>
|
||||
<li><p><strong>w_wg</strong> (<em>float</em><em>, </em><em>optional</em>) – Input and output waveguide width in microns.</p></li>
|
||||
<li><p><strong>dL_Amzi</strong> (<em>float</em><em>, </em><em>optional</em>) – Differential arm length for asymmetric MZI operation.</p></li>
|
||||
<li><p><strong>L_arm</strong> (<em>int</em><em>, </em><em>optional</em>) – Nominal straight arm length.</p></li>
|
||||
<li><p><strong>R_bend</strong> (<em>int</em><em>, </em><em>optional</em>) – Bend radius used by internal routing.</p></li>
|
||||
<li><p><strong>D_arm</strong> (<em>int</em><em>, </em><em>optional</em>) – Vertical distance between interferometer arms.</p></li>
|
||||
<li><p><strong>D_port</strong> (<em>Any</em><em>, </em><em>optional</em>) – Output port pitch. If omitted, the beam splitter port pitch is used.</p></li>
|
||||
<li><p><strong>w_arm</strong> (<em>float</em><em>, </em><em>optional</em>) – Internal arm waveguide width.</p></li>
|
||||
<li><p><strong>xs_heater</strong> (<em>str</em><em>, </em><em>optional</em>) – Heater cross-section name.</p></li>
|
||||
<li><p><strong>w_heater</strong> (<em>float</em><em>, </em><em>optional</em>) – Heater width. Use 0 to disable heater drawing.</p></li>
|
||||
<li><p><strong>Ltp</strong> (<em>int</em><em>, </em><em>optional</em>) – Taper length between bus and arm widths.</p></li>
|
||||
<li><p><strong>xs_metal</strong> (<em>str</em><em>, </em><em>optional</em>) – Metal routing cross-section name.</p></li>
|
||||
<li><p><strong>w_metal</strong> (<em>float</em><em>, </em><em>optional</em>) – Metal routing width.</p></li>
|
||||
<li><p><strong>via_h2m</strong> (<em>Any</em><em>, </em><em>optional</em>) – Heater-to-metal via object or cell.</p></li>
|
||||
<li><p><strong>isl</strong> (<em>Any</em><em>, </em><em>optional</em>) – Isolation trench object or cell.</p></li>
|
||||
<li><p><strong>outer_isl</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add outer isolation structures.</p></li>
|
||||
<li><p><strong>dual_ht</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add heaters on both arms.</p></li>
|
||||
<li><p><strong>L_patch</strong> (<em>float</em><em>, </em><em>optional</em>) – Straight patch length at routing interfaces.</p></li>
|
||||
<li><p><strong>BS</strong> (<em>Any</em><em>, </em><em>optional</em>) – First beam splitter cell or object. If omitted, a default DC is used.</p></li>
|
||||
<li><p><strong>BS2</strong> (<em>Any</em><em>, </em><em>optional</em>) – Second beam splitter cell or object. If omitted, <code class="docutils literal notranslate"><span class="pre">BS</span></code> is reused.</p></li>
|
||||
<li><p><strong>sharp_patch</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add cladding patches around sharp geometry features.</p></li>
|
||||
<li><p><strong>show_pins</strong> (<em>bool</em><em>, </em><em>optional</em>) – Show Nazca pin stubs in the generated layout.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="py attribute">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI.cell">
|
||||
<span class="sig-name descname"><span class="pre">cell</span></span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI.cell" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Generated MZI layout cell.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Type<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><p>nazca.Cell</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
@@ -390,6 +432,46 @@
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_NS">
|
||||
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mxpic.components.composites.MZI.</span></span><span class="sig-name descname"><span class="pre">MZI_NS</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_wg</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ln</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ls</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ltp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">R_bend</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_wg</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_patch</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">D_arm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">40</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L12</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_heater</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">via_h2m</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">isl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">show_pins</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">D_port</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sharp_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dual_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_NS" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>Nested-straight MZI composite with taperable arm widths.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>name</strong> (<em>str</em>) – Nazca cell name.</p></li>
|
||||
<li><p><strong>BS</strong> (<em>Any</em>) – Beam splitter cell or object used at both splitter positions.</p></li>
|
||||
<li><p><strong>xs_wg</strong> (<em>str</em>) – Optical waveguide cross-section name.</p></li>
|
||||
<li><p><strong>w1</strong> (<em>float</em>) – Input/output waveguide width.</p></li>
|
||||
<li><p><strong>w2</strong> (<em>float</em>) – Internal arm waveguide width.</p></li>
|
||||
<li><p><strong>L0</strong> (<em>Any</em>) – Input/output straight section length.</p></li>
|
||||
<li><p><strong>Ln</strong> (<em>Any</em>) – Length of the nominal arm section.</p></li>
|
||||
<li><p><strong>Ls</strong> (<em>Any</em>) – Length of the shifted arm section.</p></li>
|
||||
<li><p><strong>Ltp</strong> (<em>Any</em>) – Taper length between <code class="docutils literal notranslate"><span class="pre">w1</span></code> and <code class="docutils literal notranslate"><span class="pre">w2</span></code>.</p></li>
|
||||
<li><p><strong>R_bend</strong> (<em>Any</em>) – Bend radius used by the arm routing.</p></li>
|
||||
<li><p><strong>w_wg</strong> (<em>float</em>) – Optical waveguide width used for ports and routing.</p></li>
|
||||
<li><p><strong>L_patch</strong> (<em>Any</em>) – Straight patch length at routing interfaces.</p></li>
|
||||
<li><p><strong>D_arm</strong> (<em>int</em><em>, </em><em>optional</em>) – Vertical distance between interferometer arms.</p></li>
|
||||
<li><p><strong>L12</strong> (<em>Any</em><em>, </em><em>optional</em>) – Optional length between the first and second beam splitter regions.</p></li>
|
||||
<li><p><strong>w_heater</strong> (<em>float</em><em>, </em><em>optional</em>) – Heater width. Use 0 to disable heater drawing.</p></li>
|
||||
<li><p><strong>L_ht</strong> (<em>Any</em><em>, </em><em>optional</em>) – Heater length override.</p></li>
|
||||
<li><p><strong>via_h2m</strong> (<em>Any</em><em>, </em><em>optional</em>) – Heater-to-metal via object or cell.</p></li>
|
||||
<li><p><strong>isl</strong> (<em>Any</em><em>, </em><em>optional</em>) – Isolation trench object or cell.</p></li>
|
||||
<li><p><strong>show_pins</strong> (<em>bool</em><em>, </em><em>optional</em>) – Show Nazca pin stubs in the generated layout.</p></li>
|
||||
<li><p><strong>D_port</strong> (<em>Any</em><em>, </em><em>optional</em>) – Output port pitch override.</p></li>
|
||||
<li><p><strong>sharp_patch</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add cladding patches around sharp geometry features.</p></li>
|
||||
<li><p><strong>dual_ht</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add heaters on both arms.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="py attribute">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_NS.cell">
|
||||
<span class="sig-name descname"><span class="pre">cell</span></span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_NS.cell" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Generated nested-straight MZI layout cell.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Type<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><p>nazca.Cell</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
@@ -399,6 +481,45 @@
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_NS_ubend">
|
||||
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mxpic.components.composites.MZI.</span></span><span class="sig-name descname"><span class="pre">MZI_NS_ubend</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_wg</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ln</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ls</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ltp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">R_bend</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_wg</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_patch</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L12</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">via_h2m</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">isl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">show_pins</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">D_port</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sharp_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dual_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_NS_ubend" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>Nested-straight MZI composite using U-bend arm routing.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>name</strong> (<em>str</em>) – Nazca cell name.</p></li>
|
||||
<li><p><strong>BS</strong> (<em>Any</em>) – Beam splitter cell or object used at both splitter positions.</p></li>
|
||||
<li><p><strong>xs_wg</strong> (<em>str</em>) – Optical waveguide cross-section name.</p></li>
|
||||
<li><p><strong>w1</strong> (<em>float</em>) – Input/output waveguide width.</p></li>
|
||||
<li><p><strong>w2</strong> (<em>float</em>) – Internal arm waveguide width.</p></li>
|
||||
<li><p><strong>L0</strong> (<em>Any</em>) – Input/output straight section length.</p></li>
|
||||
<li><p><strong>Ln</strong> (<em>Any</em>) – Length of the nominal arm section.</p></li>
|
||||
<li><p><strong>Ls</strong> (<em>Any</em>) – Length of the shifted arm section.</p></li>
|
||||
<li><p><strong>Ltp</strong> (<em>Any</em>) – Taper length between <code class="docutils literal notranslate"><span class="pre">w1</span></code> and <code class="docutils literal notranslate"><span class="pre">w2</span></code>.</p></li>
|
||||
<li><p><strong>R_bend</strong> (<em>Any</em>) – Bend radius used by the U-bends.</p></li>
|
||||
<li><p><strong>w_wg</strong> (<em>float</em>) – Optical waveguide width used for ports and routing.</p></li>
|
||||
<li><p><strong>L_patch</strong> (<em>Any</em>) – Straight patch length at routing interfaces.</p></li>
|
||||
<li><p><strong>L12</strong> (<em>Any</em><em>, </em><em>optional</em>) – Optional length between splitter regions.</p></li>
|
||||
<li><p><strong>w_ht</strong> (<em>float</em><em>, </em><em>optional</em>) – Heater width. Use 0 to disable heater drawing.</p></li>
|
||||
<li><p><strong>L_ht</strong> (<em>int</em><em>, </em><em>optional</em>) – Heater length override.</p></li>
|
||||
<li><p><strong>via_h2m</strong> (<em>Any</em><em>, </em><em>optional</em>) – Heater-to-metal via object or cell.</p></li>
|
||||
<li><p><strong>isl</strong> (<em>Any</em><em>, </em><em>optional</em>) – Isolation trench object or cell.</p></li>
|
||||
<li><p><strong>show_pins</strong> (<em>bool</em><em>, </em><em>optional</em>) – Show Nazca pin stubs in the generated layout.</p></li>
|
||||
<li><p><strong>D_port</strong> (<em>Any</em><em>, </em><em>optional</em>) – Output port pitch override.</p></li>
|
||||
<li><p><strong>sharp_patch</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add cladding patches around sharp geometry features.</p></li>
|
||||
<li><p><strong>dual_ht</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add heaters on both arms.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="py attribute">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_NS_ubend.cell">
|
||||
<span class="sig-name descname"><span class="pre">cell</span></span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_NS_ubend.cell" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Generated U-bend MZI layout cell.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Type<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><p>nazca.Cell</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
@@ -408,6 +529,43 @@
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_2st_ubend">
|
||||
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mxpic.components.composites.MZI.</span></span><span class="sig-name descname"><span class="pre">MZI_2st_ubend</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS3</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_wg</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ln1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ls1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ln2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ls2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ltp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">R_bend</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_wg</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_patch</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">via_h2m</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">isl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L12</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_2st_ubend" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>Two-stage U-bend MZI composite with three beam splitters.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>name</strong> (<em>str</em>) – Nazca cell name.</p></li>
|
||||
<li><p><strong>BS1</strong> (<em>Any</em>) – Beam splitter cells or objects for the three splitter stages.</p></li>
|
||||
<li><p><strong>BS2</strong> (<em>Any</em>) – Beam splitter cells or objects for the three splitter stages.</p></li>
|
||||
<li><p><strong>BS3</strong> (<em>Any</em>) – Beam splitter cells or objects for the three splitter stages.</p></li>
|
||||
<li><p><strong>xs_wg</strong> (<em>str</em>) – Optical waveguide cross-section name.</p></li>
|
||||
<li><p><strong>w1</strong> (<em>float</em>) – Input/output waveguide width.</p></li>
|
||||
<li><p><strong>w2</strong> (<em>float</em>) – Internal arm waveguide width.</p></li>
|
||||
<li><p><strong>L0</strong> (<em>Any</em>) – Input/output straight section length.</p></li>
|
||||
<li><p><strong>Ln1</strong> (<em>Any</em>) – Nominal and shifted arm lengths for the first stage.</p></li>
|
||||
<li><p><strong>Ls1</strong> (<em>Any</em>) – Nominal and shifted arm lengths for the first stage.</p></li>
|
||||
<li><p><strong>Ln2</strong> (<em>Any</em>) – Nominal and shifted arm lengths for the second stage.</p></li>
|
||||
<li><p><strong>Ls2</strong> (<em>Any</em>) – Nominal and shifted arm lengths for the second stage.</p></li>
|
||||
<li><p><strong>Ltp</strong> (<em>Any</em>) – Taper length between <code class="docutils literal notranslate"><span class="pre">w1</span></code> and <code class="docutils literal notranslate"><span class="pre">w2</span></code>.</p></li>
|
||||
<li><p><strong>R_bend</strong> (<em>Any</em>) – Bend radius used by U-bend routing.</p></li>
|
||||
<li><p><strong>w_wg</strong> (<em>float</em>) – Optical waveguide width used for ports and routing.</p></li>
|
||||
<li><p><strong>L_patch</strong> (<em>Any</em>) – Straight patch length at routing interfaces.</p></li>
|
||||
<li><p><strong>via_h2m</strong> (<em>Any</em><em>, </em><em>optional</em>) – Heater-to-metal via object or cell.</p></li>
|
||||
<li><p><strong>isl</strong> (<em>Any</em><em>, </em><em>optional</em>) – Isolation trench object or cell.</p></li>
|
||||
<li><p><strong>L12</strong> (<em>Any</em><em>, </em><em>optional</em>) – Optional length between beam splitter regions.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="py attribute">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_2st_ubend.cell">
|
||||
<span class="sig-name descname"><span class="pre">cell</span></span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_2st_ubend.cell" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Generated two-stage MZI layout cell.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Type<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><p>nazca.Cell</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
@@ -417,6 +575,38 @@
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_Eubend">
|
||||
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mxpic.components.composites.MZI.</span></span><span class="sig-name descname"><span class="pre">MZI_Eubend</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_arm</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_wg</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_arm</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dL_Amzi</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_patch</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_wg</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Rmax</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">30</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Rmin</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dL</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_arm_min</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">show_pins</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sharp_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_Eubend" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>Euler U-bend MZI composite for compact asymmetric routing.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>name</strong> (<em>str</em>) – Nazca cell name.</p></li>
|
||||
<li><p><strong>BS</strong> (<em>Any</em>) – Beam splitter cell or object.</p></li>
|
||||
<li><p><strong>w_arm</strong> (<em>float</em>) – Internal arm waveguide width.</p></li>
|
||||
<li><p><strong>w_wg</strong> (<em>float</em>) – Input/output waveguide width.</p></li>
|
||||
<li><p><strong>L_arm</strong> (<em>Any</em>) – Nominal straight arm length.</p></li>
|
||||
<li><p><strong>dL_Amzi</strong> (<em>float</em>) – Differential length for asymmetric MZI operation.</p></li>
|
||||
<li><p><strong>L_patch</strong> (<em>Any</em>) – Straight patch length at routing interfaces.</p></li>
|
||||
<li><p><strong>xs_wg</strong> (<em>str</em>) – Optical waveguide cross-section name.</p></li>
|
||||
<li><p><strong>Rmax</strong> (<em>int</em><em>, </em><em>optional</em>) – Maximum Euler bend radius.</p></li>
|
||||
<li><p><strong>Rmin</strong> (<em>int</em><em>, </em><em>optional</em>) – Minimum Euler bend radius.</p></li>
|
||||
<li><p><strong>dL</strong> (<em>float</em><em>, </em><em>optional</em>) – Length-search resolution for the Euler compensation.</p></li>
|
||||
<li><p><strong>w_arm_min</strong> (<em>float</em><em>, </em><em>optional</em>) – Minimum arm width used during tapering.</p></li>
|
||||
<li><p><strong>show_pins</strong> (<em>bool</em><em>, </em><em>optional</em>) – Show Nazca pin stubs in the generated layout.</p></li>
|
||||
<li><p><strong>sharp_patch</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add cladding patches around sharp geometry features.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="py attribute">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_Eubend.cell">
|
||||
<span class="sig-name descname"><span class="pre">cell</span></span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_Eubend.cell" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Generated Euler U-bend MZI layout cell.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Type<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><p>nazca.Cell</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
@@ -426,6 +616,41 @@
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_Ubend">
|
||||
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mxpic.components.composites.MZI.</span></span><span class="sig-name descname"><span class="pre">MZI_Ubend</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_arm</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_wg</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'strip'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_arm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_tp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">R_bend</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_wg</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.45</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">via_h2m</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">isl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">show_pins</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">D_port</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sharp_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dual_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_Ubend" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="#mxpic.components.composites.MZI.MZI_NS_ubend" title="mxpic.components.composites.MZI.MZI_NS_ubend"><code class="xref py py-class docutils literal notranslate"><span class="pre">MZI_NS_ubend</span></code></a></p>
|
||||
<p>Convenience U-bend MZI wrapper with default width handling.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>name</strong> (<em>str</em>) – Nazca cell name.</p></li>
|
||||
<li><p><strong>BS</strong> (<em>Any</em>) – Beam splitter cell or object.</p></li>
|
||||
<li><p><strong>L_arm</strong> (<em>Any</em>) – Nominal arm length.</p></li>
|
||||
<li><p><strong>xs_wg</strong> (<em>str</em><em>, </em><em>optional</em>) – Optical waveguide cross-section name.</p></li>
|
||||
<li><p><strong>w_arm</strong> (<em>float</em><em>, </em><em>optional</em>) – Internal arm waveguide width.</p></li>
|
||||
<li><p><strong>L_tp</strong> (<em>int</em><em>, </em><em>optional</em>) – Taper length between bus and arm widths.</p></li>
|
||||
<li><p><strong>R_bend</strong> (<em>int</em><em>, </em><em>optional</em>) – Bend radius used by U-bend routing.</p></li>
|
||||
<li><p><strong>w_wg</strong> (<em>float</em><em>, </em><em>optional</em>) – Input/output waveguide width.</p></li>
|
||||
<li><p><strong>L_patch</strong> (<em>float</em><em>, </em><em>optional</em>) – Straight patch length at routing interfaces.</p></li>
|
||||
<li><p><strong>w_ht</strong> (<em>float</em><em>, </em><em>optional</em>) – Heater width. Use 0 to disable heater drawing.</p></li>
|
||||
<li><p><strong>L_ht</strong> (<em>int</em><em>, </em><em>optional</em>) – Heater length override.</p></li>
|
||||
<li><p><strong>via_h2m</strong> (<em>Any</em><em>, </em><em>optional</em>) – Heater-to-metal via object or cell.</p></li>
|
||||
<li><p><strong>isl</strong> (<em>Any</em><em>, </em><em>optional</em>) – Isolation trench object or cell.</p></li>
|
||||
<li><p><strong>show_pins</strong> (<em>bool</em><em>, </em><em>optional</em>) – Show Nazca pin stubs in the generated layout.</p></li>
|
||||
<li><p><strong>D_port</strong> (<em>Any</em><em>, </em><em>optional</em>) – Output port pitch override.</p></li>
|
||||
<li><p><strong>sharp_patch</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add cladding patches around sharp geometry features.</p></li>
|
||||
<li><p><strong>dual_ht</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add heaters on both arms.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="py attribute">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_Ubend.cell">
|
||||
<span class="sig-name descname"><span class="pre">cell</span></span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_Ubend.cell" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Generated U-bend MZI layout cell.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Type<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><p>nazca.Cell</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
@@ -435,6 +660,47 @@
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_Butterfly">
|
||||
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mxpic.components.composites.MZI.</span></span><span class="sig-name descname"><span class="pre">MZI_Butterfly</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_wg</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'strip'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_wg</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.45</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dL_AMZI</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_arm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">150</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_inner</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">R_bend</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">D_port</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_arm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'heater'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Ltp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">15</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">xs_metal</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'metal'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">w_metal</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">via_h2m</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">isl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">outer_isl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dual_ht</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">L_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">BS2</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sharp_patch</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">show_pins</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_Butterfly" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>Butterfly-style MZI composite with compact folded arms.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>name</strong> (<em>str</em><em>, </em><em>optional</em>) – Nazca cell name. If omitted, the generated cell is not instantiated.</p></li>
|
||||
<li><p><strong>xs_wg</strong> (<em>str</em><em>, </em><em>optional</em>) – Optical waveguide cross-section name.</p></li>
|
||||
<li><p><strong>w_wg</strong> (<em>float</em><em>, </em><em>optional</em>) – Input and output waveguide width in microns.</p></li>
|
||||
<li><p><strong>dL_AMZI</strong> (<em>float</em><em>, </em><em>optional</em>) – Differential arm length for asymmetric MZI operation.</p></li>
|
||||
<li><p><strong>L_arm</strong> (<em>int</em><em>, </em><em>optional</em>) – Nominal straight arm length.</p></li>
|
||||
<li><p><strong>L_inner</strong> (<em>int</em><em>, </em><em>optional</em>) – Inner straight section length used by the butterfly fold.</p></li>
|
||||
<li><p><strong>R_bend</strong> (<em>int</em><em>, </em><em>optional</em>) – Bend radius used by internal routing.</p></li>
|
||||
<li><p><strong>D_port</strong> (<em>Any</em><em>, </em><em>optional</em>) – Output port pitch. If omitted, beam splitter pitch is used.</p></li>
|
||||
<li><p><strong>w_arm</strong> (<em>float</em><em>, </em><em>optional</em>) – Internal arm waveguide width.</p></li>
|
||||
<li><p><strong>xs_ht</strong> (<em>str</em><em>, </em><em>optional</em>) – Heater cross-section name.</p></li>
|
||||
<li><p><strong>w_ht</strong> (<em>float</em><em>, </em><em>optional</em>) – Heater width. Use 0 to disable heater drawing.</p></li>
|
||||
<li><p><strong>Ltp</strong> (<em>int</em><em>, </em><em>optional</em>) – Taper length between bus and arm widths.</p></li>
|
||||
<li><p><strong>xs_metal</strong> (<em>str</em><em>, </em><em>optional</em>) – Metal routing cross-section name.</p></li>
|
||||
<li><p><strong>w_metal</strong> (<em>float</em><em>, </em><em>optional</em>) – Metal routing width.</p></li>
|
||||
<li><p><strong>via_h2m</strong> (<em>Any</em><em>, </em><em>optional</em>) – Heater-to-metal via object or cell.</p></li>
|
||||
<li><p><strong>isl</strong> (<em>Any</em><em>, </em><em>optional</em>) – Isolation trench object or cell.</p></li>
|
||||
<li><p><strong>outer_isl</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add outer isolation structures.</p></li>
|
||||
<li><p><strong>dual_ht</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add heaters on both arms.</p></li>
|
||||
<li><p><strong>L_patch</strong> (<em>float</em><em>, </em><em>optional</em>) – Straight patch length at routing interfaces.</p></li>
|
||||
<li><p><strong>BS</strong> (<em>Any</em><em>, </em><em>optional</em>) – First beam splitter cell or object. If omitted, a default DC is used.</p></li>
|
||||
<li><p><strong>BS2</strong> (<em>Any</em><em>, </em><em>optional</em>) – Second beam splitter cell or object. If omitted, <code class="docutils literal notranslate"><span class="pre">BS</span></code> is reused.</p></li>
|
||||
<li><p><strong>sharp_patch</strong> (<em>bool</em><em>, </em><em>optional</em>) – Add cladding patches around sharp geometry features.</p></li>
|
||||
<li><p><strong>show_pins</strong> (<em>bool</em><em>, </em><em>optional</em>) – Show Nazca pin stubs in the generated layout.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="py attribute">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_Butterfly.cell">
|
||||
<span class="sig-name descname"><span class="pre">cell</span></span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_Butterfly.cell" title="Link to this definition">#</a></dt>
|
||||
<dd><p>Generated butterfly MZI layout cell.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Type<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><p>nazca.Cell</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="mxpic.components.composites.MZI.MZI_Butterfly.generate_gds">
|
||||
<span class="sig-name descname"><span class="pre">generate_gds</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">show_pin</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mxpic.components.composites.MZI.MZI_Butterfly.generate_gds" title="Link to this definition">#</a></dt>
|
||||
@@ -498,31 +764,50 @@
|
||||
<nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
|
||||
<ul class="visible nav section-nav flex-column">
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mzi">MZI</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI"><code class="docutils literal notranslate"><span class="pre">MZI</span></code></a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI"><code class="docutils literal notranslate"><span class="pre">MZI</span></code></a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI.cell"><code class="docutils literal notranslate"><span class="pre">MZI.cell</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mzi-ns">MZI_NS</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_NS"><code class="docutils literal notranslate"><span class="pre">MZI_NS</span></code></a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_NS"><code class="docutils literal notranslate"><span class="pre">MZI_NS</span></code></a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_NS.cell"><code class="docutils literal notranslate"><span class="pre">MZI_NS.cell</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mzi-ns-ubend">MZI_NS_ubend</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_NS_ubend"><code class="docutils literal notranslate"><span class="pre">MZI_NS_ubend</span></code></a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_NS_ubend"><code class="docutils literal notranslate"><span class="pre">MZI_NS_ubend</span></code></a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_NS_ubend.cell"><code class="docutils literal notranslate"><span class="pre">MZI_NS_ubend.cell</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mzi-2st-ubend">MZI_2st_ubend</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_2st_ubend"><code class="docutils literal notranslate"><span class="pre">MZI_2st_ubend</span></code></a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_2st_ubend"><code class="docutils literal notranslate"><span class="pre">MZI_2st_ubend</span></code></a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_2st_ubend.cell"><code class="docutils literal notranslate"><span class="pre">MZI_2st_ubend.cell</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mzi-eubend">MZI_Eubend</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Eubend"><code class="docutils literal notranslate"><span class="pre">MZI_Eubend</span></code></a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Eubend"><code class="docutils literal notranslate"><span class="pre">MZI_Eubend</span></code></a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Eubend.cell"><code class="docutils literal notranslate"><span class="pre">MZI_Eubend.cell</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mzi-ubend">MZI_Ubend</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Ubend"><code class="docutils literal notranslate"><span class="pre">MZI_Ubend</span></code></a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Ubend"><code class="docutils literal notranslate"><span class="pre">MZI_Ubend</span></code></a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Ubend.cell"><code class="docutils literal notranslate"><span class="pre">MZI_Ubend.cell</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#mzi-butterfly">MZI_Butterfly</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Butterfly"><code class="docutils literal notranslate"><span class="pre">MZI_Butterfly</span></code></a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Butterfly.cell"><code class="docutils literal notranslate"><span class="pre">MZI_Butterfly.cell</span></code></a></li>
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Butterfly.generate_gds"><code class="docutils literal notranslate"><span class="pre">MZI_Butterfly.generate_gds()</span></code></a></li>
|
||||
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#mxpic.components.composites.MZI.MZI_Butterfly.generate_test_gds"><code class="docutils literal notranslate"><span class="pre">MZI_Butterfly.generate_test_gds()</span></code></a></li>
|
||||
</ul>
|
||||
|
||||
Reference in New Issue
Block a user