-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathplot_n_v_arbitrary_script.m
More file actions
39 lines (32 loc) · 1004 Bytes
/
plot_n_v_arbitrary_script.m
File metadata and controls
39 lines (32 loc) · 1004 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
lam = [0.95 1.375 1.7]*UM; % (micron)
%glass = read_schott_cat;
[glass, glasscat] = read_zemax_glasscat;
%glasscatlist = dir('C:\zemax\glasscat\*.agf');
% for ii = 1:length(glasscatlist),
% glasscat = glasscatlist(ii).name;
% glass = read_zemax_glasscat(glasscat);
v = zeros(size(glass));
n1300 = zeros(size(glass));
for ii = 1:length(v),
if lam(1) > glass(ii).MinWave & lam(end) < glass(ii).MaxWave ...
& glass(ii).RelCost > 0,
n = dispersionformula2index(glass(ii).disp_poly,glass(ii).formula,lam);
if ~any(isnan(n)),
n1300(ii) = n(2);
v(ii) = (n(2) - 1)./(n(1) - n(3));
else
n1300(ii)= NaN;
v(ii) = NaN;
end
else
n1300(ii) = NaN;
v(ii) = NaN;
end
end
figure, plot(n1300,v,'.'), grid,...
text(n1300,v,{glass.name},'fontsize',12),...
xlabel('index of refraction, n1300'), ylabel('Abbe Number v'),...
title(pwd2titlestr(glasscat))
% pause;
%
% end