Easy prediction of inflated tire width

Back by popular demand, the general all-things Road forum!

Moderator: robbosmans

Post Reply
youngs_modulus
Posts: 668
Joined: Wed Sep 20, 2006 1:03 am
Location: Portland, OR USA

by youngs_modulus

There's been a fair amount of discussion about inner rim width vs. inflated tire width...people often ask others to measure the inflated width of a tire on a given rim so they can predict whether that tire/rim combination will fit their bike.

Even bicyclerollingresistance.com reports measured width and measured height, as though these two dimensions were somehow independent. They're not.

If you know the inner width of the rim and the bead-to bead measurement of the unmounted, flattened tire, it's not hard to calculate the inflated width of that tire mounted to that rim.

There's no direct formula ("no closed-form solution," in engineering lingo) for figuring this out. But I wrote a little piece of software--just a Python script--that prompts the user for rim and bead-to-bead measurements and converges on the correct solution.

There's some uncertainty due to "growth" (material creep) in the ~24 hours after inflation as well as tread thickness at the sidewalls. Also, my software doesn't take knobs into account, but it works well for casings, at least in my experience. I tend to use it to predict tire width on different rims...it's surprising how little inflated width changes when you go to, say, a 3mm wider rim.

Anyway, if people are interested, I was thinking about posting the code here for others to run. If people are really interested, I might be persuaded to write an iOS app that performs these calculations.

I'm a mechanical engineer, not a programmer, so I'm sure my code is pretty ugly. It's functional, though.

Is anyone interested?

User avatar
fa63
Posts: 2533
Joined: Mon Feb 19, 2007 7:26 am
Location: Atlanta, GA, US

by fa63

Yes please.

by Weenie


Visit starbike.com Online Retailer for HighEnd cycling components
Great Prices ✓    Broad Selection ✓    Worldwide Delivery ✓

www.starbike.com



User avatar
TonyM
Posts: 3376
Joined: Thu Jan 22, 2015 4:11 pm

by TonyM

Good idea! Great!

User avatar
naylor343
Posts: 485
Joined: Sat Aug 30, 2008 1:46 pm
Location: Haute-Ariege, Midi-Pyrenees

by naylor343

Great idea. Will it be possible to run this on pc or android too?

youngs_modulus
Posts: 668
Joined: Wed Sep 20, 2006 1:03 am
Location: Portland, OR USA

by youngs_modulus

OK; here's the promised tire-width calculator.

It's written in Python. It'll run just fine from the command line of any Linux or MacOS system. To use it, save the text below as something like "tire-width-calculator.py".

Then, open a command line in the directory where you saved it and enter the following:

python ./tire-width-calculator.py

You'll be prompted for your rim width (internal, between the bead hooks) and the bead-to-bead carcass width. The program will spit out an estimated tire width and also tell you how many iterations it took to converge on a solution. This last number is irrelevant for most people...I report it primarily because I was playing with which algorithms converged the fastest.

Also, this code should run just fine on either Android or IOS. You'll need to run it in a Python interpreter, and those are free for both platforms. You can also run the code in Python for Windows, of course. Linux and MacOS computers almost always have Python installed by default, so you don't need to install an interpreter on those platforms.

From memory, my Schwalbe S-One (now called a G-One Speed) is nominally 700x30c, and its carcas width is 75mm. I have mine mounted to an 18.5-mm-internal-width rim, and the code predicts a mounted, inflated width of 30.21 mm, which is just about right in this case. If anybody finds a case where the code crashes (for realistic tire/rim combinations) or calculates the wrong width, please let me know.

Enjoy!


Code: Select all

#!/usr/bin/python

import math

# Get variables from user
rim_width = input('Enter your rim width in mm: ')
carcass= input('Enter the measured carcass width in mm: ')

# We'll guess at the inflated tire width and then iterate on it
# until the carcass arc length matches what the user specified.
iterwidth=rim_width*1.1

# Get ready to count iterations to convergence.
# Starting from 1 because we can't converge in less
# one iteration.
i=1

# Radius of arc formed by inflated tire
R=iterwidth/ 2

# More calculations to get the dimensions of the inflated tire
sagitta= R-(((R**2)-((rim_width**2)/4))**0.5)
d=R-sagitta

# Theta is the angle that subtends the rim width from the center
# of the inflated tire arc.
theta=2*math.asin(rim_width/iterwidth)
s=theta*R

# The difference between the full circle and the arc length of theta
# gives us the arc length of the carcass
tire_arc=(R*2*math.pi)-(theta*R)

# Now let's compare our calculated carcass arc length with
# the one specified by the user.
difference = tire_arc-carcass
print ""

# The next line dictates the max residual allowed for a
# converged solution (in mm)

while abs(difference) > 0.005:

        # Bump the iteration count
        i=i+1
        # Take another guess at the inflated tire width for this
        # carcass arc length
        iterwidth=iterwidth-(difference / 3)
        # Recalculate the carcass arc length for this inflated width
        # Todo: re-implement this calculation as a function
        R=iterwidth/ 2
        sagitta= R-(((R**2)-((rim_width**2)/4))**0.5)
        d=R-sagitta
        theta=2*math.asin(rim_width/iterwidth)
        s=theta*R
        tire_arc=(R*2*math.pi)-(theta*R)
        difference = tire_arc-carcass

# Round the width
finalwidth=round(iterwidth,2)
print "Estimated tire width is %0.2f mm when mounted \nto a rim that measures %0.2f mm internally." % (finalwidth, rim_width)
print ""
print "Solution converged in %d iterations" % i
print ""

TheKaiser
Posts: 653
Joined: Thu Sep 05, 2013 3:29 pm

by TheKaiser

youngs_modulus wrote:Even bicyclerollingresistance.com reports measured width and measured height, as though these two dimensions were somehow independent. They're not.

There's some uncertainty due to...tread thickness at the sidewalls.


Your posts are always appreciated, and this width calculator is a great idea. Regarding the width/height relationship, isn't it possible for other variables to make them somewhat independent though?

I understand that the air pressure will always make the tire casing assume a round cross section, as our tires (unlike car tires) are not constrained by belts. However, the measured height of a tire can easily be greater than the width due to the tread thickness. The internal cavity may have a equal height/width ratio, but from a frame clearance perspective, they can be 2 different things. BRR typically measures the thickness of the tread cap, as part of his puncture/wear capacity assessment, so I would tend to assume the measured tire height would tend to be equal to width + tread thickness, although I have never checked his data to see if that is indeed the case with his figures.

On the flip side, can't the sidewall height of the rim create a condition where the tire height could be less than the width, particularly on a tubeless tire where the casing is constrained radially by the stiff carbon bead, not the hook at the outer perimeter of the rim? For example, some Stan's rims like the Alpha 340 have a 3.5mm sidewall height, which would expose much more of the tire sidewall, than some of the hookless models which have a sidewall as much as 2mm higher. In that latter example, the height of the tire as measured from the bead to tread cap might be unchanged, but when measured from the outer rim edge (which is how people would typically measure it), it would be shorter. Now the higher sidewall would also potentially alter the width of the tire, but I am not sure that the relationship is linear.

Hexsense
Posts: 3290
Joined: Wed Dec 30, 2015 12:41 am
Location: USA

by Hexsense

There are something strange i've found with Continental (4000sII, not sure with other) vs Vittoria Corsa G+ on my use.

on narrow rim 15mm inner width,25c version. i've found Conti to be wider than Vittoria as you all know Conti run oversized. Conti's construction seems to be 3 clear distinct part where the part closest to the bead seems to be the most pliable and expand out a lot from there. Vittoria's construction seems to be simpler, just cotton casing and black sheet of rubber on top(very little outward expansion). Black rubber thread were forced to bend normally.

17mm inner width both tire appear to be very similar width.

21mm inner width, now Vittoria pull the lead at 29.14- 29.4mm while Continental is only at 28.3mm when new and 28.9mm worn out. Quick inspection seems like Vittoria's black rubber thread biasly want to be straight flat and with wider inner width, it could achieve that a lot more. On continental, top part want to stay round, mid part side wall is neutral so it's flat down to next part. where very flexible material near rim bead which made it run wide on 15mm by quickly fold outward on 15mm rim doesn't seems to work that much on 21mm rim, it's also relatively straight (very little outward expansion) up the wall. This also make Conti run taller eventhough it's less wide than Vittoria.

I don't really know how can you calculate this complex structure without huge dataset of how the tire are made and react to certain set up.

youngs_modulus
Posts: 668
Joined: Wed Sep 20, 2006 1:03 am
Location: Portland, OR USA

by youngs_modulus

TheKaiser wrote:
youngs_modulus wrote:Even bicyclerollingresistance.com reports measured width and measured height, as though these two dimensions were somehow independent. They're not. There's some uncertainty due to...tread thickness at the sidewalls.

Your posts are always appreciated, and this width calculator is a great idea.

I'm glad you like my posts in general and the calculator in particular. I wrote it because I had been using Solidworks (the Microsoft Word of CAD) to calculate inflated widths. Solidworks is about $5000 per copy (plus annual fees!) and it seemed like using a hammer to kill a fly.


TheKaiser wrote:Regarding the width/height relationship, isn't it possible for other variables to make them somewhat independent though?

Yes, the way you're using "independent," it sure is. When I wrote that tire width and height are not independent, I meant only that the shape of the cross-section is always circular. I sometimes see people writing about tires that are more circular or less round and things like that. The casing is always circular, as you know.

TheKaiser wrote:I understand that the air pressure will always make the tire casing assume a round cross section, as our tires (unlike car tires) are not constrained by belts.

You've got it right for bike tires and very nearly so for car tires. Belts (usually steel) are there primarily for torsional stiffness, not forcing a particular cross-section shape*.

TheKaiser wrote:However, the measured height of a tire can easily be greater than the width due to the tread thickness. The internal cavity may have a equal height/width ratio, but from a frame clearance perspective, they can be 2 different things. BRR typically measures the thickness of the tread cap, as part of his puncture/wear capacity assessment, so I would tend to assume the measured tire height would tend to be equal to width + tread thickness.

You're absolutely right: casings are fundamentally circular in cross-section, but tread thickness and knobs add height to the cross-section.

When I get pedantic about height and width not being independent, it's because a surprising part of the cycling population sees these measurements as entirely independent, even before the tread is considered. In other words, some people imagine that there's something--they don't say what--about each tire's casing that dictates the cross-sectional shape, and that many or most casings aren't circular.** Circular casings don't imply that outer tread profiles are circular, but a non-circular tread profile always has a circular casing profile (unless the uninflated tire is very stiff relative to its inflation pressure, like a car tire).

There's no shame in supposing that the tire shape and width/height ratios are determined somehow by the casing...anyone who has seen an unmounted car tire might reasonably imagine this to be true. But in reality, we know the answer for tire casing shape...it's when people insist that we don't/these things are unknowable that I lose my cool (and I shouldn't).

The difference between the circular casing and the non-circular outer boundary of the tire is small on road-bike tires but it can be large on knobby tires. It's not that the tread changes the casing cross-section, but rather that it's added on top of a circular cross-section, therefore making the overall tire/tread cross-section non-circular. This is really only a thing on tires whose knobs are large compared to the tire's mounted width.***
TheKaiser wrote:On the flip side, can't the sidewall height of the rim create a condition where the tire height could be less than the width, particularly on a tubeless tire where the casing is constrained radially by the stiff carbon bead, not the hook at the outer perimeter of the rim? <snip>

Technically? Maybe. But you could make a decent argument that the tire isn't "shorter;" the rim is taller. That is, if the rim's shape causes people to measure from a different place, that doesn't mean the tire is "shorter." It would be easy to calculate a casing height from the bead seat diameter, but it's difficult to measure from the BSD on a mounted and inflated tire.

That said, I think your question gets to the source of a lot of confusion. Tire casings always assume a circular (constant-radius) arc where they're not touching the rim. However, that radius can be very large. In other words, the center of the arc doesn't have to be contained within the tire/rim boundaries. Even though the tire casing is still a circular arc, it's a large one, and this can lead people to think that it's not circular.

I have a set of images that will clarify this, but I'm not allowed to include attachments in the wheels subforum. I'll ask a moderator to change that...it would help a lot. Here's what I intended to post without the images:

A 2.1" Schwalbe Thunder Burt measures about 130mm from bead to bead. Here's how that shakes out in Solidworks on a 23mm rim:
(The center of the tire arc is a + sign circled in red near the centroid of the tire/rim volume, but not coincident with the centroid).
2.1on23-2.JPG


And here's what my program calculates:

Code: Select all

Enter your rim width in mm: 23
Enter the measured carcass width in mm: 130

Estimated tire width is 49.00 mm when mounted
to a rim that measures 23.00 mm internally.

Solution converged in 5 iterations

Now, if we mount that same tire to a 100mm-wide fat bike rim, the center of the casing arc is below the rim bed:
2.1onfatbikerim.JPG


Of course, the tire is now actually narrower than the outer width of the rim. Realistically, though, a Thunder Burt mounted to a fat bike rim would hold some pressure, though I wouldn't dare guess how much. Pressure is always normal (perpendicular) to the wall of its container. There would be some force pushing the Thunder Burt's bead against the bead hooks.

The question of height is complicated. Bicycle tires (tubulars and clinchers alike) actually contract when inflated, shrinking in major diameter and compressing the rim. this is by design; it makes the tire hold tighter to the rim when it's inflated than when it's flat. It's also why your spoke tension drops when you inflate your tires. Jobst Brandt discusses this in this link and on pages 14 and 15 of his seminal book, The Bicycle Wheel.

You mentioned Stan's Alpha 340 rim and its low sidewall height of 3.5mm. That could be called a low sidewall height, sure, but it could also be seen as a slightly oversized bead seat diameter (BSD). I have no idea how close that rim is to ETRTO's nominal 622 mm BSD. Real-world tolerances for BSD end up varying more than one would like, but consumers use non-standard BSDs all the time: they use one or more layers of rim tape to change the effective BSD.

I don't have any hookless rims, so I can't say whether they significantly affect tire width and/or outer diameter. What I can say is that as long as your bead-to-bead measurements are consistent, my program gives a pretty solid width estimate for hooked rims. depends on many more factors, so I left it out on purpose...I didn't want to confuse anyone into thinking their tire would fit when it wouldn't.


---------------
* It sounds like you already know that bike tires are bias-ply, not radial. Bias-ply tires are very stiff in torsion because the tire fibers (cords/threads) are laid up near the angles (±45º) which produces maximum torsional stiffness. Radial tires are laid up with the fibers in a near 0º/90º orientation, which is about the worst possible set of angles for torsional stiffness. A bike tire with poor torsional stiffness would feel vague, floaty and grossly underinflated anytime you leaned over for a turn. Panasonic made true radial bike tires in the '80s; they came on some Miyata touring bikes. They were not steel-belted and indeed felt weird. Maxxis' Radiale is not a true radial; it has plies laid on a bias, so it is torsionally stiff without a belt. But it doesn't exhibit especially low rolling resistance, either.

A car tire's thin steel belt adds a lot of torsional stiffness while still being able to move with both the 0º and 90º layers. It's like a stiff spring: it's hard to move, but any energy it stores gets returned. If it were possible to manufacture a radial bike tire with a steel belt, that tire would feel stiff and un-supple prior to mounting. Once inflated, though, it would have much lower rolling resistance than a standard bike tire.

The Specialized Turbo Cotton generates just over 10 watts of rolling resistance under a 42.5-kg load according to bicyclerollingresistance.com. I'd speculate that a steel-belted radial bike tire made from similar materials would have a rolling resistance of about 5 watts under the same load.



** For example, some people like to argue that sew-ups are "rounder" in cross-section than "lightbulb-shaped" clinchers, and that's why they "ride" or "corner" better. The scare quotes are to indicate that a seam at the rim bed doesn't inherently affect ride quality or cornering adhesion.



*** A Schwalbe Jumbo Jim has small knobs and a very supple casing for a 4.8" (120mm) fat bike tire, and, proportionally speaking, its overall profile is probably closer to circular than that of a Schwalbe X-One Bite, a 33-mm wide cyclocross tire with large knobs for its casing width.




Edited to add images. Thanks, Frankie!
Last edited by youngs_modulus on Mon Nov 20, 2017 9:34 pm, edited 2 times in total.

youngs_modulus
Posts: 668
Joined: Wed Sep 20, 2006 1:03 am
Location: Portland, OR USA

by youngs_modulus

I tried running my program under Python 3.6 on Windows and found a few minor issues that prevented it from running. Here's an updated version:

Code: Select all

#!/usr/bin/python

import math

# Get variables from user
rim_width = input('Enter your rim width in mm: ')
carcass= input('Enter the measured carcass width in mm: ')

# Convert any entered integers into floats for type compatibility
rim_width=float(rim_width)
carcass=float(carcass)

# We'll guess at the inflated tire width and then iterate on it
# until the carcass arc length matches what the user specified.
iterwidth=rim_width*1.1

# Get ready to count iterations to convergence.
# Starting from 1 because we can't converge in less
# one iteration.
i=1

# Radius of arc formed by inflated tire
R=iterwidth/ 2

# More calculations to get the dimensions of the inflated tire
sagitta= R-(((R**2)-((rim_width**2)/4))**0.5)
d=R-sagitta

# Theta is the angle that subtends the rim width from the center
# of the inflated tire arc.
theta=2*math.asin(rim_width/iterwidth)
s=theta*R

# The difference between the full circle and the arc length of theta
# gives us the arc length of the carcass
tire_arc=(R*2*math.pi)-(theta*R)

# Now let's compare our calculated carcass arc length with
# the one specified by the user.
difference = tire_arc-carcass
print ("")

# The next line dictates the max residual allowed for a
# converged solution (in mm)

while abs(difference) > 0.005:

        # Bump the iteration count
        i=i+1
        # Take another guess at the inflated tire width for this
        # carcass arc length
        iterwidth=iterwidth-(difference / 3)
        # Recalculate the carcass arc length for this inflated width
        # Todo: re-implement this calculation as a function
        R=iterwidth/ 2
        sagitta= R-(((R**2)-((rim_width**2)/4))**0.5)
        d=R-sagitta
        theta=2*math.asin(rim_width/iterwidth)
        s=theta*R
        tire_arc=(R*2*math.pi)-(theta*R)
        difference = tire_arc-carcass

# Round the width
finalwidth=round(iterwidth,2)
print ("Estimated tire width is %0.2f mm when mounted \nto a rim that measures %0.2f mm internally." % (finalwidth, rim_width))
print ("")
print ("Solution converged in %d iterations" % i)
print ("")

Hexsense
Posts: 3290
Joined: Wed Dec 30, 2015 12:41 am
Location: USA

by Hexsense

leave argument about material, thickness and how they bend aside (those could manipulate volume balance as well),
Some thing doesn't sound right,

for theory of tires always always be circular, same cutting section all round then, where is the center of the circle?
Is it the center of the volume?
if that is the case, narrow rim and wide tire would means there are less volume inside the rim and more on the outside, that would push center of the volume and center of the circle outside, right? does that make tire tall because of restriction of rim sidewall?

In vice versa, a very wide rim have a lot of volume inside an almost rectangular base of rim. now the center of the volume and circle is lower inside the rim, right? now sidewall relative to the circle is relatively tall, wouldn't that effect tire width vs tire height at all?

So, for me it sound like tire shape (width vs height) are pretty eliptical, not really round due to some biased factors.

PS. that still doesn't answer why Vittoria Corsa G+ is narrower on 15c rim but become wider on 21c rim than 4000sII though (ignore the height, as you said it's easy to miss-measuring but i measure width of the tire with calipers many times to be sure). As i said, it's something strange. I confuse enough to swap them around several time to make sure i didn't measure wrong yet i don't know why. My explanation was just an attempt to try to make sense of it. So if it doesn't sound, ignore it. However, if you know why please let me know.

DamonRinard
in the industry
Posts: 396
Joined: Fri Apr 29, 2011 8:32 pm
Location: Connecticut, USA

by DamonRinard

After measuring many tires, I made a rule of thumb for myself: the tire's width increases by about half the increase in rim width.

New_Width = Old_Width + 0.5 * (New_rim - Old_Rim)

Example: My 23mm tire on 15C rim measures about 26mm on a 21C rim.

Of course as a rule of thumb, this assumes typical road tire and rim dimensions and can vary due to many small factors.
Damon Rinard
Engineering Manager, Road Bikes
Cycling Sports Group, Cannondale
Ex-Kestrel, ex-Velomax, ex-Trek, ex-Cervelo

youngs_modulus
Posts: 668
Joined: Wed Sep 20, 2006 1:03 am
Location: Portland, OR USA

by youngs_modulus

That's not a bad rule of thumb!

If you feed my calculator a 15mm rim width and a 56-mm bead-to-bead width, it predicts that the inflated tire will measure 23.02mm across.

If I keep the bead-to-bead measurement the same but change the rim width to 21mm, it predicts a width of 25.66 mm. I'd argue that's well within caliper-on-tire uncertainty. ;)

Coincidentally, we may have a friend or two in common. Before I went to grad school, I spent a summer turning wrenches in Colin O'Brien's shop.

DamonRinard
in the industry
Posts: 396
Joined: Fri Apr 29, 2011 8:32 pm
Location: Connecticut, USA

by DamonRinard

Nice to see our results are so close!

I remember Colin and his shop! Beer nights on the back porch, even. Yes, we probably both know several people in the Madison cycling scene... Are you thinking some anyone in particular?
Damon Rinard
Engineering Manager, Road Bikes
Cycling Sports Group, Cannondale
Ex-Kestrel, ex-Velomax, ex-Trek, ex-Cervelo

youngs_modulus
Posts: 668
Joined: Wed Sep 20, 2006 1:03 am
Location: Portland, OR USA

by youngs_modulus

Mostly I was thinking of Colin, but maybe a few others too. As you know, it's a small town. :)

youngs_modulus
Posts: 668
Joined: Wed Sep 20, 2006 1:03 am
Location: Portland, OR USA

by youngs_modulus

This is just a bump to let people know that I've updated the original post with images showing the center of the casing arc.

by Weenie


Visit starbike.com Online Retailer for HighEnd cycling components
Great Prices ✓    Broad Selection ✓    Worldwide Delivery ✓

www.starbike.com



Post Reply