1. Maillage
1. Qu’est-ce que l’engrenage ?
La discrétisation est le processus qui consiste à diviser une région physique continue en un ensemble de points discrets que l’ordinateur peut traiter. Par exemple, imaginez la chaleur se propageant le long d’une barre métallique, d’une flamme de bougie à une extrémité à un bloc de glace à l’autre. En réalité, la température varie continuellement le long de la barre, mais une simulation ne peut pas stocker un nombre infini de valeurs. Au lieu de cela, la barre est représentée par un nombre fini de points d’échantillonnage (un maillage), et les calculs ne sont effectués qu’à ces endroits (voir ??). En utilisant un maillage, nous transformons un problème qui serait autrement continu en un problème discret qui peut être résolu à l’aide de méthodes numériques. Ce principe est à la base des méthodes aux différences finies, des méthodes aux éléments finis et d’autres approches computationnelles largement utilisées en physique et en ingénierie.
2. Différents types de maillage pour différents problèmes.
Dans OghmaNano, trois modèles physiques fondamentaux sont utilisés : le modèle optique (absorption et propagation de la lumière), le modèle thermique (génération et circulation de la chaleur) et le modèle électrique (transport et recombinaison des charges). Chacun de ces processus se déroule généralement sur des échelles de longueur très différentes, ce qui implique que chacun nécessite son propre maillage. Par exemple :
- Cellule solaire organique : les effets importants sur le plan électrique sont concentrés dans la couche active (épaisseur d’environ 100 nm), il est donc suffisant de résoudre les équations de dérive-diffusion uniquement dans cette couche. Cependant, la lumière interagit avec toutes les couches de l’ensemble du dispositif (épaisseur d’environ 1 µm), il est donc nécessaire de résoudre le problème optique sur l’ensemble du dispositif. Dans ce cas, le maillage optique couvre l’ensemble du dispositif, tandis que le maillage électrique est concentré sur la couche active.
- Diode laser à puits quantiques : cet appareil peut générer une quantité importante de chaleur dans ses puits quantiques (d’une épaisseur d’environ 30 nm) et dans ses couches de guide d’ondes (d’une épaisseur d’environ 1 µm), mais cette chaleur finit par se dissiper grâce à un grand dissipateur thermique en cuivre, épais de quelques centimètres. Dans ce cas, les effets électriques doivent être modélisés à l’échelle nanométrique à micrométrique à l’intérieur de l’appareil, tandis que les effets thermiques nécessitent un maillage qui s’étend jusqu’à l’échelle centimétrique du dissipateur thermique.
Dans la pratique, cela signifie que différents effets physiques doivent être simulés à différentes échelles de longueur. De plus, les structures des dispositifs comprennent souvent des couches de contact ou d’interface très minces, d’une épaisseur de quelques nanomètres seulement. Sur le plan optique, ces couches sont bien inférieures à la longueur d’onde de la lumière et peuvent souvent être ignorées, mais sur le plan électrique, elles sont essentielles car elles déterminent le comportement courant-tension du dispositif. Pour prendre en compte ces effets, il faudrait utiliser un maillage électrique très fin dans ces régions, tandis que le maillage optique peut rester plus grossier et les englober.
OghmaNano effectue automatiquement une interpolation entre les maillages lors du couplage des modèles. Par exemple, si vous définissez un profil thermique sur le maillage thermique, mais que le solveur électrique nécessite des valeurs de température locales, celles-ci sont transférées par interpolation. Il en va de même pour les grandeurs optiques, telles que le taux de génération de porteurs, qui sont interpolées du maillage optique vers le maillage électrique selon les besoins. En tant qu’utilisateur, vous n’avez pas besoin de gérer manuellement ces transferts.
3. Les trois maillages d’OghmaNano.
OghmaNano propose trois maillages indépendants – thermique, optique et électrique – qui peuvent être définis séparément en fonction du problème à résoudre. Chaque maillage est accessible via l’onglet correspondant dans le ruban, comme illustré dans la figure ??.
3.1 Grille électrique
En cliquant sur le bouton « Maillage électrique » dans le ruban « Électricité », la fenêtre de l’éditeur de maillage s’ouvre (??). En haut de cette fenêtre, on trouve les boutons X, Y et Z. Ces boutons permettent d’activer ou de désactiver les dimensions spatiales utilisées dans la simulation. Par exemple, en activant uniquement Y, on lance une simulation 1D, tandis qu’en activant X et Y ensemble, on configure une simulation 2D. Dans l’exemple présenté, X et Y sont tous deux actifs, ce qui signifie que le maillage est configuré pour une simulation OFET 2D. Les tableaux centraux fonctionnent comme des feuilles de calcul et définissent la structure du maillage pour chaque dimension active. Leurs principales colonnes sont les suivantes :
- Épaisseur : épaisseur physique de chaque région du maillage.
- Points de maillage : nombre de points de discrétisation dans cette région.
- Étape de multiplication : indique de combien l’espacement de la grille augmente dans la région. Par exemple, une valeur de
1.1augmente à chaque étape de 10 % par rapport à la valeur précédente. - Gauche/Droite : définit le côté de l’appareil à partir duquel le maillage est généré.
Les maillages obtenus sont affichés dans les graphiques situés en bas de la fenêtre, ce qui permet d’obtenir immédiatement des informations sur l’espacement et la répartition des points. Le bouton « Importer depuis l’éditeur de calques » offre un raccourci pour les dispositifs complexes. Il efface le maillage Y et importe automatiquement tous les calques de l’éditeur de calques, en attribuant quatre points de maillage par calque. Cette fonctionnalité est particulièrement utile pour les structures comportant de nombreux calques, comme les diodes laser.
Le maillage électrique en détail : ?? illustre la manière dont le maillage électrique est construit. Le maillage ne commence pas exactement à la limite du dispositif, mais plutôt à mi-distance entre les points du maillage à l’intérieur du dispositif. Cela garantit que le premier nœud de calcul se trouve dans la zone de simulation active, ce qui permet d’appliquer des conditions aux limites (par exemple, des contacts électriques) à des positions bien définies, juste à l’extérieur du maillage. La même convention est appliquée à l’extrémité du dispositif, de sorte que le maillage s’étend sur la moitié d’un pas au-delà du dernier point physique.
- Cela permet d’éviter les problèmes numériques qui se posent lorsqu’on tente de calculer directement les dérivées aux limites.
- Il positionne les premier et dernier points du maillage de manière à ce qu’ils représentent au mieux l’intérieur de l’appareil physique, tout en permettant de définir de manière cohérente les conditions externes.
Maillage automatique : les épaisseurs des couches sont définies dans l’éditeur de couches. Après avoir défini la structure physique du dispositif, l’utilisateur doit mettre à jour le maillage électrique afin que la géométrie du maillage corresponde aux dimensions physiques du dispositif. En pratique, les nouveaux utilisateurs ne réalisent souvent pas que le maillage électrique, comme toute représentation CAO, doit être cohérent avec la taille de l’objet physique.
Afin de réduire les erreurs de configuration, OghmaNano applique automatiquement des hypothèses de maillage pendant l’exécution. La simulation part du principe que les largeurs et les hauteurs des couches spécifiées dans l’éditeur de couches sont correctes et tente de faire correspondre automatiquement ces dimensions au maillage électrique. Par exemple, si un dispositif est constitué d’une seule couche et que la hauteur de maillage correspondante est incorrecte, la simulation utilisera en interne l’épaisseur de la couche définie dans l’éditeur de couches lors de la création du maillage.
Si le nombre de couches de l’appareil correspond au nombre de couches du maillage vertical, chaque couche du maillage est automatiquement associée à l’épaisseur correspondante de la couche de l’appareil. Ces ajustements sont effectués en interne pendant la simulation et ne modifient pas les paramètres du maillage visibles dans l’éditeur. Si le nombre de couches du maillage ne correspond pas au nombre de couches actives de l’appareil, ou si l’association est ambiguë, le maillage automatique n’est pas appliqué et la simulation se termine par une erreur indiquant que la définition du maillage est incohérente avec la structure de l’appareil.
3.2 Grille optique
L’éditeur de maillage optique (??) présente une disposition similaire à celle de l’éditeur de maillage électrique, mais il comprend un panneau supplémentaire permettant de définir le maillage de longueurs d’onde. En haut de la fenêtre, les boutons X, Y et Z permettent d’activer ou de désactiver les dimensions spatiales, tandis que le bouton λ (longueur d’onde) active la grille spectrale.
Le panneau de gauche précise la discrétisation spatiale en nanomètres, en utilisant les mêmes colonnes que pour le maillage électrique (épaisseur, nombre de points du maillage, multiplicateur de pas et position gauche/droite). Le panneau de droite définit la plage spectrale en définissant les longueurs d’onde de début et de fin, le nombre de points et le multiplicateur de pas. Ces points de longueur d’onde sont utilisés de manière cohérente dans tous les solveurs optiques, y compris le lancer de rayons, la méthode FDTD et les simulations par matrice de transfert.
Maillage automatique : pour les simulations optiques, le logiciel tentera d’ajuster automatiquement le maillage optique afin que ses dimensions soient cohérentes avec le problème optique. Dans les simulations bidimensionnelles ou tridimensionnelles plus complexes, si les maillages optique et électrique ne correspondent pas, le solveur tentera de les mettre à jour automatiquement. Si cela n’est pas possible, ou si la configuration de maillage souhaitée ne peut pas être déterminée de manière non ambiguë, la simulation s’arrêtera et affichera une erreur claire indiquant que les définitions de maillage sont incohérentes.
3.3 Maille thermique
L’éditeur de maillage thermique (??) fonctionne de la même manière que les éditeurs de maillage électrique et optique, avec des boutons X, Y et Z pour activer les dimensions spatiales. De plus, il comprend un maillage T (température) spécifique.
La grille de température est utilisée chaque fois que les simulations doivent tenir compte de la dépendance à la température, par exemple lorsqu’il faut activer l’auto-échauffement ou évaluer les propriétés électriques sur une plage de températures. Avant le lancement de la simulation, OghmaNano précalcule et établit des tableaux de valeurs telles que les densités de porteurs en fonction du niveau de Fermi et de la température, ou les intégrales de Fermi-Dirac. Ces tableaux permettent au solveur de rechercher rapidement les valeurs pendant l’exécution, plutôt que de les recalculer à chaque fois.
Dans la plupart des cas, le maillage thermique est traité automatiquement, mais les utilisateurs expérimentés peuvent ajuster la plage et la résolution afin de garantir une précision suffisante pour les problèmes fortement dépendants de la température.
4. Dans quels cas dois-je m’inquiéter de la qualité du maillage dans OghmaNano ?
Grille électrique : l’éditeur de calques divise un dispositif en calques de différents matériaux (voir la section 3.1.3). Les calques marqués comme actifs sont ceux sur lesquels le modèle électrique est appliqué. Pour ces calques, une grille à différences finies doit être définie. La longueur de la grille doit correspondre exactement à la longueur du calque actif, sinon une erreur se produira. OghmaNano génère généralement automatiquement une grille appropriée, de sorte que pour la plupart des dispositifs simples, cela ne nécessite pas d’intervention manuelle. Toutefois, lorsqu’il y a plusieurs calques actifs, ou lorsque le nombre de points de la grille doit être réduit pour accélérer une simulation (ou augmenté pour une plus grande précision), la grille électrique peut nécessiter une configuration manuelle.
Grille optique : la grille optique contrôle à la fois l’échantillonnage spatial et l’échantillonnage en longueur d’onde. Il peut être nécessaire de la régler pour modifier la plage de longueurs d’onde simulées ou pour affiner la manière dont la lumière interagit avec les différentes couches du dispositif. L’augmentation du nombre de points de la grille améliore la précision optique, mais augmente le temps de simulation.
Maillage thermique : le maillage thermique n’est pertinent que lorsque l’option d’auto-échauffement est activée. Dans ce cas, il permet de modéliser avec précision les variations de température dans l’ensemble du dispositif et de prendre en compte l’interaction des effets thermiques avec les pièges et les processus de recombinaison. Dans le cas contraire, OghmaNano gère automatiquement ce paramètre.
5. Conseils pour l’établissement de connexions réseau.
Devrais-je effectuer la simulation en 1D, 2D ou 3D ?
Le choix de la dimensionnalité appropriée est l’une des décisions les plus importantes lors de la configuration d’une simulation. Il est toujours préférable d’utiliser le nombre minimal de dimensions nécessaires pour modéliser les phénomènes physiques pertinents, ce qui permet de gagner du temps et de réduire la consommation de ressources informatiques.
- Cellules solaires : elles nécessitent généralement uniquement des maillages unidimensionnels, car les variations se produisent principalement dans la direction verticale (épaisseur).
- Filtres optiques : ils sont généralement unidimensionnels, car l’interférence optique principale se produit dans la direction de l’empilement.
- TFET : nécessitent une structure bidimensionnelle, car il faut gérer à la fois le flux de courant vertical à travers le semi-conducteur et le flux de courant latéral entre la source et le drain.
Rapidité par rapport à la précision.
Il est tentant de penser que l’ajout de davantage de points de maillage améliore toujours la précision. En réalité, un plus grand nombre de points peut être utile, jusqu’à un certain point, mais il peut aussi rendre la simulation moins précise ou moins stable. Le facteur limitant n’est souvent pas la puissance de calcul brute, mais la qualité numérique : de nombreuses simulations de dispositifs contiennent des quantités qui diffèrent de plusieurs ordres de grandeur (par exemple, des densités ou des taux de recombinaison très faibles, associés à des champs, des courants ou des concentrations de dopage très élevés). Étant donné que les ordinateurs utilisent une arithmétique de précision finie, les opérations impliquant des nombres extrêmement grands et extrêmement petits peuvent entraîner une perte de chiffres significatifs. Cette perte de précision peut dominer la marge d’erreur et provoquer des oscillations parasites, des courants bruyants ou une convergence médiocre.
Augmenter la densité du maillage peut aggraver ce problème, au lieu de l’améliorer. Un maillage plus fin introduit souvent des gradients locaux plus importants, des termes de dérivée plus grands et un couplage plus fort entre les nœuds voisins, ce qui peut accroître la différence entre les valeurs les plus petites et les plus grandes dans le système linéaire à résoudre. Le résultat peut être un problème moins bien conditionné, où le solveur a du mal à distinguer les phénomènes physiques réels du bruit numérique. Dans de tels cas, un maillage légèrement plus grossier peut produire des champs plus lisses, un meilleur conditionnement et, par conséquent, des résultats plus fiables, même s’il contient moins de points.
Une bonne méthode consiste à commencer par un maillage grossier afin de valider la configuration et de vérifier que le comportement qualitatif est correct, puis à affiner le maillage uniquement dans la mesure nécessaire. L’affinement du maillage doit être guidé par des données probantes : si les principaux résultats (par exemple, les courbes J-V, les profils de porteurs, la génération optique) cessent de varier de manière significative lorsque des points supplémentaires sont ajoutés, un affinement supplémentaire ne permettra probablement pas d’améliorer la précision.
Lorsque vous configurez un appareil dans OghmaNano, veillez à respecter les consignes suivantes :
- Utilisez la dimensionnalité minimale possible : privilégiez la dimension 1D chaque fois que cela est possible ; ne passez à la dimension 2D ou 3D que lorsque la physique l’exige.
- Dans la mesure du possible, réduisez le nombre de points du maillage : visez le nombre minimal de points qui permet de représenter fidèlement les phénomènes physiques essentiels. Cela améliore la vitesse de calcul et peut renforcer la fiabilité numérique.
- Augmenter le nombre de points ne signifie pas toujours une amélioration : si l’augmentation de la densité du maillage entraîne des courants bruyants, des problèmes de convergence ou des profils instables, essayez de réduire le nombre de points et/ou d’affiner uniquement les régions qui sont importantes.
- Pour les phases d’exploration, utilisez des maillages grossiers : lorsque vous testez l’ajustement ou que vous étudiez le comportement général d’un dispositif, réduisez la densité du maillage afin d’obtenir un retour d’information rapide, puis affinez-le de manière sélective pour améliorer la précision.
- Affinez le maillage de manière ciblée : ajoutez des points uniquement là où les gradients sont significatifs (interfaces, zones d’appauvrissement, couches minces), et non partout. Un affinement uniforme est souvent la solution la moins efficace.