⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 opt_lens.htm

📁 Matlab实现光线跟踪算法
💻 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 + -