资源简介
matlab对耦合模理论的仿真代码,可以运行。
代码片段和文件信息
% APPENDIX A : Matlab Code for Simulation of
% Gratings using the Transfer
% Matrix Method
%THIS M-FILE USES THE TRANFER MATRIX METHOD TO EVALUATE THE COUPLED-MODE
%EQUATIONS. THE REFLECTION SPECTRUM OF THE GRATING AND THE TRANSMISSION
%SPECTRUM DELAY AND DISPERSION OF THE FABRY-PEROT FILTER ARE SIMULATED
clear all
clc
%======================================================================
% Fibre simulation parameters
walD = 1.55e-6; %design wavelength
wal1 = 0.999*walD;
wal2 = 1.001*walD;
step = 500;
wal = [wal1:(wal2-wal1)/step:wal2];
%======================================================================
%For a grating of maximun reflectance R = 0.2
Rmax = 0.2; %required maximum reflectivity
rmax = sqrt(Rmax);
kacL = atanh(rmax);
c = 2.99793e8; %Speed of light
h = 25e-9;
v = 1; %Fringe visibilty
%======================================================================
%Implementation of the transfer matrix method for solution of
%coupled-mode equations
nef = 1.47; %core index of photosensitive fibre
L = 3000e-6; %length of grating in micrometers
M = 100;
dz = L/M;
dzo = - L + 10.69e-3; %Distance between gratings
kac = kacL/L; %“AC“ coupling coefficient
kdc = 2*kac/v; %“DC“ coupling coefficient
for (r = 1:step+1)
w = wal(r);
F = [1 0; 0 1];
for(s = 1:M)
det = 2*pi*nef*(1/w - 1/walD);
gdc = det + kdc;
p1 = sqrt(kac^2 - gdc^2);
p2 = gdc^2/kac^2;
f11 = cosh(p1*dz) - i*(gdc/p1)*sinh(p1*dz);
f12 = -i*(kac/p1)*sinh(p1*dz);
f21 = i*(kac/p1)*sinh(p1*dz);
f22 = cosh(p1*dz) + i*(gdc/p1)*sinh(p1*dz);
ff = [f11 f12; f21 f22];
F = ff*F;
end
r3(r) = F(21)/F(11); %amplitude reflection coefficient
R3(r) = (abs(r3(r)))^2; %power reflection coefficient
%of single grating
PHI = 2*pi*nef*dzo/w; %phase difference between gratings
Fp = [exp(-i*PHI) 0; 0 exp(i*PHI)];
Ffp = F*Fp*F;
t3(r) = 1/Ffp(11); %amplitude transmission coefficient
T3(r) = (abs(t3(r)))^2; %power transmission coefficient of
%Fabry-Perot filter
end
%==================================================================
%Calculate Delay and Dispersion of Fabry-Perot Filter
theta = phase(r3);
dtheta1 = gradient(theta h);
dtheta2 = gradient(dtheta1 h);
DELAY3 = -((wal.^2)./(2*pi*c)).*dtheta1;
DELAYu3 = DELAY3*1e12; %delay in (ps)
DISPERSION3 = (2*DELAY3./wal) - ((wal.^2)./(2*pi*c)).*dtheta2;
DISPERSIONu3 = DISPERSION3*(1e12/1e9); %dispersion in (ps/nm)
%=====================================================================
%Plots for reflection and transmission spectra for Bragg reflector and
%Fabry-Perot filter respectively
figure (1)
plot(wal*1e9 R3 ‘k‘)
grid
axis([1549 1551.5 0 0.2])
title(‘Reflection Spectrum of Bragg Reflector‘)
xlabel(‘Wavelength (nm)‘)
ylabel(‘Power (p.u)‘)
figure (2)
plot(wal*1e9 T3 ‘k‘)
grid
axis([1549 1551.5 0.4 1])
title(‘Transmission Spectrum of the Fabry-Perot Filter‘)
xlabel(‘Wavelength (nm)‘)
ylabel(‘Power (p.u)‘)
figure (3)
plot(wal*1e9 DELAYu3 ‘k‘)
grid
axis([1549 1551.5 0.4 1]
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3361 2010-05-04 15:21 tmmcoupling.m
- 上一篇:光栅反射率光谱的matlab仿真代码
- 下一篇:蜂窝网无线定位仿真程序
相关资源
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
- k近邻算法matlab实现
- matlab识别系统
- 神经网络分类matlab程序
- matlab正弦信号发生器的设计
- matlab程序用Hopfield网络解决TSP
评论
共有 条评论