MATLAB:BBO晶体的相位匹配角计算

MATLAB:BBO晶体的相位匹配角计算

通过matlab来辅助计算BBO晶体的相位匹配角以及deff系数。
本代码只能计算SHG。
实际使用的角度与计算角度不一致的主要因素是晶体温度导致。

%BBO单轴晶体
%实际角度还需按照使用时晶体温度来优化。
%因为温度改变了晶体的折射率。


clcsell
clear all
close all

lambda1=1064/10^3;        %在此处输入基频光波长,单位微米
lambda2=532/10^3;         %在此处输入倍频光波长,单位微米
                          %sellmeier公式的单位是微米
Ano=2.7359;               %ABCD分别对应sellmeier公式的4个系数
Bno=0.01878;
Cno=0.01822;
Dno=0.01354 ;
Ane=2.3753;
Bne=0.01224;
Cne=0.01667;
Dne=0.01516;
%基频光波长的o光  e光折射率
no=sqrt(Ano+Bno/(lambda1^2-Cno)-(Dno*lambda1^2));
ne=sqrt(Ane+Bne/(lambda1^2-Cne)-(Dne*lambda1^2));
fprintf('基频光波长的折射率  no=%6.4f',no);
fprintf('       ne=%6.4f\n',ne);
% 倍频光波长的o光  e光折射率
n2o=sqrt(Ano+Bno/(lambda2^2-Cno)+(Dno*lambda2^2));
n2e=sqrt(Ane+Bne/(lambda2^2-Cne)+(Dne*lambda2^2));
fprintf('倍频光波长的折射率  no=%6.4f',n2o);
fprintf('       ne=%6.4f\n',n2e);

% 求Ⅰ类相位匹配theta角        (第一种方法:菲涅尔公式 通过K值求)
a=asin(sqrt((no^(-2)-n2o^(-2))/(n2e^(-2)-n2o^(-2))));%求得结果为弧度
b=a*180/pi;%将弧度转换为角度
%角度转弧度: π/180×角度 ;弧度变角度:180/π×弧度
fprintf('Ⅰ类相位匹配的θ角为 θ=%6.2f\n',b);

% % % Ⅰ类相位匹配theta角          (第二种方法:相位匹配条件化简)
% % c=asin(sqrt(((n2o^2)*(n2e^2)-(n2e^2)*(no^2))/((n2o^2)*(no^2)-(n2e^2)*(no^2))));
% % d=c*180/pi;
% % fprintf('Ⅰ类相位匹配的θ角为 θ=%6.2f\n',d)

%BBO晶体Ⅱ类相位匹配
%相位匹配条件:     1/2[n_e^ω (θ_m )+n_o^ω]= n_e^2ω (θ_m )
%设,sinθ^2为x    cosθ^2为1-x
syms x
f1=2/sqrt(((1-x)/n2o^2)+(x/n2e^2))-1/sqrt(((1-x)/no^2)+x/ne^2)-no;
f2=solve(f1);              %输出所有解,包括实数和复数
f3=double(f2);             %将符号型转换为数值型
f4=asin(sqrt(f3));         %将数值型进行asin求值
f5=f4*180/pi;              %转换为角度显示
A=f5==real(f5);             %选取实数,如果是实数为1,不是就为0
fprintf('Ⅱ类相位匹配的θ角为 θ=%6.2f\n ',f5(A)) %输出为1的实数


%BBO φ角计算,deff系数计算
theta=b;                   %引用Ⅰ类相位匹配theta角度
theta2=f5(A);              %引用Ⅱ类相位匹配theta角度
fai1 = 0:0.001:90; 
d36=0.44;
d11=5.8*d36;     %d36(KDP)
d31=0.05*d11;
d22=0.05*d11;    %此处应为d22<0.05*d11,为求近似值选择使用=
deff1=d31*sind(theta)+(d11*cosd(3*fai1)-d22*sind(3*fai1)*cosd(theta));
deff2=(d11*sind(3*fai1)+d22*cosd(3*fai1))*cosd(theta2)*cosd(theta2);
plot(fai1,deff1,'red');hold on
plot(fai1,deff2,'green'); grid on; 
xlabel( 'φ角' )
ylabel( '非线性系数' )
legend('Ⅰ类相位匹配deff','Ⅱ类相位匹配deff','Location', 'northeast' )
title( '非线性系数随φ角的变化图' )


[deff1max, fai1max] = max(deff1);
[deff2max, fai2max] = max(deff2);
fai1=fai1max*0.001;
fai2=fai2max*0.001;
fprintf('Ⅰ类相位匹配最大非线性系数  deff=%0.3f\n',deff1max')
fprintf(' Ⅰ类相位匹配               θ=%0.2f',theta);
fprintf('   φ=%0.2f\n',fai1);
fprintf(' Ⅱ类相位匹配最大非线性系数  deff=%0.3f\n',deff2max')
fprintf(' Ⅱ类相位匹配               θ=%0.2f',theta2);
fprintf('   φ=%0.2f\n',fai2);

如果遇到该情况:
在这里插入图片描述
表示该波长不满足Ⅱ类相位匹配条件。
可将代码中关于计算Ⅱ类相位匹配的屏蔽掉。%%屏蔽。

附:
物理光学特性:
在这里插入图片描述

应用参考:
在这里插入图片描述

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值