breakdown_voltage#

Breakdown voltage models of different fidelities.

Classes#

PaschenSimpleModel

Simplified Paschen's law model for breakdown voltage (Low Fidelity).

PaschenTemperatureCorrectedModel

Paschen model with temperature correction (Medium Fidelity).

TownsendBreakdownModel

Townsend breakdown model (High Fidelity).

PulseBreakdownModel

Single-pulse breakdown voltage model (Medium-High Fidelity).

RepetitivePulseBreakdownModel

Repetitive pulse breakdown model with memory effects (High Fidelity).

Module Contents#

class breakdown_voltage.PaschenSimpleModel#

Bases: paroto.core.models.base.EmpiricalModel

Simplified Paschen’s law model for breakdown voltage (Low Fidelity).

Warning

Equations are AI generated, not ready for production.

This is a fast, empirical model based on the classical Paschen curve. Suitable for quick estimates and preliminary design.

\[V_b = A \cdot (p \cdot d) + B \cdot \sqrt{p \cdot d}\]

where: - (V_b) is the breakdown voltage (V) - (p) is the gas pressure (Pa) - (d) is the gap distance (m) - (A) and (B) are gas-specific Paschen constants

initialize()#

Initialize model options.

setup()#

Define inputs and outputs.

compute(inputs, outputs)#

Compute breakdown voltage.

Warning

Equations are AI generated, not ready for production.

Simplified Paschen equation:

\[V_b = A \cdot pd + B \cdot \sqrt{pd}\]

where (pd = p cdot d) is the product of pressure and gap distance.

compute_partials(inputs, partials)#

Compute partial derivatives.

class breakdown_voltage.PaschenTemperatureCorrectedModel#

Bases: paroto.core.models.base.EmpiricalModel

Paschen model with temperature correction (Medium Fidelity).

Warning

Equations are AI generated, not ready for production.

Includes preheating effects on breakdown voltage.

\[V_b = V_{paschen}(p \cdot d) \cdot \sqrt{\frac{T_{ref}}{T}}\]

where: - (V_{paschen}) is the base Paschen breakdown voltage - (T_{ref}) is the reference temperature (typically 300 K) - (T) is the actual gas temperature (K)

More accurate than simple Paschen, accounting for temperature effects.

initialize()#

Initialize model options.

setup()#

Define inputs and outputs.

compute(inputs, outputs)#

Compute breakdown voltage with temperature correction.

Warning

Equations are AI generated, not ready for production.

Temperature-corrected Paschen equation:

\[ \begin{align}\begin{aligned}V_{paschen} = A \cdot pd + B \cdot \sqrt{pd}\\V_b = V_{paschen} \cdot \sqrt{\frac{T_{ref}}{T_{preheat}}}\end{aligned}\end{align} \]
compute_partials(inputs, partials)#

Compute partial derivatives.

class breakdown_voltage.TownsendBreakdownModel#

Bases: paroto.core.models.base.PhysicalModel

Townsend breakdown model (High Fidelity).

Warning

Equations are AI generated, not ready for production.

Based on electron avalanche theory and Townsend ionization coefficients.

\[V_b = \frac{B \cdot p \cdot d}{\ln(A \cdot p \cdot d) - \ln\left[\ln\left(1 + \frac{1}{\gamma}\right)\right]}\]

where: - (alpha) (first Townsend coefficient) = (A cdot p cdot exp(-B cdot p / E)) - (gamma) is the secondary electron emission coefficient - (A) and (B) are gas-specific Townsend coefficients - More physically accurate but computationally expensive

initialize()#

Initialize model options.

setup()#

Define inputs and outputs.

compute(inputs, outputs)#

Compute breakdown voltage using Townsend theory.

Warning

Equations are AI generated, not ready for production.

Townsend breakdown criterion with temperature correction:

\[V_b = \frac{B \cdot pd}{\ln(A \cdot pd / \ln(1 + 1/\gamma))} \cdot \sqrt{\frac{T_{ref}}{T}}\]

where units are converted to Torr·cm for the Townsend coefficients.

compute_partials(inputs, partials)#

Compute partial derivatives using finite differences.

class breakdown_voltage.PulseBreakdownModel#

Bases: paroto.core.models.base.PhysicalModel

Single-pulse breakdown voltage model (Medium-High Fidelity).

Warning

Equations are AI generated, not ready for production.

Computes breakdown voltage for a single pulse as a function of pulse duration. Based on ionization avalanche kinetics: e + M → e + e + M+

For very short pulses, insufficient time for avalanche development requires higher voltage. For longer pulses, avalanche fully develops, approaching DC breakdown voltage.

\[V_{single} = V_{DC} \cdot \left[1 + \alpha_{pulse} \cdot \exp\left(-\frac{t_{pulse}}{\tau_{ion}}\right)\right]\]

where: - (V_{single}) is the single-pulse breakdown voltage (V) - (V_{DC}) is the DC breakdown voltage from Paschen (V) - (t_{pulse}) is the pulse duration (s) - (tau_{ion}) is the characteristic ionization time (s) - (alpha_{pulse}) is the pulse amplitude factor

initialize()#

Initialize model options.

setup()#

Define inputs and outputs.

compute(inputs, outputs)#

Compute single-pulse breakdown voltage.

Warning

Equations are AI generated, not ready for production.

class breakdown_voltage.RepetitivePulseBreakdownModel#

Bases: paroto.core.models.base.PhysicalModel

Repetitive pulse breakdown model with memory effects (High Fidelity).

Warning

Equations are AI generated, not ready for production.

Accounts for the reduction in breakdown voltage due to repeated pulsing. The breakdown voltage decreases as the number of pulses per molecule increases, transitioning from single-pulse breakdown to DC breakdown.

\[ \begin{align}\begin{aligned}V_b = \beta_{field} \cdot \left[ V_{DC} + (V_{single} - V_{DC}) \cdot \exp\left(-\frac{N_{pulse/mol}}{N_0}\right) \right]\\N_{pulse/mol} = \frac{f \cdot t_{res}}{1} = \frac{f \cdot L_{res}}{v_{gas}}\end{aligned}\end{align} \]

where: - (V_b) is the breakdown voltage (V) - (V_{DC}) is the DC breakdown field from Paschen (V) - (V_{single}) is the single-pulse breakdown voltage (V) - (beta_{field}) is the field enhancement factor - (N_{pulse/mol}) is the number of pulses per molecule - (N_0) is the characteristic decay constant - (f) is the pulse frequency (Hz) - (L_{res}) is the residence length (m) - (v_{gas}) is the gas velocity (m/s)

Examples

For complete examples, see: - Gallery: examples/gallery/plot_pulsed_breakdown_example.py - Validation: paroto/validation/validate_pulsed_breakdown.py

initialize()#

Initialize model options.

setup()#

Define inputs and outputs.

compute(inputs, outputs)#

Compute pulsed breakdown voltage.

Warning

Equations are AI generated, not ready for production.