Skip to content

Conversation

@tomflexcompute
Copy link
Contributor

This PR applied some minor formatting edits and fixes to a few recent notebooks.

@github-actions
Copy link
Contributor

github-actions bot commented Nov 5, 2025

Spell Check Report

PINMachZehnder.ipynb:

Cell 1, Line 1: 'Forward-bias'
  > # Forward-bias PIN phase shifter with thermal analysis
Cell 1, Line 3: 'fiber-optic', 'forward-bias'
  > A Mach-Zehnder modulator is an optical device used to control the intensity of a light beam. It works by splitting a laser beam into two paths and then recombining them. By changing the phase of light in one path relative to the other, we can control whether the waves interfere constructively (bright output) or destructively (dark output). This allows for high-speed modulation, making such modulators ideal for encoding data onto light signals in fiber-optic communications. This notebook focuses on the forward-bias PIN phase shifter, which is the active component of the modulator.
Cell 1, Line 5: 'N-type', 'P-type'
  > The "PIN" structure consists of P-type, Intrinsic, and N-type semiconductor regions. Applying a forward bias voltage to this junction injects charge carriers into the intrinsic region. This changes the material's refractive index via the plasma dispersion effect, altering the light's phase in that path and thus controlling the overall modulator's interference at the output.
Cell 1, Line 7: 'temperature-dependent'
  > The electrical current flowing through the device during the operation of the PIN diode generates heat, which is most significant during the 'ON' state of the modulation cycle. This heat can significantly affect the performance of the phase shifter. In particular, the carrier mobility (electrons and holes) in the semiconductor is temperature-dependent, which ultimately affects the speed and efficiency of the device.
Cell 1, Line 9: 'shifter's'
  > By including the thermal effects in the simulation, we can accurately predict the phase shifter's performance under realistic operating conditions and optimize its design for thermal stability.
Cell 1, Line 14: 'forward-bias'
  > This notebook demonstrates how to use our multiphysics simulation capabilities to assess the thermal and electric characteristics of a forward-bias PIN phase shifter, which is essential for the operation of devices like the Mach-Zehnder modulator. This notebook will guide the user through setting up the geometry, defining the materials and their physical models, running the simulation, and analyzing the results. For this notebook we use different models for the effective Density of States (DOS) model with temperature dependence.
Cell 1, Line 18: 'Non-isothermal', 'temperature-dependent'
  > - **Non-isothermal simulation with temperature-dependent DOS**: This is the most comprehensive simulation, including both heat transport and a temperature-dependent model for the DOS.
Cell 1, Line 19: 'Non-isothermal', 'temperature-dependent'
  > - **Non-isothermal simulation with constant DOS**: This simulation includes heat transport but assumes a constant DOS, allowing us to isolate the effect of the temperature-dependent DOS model.
Cell 6, Line 2: 'p-type'
  > - `Constant Doping`: A constant acceptor doping concentration is defined for the p-type epitaxial (pepi) layer.
Cell 6, Line 3: 'n-well', 'p-well'
  > - `Gaussian Doping`: Gaussian doping profiles are used for the n+, p+, n-well, and p-well regions. These profiles are defined with specific centers, sizes, concentrations, reference concentrations, and junction widths. The `source` parameter sets the origin plane of the doping, ensuring the concentration is constant along that plane and decays along all other axes.
Cell 7, Line 1: 'pepi'
  > # pepi
Cell 8, Line 5: 'electro-thermal'
  > - **Doped Silicon**: This represents the active semiconductor material. It combines the complex charge dynamics defined in the `si_charge` object with the thermal conductivity and heat capacity of silicon. This medium is the main focus of the electro-thermal simulation.
Cell 8, Line 6: 'ChargeInsulatorMedium', 'SolidMedium'
  > - **Silicon Dioxide**: This material serves as the insulator. Its definition includes its dielectric properties, specified using the `ChargeInsulatorMedium` class, and its thermal characteristics, described by the `SolidMedium` class.
Cell 8, Line 7: 'ChargeConductorMedium', 'SolidMedium'
  > - **Aluminum**: This defines the metal contacts. Electrically, it is treated as a charge conductor using the `ChargeConductorMedium` class, while its thermal properties are described by the `SolidMedium` class.
Cell 8, Line 8: 'FluidMedium'
  > - **Air and Contact Media**: These represent the surrounding environment and thermal contacts. Their properties are described using the `FluidMedium` class.
Cell 8, Line 10: 'electro-thermal'
  > The **Aluminum**, **Air**, and **Contact** media are currently used to impose boundary conditions but are excluded from the core electro-thermal simulation.
Cell 8, Line 16: 'Caughey-Thomas'
  > - **Caughey-Thomas Mobility**: This model is used to describe the carrier mobility as a function of doping concentration and temperature for both electrons (`mobility_n`) and holes (`mobility_p`).
Cell 8, Line 17: 'FossumCarrierLifetime'
  > - **Fossum Carrier Lifetime**: The `FossumCarrierLifetime` model is used to define the carrier lifetime for electrons (`fossum_n`) and holes (`fossum_p`) which is dependent on the doping concentration.
Cell 8, Line 19: 'ConstantEffectiveDOS', 'IsotropicEffectiveDOS'
  > - **Isotropic Effective DOS**: `IsotropicEffectiveDOS`, is used to model the effective DOS for the conduction band ($N_c$) and valence band ($N_v$) based on the effective mass of the carriers. This is an alternative to using a constant value `ConstantEffectiveDOS`.
Cell 12, Line 1: 'temperature-independent'
  > To avoid code repetition, we create temperature-independent DOS models by using the `updated_copy` method on existing classes.
Cell 16, Line 4: 'symlog'
  > fig2 = scene.plot_structures_property(z=0, property="doping", ax=ax[1], scale="symlog")
Cell 17, Line 5: 'non-isothermal'
  > * **Thermal Boundary Conditions:** A heat sink is defined at the bottom of the simulation domain to dissipate the heat generated by the device. For the non-isothermal simulations, a higher temperature is set at the electrodes. The temperature is artificially increased by 50 degrees to showcase different simulation results between isothermal and non-isothermal analysis.
Cell 19, Line 4: 'SteadyFreeCarrierMonitor'
  > - `SteadyFreeCarrierMonitor`: records the steady-state free carrier concentration.
Cell 19, Line 5: 'SteadyPotentialMonitor'
  > - `SteadyPotentialMonitor`: records the steady-state electric potential.
Cell 19, Line 6: 'SteadyCapacitanceMonitor'
  > - `SteadyCapacitanceMonitor`: records the capacitance of the device.
Cell 19, Line 7: 'TemperatureMonitor'
  > - `TemperatureMonitor`: records the temperature distribution.
Cell 21, Line 5: 'SteadyChargeDCAnalysis'
  > - **Analysis Type**: `SteadyChargeDCAnalysis` specifies a steady-state direct current (DC) analysis. `IsothermalSteadyChargeDCAnalysis` allows performing the same analysis under a constant temperature.
Cell 21, Line 6: 'GridRefinementRegion'
  > - **Grid Specification**: `DistanceUnstructuredGrid` is used to create a non-uniform mesh for the simulation. The mesh is refined in specific regions of interest using `GridRefinementRegion` to improve accuracy where needed, such as near the junctions.
Cell 21, Line 8: 'Fermi-Dirac', 'Maxwell-Boltzmann', 'SteadyChargeDCAnalysis', 'non-degenerate'
  > For `SteadyChargeDCAnalysis`, when `fermi_dirac=False`, the simulation uses Maxwell-Boltzmann statistics to model the distribution of charge carriers. This is a common and effective approximation for semiconductors operating under non-degenerate conditions when doping concentrations are not excessively high and temperatures are not extremely low. For the device and operating conditions modeled here, Maxwell-Boltzmann provides a sufficiently accurate and computationally efficient result. The `fermi_dirac=True` argument indicates that Fermi-Dirac statistics should be used, which is more accurate for heavily doped semiconductors.
Cell 24, Line 37: 'pepi'
  > # Interface between pepi and nplus
Cell 24, Line 45: 'pepi'
  > # Interface between pepi and pplus
Cell 32, Line 2: 'post-processed'
  > Once the simulations are complete, the data is post-processed to perform a comparative analysis of the different models. This analysis focuses on three key results:
Cell 32, Line 5: 'current-voltage'
  > - **IV Curve**: The device's current-voltage characteristics.
Cell 34, Line 1: 'Non-isothermal'
  > # Non-isothermal - Effective DOS
Cell 34, Line 4: 'Non-isothermal'
  > # Non-isothermal - Constant DOS
Cell 38, Line 2: 'P-Side'
  > - **P-Side (right):** $E_i$ bends towards the valence band creating a positive potential difference.
Cell 38, Line 3: 'N-Side'
  > - **N-Side (left):** $E_i$ bends towards the conduction band creating a negative potential difference.
Cell 41, Line 1: 'high-temperature', 'temperature-dependent'
  > In these plots, the potential difference between the **Effective DOS** and **Isothermal** models is even more pronounced because the latter represents a greater physical simplification. The resulting large, asymmetric difference is a direct consequence of the Isothermal model's omission of critical high-temperature effects. Specifically, it neglects the substantial increase in the intrinsic carrier concentration $n_i$ as well as the temperature-dependent shifts in the bandgap and the intrinsic Fermi level $E_i$.
Cell 43, Line 1: 'temperature-dependent'
  > The following section presents a comparative analysis of the resulting temperature distribution between the **Effective DOS** and **Constant DOS** models. This direct comparison is intended to isolate the specific effects of temperature-dependent state densities on the device's thermal profile.
Cell 49, Line 1: 'temperature-driven'
  > The plots above highlight how the **Constant DOS** model underestimates the generated heat at high temperatures, as its fixed effective DOS fails to capture the temperature-driven increase in intrinsic concentration and the resulting larger currents.
Cell 50, Line 1: 'Current-Voltage'
  > ### Current-Voltage (I-V) Characteristics
Cell 52, Line 8: 'Current-Voltage'
  > ax.set_title("Current-Voltage (IV) Curve")
Cell 52, Line 11: 'Non-isothermal'
  > "Non-isothermal - Effective DOS",
Cell 52, Line 12: 'Non-isothermal'
  > "Non-isothermal - Constant DOS",
Cell 53, Line 1: 'temperature-dependent'
  > The results clearly show that incorporating more detailed physical models (thermal effects and temperature-dependent DOS) predicts different currents for the same applied voltage.
Cell 53, Line 3: 'self-heating'
  > - **Isothermal**: This curve serves as a baseline result, as the simulation model does not account for self-heating effects.
Cell 53, Line 4: 'self-heating'
  > - **Constant DOS**: The curve shows a lower current than the baseline at higher voltages. This is the expected effect of self-heating: as the device gets hotter, carrier mobility decreases, which in turn reduces conductivity and limits the current flow. However, this model still uses a simplified, constant DOS.
Cell 53, Line 5: 'self-heating'
  > - **Effective DOS**: The curve predicts the highest current of the three models. This model, while accounting for the negative effects of self-heating on mobility, also correctly models the strong increase in the intrinsic carrier concentration ($n_i$) at elevated temperatures.

PhaseChangeAntennas.ipynb:

Cell 1, Line 3: 'V-shaped'
  > This notebook reproduces the phase behavior of cross-polarized scattering from gold V-shaped antennas on a silicon substrate, as demonstrated in the following paper:
Cell 16, Line 5: 'dataScatteringCylinders'
  > results = batch.run(path_dir="dataScatteringCylinders")
Cell 20, Line 1: 'On-Axis'
  > ### Extracting On-Axis Phase Delays
Cell 26, Line 4: 'dataScatteringCylindersPeriodic'
  > results_periodic = batch_periodic.run(path_dir="dataScatteringCylindersPeriodic")

PhotoThermalWaveguides.ipynb:

Cell 1, Line 1: 'Photo-thermal'
  > # Photo-thermal optical control in silicon waveguides
Cell 10, Line 3: 'two-waveguide'
  > Here we create a function that takes in a gap length and returns a Tidy3D simulation with the corresponding two-waveguide structure. The simulations returned will be our first optical simulations - that is, a simulation where we launch a TE mode and record the field and permittivity along the control waveguide, as this will be used to compute the absorbed power. We also add a field monitor along the propagation direction to visualize the optical power being absorbed along the waveguide.
Cell 20, Line 6: 'PermittivityData'
  > raise TypeError("permittivity_data must be a tidy3d.PermittivityData.")
Cell 24, Line 1: 'heat-perturb'
  > Next we will construct a temperature monitor around the signal waveguide so we can heat-perturb the signal structure.
Cell 39, Line 20: 'mediumblue'
  > color="mediumblue",
Cell 40, Line 3: 'heat-perturbed'
  > We are now in a position to see the effect on the signal waveguide from the control signal through the control waveguide. We create a function that modifies our first optical simulations into ones that launch and measure the TE mode through the signal waveguide. Then, using the temperature data of the previous heat simulations, we create heat-perturbed copies to compute the phase changes.

Checked 4 notebook(s). Found spelling errors in 3 file(s).
Generated by GitHub Action run: https://github.com/flexcompute/tidy3d-notebooks/actions/runs/19146492774

@tomflexcompute tomflexcompute force-pushed the tom/add_pin_mzi_thumbnail branch from d370d35 to f3690b1 Compare November 6, 2025 18:53
@tomflexcompute tomflexcompute merged commit 40bb2be into develop Nov 6, 2025
1 check passed
@tomflexcompute tomflexcompute deleted the tom/add_pin_mzi_thumbnail branch November 6, 2025 19:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants