Some Technical Details about the Web Version of Hexrod
Program Origin and History
This Web page is based on Wayne Cattanach's Hexrod program, Rev 7-92,
which was graciously supplied by Wayne. It uses Web "forms" to
pass information between a set of cgi scripts written in Perl.
I was also inspired by Bruce Conner's Windows version of Hexrod.
You can find an archive of information about cane rods, the Hexrod
program, and cane rod tapers at Jerry Foster's excellent
Rodmakers Web Site. Jerry's site has a paper by Wayne describing the
math behind the
Hexrod program.
I'll try to keep a list of modifications and fixes here:
- December 17, 1996: First released.
- January 9, 1997: Demo added.
- April 17, 1997: Added option to smooth stress values.
- July 17, 1997: Added option to save & retrieve a rod design.
- August 20, 1997: Added option to modify rod's basic design parameters.
- October 20, 1997: Fixed a bug affecting how data was passed between screens.
- February 15, 1998: Added a feature to allow two rod designs to be compared. Changed how recommended ferrule sizes are computed (still seems flaky :-().
Added a feature to subtract varnish thickness.
- February 28, 1998: Added a feature to allow measurements taken at
irregular or nonstandard intervals, or in metric units, to be input.
- March 14, 1998: Added a feature to provide a page with
planing form settings.
- March 21, 1998: Finally found and fixed the bug in how ferrule sizes are
computed. Added an option to add a longer descriptive note to the output, and
an option to send selected outputs by email.
- March 29, 1998: Added a feature to allow rod measurements to be
"cut and pasted" directly into the program.
- April 26, 1998: Added a feature to allow rod dimensions to be
developed from a linear (straight line) taper.
- September 12, 1998: Added ASCII and GIF stress curve graphs to email
output options.
- December 19, 1998: Completed the taper archive, at least enough to
be announced. In entering all these tapers I found I needed to make changes
to allow for all the dimension measurements which start at 0 inches instead
of 1 inch from the tip.
- December 24, 1998: Combined the "cut and paste" input screen with the
"irregular and nonstandard intervals" input screen, since they are both
really doing the same thing. Its now called the
"Free format input screen."
- February 27, 1999: Added hooks to import and export
TPR files for use with Wayne's Hexrod for Windows.
- June 12, 1999: New feature allows graphical
editing of stress curves.
- November 10, 1999: Changed basic and detailed output tables to
start at 0 inches rather than 1. Stresses at 0 are undefined.
- February 2000: Began a general cleanup of the output formatting.
Dropped the "Pgperl" graphics package for the "GD" package, which has
less problems when the user tries to print a graph. Added capacity to
handle longer (spey) rods with their larger ferrules. If you have actual
weights for larger size ferrules (18-32/64) please send them to me.
How to use Web Hexrod
The Web page has two initial input screens.
The first is Basic Rod Design Parameters.
On this screen, you enter the
rod length, action length,
line weight, number and size of ferrules, etc.
At the bottom of the first screen you make a choice of the Rod Data Input,
which takes you to the proper second screen. This is where you must enter
either Rod Dimensions or Stresses.
Actually, there are several ways you can get the rod dimensions
or stresses into the program.
-
The most straightforward is to simply enter
them, at 5 inch intervals. (Most US rodmakers build with planing forms
with 5 inches between the adjustment "stations".)
-
If you have a rod design with dimension measurements at some spacing
other than 5 inch intervals, you can enter the measurements into a
free format data window.
If your computer has simple cut and paste ability,
you can copy rod dimensions directly from another source, such as an
email message or a web page, directly into the free format window.
There are some detailed directions below if you
are using this option.
-
Finally, you can design a rod from a straight (linear) taper; again
there are detailed directions below.
Once you have entered the dimensions or stresses by any of these methods,
the program does some checks for data consistency and hopefully will
find input problems and not just bomb or give stupid results. For instance,
rod dimensions must be in a reasonable range of 0.0 to 1.0 inches, but
if you enter a rod dimension of 184, it will assume you mean 0.184.
I'll add more checks eventually.
After the rod dimensions or stresses have been checked,
the program calculates the other and displays the Basic Design Report
showing
the basic rod parameters and the dimensions and stresses at 5 inch intervals.
At the end of this report you have several options for getting more
detailed information or changing the analysis. These are your options:
- Add a descriptive note to the output. This note will be
displayed on the output tables which are shown or emailed to you.
- Several options for viewing the output:
- A detailed
table showing the dimensions and stress components at 1 inch intervals.
- A table showing planing form settings.
- A graph of the dimensions.
- A graph of the stresses.
- The basic output page, the detailed output page, and/or the
planing form setting page can be sent to you by email.
- Several options for modifying the rod:
- Return to the Rod Dimensions input screen and modify dimensions.
- Return to the Rod Stresses input screen and modify stresses.
- Modify the basic design parameters.
- Save your rod design to a file.
- Compare the current rod design to one you saved previously.
Assumptions and Quirks
In converting Wayne's program, I made a couple simplifying assumptions which
I hope won't cause any grief. These were
- All lines are 90 feet long.
- Line weights are from Wayne's table. These are for DT lines.
Line weights cannot be changed by the user.
- Ferrules are assumed to be evenly spaced.
These are some gotcha's:
- I extrapolated Wayne's line weights and ferrule weights for some
larger and smaller sizes.
The lines extrapolate easily (total line weight in grains =
3.2 times weight of first 30 ft), but ferrules are a guess. If you are
fussy, then weigh your ferrules. (On the second screen, you are given a
chance to enter an exact ferrule weight.)
- If you go back and forth, calculating stresses from dimensions then
recalculating dimensions from stresses, the dimension values in the first
few inches of the rod tip get tiny. (This seems to happen in Wayne's
program also.) I did not try to determine what is going on there.
(Recall that Garrison did not use the dimensions near the tip from
his math either; he considered these computed dimensions impractically small.)
- Because of the way information is passed between program screens,
a browser "Reload" will sometimes bring back a screen without data. Use
the "Back" button to go back to a good screen, reload it, and go forward
again. This can affect how you correct entry errors; you may have to
return and fill in the entire screen again.
- Finally, I try to avoid working on the program when someone seems
to be using it (I check the server logs), but when I do work on it
there is the possibility that I will break something. Or change my mind about
how something should work and change your answers from the last time. The program is
always "live", and there are now so many parts that it is hard to make
a separate copy to work on. "You get what you pay for."
Definitions of Terms and Descriptions of Special Features
In case there is any confusion, the Rod Length refers to the
entire assembled rod, from tip to butt. The Action Length is the
length from the tip to as far as you want to analyze dimensions and
stresses.
The action length may end at the front of the grip, or may extend
into the grip and reel seat. It should never be longer than the rod length.
Unless you are cheating.
Another option is to save the rod design. This writes a copy of
the rod parameters, dimensions and stresses to a disk file with a short
name (8 or fewer characters) that you choose. This file is written to a
temporary directory, where files are deleted after 3 days.
Be sure to choose a unique name; if you call your rod "test" and
so does the next guy, he will clobber your file. Note that the name
you enter is case sensitive, so "Payne101" is distinct from "PAYNE101"
and from "payne101". I won't be responsible
for lost or clobbered files, so make a printed copy if the rod design
is important to you! Or export it to a TPR file...
Later versions of Wayne Cattanach's DOS and Windows versions of Hexrod
allow rod designs to he saved and retrieved from taper (.tpr) files.
You can import a .tpr file on your PC into web hexrod, or
export the web hexrod results to a .tpr file to use with Wayne's
program.
Wayne's hexrod is in some ways more general than this Web version, so
you will have to supply some additional information when importing the
.tpr file. I've also found some slight differences in the
stress values computed by the different programs. I think this results
from how the center of gravity of the 1-inch rod sections are computed.
I haven't had time to investigate this fully.
U.S. rodmakers usually take measurements of a rod at 5 inch intervals,
starting near or at the tip. Sometimes measurements are taken at another
spacing, or at irregular intervals, or in metric units. The program will
interpolate (using linear interpolation) these points to 5 inch intervals
for you.
- On the first page, select Input Dimensions at another spacing
- In the box, enter pairs of numbers measuring the distance from
the rod tip and the dimension (flat to flat) at that point.
- Measurements points can be in whole or fractional inches. Use
a decimal point for fractional inches. Dimension measurements are
assumed to be in fractions of an inch if no decimal point is present
- You may enter up to 100 measurements. Measurements need not be
entered in order.
- There are check boxes to indicate that either distance from the
tip is in centimeters or rod dimension is in millimeters, or both.
- There is also a place to enter the
varnish thickness to subtract. The thickness is
in the same units as the dimensions (ie. inches or mm).
If your computer has cut and paste features, you can copy a rod design
directly into the free format window.
The program will extract from the window pairs of number:
a distance from tip followed by a dimension.
Any extra text or
characters (such as html formatting) are
ignored, but extra NUMBERS will mess things up.
On the next screen, you
will be given a chance to inspect how the data was imported, and fix
anything that is not correct.
Many rods are designed on a linear or straight line taper, where the
rod dimension increases in a constant fashion along the rod. As a
rough rule of thumb, rods with a taper of 2-2.5 thousandths per inch are
slow action rods, 2.5-3 thousandths are moderate action rods, and 3-3.5
thousandths are fast action rods.
This program uses the general approach of Garrison for designing straight
taper rods.
Garrison uses a linear taper over most of the rod blank, but makes the
first 10 inches or so of the tip at a different, more gradual taper.
In this program, you must input the desired rod dimension at the 1, 5,
and 10 inch stations, then specify the taper to be used from the 10 inch
point to the rod butt. After you have put in these numbers, the taper is
computed by interpolating the first 10 inches and using the specified taper
for the rest. You can then fine tune the taper by adjusting the rod dimensions
at individual points, before the stress curve is computed.
When measurements are made from an existing rod, you must remember
subtract the thickness of the varnish before using the measured
dimensions. When you input dimensions, on the second screen, there is
a box at the bottom in which you can enter the thickness of the varnish to
subtract.
The default value is 0.000 (no varnish). Typical varnish thickness might
be 0.002 for a oil finished rod, to 0.006 for a dipped rod. This is for
the entire rod dimension, i.e. both flats.
From the main design report page, you can request a page with planing form
settings. The default setting is one-half the rod dimension (at 5 inch
stations), but by specifying a value in the box, you can have the setting
adjusted by that amount to compensate for the cane enamel, grooved plane soles,
etc. For instance, if the rod dimension at the 10 inch station is 0.100
inches, and the adjustment is 0.002, then the setting will be
0.052=(0.010/2)+0.002. A negative value for the adjustment is subtracted
from half the dimension.
On this page, for ease of use, the 1-inch point (rod tip) is interpolated to the
0-inch station, and the settings are extrapolated at the butt end to
the next 5-inch station point.
At the bottom of the "Modify Stresses" form there is a button to
smooth the stress values. This applies a simple moving average to the
stress curve over a 5-inch segment. The dimensions are then recomputed
based on this smoothed stress curve. A single application of this smoother
does not have a great affect but it can be repeated if desired.
Many "classic" cane rod tapers were designed by trial and error, and have
very lumpy-bumpy stress curves. Will smoothing the curve result in a rod
that is better or worse? Hell if I know...
One of the options on the Rod Design page is to edit the stress
curve. You will be presented with a graph of the stress curve showing
the stress at each 1-inch point along the action length. Using your mouse
you can click where you want to put the stress value at that inch. Once
you are done, the dimensions of the rod at each inch point are recalculated
from the stresses.
This option is useful to add a roll casting "hinge", to remove a butt
swell so the stress curve can be stretched, or to make minor changes in
the stress curve. It is a slow process since the stress curve is redrawn
after every point you click. This process might be too tedious
if your Internet connection is slow or shaky.
One of the principal uses of the concept of rod stress is to assist in
designing a new rod from an existing rod.
With this program, you can modify one or more of these basic rod parameters:
- Line weight
- Length of line cast
- Number of ferrules
- Type of ferrules
- Length of rod action
Then, you can rerun the program, holding constant either the
stresses or the dimensions.
This is the logic:
- If you want to try a different line weight,
or length of line cast,
then you perhaps want to hold the dimensions constant and see
how the stress values look under this change.
- Or, perhaps you want to find the dimensions of a rod that will
cast a different line with the same stress curve. In this case,
hold the stress curve constant.
- If you want to change the number or type of ferrules, then
you may want to hold the dimensions constant and see how the
stress values change.
- Or, perhaps you want to replicate the same stress curve in a
rod with a different number or type of ferrules. So hold
the stress curve constant and recompute dimensions.
- If you want to change the rod length, then
perhaps you want to replicate the rod's stress curve, but in a
longer or shorter rod. In this case, hold constant the stress curve.
- Or, perhaps you want to make a short rod from the two tip pieces of a
three-piece rod. In this case, hold constant the dimensions.
(Also, change the number of pieces from 3 to 2!)
When you change the action length, this is what happens:
- If you change the rod length and
hold the stress curve constant, the previous stress curve is uniformly stretched
or shrunk to the new rod action length.
- If you change the rod length
and hold the rod dimensions constant, the butt end of the action is
shortened by truncating (like when you slam the car trunk on the rod
butt) or by extrapolating the rod taper near the butt.
(If you want to shorten the rod at the tip, like when the screen door
closes too fast, this program cannot help. I'm sorry on both accounts.)
The critical thinker now asks, "If I am recomputing the rod dimensions,
say for a longer or heavier rod, how do I know what size the ferrules
will be?"
Good question. If you hold constant the stress curve and recompute
dimensions, the program will iterate until it finds the correct ferrule
sizes for you. That is why the ferrule size boxes are blank. But if
you put in values, the program will use those ferrule sizes.
(Ferrule sizes are computed by rounding. For instance, if the rod
dimension at the ferrule is between 10.5/64 and 11.5/64, an 11/64 ferrule
is recommended. Different builders have different opinions here; use
your own judgment.)
Sometimes it is useful to compare the stress curves or dimensions of
two rod designs, say before and after a modification. Enter the first
design and "Save" it, with a unique rod ID or name. Then develop the
new rod design and enter the rod ID of the saved rod in the "Compare"
box. The comparison shows the two rods side by side in tables and
graphs.
It helps if the two rods have different descriptive names, since these are
used on the output.
Finally
If you find any bugs, have suggestions for improvements, etc. let me
know at
stetzer@csd.uwm.edu.
Just for the record, I promise not to peek at anyone's rod designs :)
Back to the Hexrod Program
"I'm not a programmer, but I play one at work."
-- Frank Stetzer Milwaukee, Wisconsin, USA
|