• Aucun résultat trouvé

Chapitre 3 : Modélisation des couches minces

3.3 Le logiciel MEEP

Afin de simuler les propriétés optiques des couches minces nanostructurées que j’ai déposées grâce à la technique GLAD, nous avons décidé d’utiliser un logiciel libre développé par le Massachusetts Institute of Technology (MIT) : MEEP pour MIT Electromagnetic Equation Propagation. C’est un logiciel de simulation utilisant la méthode FDTD afin de résoudre les équations de Maxwell [3].

Bien que ce logiciel ait été initialement conçu pour résoudre des problèmes avec des cristaux photoniques, il est suffisamment polyvalent pour nous permettre de modéliser les spectres en réflexion et transmission dans le domaine visible de nos couches minces structurées et ainsi d’en déduire leurs propriétés optiques. Cette polyvalence, la possibilité de modéliser des diélectriques présentant une relation de dispersion non triviale, ainsi que l’organisation périodique de la modélisation sont à l’origine de notre choix de travailler avec ce logiciel.

Afin de fonctionner correctement, chaque simulation nécessite la définition et le paramétrage d’un ensemble de données parmi lesquelles :

- le dimensionnement de la boîte de simulation, - la résolution spatiale,

- la géométrie de la structure étudiée ainsi que la répartition des indices optiques, - le type de source électromagnétique et ses caractéristiques,

- les conditions aux limites (épaisseur des parois absorbantes, périodicité ou non …), - la position et la taille des capteurs de flux.

Pour cela, on peut procéder, soit par des scripts d’entrée écrits en langage SCHEME, soit par une interface PYTHON, soit en programmant en C++.

3.3.1 Les dimensions dans MEEP

Tout d’abord, pour travailler correctement avec MEEP, il est important de noter que le logiciel met à profit l'invariance d'échelle des équations de Maxwell, pour utiliser des grandeurs physiques adimensionnées, non seulement pour son fonctionnement interne, mais aussi pour ses interactions avec l'utilisateur. Ceci implique que toutes les grandeurs calculées par MEEP (sauf celles naturellement sans dimension) doivent être multipliées par la combinaison adéquate des constantes utilisées pour l'adimensionnement, afin de pouvoir obtenir les résultats en unités S.I. Compte tenu des valeurs de constantes déjà fixées par les créateurs de MEEP, il ne reste plus à l'utilisateur qu'à définir une distance caractéristique, a, pour terminer de définir l’ensemble des grandeurs adimensionnées utilisées dans les calculs [4], [5]. L'unité de temps sera alors a/c, car MEEP utilise c comme unité de vitesse ("on fait

c=1"). Ainsi, l'unité de pulsation est 2πc/a et l'unité de vecteur d'onde 2π/a, ce qui fait que

pour MEEP, fréquence, pulsation, vecteur d'onde dans le vide et nombre d'onde dans le vide ont même valeur numérique (unité d'angle = 2π radians...). De même, MEEP fait "comme si" on avait

ε

0 = 1, ce qui implique

µ

0 = 1 pour continuer à vérifier

ε

0

µ

0c2 = 1. Comme la

66

dimension de n'importe quelle grandeur électro-mécanique peut être obtenue à partie des 4 grandeurs fondamentales masse, temps, longueur et intensité électrique, il suffit d'une quatrième quantité caractéristique, indépendante des 3 premières, pour achever de tout définir1.

Par exemple, si l’on souhaite décrire une structure nanophotonique aux fréquences infrarouges, il s’avère pratique d’exprimer les distances en micromètres. Aussi, on pose

a = 1 µm. Pour définir une source à λ = 1,55 µm dans le vide, on exprime alors la fréquence

réduite f dans le calcul comme 6 =(- 8⁄ )

; =

- < =

$

$,>>= 0,6452 (étant donné que tout se passe comme si c = 1, longueur d'onde dans le vide et période ont la même valeur numérique pour MEEP). L'émission d'un train d'onde de 100 longueurs d'onde devra donc se faire pendant 155 unités de temps.

3.3.2 La cellule de calcul

Comme indiqué dans le paragraphe 3.1, la méthode FDTD est coûteuse en temps et en espace mémoire. Outre le choix d’un travail en deux ou trois dimensions, le choix de la taille de la cellule de calcul résulte d’un compromis entre la taille de la structure étudiée, la périodicité de cette dernière, la valeur de la résolution et le choix des conditions aux limites.

Au cours d’un calcul, MEEP discrétise la structure dans l’espace et dans le temps, ce que l’on spécifie dans le script d’entrée grâce à la variable resolution. Elle donne le nombre de pixels par unité de distance a [6].

Par exemple, pour f = 0,15, c’est-à-dire pour une longueur d’onde dans l’air,

D = E,$>- = 6,67G, une implantation de résolution égale à 10 correspond à 10 × 6,67 ≈ 67

pixels par longueur d’onde dans le vide, ou encore à environ 67 pas de temps par période.

Les simulations numériques que nous étudions modélisent obligatoirement une région finie de l’espace ce qui implique des conditions aux limites. MEEP permet l’emploi de trois types de conditions aux limites : des murs métalliques, des conditions aux limites périodiques de Bloch, des couches absorbantes de type PML (Perfectly Matched Layers) [7].

Les murs métalliques constituent la condition aux limites la plus simple. Ils forcent les champs à 0 sur les limites comme si la cellule était entourée par un métal parfait (aucune absorption, aucun effet de peau).

1

Cette quatrième quantité serait soit la puissance de la source si l'on en croit http://ab- initio.mit.edu/wiki/index.php/Meep_Tutorial/Optical_forces ou http://ab- initio.mit.edu/wiki/index.php/Units_and_nonlinearity_in_Meep ou bien sa puissance par unité

de surface (exitance de la source) si l'on en croit

http://meepunits.wikia.com/wiki/Meep_unit_transformation_Wiki qui donne alors dans un tableau toutes les formules exprimant la façon d'obtenir le facteur de conversion d'une grandeur physique donnée en fonction de a, c,

ε

0 et I0.

67

Dans une cellule de largeur l avec des conditions aux limites périodiques de Bloch aux extrémités, les composantes du champ vérifient 6(1 + ) = IJKLM× 6(1) pour un vecteur d’onde de Bloch N.

Les PML permettent d’absorber toute onde incidente sans réflexion. Il ne s’agit pas à proprement parler de conditions aux limites mais plus exactement d’un matériau, non physique, considéré comme absorbant que l’on place aux limites de la cellule de calcul. Les PML doivent posséder une épaisseur suffisante pour permettre aux ondes incidentes de s’éteindre en leur sein. Elles servent à éviter qu’une onde sortant par un bord de la boîte ne rentre par l’autre côté, comme c’est le cas pour les conditions de Bloch.

3.3.3 La source électromagnétique

MEEP permet de simuler trois types différents de source de courant : des sources d’ondes continues c’est-à-dire proportionnelles à e#PQR, des sources d’impulsion gaussienne proportionnelles à e#PQR#(STSU)²VW² ainsi que des sources définies intégralement par l’utilisateur.

Chaque source se doit d’être définie par son type, son centre, son extension dans chaque direction, les composantes du champ électromagnétique que l’on souhaite générer et son amplitude sous la forme d'un facteur global de normalisation et d'une fonction de la position seulement pour les deux premiers types de source et du temps et de l'espace pour le troisième [7].

3.3.4 Les capteurs de flux

Les capteurs de flux définissent la région à l’intérieur de laquelle MEEP calcule l’intégrale du vecteur de Poynting dans le domaine fréquentiel, à partir de la transformée de Fourier des champs [7]. Les capteurs de flux nous permettront de mesurer les coefficients de transmission et de réflexion de nos structures. Chaque simulation s’organise en deux temps. Dans un premier temps, l'objet dont on veut étudier les caractéristiques est absent. Les capteurs de flux fournissent alors le spectre des flux de référence. Dans un second temps, l'objet est présent, mais on ne peut pas distinguer l'onde réfléchie de l'onde incidente. La différence entre les nouveaux flux et les flux de référence permet néanmoins d’obtenir les coefficients en transmission ou en réflexion de l'objet.

3.3.5 La structure étudiée

Afin de générer les structures que l’on souhaite étudier, MEEP met à disposition des utilisateurs un ensemble d’objets géométriques et de milieux différents.

Pour les motifs, il est ainsi possible de modéliser des parallélépipèdes, des sphères, des cylindres, des cônes et des ellipsoïdes [7]. MEEP introduit un ordre de priorité dans la définition des structures : la structure définie en second est prioritaire sur celle définie en premier. Si tout ou partie des structures se superposent, seule la partie appartenant à la seconde définition sera réellement représentée. On peut ainsi, par exemple, représenter un trou dans un massif en définissant tout d’abord un bloc de matière d’indice n et en définissant en second un cylindre d’air de rayon r.

68

Les matériaux diélectriques constituent le cœur de l’implantation des milieux au sein de MEEP mais il est également possible de modéliser des métaux ou des milieux plus théoriques grâce à l’implantation manuelle d’une permittivité diélectrique et/ou d’une perméabilité magnétique. Dans la suite de la thèse, j’ai choisi de modéliser les structures via l’implantation d’un matériau de constante diélectrique égale à 6,5 qui représente le WO3 que

j’ai déposé expérimentalement [8].

3.3.6 Le mésocentre de Franche-Comté

La méthode FDTD est déjà en soi une méthode coûteuse en mémoire mais l’utilisation du logiciel MEEP est d’autant plus coûteuse en mémoire que la résolution choisie pour le calcul est élevée. Les calculs les plus coûteux en mémoire seront lancés sur le cluster de calcul présent à Besançon. Disposant de 712 cœurs de calculs et d’une puissance crête théorique de 11 TFlops, le cluster permet la réalisation de calculs haute performance – parallèle – nécessitant pour leur réalisation une grande capacité en mémoire vive [9].