The chain that is currently on the bike could handle 48x20 with the rear wheel all the way forward in the dropouts, and 48x14 with it nearer the back - will 51x18 and 51x15 fit? Is there a way of working that out?
Yes, add up the numbers and divide the difference by 8
48+20 = 68
51+18 = 69
=> move wheel forward ⅛" i.e. probably won't work
48+14=62
51+15=66
=> move wheel forward ½"
will work, you're already using a difference of ¾"
or
48+20 = 68
51+15=66
=> move wheel backward ¼"
This calculation is not absolutely precise, but it's near enough for normal combinations of gearing and chainstay length. The amount of wear in your chain and the non-circularity of your chainring will make more difference than the difference between ⅛" and the true change in axis distance.
Yes, add up the numbers and divide the difference by 8
48+20 = 68
51+18 = 69
=> move wheel forward ⅛" i.e. probably won't work
48+14=62
51+15=66
=> move wheel forward ½"
will work, you're already using a difference of ¾"
or
48+20 = 68
51+15=66
=> move wheel backward ¼"
This calculation is not absolutely precise, but it's near enough for normal combinations of gearing and chainstay length. The amount of wear in your chain and the non-circularity of your chainring will make more difference than the difference between ⅛" and the true change in axis distance.