What command/s can I use to multiply matrices M_G and M_A via Transfer Matrix Method N times given N pairs?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
lambda_0 = 0.980; % Cavity length of DBR mirror in micron
d_G = 0.06975562993; % Thickness of GaAs layer in micron
d_A = 0.08148984639; % Thickness of AlAs layer in micron
lambda = 0.9:0.01:1.1; % Wavelength range in micron
n_G = @(lambda) sqrt(10.906+(0.97501./(lambda.^2-(0.52886)^2))-... % Index of refraction of GaAs as a function of wavelength
0.002467.*lambda.^2)
n_A = @(lambda) sqrt(7.986+(0.97501./(lambda.^2-(0.19886)^2))-... % Index of refraction of AlAs as a function of wavelength
0.0059457.*lambda.^2)
M_G = @(lambda) [cos((2*pi*d_G.*n_G(lambda))./lambda)... % Characteristic Matrix of GaAs
(-i./n_G(lambda)).*sin((2*pi*d_G.*n_G(lambda))./lambda);...
-i.*n_G(lambda).*sin((2*pi*d_G.*n_G(lambda))./lambda)...
cos((2*pi*d_G.*n_G(lambda))./lambda)];
M_A = @(lambda) [cos((2*pi*d_A.*n_A(lambda))./lambda)... % Characteristic Matrix of AlAs
(-i./n_A(lambda)).*sin((2*pi*d_A.*n_A(lambda))./lambda);...
-i.*n_A(lambda).*sin((2*pi*d_A.*n_A(lambda))./lambda)...
cos((2*pi*d_A.*n_A(lambda))./lambda)];
7 commentaires
Jan
le 26 Mai 2022
@Craig Egan Allistair Tan: Okay. I do neither know, what AIAs, GaAs means, nor what "N" is, nor where do you want to apply which kind of Transfer Matrix, nor what reflectivity or DBR structure is.
All I know, is that you have defined 2 anonymous functions, which reply a [2 x 2] matrix, if you use a scalar as input and that your lambda is a vector instead.
I cannot help you, because the problem is not getiing clear to me.
Réponses (0)
Voir également
Catégories
En savoir plus sur Quantum Mechanics dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!