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.

Wayne's Hexrod program was based on Everett Garrison's formulas, published in "The Book".

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.
  • May 2002: Complete rewrite of the program, adding many new features.
  • June 2002: Decided to change how the user can input ferrule sizes, making it easier for me an harder for the user :-(
  • July 2002: Added the ability to set up private taper libraries.
  • August 2007: Added option for DT or WF lines & more acccurate line weights
  • Spring 2009: Major revisions, most important a rehosting to a commercial web server and moving all rods and user libraries to a MySQL database. Details of these changes can be found here.
  • July 2015: Added options for 3/0, 2/0 and 0-weight lines; an All-in-One one-page graph and table summary; and rod slope measures (Bokstrom RAV and LWV).
  • September 2015: better support for metric data users and some simplification
  • November 2015: Compute rod stress for a hollow rod.

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 geometry, choice of units, 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, or start with a Straight Taper.

Once you have entered the dimensions or stresses, 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.

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:

You can see the graph of the dimensions, stresses, or both combined on a single graph.
The Detailed Numbers table shows stress components at 1 inch intervals.

The Planing Form Settings table gives you the planing form station depths at intervals of your choosing.

Modify Rod Design
If you modify the Dimensions, you can specify new dimensions at every inch point.

If you modify the Stresses, you can specify new stresses at every inch point.

If you modify rod fundamentals, you can change rod length, ferrules, geometry etc. This is discussed in more detail below.

You can Edit the Stress Curve, and change the stresses on a graph. (This may not work well for you, if you have a slow internet connection.)

Save the Rod
This is described below.
Described below.

Assumptions and Quirks

In converting Wayne's program, I made a couple simplifying assumptions which I hope won't cause any grief. These were
  • Most line weights come from the Cortland company website. See more info below. Line weights cannot be changed by the user.
  • Ferrules are assumed to be evenly spaced.
These are some gotcha's:
  • I extrapolated Wayne's ferrule weights for some larger and smaller sizes. Others contributed more ferrule sizes. If you are fussy, then weigh your ferrules. Then choose the ferrule size that most closely matches the weight (see below.)
  • 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.

Caching Problems

Some users experience problems getting an updated page or graph to load. This is probably caused by your ISP serving an old (cached) version of the page. You can usually force the updated page to load by pressing Ctrl-F5.

Another less elegant solution is to start Hexrod as a secure page with the HTTPS protocol: This will generate dire warnings about Hexrod having no security certificate etc., but if you allow the exception for the website you will force the pages to load without caching.

Definitions of Terms and Descriptions of Special Features


Why can't we all just use the same units?

Hexrod allows specification of American (inches) or Metric (millimeters) for three separate operations:

  1. Input of the rod (stations and dimensions)
  2. Output of tables and graphs
  3. Planing form settings
The length of rod and the action length are input in American units (feet and inches) on the first form page. After this point, you have the choice to input dimensions and stations in inches or millimeters.

Planing form settings seem to be standardized on 5 inch (127mm) stations so these are the default, and ferrule sizes are in 64'ths of inch, with metric sizes and weights displayed.

All input rod measurements, American or metric, are interpolated to 1-inch segments for stress calculations and then back again to metric for display.

Ferrule size are in 64ths of inch and stress values are computed and displayed in American (ounce-inches), as are Morgan hand mill settings, at least for the present. Its harder to explain than to use.

Rod and Action Length

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.

If you have a two-piece rod with unequal sections, you can analyze it by cheating a little. Specify the action length as usual, but specify the rod length as twice the tip length, whatever that is. That will place the ferrule where it should be for the stress calculations.

Line Weight & Taper

As of August 31, 2007, separate line weights are used for DT and WF lines. These were compiled/computed from the Cortland website by Chris Carlin. They specify the weight of each foot of line for each taper and line weight from 2 through 12. One-weight lines are extrapolated from 2-weight data using the AFTMA line weight standards.

Previously, a more generic line weight was used, just by extrapolating the weight of the first 30 feet (the AFTMA standard) over the entire length of the line. The new more detailed line weight data provided by Chris makes possible a more accurate estimate of both the weight of line being cast and the weight of the line in the guides, one of the components of stress. So users will see a change in stress values with this switch to more detailed line weight info.

July 2015 line weights 3/0, 2/0 and 0 were added. These weights were extrapolated from the data for 1-weight lines by using the info on Bill Byrd's website To my knowledge, there are no AFTMA standards for these line weights.

Spey lines

For spey-type lines, enter the weight of the entire head section (including any added tip) and the length of the running line cast. E.g. for a 35-foot head section and a 80 foot total cast, the running line cast is 80-35=45 feet. There are many sorts of running lines on the market. It is assumed to weight 3.0 grains per foot, which seems typical.

Powell Taper Calculator

E.C. Powell tapers are created from a formula, starting with "A", "B" or "C" families. Powell "B" tapers start with a tip size and a linear taper, given in thousanths of an inch per six inches of rod strip. E.g. a B-8 taper has the strip increasing 0.008 per six inches (the total rod dimension increasing 0.016 per six inches.) A B-9.2 taper increases 0.0092 per six inches.

"A" and "C" tapers modify the linear "B" taper formula by adding (A) or subtracting (C) a fixed amount to the strip each 6 inches after the frist 6-inch station. This amount is given as a fraction of a thousanth of an inch; 1/5 is 0.0002 inches. An A-8 X 1/5 taper has the strip increasing 0.008 from the tip to six inches, 0.008+0.0002=0.0082 from six to 12 inches, 0.0084 from 12 to 18, 0.0086 from 18 to 24 inches, etc. Powell characterized the A-series rods as "progressive."

"C" tapers substract the fraction at each 6-inch station after the first. These are "regressive" tapers.

Powell tapers are most commonly used for longer (8 foot plus) rods in heavier (5+) line weights, and are usually hiollow-built. There is no fixed formula for choosing the initial tip size or line weight of a rod. If you create a taper and take it into Hexrod, you can adjust the line weight after viewing the stress values.

Input for Powell taper calculator is in American units. If you specified Metric output, this will appear on subsequent screens.

The Hexrod implementation of Powell tapers is based on the article by Ed Hartzell in The Planing Form, number 54 (1998).

Hollow Construction

There are many hollowing schemes in use. Hexrod assumes scalloping with dams in its calculations. To determine the stress values for a hollow rod, you will need to enter the distance from the tip where the hollowing begins, the wall thickness at that point, and the wall thickness at the end of hollowing (usually at or just above the action length.) It is assumed that the wall thickness changes in a linear fashion between these start and end points.

The effect of hollowing on stress is hard to predict in advance. Hollowing reduces weight of the rod (the "bamboo moment"); this reduces stress compared to a solid rod, the difference increasing as you move toward the grip and becomes magnified in longer (e.g. spey) rods. Countering this, hollowing also decreases the stiffness (Modulus of Elasticity) of the rod at each point; this increases stress values. Which one of these effects dominates depends on the degree of hollowing and length of the rod. It is possible that stresses decrease in some areas of a rod while increasing in others. Placement of ferrules can also affect how these two components balance out. Most often, the effect of modest hollowing on stress values is quite small for a trout-sized rod, but can be significant for a longer rod.

The formulas for stress in a hollow rod can be found in the toward the end of the paper by Claude Freaner on this website.

Some additional assumptions are as follows: Dams are assumed to occupy 10% of the hollow, so weight reduction is only 90% of a completely hollow tube. There is no hollowing within 2 inches of a ferrule location (no weight reduction there).

Computing dimensions while holding constant stresses (e.g. a hollow rod with the same stress curve as a solid rod) is an iterative process, working down the rod from tip to butt. Iteration at an inch-point stops when stresses are within 10 ounce/inches of the target stress, or change in dimension is less than 0.0001 inches. Then the process advances to the next inch. This will typically take a couple seconds.

Wall thicknesses at 5-inch intervals are given in the Planing Form Settings report page

Be aware that bamboo is not of uniform strength. Milward's book "Bamboo: Fact Fiction and Fly Rods" documents how rapidly the stiffness (Modulus of Elasticity) decreases as you go from enamel to pith. Hollow building is removing much weaker material than what remains. This fact does not enter into the stress calculations. Therefore, building a hollow rod with equal stress to a solid rod will probably result in a stiffer rod than you anticipate.

Specifying Ferrule Weights

From the point of view of stress calculations, the only thing about a ferrule that matters is its weight (and its location, of course).

Ferrule weights are supplied for sizes 8 thru 32 -64th in standard and truncated lengths. They correspond most closely to nickel silver Super Swiss style ferrules of the type produced by CSE. Some of the weights come from Wayne's original program, from measurements others have sent me, and from my own limited measurements. Some in-between sizes I've estimated as best I could. (Yes, someone requested ferrules as large as 32/64!)

If you are using a ferrule that is unusual in material, type or size. and you know its weight in ounces, use the table below to choose the size and type (standard or truncated) that most closely matches the weight, and then use that ferrule "as if" it were the correct one. Tell the program not to adjust the ferrule size.

Wt (Oz/g) Size Type Wt (Oz/g) Size Type
0.075/2.126 8 Truncated 0.437/12.389 17 Standard
0.084/2.381 9 Truncated 0.442/12.530 24 Truncated
0.095/2.693 10 Truncated 0.466/13.211 25 Truncated
0.117/3.317 11 Truncated 0.477/13.523 18 Standard
0.120/3.402 8 Standard 0.490/13.891 26 Truncated
0.135/3.827 9 Standard 0.514/14.572 27 Truncated
0.141/3.997 12 Truncated 0.516/14.628 19 Standard
0.162/4.593 10 Standard 0.537/15.224 28 Truncated
0.163/4.621 13 Truncated 0.556/15.762 20 Standard
0.194/5.500 11 Standard 0.560/15.876 29 Truncated
0.197/5.585 14 Truncated 0.584/16.556 30 Truncated
0.225/6.379 12 Standard 0.595/16.868 21 Standard
0.238/6.747 15 Truncated 0.607/17.208 31 Truncated
0.247/7.002 16 Truncated 0.630/17.860 32 Truncated
0.271/7.683 13 Standard 0.633/17.945 22 Standard
0.272/7.711 17 Truncated 0.672/19.051 23 Standard
0.297/8.420 18 Truncated 0.711/20.156 24 Standard
0.321/9.100 19 Truncated 0.749/21.234 25 Standard
0.328/9.299 14 Standard 0.787/22.311 26 Standard
0.346/9.809 20 Truncated 0.825/23.388 27 Standard
0.358/10.149 15 Standard 0.863/24.466 28 Standard
0.370/10.489 21 Truncated 0.900/25.515 29 Standard

Tip Impact Factor

Garrison incorporated this parameter (estimated to be 4.0) in his stress equations. This number servs as a multiplier for all the moments (line, bamboo, guide, varnish) to account for the stress created by pulling the line through the air during the cast. Increasing it will increase the stress values calculated. Change it if you like, but make sure its the same when comparing stress numbers of two rods.

The Tip Factor is the weight of the line beyond the tip (and the weight of the tip guide, fwiw).

Cane Density

Garrison calculated the denisty of Tonkin cane as 0.668 ounces per cubic inch. This parameter may be adjusted if you are building with another material.

Private Taper Library

A private taper library lets you save your rods. Choose a library name (probably something based on your name) and enter it. You will be asked for your name and email address. After that things should be pretty self-explanatory.

In your library, you will give your rod a unique name called the Rod ID. Both the library name and the Rod ID can be no longer than 40 characters. We are all on the honor system here, so please don't try to guess other people's library names and snoop at their tapers. OK?

If you have trouble with your library send me an email and I can probably sort it out.

Rod Group

If you have a lot of rods in your library, you can add a group name to rods to cluster them together in the listing. Examples would be "5 weights" or "3 piece" or "quad". The rod list will always be sorted by this name. Within the rod group you can sort the rods by either Rod ID or date.

Modifying Basic Rod Parameters

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:
  • Rod Geometry (Hex, Penta, or Quad)
  • Line weight
  • Length of line cast
  • Number of ferrules
  • Type of ferrules
  • Length of rod action
  • Tip Impact Factor
  • Cane Density
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.

Comparing Two Rod Designs

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.

Marinaro Taper Graphs

Bill Harms and Tom Whittle explain Marinaro's taper graphs in their book "Split and Glued by Vincent Marinaro" (Stony Creek Rods, 2007). Marinaro designed his mostly 3-piece rods by considering the taper of each section separately. The taper graph shows each section as compared to the overall (start to end) taper slope for that section. Marinaro strived for what he called a convex taper, with the mid and tip sections showing positive deviation from the taper slope in the middle to upper end of the section. See "Split and Glued.." for the details.


If you find any bugs, have suggestions for improvements, etc. let me know at

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