Simulation · Jonction bimateriau
Hétérojonction
Simulation d'une jonction p-n entre deux matériaux semi-conducteurs distincts (ex :
CdS/CdTe, a-Si/c-Si, GaInP/GaAs). Module simulations/heterojunction.py, résolution
SESAME NIST avec alignement de bandes selon la règle d'Anderson.
Modèle d'alignement de bandes (Règle d'Anderson)
Implémenté dans calculate_band_offsets(), SPARC calcule les discontinuités à l'interface
à partir des affinités électroniques (χ) de chaque matériau :
ΔEc = χn − χp (discontinuité bande de conduction) ΔEv = ΔEc − (Eg,p − Eg,n) (discontinuité bande de valence) Incertitude : ±0.2 eV (Van de Walle & Martin, 1987)
Classification automatique du type de jonction
| Type | Description | Impact simulation |
|---|---|---|
| Type I (Straddling) | Un gap inclus dans l'autre | Normal, simulation fiable |
| Type II (Staggered) | Bandes décalées, séparation spatiale des porteurs | Avertissement: FF réduit sans tunneling |
| Type III (Broken Gap) | Pas de chevauchement des gaps | Erreur critique : simulation probablement invalide |
Flux d'exécution interne
- Calcul des offsets :
calculate_band_offsets()détermine ΔEc, ΔEv et le type de jonction. Valide les affinités (plage [0.5, 6.0] eV). - Pièges d'interface (Dit) : Si
dit_configest fourni, ajoute des états d'interface sur une zone de largeurdit_width(défaut 2×10⁻⁷ cm) autour de la jonction. Densité en cm⁻², sections efficaces σe et σh en cm². - Contacts : Ohmiques par défaut. Support Schottky via
contact_typesetwork_functions. Vitesses de recombinaison de surface Sn/Sp (défaut : 10⁷ cm/s). - Génération optique : TMM si les deux matériaux sont dans la base n/k, sinon Beer-Lambert.
- Résolution IV : Même algorithme que l'homojonction. Repli 1D automatique si le
mode 2D diverge (flag
dimension_fallback). - Validation spécifique hétérojonction : Détection spike/cliff (|ΔEc| > 0.5 eV → tunneling non modélisé), vérification broken gap.
Hétérojonction Gradée
La fonction simulate_graded_heterojunction() découpe la zone d'interface en
grade_sublayers sous-couches avec interpolation linéaire des propriétés matériaux :
Mat(x) = (1−w)·Mat_n + w·Mat_p où w = (x−x0)/(x1−x0)
Des clippes de sécurité sont appliqués (Eg ∈ [0.01, 4.0] eV, χ ∈ [1.0, 5.0] eV, mobilités > 0) pour éviter les instabilités numériques dans Sesame.
Paramètres d'entrée
| Clé JSON | Type | Unité | Description |
|---|---|---|---|
materials.n_type |
string | — | Matériau de la région N (ex: "CdS", "a-Si") |
materials.p_type |
string | — | Matériau de la région P (ex: "CdTe", "c-Si") |
geometry.thickness_n |
float | cm | Épaisseur fenêtre N (émetteur) |
geometry.thickness_p |
float | cm | Épaisseur absorbeur P |
doping.n_region |
float | cm⁻³ | Dopage N |
doping.p_region |
float | cm⁻³ | Dopage P |
interface.recombination_velocity |
float | cm/s | Vitesse de recombinaison de surface à l'interface |
interface.dit.density |
float | cm⁻² | Densité d'états d'interface (Dit) |
interface.dit.sigma_e |
float | cm² | Section efficace de capture des électrons |
interface.dit.energy |
float | eV | Niveau énergétique du piège (0 = milieu du gap) |
graded.grade_width |
float | cm | (Hétéro gradée) Largeur de la zone de transition |
graded.grade_sublayers |
int | — | (Hétéro gradée) Nombre de sous-couches (défaut: 6) |
Sorties spécifiques à l'hétérojonction
| Clé | Description |
|---|---|
band_offsets.delta_Ec |
Discontinuité de la bande de conduction ΔEc (eV) |
band_offsets.delta_Ev |
Discontinuité de la bande de valence ΔEv (eV) |
band_offsets.junction_type |
"type_I", "type_II" ou "type_III" |
band_offsets.has_tunneling_issue |
True si |ΔEc| ou |ΔEv| > 0.5 eV |
hetero_limitations |
Liste de diagnostics d'interface (tunneling, staggered, broken gap…) |
band_diagram |
Profils Ec, Ev, Ef des deux matériaux |
Exemple de configuration JSON
{
"simulation_name": "cds_cdte_hetero",
"simulation_type": "heterojunction",
"materials": {
"n_type": "CdS",
"p_type": "CdTe"
},
"geometry": {
"thickness_n": 1e-5,
"thickness_p": 2e-4
},
"doping": {
"n_region": 1e18,
"p_region": 1e15
},
"interface": {
"recombination_velocity": 1e4,
"dit": {
"density": 1e11,
"sigma_e": 1e-15,
"sigma_h": 1e-15,
"energy": 0.0
}
},
"voltages": { "start": 0.0, "stop": 0.9, "points": 60 },
"illumination": { "enabled": true, "photon_flux": 2.5e17, "absorption_coefficient": 1e4 },
"optical_model": "auto"
}
Mises en garde
hetero_limitations[].type = "tunneling_not_modeled" est automatiquement ajouté aux
résultats.
Références
- Anderson, R.L. (1960). Germanium-gallium arsenide heterojunctions. IBM J. Res. Dev., 4, 283.
- Sze, S.M. & Ng, K.K. (2007). Physics of Semiconductor Devices, 3rd ed., §12.5. Wiley.
- Van de Walle, C.G. & Martin, R.M. (1987). Theoretical study of band offsets. Phys. Rev. B 35, 8154.