📄 opt_lens.htm
字号:
<HTML> <HEAD> <TITLE>/</TITLE> <META NAME="GENERATOR" CONTENT="HTML-TOOLBOX "> </HEAD> <BODY bgcolor="#FFFFF0"> <HR WIDTH="100%"></P> <CENTER><P><FONT COLOR="#000000"><FONT SIZE=+3>Cross-linked m-file</FONT></FONT></P></CENTER> <CENTER><P><FONT COLOR="#000000"><FONT SIZE=+1></FONT></FONT></P></CENTER> <CENTER><P><FONT COLOR="#000000"><FONT SIZE=+2>opt_lens.m</FONT></FONT></P></CENTER> <CENTER><P><FONT COLOR="#000000"><FONT SIZE=+1>Located in:</FONT></FONT></P></CENTER> <CENTER><P><FONT COLOR="#000000"><FONT SIZE=+1>/home/bjorn/matlab/Optical_bench</FONT></FONT></P></CENTER> <P><HR WIDTH="100%"></P> <P><FONT COLOR="#000000"><FONT SIZE=+2>Function synopsis</FONT></FONT></P> <P><FONT COLOR="#000000"><FONT SIZE=+1> [opt] = opt_lens(opt_type,opt_spec) </FONT></FONT></P> <P><HR WIDTH="100%"></P> <P><FONT COLOR="#000000"><FONT SIZE=+2>Function comments</FONT></FONT></P> <pre> % % OPT_LENS - Spherical lens single glass. % OPT_TYPE should be 'lens' (hm good and vital argument), OPT_SPEC % should be a string matrix, see README_OPT for specification. % Necessary specification fields: % r1, r2, curvature1, curvature2, dxdydx, glass, diameter % glass should be name of the glass type, the other 1x3 array % Optional specification fields: % arc, arc1 arc2, normal % example OPT_SPEC: % 'curvature1 12' % 'curvature2 -15' % 'r1 12 0 0' % 'r2 12.5 0 0' % 'diameter 4' % 'glass bk7' % 'arc .5' % % % See also OPT_APERTURE, OPT_SCREEN, OPT_GRID, OPT_PRISM, OPT_SLIT </pre> <P><HR WIDTH="100%"></P> <P><FONT COLOR="#000000"><FONT SIZE=+1>m-files called by opt_lens.m</FONT></FONT></P> <UL> <LI><A HREF ="opt_findstr.htm">opt_findstr</A></LI> <LI><A HREF ="opt_elem.htm">opt_elem</A></LI> </UL> <P><HR WIDTH="100%"></P> <P><FONT COLOR="#000000"><FONT SIZE=+1>m-files that call opt_lens.m</FONT></FONT></P> <UL> <LI><A HREF ="Contents.htm">Contents</A></LI> <LI><A HREF ="opt_build.htm">opt_build</A></LI> </UL> <P><HR WIDTH="100%"></P> <P><FONT COLOR="#000000"><FONT SIZE=+1>All the cross references in the source m-code of opt_lens.m</FONT></FONT></P> <pre> function [opt] = opt_lens(opt_type,opt_spec) % [opt] = opt_lens(opt_type,opt_spec) % % OPT_LENS - Spherical lens single glass. % OPT_TYPE should be 'lens' (hm good and vital argument), OPT_SPEC % should be a string matrix, see README_OPT for specification. % Necessary specification fields: % r1, r2, curvature1, curvature2, dxdydx, glass, diameter % glass should be name of the glass type, the other 1x3 array % Optional specification fields: % arc, arc1 arc2, normal % example OPT_SPEC: % 'curvature1 12' % 'curvature2 -15' % 'r1 12 0 0' % 'r2 12.5 0 0' % 'diameter 4' % 'glass bk7' % 'arc .5' % % % See also OPT_APERTURE, OPT_SCREEN, OPT_GRID, OPT_PRISM, OPT_SLIT % Version: 1.0 % Copyright: Bjorn Gustavsson 20020430 if nargin ~= 2, help opt_lens; ok = 0; return; end; opt1 = <A HREF ="opt_elem.htm">opt_elem</A>('lens'); opt2 = <A HREF ="opt_elem.htm">opt_elem</A>('lens'); % defaults opt2.glass = 'air'; % going out into air after the lens opt1.r(2:3) = 0; % Lens centered on the optical axis opt2.r(2:3) = 0; % Lens centered on the optical axis opt1.n = [1 0 0]; % Lens perpendicular to the optical axis opt2.n = [1 0 0]; % Lens perpendicular to the optical axis opt1.arc = 0; % no anti reflection coating opt2.arc = 0; % no anti reflection coating % set the necessary ones: % lens diameter i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'diameter'); opt1.diameter = str2num(opt_spec(i,12:end)); opt2.diameter = str2num(opt_spec(i,12:end)); % lens glass i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'glass'); opt1.glass = strtok(opt_spec(i,12:end)); % lens front radius of curvature i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'curvature1'); opt1.r_o_curv = str2num(opt_spec(i,12:end)); % lens back radius of curvature i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'curvature2'); opt2.r_o_curv = str2num(opt_spec(i,12:end)); % lens front position i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'r1'); opt1.r = str2num(opt_spec(i,12:end)); % lens back position i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'r2'); opt2.r = str2num(opt_spec(i,12:end)); % set the optional ones i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'normal'); if length(i) == 1 opt1.n = str2num(opt_spec(i,12:end)); opt2.n = str2num(opt_spec(i,12:end)); elseif length(i)>1 i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'normal1'); opt1.n = str2num(opt_spec(i,12:end)); i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'normal2'); opt2.n = str2num(opt_spec(i,12:end)); end i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'arc'); if length(i) == 1 opt1.arc = str2num(opt_spec(i,12:end)); opt2.arc = str2num(opt_spec(i,12:end)); elseif length(i)>1 i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'arc1'); opt1.arc = str2num(opt_spec(i,12:end)); i = <A HREF ="opt_findstr.htm">opt_findstr</A>(opt_spec,'arc2'); opt2.arc = str2num(opt_spec(i,12:end)); end opt = [opt1 opt2]; </pre> <P><HR WIDTH="100%"></P> <P><I><FONT COLOR="#0000FF"><FONT SIZE=+1>Written by B. Gustavsson 13:27 29/1 2003 <IMG SRC = "file:/home/bjorn/matlab/Local/Tools/htmltool/gifs/copyright.gif" ></FONT></FONT></I></P> <P><I><FONT COLOR="#0000FF"><FONT SIZE=+1>E-mail:</B><A HREF = "mailto:bjorn@irf.se">bjorn@irf.se</A></H4></FONT></FONT></I></P>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -