搜索
您的当前位置:首页MATLAB模拟偏振

MATLAB模拟偏振

来源:智榕旅游


一、题目要求:

假设一波长为632nm的左旋圆偏振光垂直穿过半波片(厚度2.5mm),试计算输出光的偏振态。并用三维动画显示E穿透波片的演变过程。

如果入射光偏振态为线偏振,且振动方向与半波片快轴夹30度角,试求输出光偏振态及振动方向,并并用三维动画显示E穿透波片的演变过程。

二、题目分析:

根据所学知识知,左旋圆偏振光垂直穿过半波片后为右旋圆偏振光,振动方向与半波片快轴夹角为30度角的线偏振光经过半波片后,出射光为与半波片快轴夹角为-30度的线偏振光,本题目重点在于应用matlab软件对偏振光经过半波片时,在半波片内部的运动轨迹,经本组讨论后,采用以下算法对偏振光在波片中运动轨迹的描述:

假设波片的光轴为Y轴,我们可以将入射偏振光看成是沿X轴方向(快轴)和沿Y轴方向(慢轴)的偏振光的合成。

1、入射光为左旋圆偏振光时,它们分别可表示成ex(i)= cos(w*tt1+pha)和ey(i)=*cos(w*tt2+pha+pi/2).波片外,X,Y方向的偏振光传播速度相同,故通过相同光程是所需时间一样,即 t1(i)=t2(i)=(z(i)-z(i-1))/c;波片内,o光和e光的折射率不同,故它们传播速度不等,t1(i)=(z(i)-z(i-1))/(c/n1),t2(i)=(z(i)-z(i-1))/(c/n2),导致X,Y方向偏振光产生相位差的改变,进而导致偏振光偏振状态改变。

2、入射光为振动方向与半波片快轴夹角为30度角的线偏振光时,它们分别可表示成

1 / 10

ex(i)=0.5*cos(w*tt1+pha)和ey(i)=(sqrt(3)/2)*cos(w*tt2+pha).波片外,X,Y方向的偏振光传播速度相同,故通过相同光程是所需时间一样,即 t1(i)=t2(i)=(z(i)-z(i-1))/c;波片内,o光和e光的折射率不同,故它们传播速度不等,t1(i)=(z(i)-z(i-1))/(c/n1),t2(i)=(z(i)-z(i-1))/(c/n2),导致X,Y方向偏振光产生相位差的改变,进而导致偏振光偏振状态改变。

三、实现代码:

入射光为振动方向与半波片快轴夹角为30度角的线偏振光:

clear;%复位

nm=1e-9;

mm=1e-3;%单位

c=3e8;%光速

pha=pi/3;%初相位

wl=632*nm;%波长

w=2*pi*c/wl;%角频率

d=2.5*mm;%波片厚度

m=2;

2 / 10

n0=1;

n1=1.1;%x方向折射率

dn=(m+0.5)*wl/d;%折射率差值

n2=n1+dn;%y方向折射率

c1=c/n1;%波片中x方向光速

c2=c/n2;%波片中y方向光速

tt1=0;

tt2=0;

z=linspace(-0.2*d,1.2*d,8000);

t1(1)=z(1)/c;

t2(1)=z(1)/c;

tt1=tt1+t1(1);

tt2=tt2+t2(1);

3 / 10

ex(1)=(0.5)*cos(w*tt1+pha);%x方向振幅

ey(1)=(sqrt(3)/2)*cos(w*tt2+pha);%y方向振幅

for i=2:8000

if z(i)<0 %进入波片前

t1(i)=(z(i)-z(i-1))/c;

t2(i)=(z(i)-z(i-1))/c;

tt1=tt1+t1(i);

tt2=tt2+t2(i);

ex(i)=(0.5)*cos(w*tt1+pha);

ey(i)=(sqrt(3)/2)*cos(w*tt2+pha);

else if z(i)t1(i)=(z(i)-z(i-1))/c1;

t2(i)=(z(i)-z(i-1))/c2;

4 / 10

tt1=tt1+t1(i);

tt2=tt2+t2(i);

ex(i)=(0.5)*cos(w*tt1+pha);

ey(i)=(sqrt(3)/2)*cos(w*tt2+pha);

else %通过波片后

t1(i)=(z(i)-z(i-1))/c;

t2(i)=(z(i)-z(i-1))/c;

tt1=tt1+t1(i);

tt2=tt2+t2(i);

ex(i)=(0.5)*cos(w*tt1+pha);

ey(i)=(sqrt(3)/2)*cos(w*tt2+pha);

end

end

5 / 10

end

for i=1:8000 %绘图

subplot(221)

plot3(z(i),ex(i),ey(i),'*')

hold on;

axis([-0.2*d 1.2*d -1 1 -1 1]);

view(-80,5);

grid on;

subplot(222)

plot3(z(i),ex(i),ey(i),'*')

hold on;

axis([-0.2*d 1.2*d -1 1 -1 1]);

view(-10,5);

6 / 10

grid on;

subplot(223)

plot3(z(i),ex(i),ey(i),'*')

hold on;

axis([-0.2*d 1.2*d -1 1 -1 1]); view(-90,0);

grid on;

x1=[z(i),z(i)];

y1=[0,ex(i)];

z1=[0,ey(i)];

subplot(221)

plot3(x1,y1,z1,'-')

hold off;

7 / 10

axis([-0.2*d 1.2*d -1 1 -1 1]);

grid on;

%pause(0.000005);

drawnow;

view(-80,5);

subplot(222)

plot3(x1,y1,z1,'-')

hold off;

axis([-0.2*d 1.2*d -1 1 -1 1]);

grid on;

%pause(0.000005);

drawnow;

8 / 10

view(-10,5);

subplot(223)

plot3(x1,y1,z1,'-')

hold off;

axis([-0.2*d 1.2*d -1 1 -1 1]);

grid on;

%pause(0.000005);

drawnow;

view(-90,0);

end

入射光为左旋圆偏振光时:将上述代码中的ex、ey分别改为:

ex(i)= (sqrt(2)/2)*cos(w*tt1+pha)

9 / 10

ey(i)=(sqrt(2)/2)*cos(w*tt2+pha+pi/2)

即可

四、仿真图形

1、整体轨迹图:

2、点运动轨迹图:

五、心得感想

通过本次作业,我们学到了许多,也收获了许多。

1. 我们学习了偏振光及波片的相关知识,了解到了圆偏振经过半波片后仍为圆偏振,但旋向改变;线偏振光经过半波片后仍为线偏振,但光矢量改变,若入射线偏光与快轴夹角为a,则出射线偏光与快轴的夹角就是(-a);并了解到波片对偏振光的影响是由于其各向异性可以对两个正交偏振光的折射率不同,进而可以控制两正交偏振光的振幅比和相位差。

2. 我们学习了有关matlab软件基本的使用,例如,调用matlab已有函数,使用matlab绘出静态图及动态轨迹图。

3. 我们了解到了团队合作的重要性,只有大家一起积极思考,积极讨论,积极做事,才可能又快又好的完成任务。

10 / 10

因篇幅问题不能全部显示,请点此查看更多更全内容

Top