Calculators
Machinist's scientific calculator
Type an expression and read the result as you type, with trigonometry, angles in degrees, minutes and seconds, inch and millimetre conversion, and functions for machining, metalworking and GD&T: spindle speed, feed rate, sine bar, taper angle, bend allowance, stock weight, position, bonus tolerance and virtual condition.
A new version of the calculator is ready. The memory and history stay.
Functions
Press a function to put it in the box, then give its values in order with commas between them. Lengths are in mm; angles are in the unit shown on the DEG/RAD key.
- Hypotenuse of a right triangle with legs a and b
- The other leg of a right triangle, from the hypotenuse c and the leg a
- x without its sign
- Natural logarithm (base e)
- Logarithm to base 10
- e to the power x
- Inches to millimetres: times 25.4
- Millimetres to inches: divided by 25.4
- π; the π sign works too
- Base of the natural logarithm
- Spindle speed (rpm) from the cutting speed Vc (m/min) and the diameter D (mm)
- Cutting speed (m/min) from the spindle speed n (rpm) and the diameter D (mm)
- Feed rate vf (mm/min) from the feed per tooth fz (mm/tooth), the number of teeth z and the spindle speed n
- Feed per tooth fz (mm/tooth) from the feed rate vf (mm/min), the number of teeth z and the spindle speed n
- Metal removal rate (cm³/min) in milling from the depth of cut ap, the width of cut ae (mm) and the feed rate vf (mm/min)
- Cutting time (minutes) for the length L (mm) at the feed rate vf (mm/min)
- Cutting speed in feet per minute from Vc in m/min: divided by 0.3048
- Cutting speed in m/min from feet per minute: times 0.3048
- Pitch (mm) of an inch thread with TPI threads per inch
- Tap drill for a cutting tap: D − P from the thread size D and the pitch P, or for the percentage of thread e on the JIS scale (100 % is the basic minor diameter)
- Tap drill (inches) for a cutting tap on an inch thread, from the thread size D (inches) and the threads per inch TPI, or for the percentage of thread e on the scale of inch tap drill charts (without e it is D less the pitch, about 77 %)
- Drill for a forming (roll) tap from the thread size D, the pitch P and the percentage of thread e on the JIS scale (78 % when e is left out)
- Drill (inches) for a forming (roll) tap on an inch thread, from the thread size D (inches), the threads per inch TPI and the percentage of thread e on the scale of inch tap drill charts (65 % when e is left out)
- Lead angle of a thread from the lead P (the pitch, on a single-start thread) and the pitch diameter d
- Gauge block height under a sine bar of length L to set the angle a
- Taper angle per side (half the included angle) from the large diameter D, the small diameter d and the length L
- Straight distance between two points on a circle of diameter D that are the angle a apart at the centre
- Radius of an arc from the length of its chord c and the height of the arc at the middle of the chord h
- Depth of a countersink or chamfer from the diameter at the top D, the hole diameter d and the included angle a (90, say)
- Length of the point of a drill of diameter D with the point angle a (118 or 140, say)
- Bend allowance: the length of sheet the bend itself uses, for the bend angle a, inside radius R, thickness T and K-factor K
- Weight (kg) of a round bar of diameter D and length L (mm) with the density ρ (g/cm³)
- Weight (kg) of a plate or flat bar of width W, thickness T and length L (mm) with the density ρ (g/cm³)
- Weight (kg) of a tube of outside diameter D, inside diameter d and length L (mm) with the density ρ (g/cm³)
- Weight (kg) of a hexagon bar of the size across flats AF and length L (mm) with the density ρ (g/cm³)
- Change in length (mm) of a part L (mm) long when its temperature changes by ΔT (°C), with the expansion coefficient α (µm per metre per °C)
- Density of carbon steel, g/cm³
- Density of 304 stainless steel, g/cm³
- Density of aluminium, g/cm³ (varies a little with the alloy)
- Measured position value from how far the centre is off in X and Y (and Z, if given)
- The equal ± in X and Y that still lies inside a position tolerance zone Ø t
- Bonus tolerance: how far the measured size is from the MMC size
- Virtual condition of a hole: the smallest hole (MMC) less the tolerance t
- Virtual condition of a shaft or pin: the largest pin (MMC) plus the tolerance t
- Position tolerance for the holes of each part when the screw passes through clearance holes in both: smallest hole H less largest screw F
- Position tolerance for each part when the screw or pin is fixed in one of them: (H − F) ÷ 2
History
Press = or Enter to keep a result here and to use it in the next calculation as Ans. Press ▲ ▼ to bring back an earlier calculation.
How to type a calculation
Type the calculation the way it is written on paper and the result follows as you type. Multiplying and dividing come before adding and subtracting, and brackets come first: 2 + 3 × 4 is 14, (2 + 3) × 4 is 20. A number written against a name or a bracket multiplies, so 2π and 3(4 + 1) work. A diameter sign copied from a drawing is skipped: Ø10 is 10. ^ raises to a power and √ takes the square root of what follows it. x between two numbers is a times sign, as on a drawing: 2x3 is 6. Two numbers with only a space between them are an error, not a product, because 12 5 is more often a missed sign or a missed decimal point than a multiplication.
Press = or Enter to keep a result. The name Ans then stands for it, so a long calculation can be done in steps without typing a number again, which is where digits get dropped. Brackets still open at the end of the line are closed for you, so sin(30 already gives 0.5. A result too large or too small to write out in ten digits is shown with ᴇ, a power of ten: 1.5ᴇ12 is 1.5 × 10¹².
Each = works the box out again with the latest Ans, as on a scientific calculator: with Ans×6 in the box, every press multiplies by 6 once more. ▲ and ▼, or the arrow keys in the box, step back and forward through earlier calculations; = then works the one shown out again. The history and Ans are kept in this browser, so they are still there when the page is opened again.
The scientific calculator
This calculator works out a typed line with the shop's formulas by name. For one worked key by key, like a pocket scientific calculator, with a memory, CALC and SOLVE, statistics, equations and matrices, use the scientific calculator.
Full screen and as an app
Full screen shows the calculator alone and gives it the whole screen, so the keys are large enough for a finger at the machine: the box, the result with its three readings, and the keys, with nothing to scroll. The Functions key opens the list of the shop's functions in the place of the keys; choosing one puts it in the box and brings the keys back. The history is not shown there, and ▲ ▼ step through it. On a short phone screen the three readings are left out too, to keep the keys large. Where the browser can install the calculator as an app (Chrome or Edge, on a phone or a computer), the page offers it in a bar above the calculator; once that bar is closed it does not come back, and the browser's own menu installs the app. It then opens from the home screen straight into the calculator, without the browser's address bar, and it works with no signal, because the phone keeps a copy of the page. A connected phone loads the current version each time it opens; an app left open for days says when a new version is ready and offers to reload, which keeps the memory and history. On an iPhone, install it from Safari: Share, then Add to Home Screen.
Angles
Angles are in degrees unless the DEG key is pressed to show RAD, because drawings, protractors and machine controls all give angles in degrees. An angle in degrees, minutes and seconds is typed as it is written: 30°15'20". A minute is 1/60 of a degree and a second is 1/60 of a minute, so that angle is 30 + 15/60 + 20/3600 = 30.2556°.
Why the result is shown in several ways
A number carries no unit, so the calculator cannot know whether 0.375 is inches, millimetres or degrees. It shows each reading and you take the one that fits:
- If this is inches: times 25.4. An inch is exactly 25.4 mm by definition, so the conversion adds no error of its own.
- If this is mm: divided by 25.4.
- Both come with the nearest fraction of an inch in 64ths, because inch drills and bar stock are sized in 64ths. The difference shown is how far that fraction is from the true value, in inches.
- If this is degrees: the same angle in degrees, minutes and seconds, and in radians. With RAD on the key, this reading becomes If this is radians and gives the angle in degrees.
Machining functions
rpm(Vc, D) and vc(n, D) are the same relation read both ways. In one turn a point on the diameter travels the circumference πD, and the 1000 changes millimetres to metres:
feed(fz, z, n). Each tooth takes a chip fz thick as it passes, and a cutter with z teeth passes z teeth every turn, so in a minute the table moves:
Count only the teeth that cut: on a cutter with fewer inserts fitted than pockets, a feed worked out from the pockets overloads every insert. feed(0.05, 4, rpm(120, 10)) gives the feed rate for a four-flute Ø10 end mill in one step.
fz(vf, z, n) is the same relation turned round, for reading the feed per tooth out of a program: F600 at S3000 with a four-flute cutter is fz(600, 4, 3000), 0.05 mm a tooth, which can be compared with the value in the cutter's catalogue.
mrr(ap, ae, vf). In one minute the cutter clears a strip ap deep, ae wide and vf long, so the volume removed is the product of the three; the 1000 changes mm³ to cm³. It compares two ways of cutting the same pocket: a deep narrow cut and a shallow wide one with the same figure remove metal equally fast. time(L, vf) is the length of a cut divided by the feed rate, in minutes: 150 mm at 600 mm/min is 0.25 min, or 15 seconds.
sfm(Vc) and mmin(SFM) change a cutting speed between m/min and feet per minute, the unit of inch catalogues. A foot is exactly 0.3048 m, so 100 m/min is 328 ft/min.
pitch(TPI). An inch thread is called by threads per inch, a metric one by the pitch. One inch is 25.4 mm, so the pitch is 25.4 divided by the number of threads: ½-13 UNC has a pitch of 1.954 mm. It is close to 2 mm but not equal, and the difference adds up thread by thread: over ten threads it is 0.46 mm, so a thread cut with G76 F2.0 will not take a ½-13 nut. Program F1.9538 instead.
tapdrill(D, P) is the usual rule for a cutting tap, the thread size less the pitch: M10 × 1.5 is drilled 8.5. A smaller hole leaves more metal for the tap to cut, so the thread is taller and the torque on the tap higher; a larger hole gives a lower thread that taps more easily. A third value sets that height as a percentage of thread: tapdrill(10, 1.5, 75) is 8.78. The percentage is quoted on two scales, and the same hole reads differently on each. tapdrill uses the JIS scale, where 100 % is a hole at the basic minor diameter of the thread, D − 1.0825 P, and a D − P hole is about 92 %. Inch tap drill charts use another scale, where 100 % is a depth of 0.6495 P a side, and a D − P hole is about 77 %. A figure on the inch chart's scale times 1.2 is the JIS figure: 75 % on such a chart is 90 % here. Before using a percentage from a catalogue, check which scale it is on.
tapdrillin(D, TPI) is the same for an inch thread, typed as the thread is called: the size in inches and the threads per inch, with the result in inches. Its percentage is on the inch chart's scale, so the figures match those charts: tapdrillin(0.25, 20, 75) is 0.2013, the #7 drill (0.201 in) that charts give for ¼-20 UNC. Without a percentage it is the size less the pitch, 0.200. mm(tapdrillin(0.25, 20)) gives the drill in millimetres.
formdrill(D, P) is the hole for a forming (roll) tap. That tap cuts nothing: it presses the metal at the root up into the crest, so the hole has to be larger than for a cutting tap, or the metal has nowhere to go and the tap breaks. M6 × 1 is drilled 5.56 for a forming tap, against 5.0 for a cutting tap. Left without a third value it gives a 78 % thread on the JIS scale, which is 65 % on the inch chart's scale. formdrillin(D, TPI) is the one for an inch thread, in inches and threads per inch, with the percentage on the inch chart's scale and 65 % when it is left out: formdrillin(0.25, 20) is 0.2279. The factor in the formula comes from tap makers' trials and differs a little between them, so check the maker's table for the tap in hand. The tap drill calculator also picks the nearest standard drill and checks the hole against the thread's tolerance class.
lead(P, d). Unwrap one turn of a thread and it is a ramp: it climbs the lead P while it goes once round the circumference πd, so the angle of the ramp is
d is the pitch diameter, where the angle of a thread is quoted. M10 × 1.5 has a pitch diameter of 9.026, and lead(1.5, 9.026) is 3.03°. The same pitch on a larger diameter is a flatter ramp, which is why a fine thread on a large diameter has a very small lead angle. On a thread with several starts, give the lead, the pitch times the number of starts, not the pitch.
sinebar(L, a). A sine bar rests on two rolls a known distance L apart. Raising one roll on gauge blocks makes the bar the long side of a right triangle, with the blocks as the side opposite the angle:
L is the distance between the roll centres (100 or 200 mm, 5 or 10 in), not the length of the bar.
taper(D, d, L) gives the angle per side. The difference in diameter is shared by the two sides, so each side rises only (D − d)/2 over the length L:
This is the angle to set on the compound slide of a lathe. The included angle on the drawing is twice it; setting the compound to the included angle cuts a taper twice as steep.
chord(D, a). Two radii and the straight line between their ends make a triangle with two equal sides. Cut it in half and each half is a right triangle with the radius as its long side and a/2 as its angle:
It is the distance to measure between two neighbouring holes of a bolt circle: six holes on Ø80 are 60° apart, and chord(80, 60) is 40.
drillpt(D, a). The point of a drill is a cone. Half of it is a right triangle with the radius across and half the point angle at the tip:
Add this length to the depth of a hole that must be full diameter all the way down, otherwise the last part of the hole is only the cone. A Ø10 drill with a 118° point needs about 3 mm more.
csink(D, d, a). A countersink is a cone too. Each side of it is a right triangle that is half the difference of the two diameters across, with half the included angle at the tip:
h is how far the cone goes down from the diameter D at the surface to the hole diameter d. A 90° countersink is as deep as half the difference of the diameters: csink(12, 6, 90) is 3. With d as 0 it is how deep the point of a spot drill or a chamfer tool goes to leave a diameter D at the surface: csink(12, 0, 90) is 6. A tool with a flat on its tip has no point to measure from, and goes less deep by the height of the missing point.
radius(c, h) finds a radius that cannot be measured directly, such as a large arc on a part. Lay a straight edge of length c across the arc and measure the gap h at its middle. Half the chord, the radius less h, and the radius make a right triangle, which gives
A chord of 60 with a gap of 10 is a radius of 50. On a large radius the gap is small, and a small error in it changes the result a great deal, so use the longest chord the part allows and measure h with a dial indicator, not a rule.
Metalworking functions
ba(a, R, T, K). When sheet is bent, the inside of the bend is squeezed shorter and the outside is stretched longer. Somewhere between them is a layer that keeps its length, the neutral axis, and the flat length of the bend is the length of that layer. It lies K × T from the inside face, so it is an arc of radius R + K·T:
The angle a is how far the sheet is bent from flat, not the angle left between the two flanges: a flange bent to 120° between the faces has been bent through 60°. K depends on the material, on the radius compared with the thickness and on how the bend is made, and is usually between 0.3 and 0.5. Treat a value from a table as a starting point and confirm it with a test bend in the same material and tooling.
wround(D, L, ρ) and wflat(W, T, L, ρ) are volume times density. With lengths in mm the volume is in mm³; dividing by 1000 gives cm³, and dividing by 1000 again changes grams to kilograms, which is the 10⁶ below:
wtube(D, d, L, ρ) is the round bar less the bar that would fill its bore. whex(AF, L, ρ) is a hexagon bar by its size across flats, the dimension a spanner fits. A hexagon is six equal triangles and its area is (√3 ÷ 2) × AF², about 0.866 AF², against 0.785 D² for a circle, so a hexagon bar weighs about 10% more than a round bar of the same size.
The names steel (7.85), sus (7.93, for 304 stainless) and alu (2.70) are nominal densities in g/cm³. Other alloys differ a little, so use the figure from the material certificate when the weight matters.
grow(L, ΔT, α). Metal grows as it warms, in proportion to its length and to the change in temperature:
Sizes on a drawing are sizes at 20 °C (ISO 1), so a part measured warm from the machine reads large. α is about 11.5 µm per metre per °C for steel and about 23 for aluminium, depending on the alloy: a 100 mm aluminium part that is 10 °C warmer is grow(100, 10, 23) = 0.023 mm longer, more than many tolerances allow.
GD&T functions
pos(dx, dy). A position tolerance Ø t is a round zone of diameter t centred on the true position, and the centre of the feature must lie inside it. If the centre is off by dx and dy, its distance from the true position is the long side of a right triangle, and the zone that would just contain it is twice that across:
Compare this value with the tolerance in the frame. Forgetting the 2 is the usual mistake: it compares a radius with a diameter and passes parts that are up to twice as far off as allowed. A third value dz is for a point in a spherical zone SØ t.
coord(t). The largest square that fits inside the round zone has its corners on the circle, so its half-width is t/(2√2):
A zone of Ø0.1 holds ±0.035 in X and Y together. The round zone has 57% more area than that square, which is why a position tolerance accepts more good parts than ± dimensions that guarantee the same fit.
bonus(size, MMC). With Ⓜ after the tolerance, the value in the frame applies when the feature is at its maximum material condition: the smallest hole or the largest pin. A hole that is larger than that has more clearance, so it may be further out of position by the same amount. The bonus is the difference between the measured size and the MMC size, and the tolerance allowed for that part is the frame value plus the bonus. There is no bonus without Ⓜ in the frame. Check the size first: a hole smaller than its MMC or a pin larger than its MMC is already out of size and gets no bonus. The function does not know whether the feature is a hole or a pin, so it cannot check this for you.
vhole(MMC, t) and vpin(MMC, t). The virtual condition is the boundary the feature never crosses, whatever its size and position within the tolerances: the smallest hole less its position tolerance, or the largest pin plus its tolerance. It is the size of the pin or hole of a functional gauge. ISO 2692 calls the same boundary the maximum material virtual size (MMVS).
tfloat(H, F) and tfixed(H, F) give the position tolerance that makes parts assemble (ASME Y14.5, Appendix B). H is the smallest clearance hole and F the largest fastener.
A floating fastener is a bolt through clearance holes in both parts. It can move in both holes, so each part has the whole clearance H − F for itself. A fixed fastener is a screw in a tapped hole, a stud or a pressed pin: it cannot move in its own part, so its position error and the error of the clearance hole in the other part must share the same clearance, half each when split equally. Both tolerances are at MMC.
The two parts need not take half each: the standard allows any split with H = F + T₁ + T₂. The fixed formula also assumes the tapped hole or pin hole is square to the face. A screw in a tilted tapped hole leans across the joint and uses up clearance the formula gave to position, so the standard calls for an orientation tolerance or a projected tolerance zone Ⓟ on the tapped hole.