资源简介
纯matlab代码,模拟平凸透镜的光线追迹,里面有详细注释供大家参考
代码片段和文件信息
clear;clc
%平凸透镜光线追迹
n=1.5062;%材料为k9玻璃,对1064nm波长的折射率
d=3;%透镜中心厚度
R=100;%透镜凸面曲率半径
Dr=sqrt(R^2-(R-d)^2);%透镜尺寸(最大半径)
mh=100;
if Dr>10
hmax=10;
else
hmax=Dr;
end
h0=linspace(-hmaxhmaxmh);
mz=1000;
z0=20;%初始光线到透镜平面的距离
y=zeros(size(z0));
theta1=asin(hmax/R);
theta2=asin(n*hmax/R);
theta=theta2-theta1;
f=hmax/tan(theta);%透镜的近似焦距
z=linspace(0f+z0+f/3mz);
for gh=1:mh
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 858 2020-03-18 10:21 模拟平凸透镜的光线追迹.m
- 上一篇:多个运动估计的块匹配算法matlab
- 下一篇:高阶累积量 matlab
评论
共有 条评论