资源简介
被动调Q激光器的MATLAB仿真
代码片段和文件信息
function Qswitch
clc
clear
close all
T0 = 0.7; %可饱和吸收体初始透射率
R = 0.8; %输出镜反射率
Rp = 2e28; %抽运速率
y0 = [1;0;1]; %设定初值
tspan=[0 0.05]; %设定计算时间范围
tic
[ty] = ode45(‘rate_eq‘tspany0);%解耦合速率方程组rate_eq(ode23常微分方程的数值求解)
toc
figure
subplot(311);
plot(ty(:1));
axis([0 0.05 0 10^24])
xlabel(‘时间(s)‘);
ylabel(‘光子数密度(m^{-3})‘);
subplot(312);
plot(ty(:2));
axis([0 0.05 0 15*10^24])
xlabel(‘时间(s)‘);
ylabel(‘反转粒子数密度(m^{-3})‘);
subplot(313);
plot(ty(:3));
axis([0 0.05 0 6*10^24])
xlabel(‘时间(s)‘);
ylabel(‘基态粒子数密度(m^{-3})‘);
figure %将光子数密度和反转粒子数密度随时间变化画于同一图中
[AXH1H2] = plotyy(ty(:1)ty(:2));
set(H2‘Linestyle‘‘--‘)
xlabel(‘时间(s)‘)
axis([0 0.05 0 10^24])
set(get(AX(1)‘Ylabel‘)‘String‘‘光子数密度(m^{-3})‘)
set(get(AX(2)‘Ylabel‘)‘String‘‘反转粒子数密度(m^{-3})‘)
figure %将光子数密度和反转粒子数密度随时间变化画于同一图中 放大看
[AXH1H2] = plotyy(ty(:1)ty(:2));
set(H2‘Linestyle‘‘--‘)
xlabel(‘时间(s)‘)
axis(AX(1)[0.015227190 0.015227192 0 10^24]) ;
axis(AX(2)[0.015227190 0.015227192 0 15*10^24])
set(get(AX(1)‘Ylabel‘)‘String‘‘光子数密度(m^{-3})‘)
set(get(AX(2)‘Ylabel‘)‘String‘‘反转粒子数密度(m^{-3})‘)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-06-08 16:43 Qswitch\
文件 1422 2017-06-04 20:53 Qswitch\Qswtich.m
文件 1163 2017-06-03 20:18 Qswitch\rate_eq.m
评论
共有 条评论