Le système considéré comporte N couches planes perpendiculaires à l'axe z. Chaque couche est définie par son indice de réfraction et son épaisseur. Les matériaux sont supposés non magnétiques. Dans le cas d'un matériau absorbant ou d'un conducteur, on définira un indice complexe.
Les matériaux et leurs surfaces sont supposés non diffusants. Dans ce cas, les réflexions sont spéculaires. En pratique, cela est réalisé pour des surfaces polies, dont les irrégularités sont beaucoup plus petites que la longueur d'onde du rayonnement.
On considère la réflexion et la transmission d'une onde électromagnétique plane monochromatique sur cette structure. L'indice du milieu d'incidence est noté ni et l'angle d'incidence de l'onde θi. L'indice du milieu de transmission est nt.
En partant du milieu d'incidence, les couches sont numérotées de 1 à N. On note nk l'indice de réfraction de la couche k et ek son épaisseur.
Figure pleine pageLa polarisation du champ électrique de l'onde incidente est décomposée en polarisations perpendiculaire et parallèle au plan d'incidence (plan Oyz). On désigne par TE l'onde dont le champ électrique est perpendiculaire au plan d'incidence et par TM celle dont le champ magnétique est perpendiculaire au plan d'incidence.
La théorie des structures multicouches est exposée dans [1] (chap. I.6). En voici les principaux résultats.
Pour chaque couche, l'angle des rayons par rapport à l'axe z est donné par la loi de Descartes :
On définit pour chaque couche la phase suivante :
Pour une onde TE, on définit le paramètre suivant pour chaque couche et pour les milieux d'incidence et de transmission :
Dans le cas de l'onde TM, on pose :
La matrice de transfert de la couche k est :
Pour l'ensemble des N couches, la matrice de transfert est donnée par le produit suivant :
Si la première interface est en z=0 et la dernière en z=L, la matrice permet d'exprimer les amplitudes des champs électrique et magnétique en z=0 en fonction des amplitudes en z=L. Ainsi, pour l'onde TE :
Dans cette relation E(z) désigne l'amplitude du champ électrique (composante x) et B(z) celle du champ magnétique (composante y). Pour l'onde TM, il suffit d'inverser E et B.
La continuité des composantes tangentielles des champs en z=0 et z=L s'écrit :
Si mij désigne l'élément de la ligne i et de la colonne j de la matrice M, le coefficient de réflexion est :
Le coefficient de transmission est :
Dans le cas de l'onde TM, ce coefficient de transmission doit être multiplié par pour obtenir le rapport des amplitudes du champ électrique.
Les coefficients de réflexion et de transmission des puissances, appelés aussi facteurs de réflexion et de transmission, sont :
Dans le cas de couches absorbantes (voir ci-dessous), le facteur d'absorption donne la fraction de puissance incidente absorbée dans la structure :
Remarques :
Pour un matériau diélectrique à pertes, la permittivité électrique comporte une partie imaginaire. L'indice de réfraction est dans ce cas :
La partie imaginaire est le facteur d'atténuation. Elle est ici négative en raison de la convention adoptée pour la dépendance temporelle des champs en exp(iωt).
Si le milieu est conducteur, l'équation de Maxwell-Ampère s'écrit avec la loi d'Ohm :
où une dépendance temporelle de la forme exp(iωt) est supposée (même hypothèse que pour le calcul présenté plus haut).
Ce matériau conducteur est donc équivalent à un milieu diélectrique (sans courant) d'indice:
Dans le domaine infrarouge et visible, cette relation ne présente pas d'intérêt car les variations de la conductivité avec la fréquence ne sont pas négligeables. Par exemple, le cuivre a une conductivité plus faible dans le bleu que dans le rouge.
Pour traiter des structures multicouches comportant une ou plusieurs couches conductrices, les calculs présentés plus haut sont utilisables avec cet indice complexe.
La densité de puissance moyenne absorbée par la matière est ([2] p.98) :
L'absorption est donc donnée par la partie réelle de la conductivité (effet Joule) et par la partie imaginaire de la permittivité relative (pertes diélectriques).
L'absorption apparait aussi dans la partie imaginaire du carré de l'indice complexe :
On remarque qu'un facteur d'atténuation κ non nul ne signifie pas nécessairement qu'il y ait absorption : il faut aussi que la partie réelle de l'indice soit non nulle. Un exemple de milieu atténuant mais non absorbant est le plasma de faible densité, dont la conductivité est purement imaginaire.
Le module scilab suivant (télécharger) permet d'effectuer ces calculs et de tracer les différentes courbes.
La fonction suivante calcule la matrice d'une couche. L'argument pola vaut 1 pour une onde TE et 0 pour une onde TM :
function [M]=matriceCouche(lambda,ni,thetai,pola,n,e) cosinus = sqrt(1-(ni/n*sin(thetai))^2); if pola==1 then p = n*cosinus; else p = cosinus /n; end, phi = 2*%pi/lambda*n*e*cosinus; M=[cos(phi),%i*sin(phi)/p;%i*p*sin(phi),cos(phi)] endfunction
La structure mutlicouche est décrite par une matrice (2xN) dont chaque ligne donne l'indice et l'épaisseur de la couche correspondante. La fonction suivante calcule la matrice de la structure :
function [M]=matriceMultiCouches(lambda,ni,thetai,pola,couches) M = [1,0;0,1]; s = size(couches); nc = s(1); for k=1:nc, M = M*matriceCouche(lambda,ni,thetai,pola,couches(k,1),couches(k,2)); end, endfunction
La fonction suivante calcule le coefficient de réflexion et de transmission :
function [r,t]=coefficientsRT(lambda,ni,thetai,nt,pola,couches) if pola==1 then pi = ni*cos(thetai); pt = nt*sqrt(1-(ni/nt*sin(thetai))^2); else pi = cos(thetai)/ni; pt = sqrt(1-(ni/nt*sin(thetai))^2)/nt; end, m = matriceMultiCouches(lambda,ni,thetai,pola,couches); a = (m(1,1)+m(1,2)*pt)*pi; b = m(2,1)+m(2,2)*pt; r = (a-b)/(a+b); if pola==1 then t = 2*pi/(a+b); else t = 2*pi/(a+b)*ni/nt; end, endfunction
la fonction suivante calcule les coefficients de réflexion et de transmission des puissances :
function [R,T]=coefficientsRTpuissances(lambda,ni,thetai,nt,pola,couches) [r,t] = coefficientsRT(lambda,ni,thetai,nt,pola,couches); R=abs(r)^2; if pola==1 then pi = ni*cos(thetai); pt = nt*sqrt(1-(ni/nt*sin(thetai))^2); else pi = cos(thetai)/ni; pt = sqrt(1-(ni/nt*sin(thetai))^2)/nt; end, T = pt/pi*abs(t)^2; endfunction
La fonction suivante fait le calcul pour une liste d'angles d'incidence :
function [r,t]=coefRT(lambda,ni,listThetai,nt,pola,couches) np = length(listThetai); r = zeros(np); t = zeros(np); for i=1:np, [r(i),t(i)] = coefficientsRT(lambda,ni,listThetai(i),nt,pola,couches); end, endfunction
Celle-ci fait la même chose pour les coefficients de réflexion et de transmission des puissances :
function [r,t]=coefRTpuissances(lambda,ni,listThetai,nt,pola,couches) np = length(listThetai); r = zeros(np); t = zeros(np); for i=1:np, [r(i),t(i)] = coefficientsRTpuissances(lambda,ni,listThetai(i),nt,pola,couches); end, endfunction
Test du module avec une structure à zéro couches (interface entre deux milieux) :
getf('multilayer.sci'); angles = linspace(0,90,90); [re,te]=coefRTpuissances(1,1,angles*%pi/180,1.5,1,[]); [rm,tm]=coefRTpuissances(1,1,angles*%pi/180,1.5,0,[]);
plotA=scf(); plot2d(angles,re,style=4); plot2d(angles,rm,style=5); legend('TE','TM'); xtitle('n1=1, n2=1.5','theta1','R');Figure pleine page
Autre exemple : une couche anti-reflet, d'épaisseur égale à un quart de longueur d'onde :
n=sqrt(1.5); [re,te]=coefRTpuissances(1,1,angles*%pi/180,1.5,1,[n,0.25]); [rm,tm]=coefRTpuissances(1,1,angles*%pi/180,1.5,0,[n,0.25]);
plotB=scf(); plot2d(angles,re,style=4); plot2d(angles,rm,style=5); legend('TE','TM'); xtitle('','theta1','R');Figure pleine page