A Better Temperature System

Yes, it’s time for another installment of “Tab gives a utopian vision of an alternate today where people knew better in the past about some minor topic”. Today we’re talking about temperature.What’s Wrong With Temperature?There’s a lot wrong with tempe…


This content originally appeared on Tab Completion and was authored by Tab Atkins Jr.

Yes, it's time for another installment of "Tab gives a utopian vision of an alternate today where people knew better in the past about some minor topic". Today we're talking about temperature.

What's Wrong With Temperature?

There's a lot wrong with temperature, unfortunately. The metric system uses Kelvins to measure temp. Kelvins are defined as "the same degree size as Celsius, but 0 is absolute zero". This has some issues:

  • having the scale's zero be a meaningful zero, so that doubling the number actually corresponds to doubling some physical quantity - is good
  • but having that zero be very far away from human-meaningful quantities, particularly the two primary things humans use temperature for on a regular basis (outside temp and body temp) is really inconvenient
  • the Celsius zero and the Kelvin zero are not a round, or even whole, number of degrees apart, so interconverting involves an awkward "273.16" factor.

A lot of this comes from the fact that we invented temperature scales long before we realized that temperature even had a physically-meaningful zero. Instead, Celsius just tied its 0 and 100 to measurable, somewhat-meaningful values for humans: the freezing and boiling point of water. The resulting delta from the "real" zero, and the size of the degree, thus have no particular reason to be convenient or "round", and yeah, they're really not.

We can do better!

But What About Fahrenheit?

Yeah, what about Fahrenheit? It's not SI, but it is still metric (base-10), and I think it has some very nice qualities as well (plus some pretty bad ones).

Obvious bad thing is that its 0/100 points are meaningless; 0°F is the freezing point of saturated salt water (which, tbf, was easier to obtain than purified water, and so a more reliable liquid for gauge calibration) and, uh, for some reason 100°F is based on him setting human body temperature to 96°F? So 100 wasn't even meaningful from the start??? Nowadays of course we use the same freezing/boiling point of water definition, which gives us the convenient 32/212 pair, how nice.

Fahrenheit actually has some great qualities, tho. While the freezing point is pretty rando, it does at least mean that the 0 point is roughly as cold as it gets in temperate parts of the world. (And measuring subzero is basically just for fun anyway; below that it's all "lethally cold" and the precise number doesn't matter anyway.) Similarly, 100 is roughly as hot as it gets in temperate parts of the world. This means that outside temps range nicely over the 0-100 range (vs the roughly -15 to 45 range for Celsius).

As well, the degree size is, in my opinion, a bit better. Ten degrees Fahrenheit is more or less the minimum temperature difference that makes a difference for how you dress and respond to the weather - you'll feel 70 and 80 as different and respond accordingly, but 70 and 75 are too close to care about the difference. (Celsius's similar bands are 5 degrees apart, which is kinda round but not as good.)

So Fahrenheit gives us a meaningful 0-100 range for our daily temperature usage, and has meaningful 10-degree bands as well. That's really nice! Sure would've been good to keep that around.

Let's Get It Right

Just to get one difficulty out of the way, we can't make a temperature system that's both human-meaningful for small numbers, and useful for physics. The two desired zero points (deep space vs frozen water) are too far apart.

What we can do, tho, is make it so that converting between the "human" and "absolute" scales is as easy as possible, so the two zeros are a whole, round number of degrees apart.

Taking all the above into account, I present to you the Degrees Temp (°T), or Absolute Temp (°AT) system, an ideal system that combines the best parts of everything:

Degrees Temp, the human-usable system, is defined by the freezing point of water at 20°, and absolute zero at -500°. °AT is just °T + 500.

The freezing point of water is not 0, but it is a round, easily-memorized and easily-recognized number. 0°T, instead, is a sub-freezing temp that is, again, roughly "as cold as a temperate climate gets", similar to Fahrenheit. Also similar, 100°T is roughly as hot as a temperate climate gets.

(Converted back into existing units, 0°T is 14°F/-10°C, and 100°T is 107°F/42°C.)

By a lucky coincidence, average human body temp is 90°T, another convenient number. (Compare to 37°C or 98.6°F, both awful.)

Not that it usually matters in reality, but the boiling point of water is 210°T, yet another convenient number. I'm not imposing excess rounding here to make it look good, either: 100°C really is 210.4°T!

Swapping between human- and physics-friendly versions of the unit is also, as I mentioned earlier, trivial in this system, you just add or subtract 500° from the temperature. A far cry from 273.15°! (Or the equally horrible 459.67 for converting between Fahrenheit and Rankine.)

(If you want to convert more temps, the conversion factor between °AT and K is .5253. To convert from °C to K, add 273.16; to convert from °AT to °T, subtract 500.)

Here's a quick table with some convenient numbers:

°T°F°CK
0°T13°F-10°C263K
10°T22°F-5°C268K
20°T (water freezes)32°F0°C273K
30°T41°F5°C278K
40°T50°F11°C284K
50°T60°F16°C289K
60°T70°F21°C294K
70°T79°F26°C299K
80°T89°F32°C305K
90°T (body temp)98°F37°C310K
100°T108°F42°C315K
210°T (water boils)212°F100°C373K

Bonus: What About Heximal?

Real Tab-heads know that base-6 is the best base for numbers to be, substantially better than base-10. This temperature scale seems pretty well-tailored to base-10, with a great 0-100 range and a round absolute zero. Can it be adapted to base-6 while maintaining its good properties?

Yes! It's not perfect, but it's slightly better in some ways, slightly worse in other ways, and overall fairly similar.

Short form: Absolute zero is now at -1000₆°T, and water freezes at 10₆°T. The rest of the system extends from that.

This means that 0₆°T is equal to about -7°C, or 19°F, slightly higher than the decimal version, and 100₆°T is equal to... 37°C or 98.4°F! That's body temperature, baby! That was a very common calibration target for older temperature scales, and is just a fun number to have at such a round value.

It does mean that the range overall is a bit narrower; negative and >100₆°T temperatures will show up more often. They'll be "very cold" and "very hot" temps, but not "hoo boy these never happen" temps, like in the decimal version. But that's okay! Realistically, readouts will have to be able to display these values anyway, so it's not a huge loss. The vast majority of outdoor temperatures you encounter will continue to be in the 0-100₆ range.

Bonus points for the fact that "room temperature" (72°F/22°C) is a nice round 40₆°T. How nice!

(You can see me working thru the logic here at https://twitter.com/tabatkins/status/1308226259374149633.)

Some Conversion Code For Nerds

If you wanna play with this system a bit, here's some JS for converting between it and C/F/K:

Decimal version:

function atFromK(degK) { return degK / 273.16 * 520; }
function kFromAT(degAT) { return degAT / 520 * 273.16; }
function tFromC(degC) { return atFromK(degC + 273.16) - 500; }
function cFromT(degT) { return kFromAT(degT + 500) - 273.16; }
function fFromT(degT) { return cFromT(degT) * 9/5 + 32; }
function tFromF(degF) { return tFromC((degF - 32) * 5/9); }

Heximal version:

function atFromK(degK) { return degK / 273.16 * 226; }
function kFromAT(degAT) { return degAT / 226 * 273.16; }
function tFromC(degC) { return atFromK(degC + 273.16) - 216; }
function cFromT(degT) { return kFromAT(degT + 216) - 273.16; }
function fFromT(degT) { return cFromT(degT) * 9/5 + 32; }
function tFromF(degF) { return tFromC((degF - 32) * 5/9); }

(You'll want to call .toString(6) on the heximal results, and/or use parseInt(X, 6) on the heximal inputs, of course. Like fFromT(parseInt("100", 6)) or tFromC(0).toString(6).)


This content originally appeared on Tab Completion and was authored by Tab Atkins Jr.


Print Share Comment Cite Upload Translate Updates
APA

Tab Atkins Jr. | Sciencx (2020-09-21T21:47:46+00:00) A Better Temperature System. Retrieved from https://www.scien.cx/2020/09/21/a-better-temperature-system/

MLA
" » A Better Temperature System." Tab Atkins Jr. | Sciencx - Monday September 21, 2020, https://www.scien.cx/2020/09/21/a-better-temperature-system/
HARVARD
Tab Atkins Jr. | Sciencx Monday September 21, 2020 » A Better Temperature System., viewed ,<https://www.scien.cx/2020/09/21/a-better-temperature-system/>
VANCOUVER
Tab Atkins Jr. | Sciencx - » A Better Temperature System. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2020/09/21/a-better-temperature-system/
CHICAGO
" » A Better Temperature System." Tab Atkins Jr. | Sciencx - Accessed . https://www.scien.cx/2020/09/21/a-better-temperature-system/
IEEE
" » A Better Temperature System." Tab Atkins Jr. | Sciencx [Online]. Available: https://www.scien.cx/2020/09/21/a-better-temperature-system/. [Accessed: ]
rf:citation
» A Better Temperature System | Tab Atkins Jr. | Sciencx | https://www.scien.cx/2020/09/21/a-better-temperature-system/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.