Plasma Sheath Phenomena and Prediction
# Plasma Sheath Phenomena and Prediction
## Introduction & Motivation
The plasma sheath is the critical boundary layer where ions accelerate toward surfaces. Sheath dynamics determine sputtering rates, surface modification, and equipment lifetime. ML models predict sheath expansion and ion energy distributions under varying plasma conditions.
Motivation: Accurately predict sheath phenomena for material processing optimization.
Applications: Ion energy prediction, surface damage modeling, sputtering rate forecasting, device lifetime estimation.
---
## Core Concepts & Theory
### Debye Sheath
Electrostatic acceleration region for ions.
### Bohm Condition
Minimum ion flow into sheath.
### Potential Distribution
Electric field in sheath region.
### Ion Acceleration
Energy gain mechanisms.
---
## Mathematical Formulation
Sheath Potential:
$$\phi(x) = \phi_s \left(1 - \frac{x}{\lambda_s}
ight)^2$$
Bohm Criterion:
$$v_B = \sqrt{\frac{e T_e}{m_i}}$$
Ion Kinetic Energy:
$$E_{ion} = e(\phi_0 - \phi_s) + k_B T_e$$
---
## Advanced Theory & Extensions
### Child-Langmuir Law
Potential distribution with space charge.
### Ion Energy Distribution
Stochastic sheath oscillations.
### Magnetic Field Effects
Magnetized sheath behavior.
---
## Computational Considerations
Sheath Simulation: O(T·G) for T timesteps, G grid points.
Potential Solver: O(G·log G) with multigrid methods.
Ion Tracking: O(N·T) for N ions, T time steps.
---
## Practical Implementation Strategies
### Potential Measurement
Electrostatic probe analysis.
### Ion Energy Diagnosis
Retarding field analyzers.
### Feature Scaling
Normalized sheath parameters.
---
## Benchmark Datasets & Evaluation
Laboratory Plasma: Controlled conditions.
Reactor Data: Real process conditions.
PIC Simulations: Particle-in-cell validation.
---
## Key Challenges & Limitations
### Sheath Oscillation
Time-varying potential profiles.
### Secondary Emission
Electron contribution from surfaces.
### Non-Local Effects
Neglected in standard models.
---
## Hyperparameter Tuning
Sheath thickness: 2-5 λ_D.
Bohm velocity fraction: 0.8-1.2.
Ion collection efficiency: 0.5-1.0.
---
## Real-World Applications & Case Studies
Ion Beam Deposition: Energy control.
Plasma Etching: Material removal uniformity.
Sputtering: Target erosion prediction.
---
## Integration with Other Methods
Sheath models + transport equations; + surface reactions; + machine learning surrogates.
---
## Summary & Key Takeaways
Sheath physics prediction enables precise material processing.
Principles:
1. Debye: Understand electrostatic shielding.
2. Bohm: Apply ion flow requirements.
3. Potential: Model electric field.
4. Acceleration: Predict ion energies.
5. Optimization: Control processing outcomes.
---
## Appendix: Practical Labs
### Lab 1: Debye Sheath Potential
import numpy as np
def debye_sheath_potential(x, phi_s, lambda_s):
"""Compute sheath potential profile"""
# φ(x) = φ_s * (1 - x/λ_s)²
# Valid for 0 ≤ x ≤ λ_s
x_normalized = np.clip(x / lambda_s, 0, 1)
potential = phi_s * (1 - x_normalized) ** 2
return potential
def electric_field_from_potential(x, phi_s, lambda_s):
"""Compute electric field from potential"""
# E = -dφ/dx = 2*φ_s/λ_s * (1 - x/λ_s)
x_normalized = np.clip(x / lambda_s, 0, 1)
E_field = -2 * phi_s / lambda_s * (1 - x_normalized)
return E_field
# Setup
phi_s = -50.0 # Sheath potential (V)
lambda_s = 1e-3 # Sheath thickness (m)
x = np.linspace(0, lambda_s * 1.2, 100)
potential = debye_sheath_potential(x, phi_s, lambda_s)
E_field = electric_field_from_potential(x, phi_s, lambda_s)
# Verify
assert potential[0] == phi_s, "Potential at x=0 should be φ_s"
assert np.abs(potential[-1]) < np.abs(phi_s), "Potential increases toward plasma"
print(f"✓ Sheath potential range: [{potential.min():.1f}, {potential.max():.1f}] V")
print(f"✓ Peak electric field: {np.abs(E_field).max():.2e} V/m")### Lab 2: Bohm Criterion and Ion Flow
import numpy as np
def bohm_velocity(temperature_ev, mass_amu=40):
"""Compute Bohm ion velocity"""
k_B = 1.38e-23
e = 1.602e-19
m_kg = mass_amu * 1.66e-27
# v_B = sqrt(e*T_e / m_i)
T_joules = temperature_ev * e
v_B = np.sqrt(e * T_joules / m_kg)
return v_B
def ion_current_from_bohm(density, temperature, area=1.0, mass_amu=40):
"""Compute ion current using Bohm criterion"""
e = 1.602e-19
v_B = bohm_velocity(temperature, mass_amu)
current = e * density * v_B * area
return current
class BoehmCriterionValidator:
def __init__(self, temperature_ev=5.0, mass_amu=40):
self.T_e = temperature_ev
self.m_i = mass_amu
def compute_bohm_velocity(self):
"""Compute Bohm velocity"""
return bohm_velocity(self.T_e, self.m_i)
def verify_scaling(self):
"""Verify Bohm velocity scaling"""
results = {}
# Temperature scaling
for T in [1, 5, 10]:
v_B = bohm_velocity(T, self.m_i)
results[f'T_{T}eV'] = v_B
# Verify: v_B ∝ sqrt(T)
ratio_10_5 = results['T_10eV'] / results['T_5eV']
ratio_expected = np.sqrt(10/5)
return results, ratio_10_5, ratio_expected
validator = BoehmCriterionValidator()
results, ratio, expected = validator.verify_scaling()
print(f"✓ Bohm velocity (5 eV, Ar): {bohm_velocity(5.0):.2e} m/s")
print(f"✓ v_B ratio (10eV/5eV): {ratio:.3f}, expected: {expected:.3f}")
n_e = 1e18 # electrons/m^3
I_ion = ion_current_from_bohm(n_e, 5.0, area=0.01)
print(f"✓ Ion current (0.01 m²): {I_ion:.2e} A")### Lab 3: Ion Energy Gain in Sheath
import numpy as np
def ion_energy_gain(sheath_voltage, temperature_ev=5.0):
"""Compute ion kinetic energy gain in sheath"""
# E_ion = e*(φ_0 - φ_s) + k_B*T_e
# Total energy = sheath potential energy + thermal energy
e_sheath = np.abs(sheath_voltage)
k_B_T = 8.617e-5 * temperature_ev # k_B*T_e in eV
E_total = e_sheath + k_B_T
return E_total, e_sheath, k_B_T
def ion_velocity_from_sheath(sheath_voltage, mass_amu=40, temperature_ev=5.0):
"""Compute ion velocity after sheath acceleration"""
e = 1.602e-19
m_kg = mass_amu * 1.66e-27
# Energy from sheath + thermal contribution
E_ion, E_sheath, E_thermal = ion_energy_gain(sheath_voltage, temperature_ev)
E_joules = E_ion * e
# v = sqrt(2*E/m)
v_ion = np.sqrt(2 * E_joules / m_kg)
return v_ion
class SheathAccelerationModel:
def __init__(self, sheath_voltage=-100, temperature=5.0, mass_amu=40):
self.V_s = sheath_voltage
self.T_e = temperature
self.m_i = mass_amu
def ion_energy_distribution(self, n_samples=1000):
"""Sample ion energies with thermal broadening"""
E_tot, E_sheath, E_thermal = ion_energy_gain(self.V_s, self.T_e)
# Add thermal broadening
broadening = np.random.normal(0, E_thermal*0.1, n_samples)
energies = E_tot + broadening
return np.maximum(energies, 0.1)
def mean_ion_velocity(self):
"""Compute mean ion velocity"""
return ion_velocity_from_sheath(self.V_s, self.m_i, self.T_e)
model = SheathAccelerationModel(sheath_voltage=-100, temperature=5.0)
E_tot, E_sheath, E_thermal = ion_energy_gain(-100, 5.0)
print(f"✓ Total ion energy: {E_tot:.1f} eV")
print(f"✓ Sheath energy: {E_sheath:.1f} eV, Thermal: {E_thermal:.3f} eV")
v_ion = model.mean_ion_velocity()
print(f"✓ Mean ion velocity: {v_ion:.2e} m/s")### Lab 4: Integrated Sheath Prediction System
import numpy as np
class SheathPredictionSystem:
def __init__(self, debye_length=1e-4, sheath_expansion_factor=3.0):
self.lambda_D = debye_length
self.sheath_factor = sheath_expansion_factor
# Plasma parameters
self.n_e = 1e18
self.T_e = 5.0
self.phi_floating = -5.0 # Floating potential (V)
def estimate_sheath_thickness(self):
"""Estimate sheath thickness"""
# λ_s ≈ 3-5 * λ_D
lambda_s = self.sheath_factor * self.lambda_D
return lambda_s
def predict_bohm_velocity(self, mass_amu=40):
"""Predict Bohm velocity"""
k_B = 1.38e-23
e = 1.602e-19
m_kg = mass_amu * 1.66e-27
T_j = self.T_e * e
v_B = np.sqrt(e * T_j / m_kg)
return v_B
def predict_ion_current(self, area=0.01, mass_amu=40):
"""Predict ion current"""
e = 1.602e-19
v_B = self.predict_bohm_velocity(mass_amu)
j_i = e * self.n_e * v_B * area
return j_i
def predict_ion_energy(self, bias_voltage=-100):
"""Predict ion kinetic energy"""
e = 1.602e-19
# Potential drop: bias - floating
delta_phi = np.abs(bias_voltage - self.phi_floating)
# Energy from potential + thermal
E_potential = delta_phi * e
E_thermal = 1.5 * self.T_e * e
E_total = E_potential + E_thermal
return E_total, E_potential, E_thermal
def full_prediction(self, bias_voltage=-100, area=0.01):
"""Complete sheath prediction"""
predictions = {}
predictions['sheath_thickness'] = self.estimate_sheath_thickness()
predictions['bohm_velocity'] = self.predict_bohm_velocity()
predictions['ion_current'] = self.predict_ion_current(area)
E_tot, E_pot, E_th = self.predict_ion_energy(bias_voltage)
predictions['ion_energy'] = E_tot
return predictions
system = SheathPredictionSystem(debye_length=1e-4, sheath_expansion_factor=4.0)
predictions = system.full_prediction(bias_voltage=-100, area=0.01)
print(f"✓ Sheath thickness: {predictions['sheath_thickness']:.2e} m")
print(f"✓ Bohm velocity: {predictions['bohm_velocity']:.2e} m/s")
print(f"✓ Ion current: {predictions['ion_current']:.2e} A")
print(f"✓ Ion energy: {predictions['ion_energy']/1.602e-19:.1f} eV")---