README Release notes:
BEAM4 for Windows, release 204-up
BEAM2,3 for Windows, release 198-up
BEAM for PowerMac, release 3.04-up
(c) 2004 STELLAR SOFTWARE
CONTENTS
1. PAN/ZOOM TO CARET POSITION
2. SPREADSHEET CUT AND PASTE
3. LAYOUTS WITHOUT RAYS
4. EDITOR LINE BUFFER (Windows only)
5. LAMBERTIAN AND SUPER-LAMBERTIAN SCATTERERS
6. VARIED LINE SPACE DIFFRACTION GRATINGS (BEAM FOUR only)
7. HOLOGRAPHIC OPTICAL ELEMENTS (BEAM FOUR only)
8. MATHEMATICAL IMPROVEMENTS
9. DISPLAY SCALE FACTORS in BEAM for WINDOWS PRODUCTS
10. TRACING TOTALLY-INTERNALLY-REFLECTED RAYS
11. ISOTROPIC RANDOM RAYS (B4Win only)
12. ANTI-GANGED AUTOADJUSTMENT
13. AUTOMATIC GOAL ADJUSTMENT (Win products only)
14. FRESNEL LENSES AND MIRRORS (Win BEAM 3, BEAM 4)
15. FITTING A THREE DIMENSIONAL SURFACE (BEAM 3 and 4)
16. COLORED SURFACES FOR REVERSE RAY TRACING (B4Win only)
17. FILLED CIRCULAR BEAM GENERATOR (BEAM 4 WIN only)
18. LAYOUT ORIENTATIONS (BEAM 4 WIN only)
1. PAN/ZOOM TO CARET POSITION
Previous releases required the use of the slider thumbs to pan
graphics. Now, you can use the mouse or the arrow keys to move
the blinking caret to any position of interest. Then, press
either ZoomIn key: the graphic regenerates itself, zoomed from the
point marked. The zoom keys are the right-hand key pad "+" and "-"
keys and the top row function keys F5 F6 F7 F8, with magnification
factors listed here:
RHKP + ZoomIn, x 1.414
RHKP - ZoomOut, x 0.707
F7 ZoomIn, x 4.000
F8 ZoomOut, x 0.25
F5 Vertical ZoomIn x 1.414
F6 Vertical ZoomOut x 0.707
2. SPREADSHEET CUT AND PASTE
In addition to the file export/import to and from spreadsheets,
BEAM products all include a cut and paste feature that
allows you to mark data using your mouse and transfer it via the
clipboard. In this way you can transfer just the rows you want,
and the data will appear correctly adjusted for field width and
column. Spreadsheets will automatically parse your table data
into separate fields if they are the fields are separated by tab
characters. Use the Options:Other dialog to turn on "Output tabs
to clipboard" to have BEAM convert its field delimiters (usually
colons) into tab characters whenever it copies tables to the
clipboard. This way, your spreadsheet will automatically parse
the BEAM table into its fields when you paste the clipboard info
into the spreadsheet.
Bringing data back into BEAM via the clipboard Edit:Copy and
Edit:Paste is fully automatic, since the native clipboard format
that spreadsheets use to COPY is tab delimited text and BEAM
automatically makes tabbed data line up with its ruler line.
This feature does not require any user settings -- it is built
in. To import a portion of a table that you copied from
spreadsheet to clipboard, place your BEAM caret in the upper
left cell of the table destination, and select Edit:Paste.
You can import entire tables as well as table fragments. In your
spreadsheet, set up a title line, a header line, and a ruler line,
and a table body containing the computed data you want to import.
Fill each of your ruler fields with underscores, or with the text
string of hyphens
"------
and copy the entire worksheet to the clipboard. Then, in BEAM, put
your cursor into the upper left hand table location and select
Edit:Paste. BEAM will pull the entire table off the clipboard,
properly formatted according to the field width you specify in
Options:Other:FieldWidth (default is 10 characters/field).
3. LAYOUTS WITHOUT RAYS
Sometimes you may want to view an optical layout without any rays
or any ray table. BEAM products now include this useful
feature. Although the ray tracing functions require a valid ray
table, the pictorial rendering of a layout does not. Be sure to
have your optics table specify the diameters of its optical
elements in order that they can be drawn with nonzero sizes in the
absence of ray-defined radii.
4. EDITOR LINE BUFFER (Windows only)
The Windows edition of BEAM products have a table editing feature
that uses the Ins (insert) key and the Del (delete) key. These
keys are at the bottom of the extreme right-hand keypad of PC
keyboards. (Sorry, Macintoshes lack these keys). When the
caret is in the body of a text table, Del removes the entire line
of text at the caret and places it into an invisible text buffer,
and pulls up the text below the caret. Ins inserts the buffer
contents into the table, pushing down the text below. Del and
Ins can therefore be used to rearrange text tables, and because
Ins does not destroy the contents of its buffer, it can be used
many times in succession to spawn duplicates of a line of text.
In releases beginning with 133, this Ins/Del behavior has been
made optional. Default is OFF; Ins and Del do nothing. You
can turn it on or off using the dialog at menu item
Options:Other.
5. LAMBERTIAN AND SUPER-LAMBERTIAN SCATTERERS
BEAM products include a Lambertian scattering optical
surface that behaves like an ideal diffuse reflecting screen or
like a diffuse opalescent transmitting window. The scattered
rays emerging from such a surface are statistically uniform in
direction (solid angle) over the outgoing hemisphere. Such an
emitter is called a Lambertian source because it obeys Lambert's
law, which applies to light sources whose brightness is
independent of the angle from which they are viewed.
To use this feature, set up your optics table in the usual
way. The surface action codename for the diffuse reflector
is "Lambert" while the codename for the diffuse transmitting
screen is "lambert". BEAM's minimum abbreviations for these
codewords are "La" and "la". Here is an example of an optic
that has one diffuse plane scatterer and a final stopping
surface:
2 surfaces LAMBERT.OPT
zsurf Curv Diam mirror?
------:-------:-------:----------:----
3 : 0 : 2.0 : lambert :
5 : -0.5 : 4.0 : film >
: : : :
and here is a ray group that illuminates it:
4 rays LAMBERT.RAY
x0 notes xfinal
---------:----------:----------:-
0.70 : : :
0.75 : : :
0.80 : : :
0.85 : : :
: : :
Due to the large range of scattered ray directions in a
hemisphere, most of these rays can be expected to miss an optic
placed downstream from a Lambertian scatterer. The random ray
generator built into BEAM will therefore usually be needed to
produce a useful number of trial rays. A small fraction of these
will scatter into the acceptance pupil of your subsequent
optical train. BEAM's random ray success fraction is an
accurate measure of your optical system's net throughput if the
number of successfully propagated rays is allowed to accumulate
up to a statistically acceptable level.
BEAM products also include the ability to model random ray
scattering in a surface that concentrates its scattering towards
its normal (the direction perpendicular to the surface at the
point where the ray arrives). This kind of scattering is called
super-Lambertian scattering, and is described by an index "n"
that controls the degree of beaming or directionality of the
scatterer. The formula describing the surface brightness
relative to its normal value is
relative brightness = [cos(a)]^n
where a is the angle between the surface normal and the target
direction. The index value n=0 describes an ordinary Lambertian
scatterer whose brightness does not depend on viewing direction.
Values of n larger than zero describe scatterers that are
increasingly directional.
To set up a super-Lambertian surface, use the Lambert or lambert
code words in your optics table, and include the numerical value
of the index n as well. This table describes a super-Lambertian
transmitting screen whose index n = 2.5.
2 surfaces LAMBERT.OPT
zsurf Curv Diam mirror?
------:-------:-------:------------:----
3 : 0 : 2.0 : lambert2.5 :
5 : -0.5 : 4.0 : film >
: : : :
6. VARIED LINE SPACE DIFFRACTION GRATINGS (BEAM FOUR only)
In a diffraction grating is formed by a pattern of grooves on a
surface which can be flat or curved. Each groove is defined by
the intersection of a mathematical phase surface with that
nominal grating surface. The pattern of grooves is determined by
the group of phase surfaces.
a. If these phase surfaces are plane, parallel, and equidistant,
the grating is said to be uniformly ruled (although of course on
a curved surface the grooves will be neither straight nor
parallel nor equally spaced). In this case the set of planes is
fully determined by three groove density numbers Gx Gy Gz that
give the number of planes intercepting the x, y, and z axes per
unit length. BEAM FOUR uses the numbers Gx Gy and Gz to
specify the grating.
b. If these phase surfaces are defined as surfaces along which
the phase difference between two mutually coherent light sources
is zero, a holographic optical element (HOE) results. BEAM FOUR
uses seven numbers to define the HOE: the positions in x,y,z of
each light source, and the wavelength of the recording light.
See section 7 for a fuller explanation and examples.
c. If the phase surfaces are plane, parallel, but not
equidistant, a varied line spacing grating results. VLS
gratings are used when aberrations of a uniformly ruled
grating are unacceptably large. BEAM FOUR accepts four
polynomial coefficients VLS1 VLS2 VLS3 VLS4 to describe the
variation in groove density with respect to x or y, and GX or
GY to specify the groove density at the center of the grating.
If GX is nonzero, BEAM FOUR uses the formula
density(x) = GX + x*VLS1 + x^2*VLS2 + x^3*VLS3 + x^4*VLS4
If GX is zero and GY is nonzero, BEAM FOUR uses the formula
density(y) = GY + y*VLS1 + y^2*VLS2 + y^3*VLS3 + y^4*VLS4
In some editions of BEAM FOUR the abbreviations G1 for VLS1,
G2 for VLS2 etc are accepted as equivalent column headers.
Please take care of these polynomial coefficients to assure
that the computed density of grooves is always a positive
number over your working range of X or Y values. Negative
groove densities are ambiguous and are not supported by BEAM.
An example of a VLS grating is shown here. Notice how the
parallel incident rays diffract differently, depending on
their x values at the grating intercept.
2 surfaces VLS.OPT
Z Gx VLS1 VLS2 VLS3 mirror? order
------:------:------:------:------:---------:------:-------:-
1 : 1 : 1.00 : : :Grating : 1 : :
0 : : : : : : : :
3 rays VLS.RAY
X0 U0 @wave Ufinal
---------:---------:---------:----:----.---------:---------:-
1.0 : 0 : 0.4 B : 0.800000000: :
0.5 : 0 : 0.4 B : 0.600000000: :
0.0 : 0 : 0.4 B : 0.400000000: :
: : : : : :
7. HOLOGRAPHIC OPTICAL ELEMENTS (BEAM FOUR only)
BEAM FOUR can trace light rays diffracted from a holographic
optical element (HOE). An HOE is a transmitting or reflecting
optical surface that has been exposed to a pair of mutually
coherent light sources and developed to photochemically fix
their interference pattern. In use, the pattern serves as a
diffracting optic that when properly designed can offer
desirable focal properties or dispersion characteristics.
The groove pattern is completely specified by specifying where
in space each of its two wavefronts originated, and what the
recording wavelength was that produced the interference pattern.
To specify an optical surface as an HOE, put the keyword "HOE"
into lens/mirror surface-type column of your optics table. Use
lower case for a transmitting optic, or upper case for a
reflecting HOE.
BEAM FOUR has seven parameters that serve to completely describe
the HOE. These optics-table parameters are:
HOELambda: the recording wavelength. This should be expressed
in the same units that your ray table uses to describe the
wavelengths of your rays in your "@wave" column. Microns is
the most common choice. Since HOEs are commonly recorded with
a high power blue laser, HOELambda is usually in the range 0.4
to 0.5 microns. In your optics table column header, this
variable can be abbreviated HOEL, but spelling it out may keep
you from forgetting what it means.
HOEx1, HOEy1, HOEz1: The location in space of your first point
source of coherent recording light. These coordinates are
specified in the same units that your optics table uses, e.g.
meters or mm. The coordinate frame is the local frame: 0,0,0
is at the center of the HOE face, and the z axis is the
HOE center normal. Defaults are zero for unused coordinates.
For a parallel recording beam you will specify a source point
at infinity; so use any astronomically large number. For example
a beam at 45 degrees in the (x,z) plane would have the source
coordinates HOEx1=1e99, HOEz1=1e99.
HOEx2, HOEy2, HOEz2: The location in space of your second point
source of recording light, otherwise as above.
The above seven parameters serve to define the HOE pattern. To
trace your rays, BEAM FOUR needs also to have you specify the
order of diffraction that you want followed, and the wavelengths
of your individual rays. So you will need an ORDER column in
your optics or ray table, and an @wave column in your ray table
with the numerical wavelengths of your rays.
The HOE parameters can be autoadjusted to tune up an optical
design. Once you have a feasible trace, put a question mark
into the tagfield of each variable to be adjusted, and choose
the autoadjust function from the RUN submenu.
The HOE need not be recorded on a flat surface. The other
surface descriptors continue to apply, so that you can for
example employ an HOE pattern on a hyperboloid or torus.
Here is one example. A circularly symmetric ring-pattern HOE is
produced by interference between two coherent on-axis point
emitters whose recording wavelength is 0.4 microns. This HOE is
to act as a positive (converging) lens for light at 0.55
microns. In the demo HOE.OPT the first surface is the HOE and
the second surface is the exit side of its refractive substrate.
Incoming parallel rays are brought to a focus on the third
surface. The recording geometry is specified by the data HOEz1
and HOEz2, which give the effective locations on the HOE's z
axis at which the point sources were placed. Since the point
sources lie on the HOE z axis, the parameters HOEx1, y1, x2, and
y2 are allowed to default to zero. (In a realistic recording
geometry these would be two images of a single point source,
seen through a beamsplitter). The table HOE.RAY illuminates
the optic with five parallel incoming rays at a wavelength of
0.55 microns. The HOE design can be tuned up by autoadjusting
the HOE parameters. Here, HOEz2 is marked for autoadjustment.
3 surfaces HOE.OPT
index Mirror? Z HOELambda HOEz1 HOEz2 Order Diam
------:--------:----:--.------:---.----:---.-----:-----:------:
: hoe : 1 : 0.4 : 16.0 : 1.98 ? 1 : 1 :
1.55 : lens : 2 : : : : : 1 :
: film : 3 : : : : : 1 :
: : : : : : : :
5 rays HOE.RAY
x0 @wavel xgoal xfinal notes
:-----:--.----:------:---.------:-------:-
: 0.5 : 0.55 B 0 : : :
: 0.4 : 0.55 B 0 : : :
: 0.3 : 0.55 B 0 : : :
: 0.2 : 0.55 B 0 : : :
: 0.1 : 0.55 B 0 : : :
: : : : : :
8. MATHEMATICAL IMPROVEMENTS
Two new mathematical routines have been installed and tested:
a surface intercept solver with improved robustness for a class of
extreme polynomial cylinders, and an improved nonlinear least
squares solver for autoadjustment (see Lampton,M., Computers in
Physics Feb 1997).
9. DISPLAY SCALE FACTORS in BEAM for WINDOWS PRODUCTS
Windows editions of BEAM TWO, BEAM THREE, and BEAM FOUR ray
tracers produce on-screen graphics of many kinds. The sizing of
these graphics is by default automatic, so that a reasonably
scaled picture is presented of an optical system layout, spot
diagram, etc. The overall size of each graphic on your screen
is set via the dialog item Options:Other:Graphic Size MM, where
you can specify to BEAM how large you typically like your graphics
to be plotted.
For precise comparisons between layouts, you will sometimes want
to hold your display scale factors constant, to better contrast
the changes you are making. For this purpose, LAYOUT options
includes a check box "Sticky Zoom/Pan" that when checked makes each
layout have the same display magnification (zoom factor) and position
(pan) as the previous layout. Unchecking it reverts to full
automatic scaling.
PLOT has control of horizontal scaling and vertical scaling
separately. The default for Options:Plot:HorizRange is zero,
meaning automatic scaling. It can be set to any value desired,
making that range of values span a common distance on your display.
Options:Plot:VertRange works similarly.
1D and 2D also have data range controls to determine the extent
of each histogram's data range. These accept a Max and Min
value for each variable, or can be set to adjust the data span
automatically or by means of the Diameter info in your Optics
table.
All graphic displays have an instant zoom feature to give you
immediate control over any graphic. Use the F7 key or the gray
plus key to zoom in, and the F8 key or the gray minus key to zoom
out. Instant horizontal and vertical pan is available using the
mouse sliders.
The vertical magnification may be boosted or shrunk without
changing the horizontal magnification. The F5 key performs a
vertical zoom in, and F6 does a vertical zoom out. This feature
lets you view a long slender optical train more easily.
PRINTING: all graphics can be printed by the File:Print
selection. Printed graphics have the same size as their
displayed counterparts.
10. TRACING TOTALLY-INTERNALLY-REFLECTED RAYS
The BEAM family of optical ray tracers can be told to follow
just those rays that are totally internally reflected (TIR) at a
refracting boundary. (The simpler situation, where you want to
follow reflected rays of both partial & total intensity, can be
done by specifying the surface as a mirror.) To use the TIR
feature, name the boundary as a TIR type. The following example
is a group of rays that diverge from a point within a water
vessel; only a few of the rays are totally internally reflected,
and therefore only a few succeed in tracing to the final
surface.
2 surfaces TIR.OPT
index Z Curv Lens?
----------:----------:----------:----------:----------:-
1.33 : 2.0 : 0.0 : TIR : :
1.33 : 0.0 : 0.0 : film : :
: : : : :
4 rays TIR.RAY
U0 notes Xfinal
----------:----------:----------:----------:----------:-
0.6 : : : : :
0.7 : : : : :
0.8 : : : : :
0.9 : : : : :
: : : : :
To use the TIR action at a given surface, first do a trace with
the mirror action installed: put the action identifier "mirror"
into the mirror/lens action field at the appropriate surface in
your optics table. Make sure that all your rays successfully
reflect. They should trace properly to the end of your optical
system. Once your optic checks out using a mirror action, go to
the optics table and replace the mirror with the TIR action:
remove the word mirror and replace it with the word "TIR". Now
trace your system again. Rays that do not undergo TIR will now
be killed at the TIR surface, with the ray note "tir NN" where NN
is the surface number.
The identifier "TIR" by default assumes that the optical medium
on the far side of the TIR surface has a refractive index of
1.00, air. Alternatively you can specify refraction values
appropriate for other farside media. Simply append the
refraction index to the identifier. For example, "TIR=1.342" in
the optics table surface action column specifies a test for TIR
against a farside refractive medium whose index is 1.342. The
farside medium is not part of the ray trace since the TIR ray
never passes through it, so there is no need to include the
farside optical index in the optics INDEX column nor in your
glass table. Here's an example:
2 surfaces TIR.OPT
index Z Curv Lens?
----------:----------:----------:----------:----------:-
1.33 : 2.0 : 0.0 : TIR=1.31 : :
1.33 : 0.0 : 0.0 : film : :
: : : : :
In general, from Snell's law, TIR will occur only if Nfar < Nnear,
and then only when the angle of incidence |i| > arcsin(Nfar/Nnear).
11. ISOTROPIC RANDOM RAYS (B4Win only)
BEAM FOUR contains a programmable random ray generator designed to
illuminate optical trains in a way that is easy to use. By
default it simply randomizes the starting ray parameters that
appear in your ray table, using the ranges of values that it finds
there. So, if you have set up a range of X0 values in your
table, the random ray generator will fill in this range with a
uniformly distributed variable for X0. At the same time, if
other ray start values have ranges, it will randomize them too;
this means that any combination of X0, Y0, Z0, U0, V0, and W0 can
be randomized. If no value for W0 is specified, W0 will be
computed from +sqrt(1 - U^2 - V^2) for each random ray.
If a combination of U0 V0 and W0 is specified, then all variables
will be fixed up by scaling them equally to make the sum of their
squares equal to 1.0 before tracing. If random rays are generated
in this mode, the resulting angular distribution will be
complicated by the triplets having been generated uniformly in a
cube of U0 V0 and W0 values with each triplet then being projected
to the unit sphere before tracing.
Isotropic Random Rays for Radiometry
The present series of BEAM products includes the capability of
generating random rays that are isotropically distributed (uniform
over solid angle) as distinct from uniform in U0 and/or V0. This
feature models the emission of radiation from an isotropic source
of light, or from Lambertian scattering surface. (A surface that
obeys Lambert's law has an intensity that varies as cos(a) where a
is the angle with the normal. Its projected area also goes as
cos(a) and its radiance is therefore independent of a.) An
isotropic beam is useful in assessing the throughput of an optical
train.
To set up your ray table to generate these rays, remove any U0 and
V0 columns which may be present, and use only a W0 column. The
extreme values found in this column will be adopted as the limits
to the random W0 values generated. In addition the random ray
generator will create U0 and V0 values uniformly distributed about
the Z axis. The net result will be to isotropically fill a
conical shell of directions around the Z axis, having the W0 range
found in the table.
To create a filled conical beam of random rays extending from the
Z axis out to a maximum angle a, make your W0 values span the
range cos(a) to 1.0. To create a fully illuminated hemisphere,
make your W0 values span the range 0.0 to 1.0; this is two-pi
steradian illumination. To make a full-sphere four-pi source,
arrange your W0 values to span -1 to +1.
12. ANTI-GANGED AUTOADJUSTMENT
When designing a symmetrical optical system with optical design
parameters that need autoadjustment it is sometimes necessary to
tell the autoadjuster to move one group of variables together
and move another group oppositely. We call this "anti-ganged"
autoadjustment. To set up an optics table in this way --
Each master variable must lie in optics row 1..26. Each
master must have a "?" tag character as described in the
owners manual.
Each ordinary slave variable must have a tag character "a"
through "z" -- note the lower case. The letter specifies
which row of the optics table the variable is to follow.
Each anti-ganged slave must have a tag character "A".."Z"
-- note upper case. The letter specifies the same 26 rows
of master variables, but in this case the slave will vary in
the sense opposite to its master.
13. AUTOMATIC GOAL ADJUSTMENT (Win products only)
There are circumstances in which you want a nice sharp focus
but you do not particularly care where each image point falls.
Since release 195, BEAM products incorporate a means for having
the AUTOADJUST function control ray-group goals in addition to
at least one optics table adjustment. To set up your ray table
for goal adjustment, put a tag letter into the tag field of each
ray goal to assign them into common focus groups, like this:
10 rays CAMERA.RAY
X0 @ U0 Xgoal Xfinal notes
------:-:--------:--------:---.----::-------:
0.4 : b 0.1 : 0.0 a :: :
0.2 : b 0.1 : 0.0 a :: :
0.0 : b 0.1 : 0.0 a :: :
-0.2 : b 0.1 : 0.0 a :: :
-0.4 : b 0.1 : 0.0 a :: :
0.4 : r 0.2 : 0.0 b :: :
0.2 : r 0.2 : 0.0 b :: :
0.0 : r 0.2 : 0.0 b :: :
-0.2 : r 0.2 : 0.0 b :: :
-0.4 : r 0.2 : 0.0 b :: :
: : : : :: :
: : : : :: :
In the table above, the tag letters in the Xgoal field tell AUTO
to focus the first five rays to a common Xfinal value, and to
focus the next five rays to another common Xfinal value. The
numbers appearing in the Xgoal column will be ignored by BEAM
during autoadjustment. In fact any numbers there are overwritten
by the average value of the best fit Xfinal numbers as the
autoadjustment progresses. The ray table after adjustment will
look something like this:
10 rays CAMERA.RAY
X0 @ U0 Xgoal Xfinal notes
------:-:--------:--------:---.----::-------:
0.4 : b 0.1 : 0.1507a 0.1609::ok 3 :
0.2 : b 0.1 : 0.1507a 0.1617::ok 3 :
0.0 : b 0.1 : 0.1507a 0.1445::ok 3 :
-0.2 : b 0.1 : 0.1507a 0.1326::ok 3 :
-0.4 : b 0.1 : 0.1507a 0.1535::ok 3 :
0.4 : r 0.2 : 0.3045b 0.3057::ok 3 :
0.2 : r 0.2 : 0.3045b 0.3049::ok 3 :
0.0 : r 0.2 : 0.3045b 0.2915::ok 3 :
-0.2 : r 0.2 : 0.3045b 0.2894::ok 3 :
-0.4 : r 0.2 : 0.3045b 0.3312::ok 3 :
: : : : :: :
: : : : :: :
which shows that the first five rays centered themselves around
the point Xfinal = 0.1507, and the second group at 0.3045. The
value of the final RMS blur posted by AUTO is the rms deviation
from these group means.
14. FRESNEL LENSES AND MIRRORS (Win BEAM 3, BEAM 4)
A major enhancement to the earlier Fresnel lens and mirror capability
was introduced at release 191: a full description of the Fresnel
facet slope by means of a polynomial containing even and odd terms,
coefficients A1, A2, A3,... A14. This description allows a very
great degree of correction in determining a Fresnel element. As
with other optical elements, these coefficients can be put in place
manually or can be determined using the AutoAdjust feature.
The Fresnel facet slope dz/dr = d/dr (A1*r + A2*r^2 +...)
The power, in diopters, of a Fresnel lens is determined
by the A2 coefficient of the grooves on the front and back surfaces
of a Fresnel lens, according to the usual formula:
Power = (n-1) * (2*A2front - 2*A2back)
where n is the refrective index of the material on which the
grooves are engraved. Because the usual curved-lens formula is
Power = (n-1) * (CurveFront - CurveBack)
you may regard 2*A2 as equivalent to curvature.
An example of a simple front-surface Fresnel lens is:
3 surfaces FRESNEL2.OPT 0.5 diopter lens
index Lens? Z Diam A2 A4
-------:---------:-------:------:-----:---.-------:-
: fresnel : 4.00 : 2.5 : 0.5 : -0.0129550?
1.5 : lens : 4.001 : 2.5 : : :
: film : 8.0 : 2.5 : : :
: : : : : :
: : : : : :
16 rays FRESNEL2.RAY
@wave U0 V0 xgoal ygoal xfinal yfinal notes
-:-----:-------:-------:-----:-----:--.--------:--.--------:------:-
: D r 0.01 : 0.0 : 0 : 0 : 0.00000030: 0.0 :ok 3 :
: D r 0.02 : 0.0 : 0 : 0 : 0.00000042: 0.0 :ok 3 :
: D r 0.03 : 0.0 : 0 : 0 : 0.00000025: 0.0 :ok 3 :
: D r 0.04 : 0.0 : 0 : 0 :-0.00000016: 0.0 :ok 3 :
: D r -0.01 : 0.0 : 0 : 0 :-0.00000030: 0.0 :ok 3 :
: D r -0.02 : 0.0 : 0 : 0 :-0.00000042: 0.0 :ok 3 :
: D r -0.03 : 0.0 : 0 : 0 :-0.00000025: 0.0 :ok 3 :
: D r -0.04 : 0.0 : 0 : 0 : 0.00000016: 0.0 :ok 3 :
: D r 0.0 : 0.01 : 0 : 0 : 0.0 : 0.00000030:ok 3 :
: D r 0.0 : 0.02 : 0 : 0 : 0.0 : 0.00000042:ok 3 :
: D r 0.0 : 0.03 : 0 : 0 : 0.0 : 0.00000025:ok 3 :
: D r 0.0 : 0.04 : 0 : 0 : 0.0 :-0.00000016:ok 3 :
: D r 0.0 : -0.01 : 0 : 0 : 0.0 :-0.00000030:ok 3 :
: D r 0.0 : -0.02 : 0 : 0 : 0.0 :-0.00000042:ok 3 :
: D r 0.0 : -0.03 : 0 : 0 : 0.0 :-0.00000025:ok 3 :
: D r 0.0 : -0.04 : 0 : 0 : 0.0 : 0.00000016:ok 3 :
: : : : : : : : :
15. FITTING A THREE DIMENSIONAL SURFACE (BEAM 3 and 4)
Because BEAM products have an autoadjustment capability, they can
be used to determine surface parameters when the ray destinations
are specified. This is true even if the rays form a simple bed of
nails that just reaches to the surface. So if you have performed
measurements on a surface and know (for example) its height Z at
a number of points (X,Y), you can use BEAM to fit any of its built-in
surface types and obtain the best-fit parameters.
As usual, the surface is determined by the .OPT table. The
illumination setup (with X0, Y0, and Zgoal data points) is put
into the .RAY table. You may start with a very simple flat surface
and let BEAM autoadjust its parameters to give the best fit. The
final blur number describes the overall error in the fit, and the
Zfinal numbers show the individual fitted points, to compare against
your Zgoal data points. The example shown below has six parameters
and 12 data points.
1 surface XYZFIT.OPT fits this surface to (X,Y,Zgoal) in .RAY
X Y Z C Shape pitch
----.-----:----.-----:----.-----:----.-----:----.-----:----.-----:
0 ? 0 ? 0 ? 0 ? 0 ? 0 ?
: : : : : :
: : : : : :
These zeros are starting values for the unknown fit parameters.:
Autoadjust will tune them for best fit to your list of data :
points, which you specify as X0, Y0, Zgoal in your .RAY table. :
: : : : : :
: : : : : :
12 rays XYZFIT.RAY specify given points (X0, Y0, Zgoal) here
X0 Y0 Zgoal Z0 notes Zfinal
----------:----------:---------::-------::----------:----.-----:
0 : -4 : 2.71227:: -1 :: : :
0 : -2 : 0.92032:: -1 :: : :
0 : +2 : 0.74470:: -1 :: : :
0 : +4 : 2.16934:: -1 :: : :
1 : -4 : 2.73148:: -1 :: : :
1 : -2 : 0.93180:: -1 :: : :
1 : +2 : 0.75574:: -1 :: : :
1 : +4 : 2.18530:: -1 :: : :
2 : -4 : 3.16212:: -1 :: : :
2 : -2 : 1.17430:: -1 :: : :
2 : +2 : 0.98853:: -1 :: : :
2 : +4 : 2.53235:: -1 :: : :
: : :: :: : :
Your surface measurements go into X0,Y0,Zgoal columns. :
The Z0 numbers are only to guarantee nonzero rays. :
The Zfinal numbers will show your fit to each point. :
Be sure to use many many more rays than you have unknowns :
in your .OPT table. :: :: : :
: : :: :: : :
: : :: :: : :
16. COLORED SURFACES FOR REVERSE RAY TRACING (B4Win only)
In a reverse ray trace, you place the source of rays at
the final destination pixel in your optical system, and
see what happens to each ray in a huge spray of rays that
emanate from this given starting point. To be useful, you
will need to have each ray report the identity of its final
surface intercept: where did each ray stop?
To help you visualize this scene, rev 201 and upwards has
a feature that allows you to define a color for each
optical surface in a PLOT. The colors are designated by
tag letters in the action field (mirror/lens/iris field)
in your .OPT table. The color designator letters are the
same as for rays: r=red, g=green, b=blue, etc.
4 surfaces LENS.OPT
Index Zvx Curv Mir/Lens Diameter
--------:--------:--------:--------:---------:---
1.00 : 2.70 : : Iris r 1.0 :
1.00 : 2.80 : 0.5 : Lens g 1.0 :
1.66 : 3.20 : -0.5 : Lens b 1.0 :
1.00 : 6.00 : : Film r 3.0 :
: : : : :
To switch on the surface colors specified in your
optics table, use the Options:Plot dialog select
under "Which rays to show" the button that plots
all rays using their final surface color (as opposed
to plotting only the "good" rays that traverse the
entire optical system). The resulting plot will show
the various final surfaces encountered by rays having
your specified range of initial angles or positions.
17. FILLED CIRCULAR BEAM GENERATOR (BEAM 4 WIN only)
It is sometimes handy to have the ray table editor generate
a complete set of ray starts that are equally distributed
in a circular beam. Releases 204-up of the BEAM 4 WIN
product line have this feature. The ray starts can be
generated as pairs of X0 Y0 position values, or as pairs
of U0 V0 angle values. To use this feature, do this:
* Bring up the Options:Other dialog, and set the value
Ray Table CircBeam Radius _________
to the linear radius of the desired beam, or the radius
of the angular beam expressed in U0 V0 space.
* Decide how many rays you want generated. The overall
hexagonal circle pattern gives you a choice of 7, 19, 37,
61, 91, 127, 169, 217 or 271 rays arranged in concentric
circles of 6, 12, ...
* Go to your ray table and set up enough rays. They can
be blank, but the number of rays specified in the upper left
corner of your ray table must be large enough. Set up
column space for your X0 and Y0 or U0 and V0 numbers.
* Put your desired values for the center of the beam into
the topmost X0 and Y0 or U0 and V0 ray of the group you want
generated. Put zeros there for a centered beam.
* Place the blinking caret into one of these topmost fields.
The caret is your indication of where the generator is to
start generating its output.
* Click Ctrl-l 1 for 7 rays, or Ctrl-2 for 19 rays, ...
up to Ctrl-9 for 271. The generator will fill in your ray
starts, centered on your specified center ray.
18. LAYOUT ORIENTATIONS (BEAM 4 WIN only; release 204 up)
The layout artwork in BEAM THREE and BEAM FOUR products has
the flexibility to generate a view of your optic seen from any
specified azimuth around the vertical X axis, and with any
specified elevation angle above or below the perpendicular
to that axis. Release 204 and upwards has the additional
flexibility to specify any of six spatial directions as
your vertical display axis. The default presentation has
+X vertical, consistent with earlier releases. To change
the vertical display axis, go to Options::Layout and choose
your desired direction from the dialog's box labelled
"Which axis vertical?" -- your choices are +X, -X, +Y,
-Y, +Z, and -Z.
-end-