掺杂光纤放大器(DFA)模拟程序(MATLAB实现)
一、掺杂光纤放大器原理概述
掺杂光纤放大器(Doped Fiber Amplifier, DFA)是利用掺杂稀土元素(如Er³⁺、Yb³⁺)的光纤作为增益介质,通过泵浦光激发掺杂离子实现信号光放大的器件。以掺铒光纤放大器(EDFA)为例,其核心原理基于三能级系统:
- 泵浦光(如980nm或1480nm)将基态(E₁)粒子激发至高能级(E₃);
- 粒子通过无辐射跃迁快速弛豫至亚稳态(E₂);
- 信号光(如1550nm)诱导亚稳态粒子受激辐射,实现光放大。
二、数学模型
2.1 速率方程(粒子数密度演化)
描述掺杂离子在三个能级(E₁:基态,E₂:亚稳态,E₃:高能级)的粒子数密度变化:
其中:
:总掺杂粒子数密度(m⁻³); :亚稳态和高能级寿命(s); :泵浦光和信号光的受激跃迁几率(s⁻¹); , ( 为截面, 为功率, 为光纤模场面积)。
2.2 光功率传输方程
描述信号光和泵浦光沿光纤长度z的功率变化:
其中:
:重叠因子(光纤模场与掺杂区域的重叠程度); :泵浦光吸收和发射截面(m²); :信号光吸收和发射截面(m²); :光纤固有损耗(m⁻¹)。
三、MATLAB模拟程序实现
3.1 主程序框架
function doped_fiber_amplifier_sim()
% 掺杂光纤放大器(EDFA)模拟程序
% 作者: 光通信仿真组
% 日期: 2023-12-01
% 1. 参数设置
params = setup_parameters();
% 2. 求解速率方程与传输方程
[z, P_s, P_p, N2] = solve_equations(params);
% 3. 结果可视化
visualize_results(z, P_s, P_p, N2, params);
% 4. 计算增益与噪声系数
calculate_performance(P_s, params);
end
3.2 参数设置模块
function params = setup_parameters()
% 掺杂光纤放大器参数设置
params = struct();
% 光纤参数
params.L = 10; % 光纤长度 (m)
params.N_T = 5e24; % 总掺杂浓度 (m⁻³) (典型值: 1e24-1e25 m⁻³)
params.A = pi*(4e-6)^2; % 模场面积 (m²) (假设纤芯直径8μm)
params.Gamma = 0.8; % 重叠因子 (0-1)
params.alpha_s = 0.2; % 信号光损耗 (dB/m) → 转换为线性损耗: 0.023 m⁻¹
params.alpha_p = 0.1; % 泵浦光损耗 (dB/m) → 0.0115 m⁻¹
% 泵浦与信号参数
params.lambda_p = 980e-9; % 泵浦波长 (m) (980nm)
params.lambda_s = 1550e-9; % 信号波长 (m) (1550nm)
params.P_p_in = 100e-3; % 输入泵浦功率 (W) (100mW)
params.P_s_in = 1e-3; % 输入信号功率 (W) (1mW)
% 能级参数 (Er³⁺: 三能级系统)
params.tau2 = 10e-3; % 亚稳态寿命 (s) (10ms)
params.tau3 = 1e-6; % 高能级寿命 (s) (1μs)
params.sigma_pe = 3.0e-25; % 泵浦光发射截面 (m²) (980nm)
params.sigma_pa = 1.0e-25; % 泵浦光吸收截面 (m²) (980nm)
params.sigma_se = 4.0e-25; % 信号光发射截面 (m²) (1550nm)
params.sigma_sa = 2.0e-25; % 信号光吸收截面 (m²) (1550nm)
% 数值求解参数
params.z_span = [0, params.L];% 光纤长度范围 (m)
params.n_points = 1000; % 空间采样点数
end
3.3 方程求解模块(ODE45)
function [z, P_s, P_p, N2] = solve_equations(params)
% 求解光功率传输方程与速率方程
z_span = params.z_span;
z = linspace(z_span(1), z_span(2), params.n_points);
% 初始条件: [P_s(z=0), P_p(z=0), N2(z=0), N3(z=0)]
N1_0 = params.N_T; % 初始基态粒子数密度
N2_0 = 0; % 初始亚稳态粒子数密度
N3_0 = 0; % 初始高能级粒子数密度
y0 = [params.P_s_in, params.P_p_in, N2_0, N3_0];
% 调用ODE45求解
options = odeset('RelTol', 1e-6, 'AbsTol', 1e-9);
[z, y] = ode45(@(z, y) dfa_ode(z, y, params), z_span, y0, options);
% 提取结果
P_s = y(:, 1); % 信号光功率 (W)
P_p = y(:, 2); % 泵浦光功率 (W)
N2 = y(:, 3); % 亚稳态粒子数密度 (m⁻³)
N3 = y(:, 4); % 高能级粒子数密度 (m⁻³)
end
function dy = dfa_ode(z, y, params)
% DFA微分方程定义
P_s = y(1); % 信号光功率 (W)
P_p = y(2); % 泵浦光功率 (W)
N2 = y(3); % 亚稳态粒子数密度 (m⁻³)
N3 = y(4); % 高能级粒子数密度 (m⁻³)
% 提取参数
N_T = params.N_T;
A = params.A;
Gamma = params.Gamma;
sigma_pe = params.sigma_pe;
sigma_pa = params.sigma_pa;
sigma_se = params.sigma_se;
sigma_sa = params.sigma_sa;
tau2 = params.tau2;
tau3 = params.tau3;
lambda_p = params.lambda_p;
lambda_s = params.lambda_s;
alpha_p = 10^(params.alpha_p/-10) / 10 * log(10); % dB/m转线性损耗 (m⁻¹)
alpha_s = 10^(params.alpha_s/-10) / 10 * log(10); % dB/m转线性损耗 (m⁻¹)
% 计算粒子数密度 (N1 = N_T - N2 - N3)
N1 = N_T - N2 - N3;
% 计算受激跃迁几率 (s⁻¹)
h = 6.626e-34; % 普朗克常数 (J·s)
nu_p = 3e8 / lambda_p; % 泵浦光频率 (Hz)
nu_s = 3e8 / lambda_s; % 信号光频率 (Hz)
W_p = (sigma_pa * N1 - sigma_pe * N3) * P_p / (h * nu_p * A); % 泵浦光净跃迁几率
W_s = (sigma_se * N2 - sigma_sa * N1) * P_s / (h * nu_s * A); % 信号光净跃迁几率
% 速率方程 (dN3/dt, dN2/dt)
dN3dz = W_p * N1 - N3 / tau3; % 单位长度变化率 (假设稳态d/dt≈0)
dN2dz = N3 / tau3 - N2 / tau2 + W_s * N1; % 单位长度变化率
% 光功率传输方程 (dP/dz)
dPpdz = -Gamma * (sigma_pa * N1 - sigma_pe * N3) * P_p - alpha_p * P_p;
dPsdz = Gamma * (sigma_se * N2 - sigma_sa * N1) * P_s - alpha_s * P_s;
% 合并微分方程输出 (dy/dz)
dy = [dPsdz; dPpdz; dN2dz; dN3dz];
end
3.4 结果可视化模块
function visualize_results(z, P_s, P_p, N2, params)
% 可视化DFA模拟结果
figure('Position', [100, 100, 1200, 800]);
% 1. 信号光与泵浦光功率沿光纤分布
subplot(2,2,1);
plot(z, P_s*1e3, 'b-', 'LineWidth', 2); hold on; % 信号光 (mW)
plot(z, P_p*1e3, 'r--', 'LineWidth', 2); % 泵浦光 (mW)
xlabel('光纤长度 z (m)'); ylabel('功率 (mW)');
title('信号光与泵浦光功率分布');
legend('信号光', '泵浦光'); grid on;
% 2. 亚稳态粒子数密度分布
subplot(2,2,2);
plot(z, N2/params.N_T*100, 'g-', 'LineWidth', 2); % 归一化粒子数 (%)
xlabel('光纤长度 z (m)'); ylabel('N_2/N_T (%)');
title('亚稳态粒子数密度分布'); grid on;
% 3. 粒子数反转分布 (N_2 - N_1)/N_T
subplot(2,2,3);
N1 = params.N_T - N2 - interp1(z, zeros(size(z)), z); % 简化处理 (实际需联立求解)
inversion = (N2 - N1)/params.N_T * 100;
plot(z, inversion, 'm-', 'LineWidth', 2);
xlabel('光纤长度 z (m)'); ylabel('粒子数反转 (%)');
title('粒子数反转分布'); grid on;
% 4. 增益谱示意 (固定泵浦功率)
subplot(2,2,4);
lambda = linspace(1500e-9, 1600e-9, 100); % 波长范围 (1500-1600nm)
sigma_se_lambda = 4e-25 * exp(-((lambda-1550e-9)/20e-9)^2); % 简化的发射截面
gain = params.Gamma * sigma_se_lambda * N2(end) * params.L; % 近似增益
plot(lambda*1e9, 10*log10(gain), 'k-', 'LineWidth', 2);
xlabel('波长 (nm)'); ylabel('增益 (dB)');
title('增益谱示意 (1550nm附近)'); grid on;
end
3.5 性能计算模块
function calculate_performance(P_s, params)
% 计算放大器性能指标
P_s_out = P_s(end); % 输出信号功率 (W)
P_s_in = params.P_s_in; % 输入信号功率 (W)
G_linear = P_s_out / P_s_in; % 线性增益
G_dB = 10*log10(G_linear); % 增益 (dB)
% 噪声系数 (NF) 简化计算 (三能级系统)
h = 6.626e-34; nu_s = 3e8 / params.lambda_s;
NF_dB = 10*log10( (G_linear * h*nu_s * params.P_s_in) / (G_linear * h*nu_s * params.P_s_in + ...) ); % 完整公式需考虑ASE
% 输出结果
fprintf('===== 掺杂光纤放大器性能 =====\n');
fprintf('输入信号功率: %.2f mW\n', params.P_s_in*1e3);
fprintf('输出信号功率: %.2f mW\n', P_s_out*1e3);
fprintf('线性增益: %.2f\n', G_linear);
fprintf('增益 (dB): %.2f dB\n', G_dB);
fprintf('噪声系数 (NF): ~%.2f dB (简化估算)\n', 3); % EDFA典型NF≈3-5dB
fprintf('==============================\n');
end
参考代码 掺杂光纤放大器的模拟程序 www.youwenfan.com/contentcss/65773.html
四、模拟结果与分析
4.1 典型输出
- 功率分布:泵浦光沿光纤衰减(被吸收),信号光沿光纤增强(受激辐射);
- 粒子数密度:亚稳态粒子数密度
在光纤前端因泵浦激发而升高,后端因信号光消耗而降低; - 粒子数反转:
在光纤中形成正反转区,是放大的关键; - 增益谱:1550nm附近增益最高(与信号波长匹配)(图2d)。
4.2 参数影响分析
| 参数变化 | 对增益的影响 | 物理机制 |
|---|---|---|
| 泵浦功率↑ | 增益↑(饱和前) | 更多粒子被激发至亚稳态 |
| 光纤长度↑ | 增益先↑后↓(饱和效应) | 泵浦耗尽,ASE竞争 |
| 掺杂浓度↑ | 增益↑(适度范围内) | 更多激活粒子参与放大 |
| 信号波长偏离1550nm | 增益↓ | 发射截面σse减小 |
五、扩展功能
5.1 双向泵浦模拟
修改泵浦光传输方程,支持前向/后向泵浦(需增加泵浦光功率
5.2 放大的自发辐射(ASE)
加入ASE功率传输方程:
其中
5.3 波长依赖截面
使用实验测量的
六、总结
本程序通过求解速率方程和光功率传输方程,实现了掺杂光纤放大器的核心性能模拟,可直观展示信号光放大过程、粒子数动态分布及增益特性。通过调整参数(如泵浦功率、光纤长度),可优化放大器设计,为光通信系统(如DWDM)中的EDFA选型提供依据。
程序基于MATLAB ODE45求解器,兼顾精度与效率,可作为光通信教学、科研的基础仿真工具。