您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 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度角的线偏振光时,它们分别可表示成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;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);ex(1)=(0.5)*cos(w*tt1+pha);%x方向振幅ey(1)=(sqrt(3)/2)*cos(w*tt2+pha);%y方向振幅fori=2:8000ifz(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);elseifz(i)d%波片中t1(i)=(z(i)-z(i-1))/c1;t2(i)=(z(i)-z(i-1))/c2;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);endendendfori=1:8000%绘图subplot(221)plot3(z(i),ex(i),ey(i),'*')holdon;axis([-0.2*d1.2*d-11-11]);view(-80,5);gridon;subplot(222)plot3(z(i),ex(i),ey(i),'*')holdon;axis([-0.2*d1.2*d-11-11]);view(-10,5);gridon;subplot(223)plot3(z(i),ex(i),ey(i),'*')holdon;axis([-0.2*d1.2*d-11-11]);view(-90,0);gridon;x1=[z(i),z(i)];y1=[0,ex(i)];z1=[0,ey(i)];subplot(221)plot3(x1,y1,z1,'-')holdoff;axis([-0.2*d1.2*d-11-11]);gridon;%pause(0.000005);drawnow;view(-80,5);subplot(222)plot3(x1,y1,z1,'-')holdoff;axis([-0.2*d1.2*d-11-11]);gridon;%pause(0.000005);drawnow;view(-10,5);subplot(223)plot3(x1,y1,z1,'-')holdoff;axis([-0.2*d1.2*d-11-11]);gridon;%pause(0.000005);drawnow;view(-90,0);end入射光为左旋圆偏振光时:将上述代码中的ex、ey分别改为:ex(i)=(sqrt(2)/2)*cos(w*tt1+pha)ey(i)=(sqrt(2)/2)*cos(w*tt2+pha+pi/2)即可四、仿真图形1、整体轨迹图:2、点运动轨迹图:五、心得感想通过本次作业,我们学到了许多,也收获了许多。1.我们学习了偏振光及波片的相关知识,了解到了圆偏振经过半波片后仍为圆偏振,但旋向改变;线偏振光经过半波片后仍为线偏振,但光矢量改变,若入射线偏光与快轴夹角为a,则出射线偏光与快轴的夹角就是(-a);并了解到波片对偏振光的影响是由于其各向异性可以对两个正交偏振光的折射率不同,进而可以控制两正交偏振光的振幅比和相位差。2.我们学习了有关matlab软件基本的使用,例如,调用matlab已有函数,使用matlab绘出静态图及动态轨迹图。3.我们了解到了团队合作的重要性,只有大家一起积极思考,积极讨论,积极做事,才可能又快又好的完成任务。
本文标题:MATLAB模拟偏振
链接地址:https://www.777doc.com/doc-4285821 .html