使用方法
- 在「气温」填华氏温度,示例 90°F。这个公式的原始定义就用华氏度,填摄氏度请先换算(可用站内的摄氏度转华氏度工具)。
- 在「相对湿度」填百分比数字,示例 70%,只填数字不填百分号。
- 两个框任意一个改动都会立即重算,点「计算」或直接按 Enter 也一样。
- 结果区给出四项:热指数华氏值、摄氏等效值、NWS 危险分级、露点近似值。示例为 105.9°F / 41.1°C / 危险 / 84°F。
- 下方对照表固定气温 90°F,把湿度从 40% 扫到 99%,用来观察「湿度每涨 5%,热指数涨多少」。
- 需要留档时点「导出对照表 CSV」,Excel 打开中文不乱码;点「复制对照表 TSV」可直接粘进表格软件。
这个炎热指数计算器能解决什么问题
第一类场景是判断「同样的温度,为什么今天更难受」。气温 90°F 时,湿度从 40% 涨到 95%,热指数会从 90.7°F 一路升到 126.6°F,跨过三个危险等级。这个炎热指数计算器把湿度单独拎成一列,就是为了让你看到湿度而不是气温才是那根被忽略的杠杆。
第二类场景是户外作业与运动的排班。美国国家气象局的分级是连续值,不是「热/不热」两档:90°F 起算「极度小心」,103°F 进入「危险」,125°F 以上是「极度危险」。同一份班表,按热指数而不是气温来安排间歇与补水,才对应真实的生理负荷。
第三类场景是校验天气 App 上那个「体感温度」。很多 App 把热指数、露点、风寒混成一个数,同一个页面夏天显示热指数、冬天显示风寒。本页只做高温高湿这一件事,给出的分级口径与 NWS 一致,便于你对照官方热指数表复核。
它不做的事要说清楚:不计算低温侧的体感,那是风寒指数的领域;不把结果换算成「体感温度」这一更宽的口径(后者还要考虑风速与太阳辐射);不提供任何防暑、医疗或用药建议,结果只是一个基于气温与湿度的气象学指标,身体不适请直接求助医生。
原理与规则说明
核心是 NOAA 采用的 Rothfusz 回归公式:以华氏气温 T 与相对湿度 R 为自变量,HI = -42.379 + 2.04901523T + 10.14333127R - 0.22475541TR - 0.00683783T² - 0.05481717R² + 0.00122874T²R + 0.00085282TR² - 0.00000199T²R²。它不是物理定律,而是对一张人工编制的热指数表做的九项多项式拟合,系数保留到八位小数,就是为了还原那张表的每一格。
回归之外还有两段修正项,对应表里最难拟合的两个角落。其一是低湿修正:当湿度小于 13% 且气温在 80°F 到 112°F 之间时,减去 ((13 - R) / 4) × √((17 - |T - 95|) / 17),因为干热时人体靠出汗散热更有效,回归会高估。其二是高湿修正:当湿度大于 85% 且气温在 80°F 到 87°F 之间时,加上 ((R - 85) / 10) × ((87 - T) / 5)。这两段只在小范围内生效,示例的 90°F / 70% 都不触发。
适用范围有硬边界:气温必须不低于 80°F,低于此值时 Rothfusz 回归在物理上无意义,本页会把结果置为「—」并明确标注不适用,而不是给一个看起来正常的数字。另一头,NOAA 公布的表格上限约为 137°F,超过后属于外推区间,本页会照常显示但对超过 137°F 的结果加上提醒。
分级沿用 NWS 的四档:80~90°F 为「小心」,90~103°F 为「极度小心」,103~124°F 为「危险」,125°F 及以上为「极度危险」。露点用的是常被引用的近似式 Td ≈ T − (100 − R) / 5,只在湿度不低于 50% 时给出,示例 90°F / 70% 得 84°F。要区分几个容易混的概念:热指数只看气温与湿度;露点衡量空气里水汽的绝对量,与气温无关;有效温度是更早的等效温度族;常说的体感温度口径更宽,还要叠加风速与太阳辐射。它们数值相近但定义不同,不能互相替代。
完整示例(数值仅作演示)
默认输入是气温 90°F、相对湿度 70%。这两个数字同时是对照表的控制条件,对应表中第 7 行,三处咬合。
- 把 T=90、R=70 代入九项回归式,得到热指数 105.92°F,显示为 105.9°F;
- 换算成摄氏:(105.92 − 32) × 5 ÷ 9 = 41.1°C;
- 按 NWS 分级,105.92°F 落在 103~124°F 区间,判定为危险;
- 露点近似:90 − (100 − 70) ÷ 5 = 84°F,逼近气温,说明汗液很难蒸发。
做两条对照:湿度降到 40%,热指数只有 90.68°F,刚好越过「极度小心」的门槛;湿度升到 95%,热指数跳到 126.62°F,直接进入「极度危险」。同样的 90°F 气温,两端相差约 36°F——这就是热指数不能只看温度的原因。
输入范围与对照表
气温接受 0 到 200°F,湿度接受 0 到 100%,两者都允许小数。低于 80°F 时结果栏显示「—」,属于口径不适用而非计算失败;湿度低于 50% 时露点栏显示「—」,因为近似式在该区间不成立。
| 项目 | 取值 | 说明 |
|---|---|---|
| 气温 | 90°F | 与表单默认值、正文示例一致 |
| 湿度区间 | 40% → 95% | 步长 5%,共 12 行 |
| 热指数区间 | 90.68°F → 126.62°F | 湿度翻倍,热指数约涨 36°F |
| 第 7 行 | 70% / 105.92°F | 即默认示例所在行 |
| 加载更多 | 96% → 99% | 再补 4 行,共 16 行 |
| 分级边界 | 90 / 103 / 125°F | NWS 四档的分界值 |
点「加载更多」把表补到 16 行,「导出对照表 CSV」下载带 BOM 的文件(Excel 双击不乱码),「复制对照表 TSV」把整张表复制成制表符分隔文本,可直接粘进表格软件。
输入范围、边界与精度说明
最关键的边界是 80°F。低于 80°F 时输出「—」而不是强行套回归,因为该回归是在 80°F 以上的高温区间拟合出来的,低温段外推会得到不合理的数。此时提醒里会附一个常被引用的简化式结果(示例 75°F / 70% 约 75.3°F),但明确标注它只是参考、不代表官方热指数。
第二道边界是 137°F。NOAA 的热指数表到 137°F 附近为止,超高气温配合高湿度时九项回归会明显高估,本页对超过 137°F 的结果加一句外推提醒,既不拒绝计算,也不假装它仍然可信。湿度输入上限写死 100%:相对湿度按定义不可能超过 100%,填 101 会被拦下并提示「相对湿度超出范围 0~100%」。
精度上,气温与湿度都按二进制浮点参与运算,热指数显示一位小数、对照表显示两位小数、摄氏值显示一位小数。示例 105.92°F 换算成摄氏是 41.066…°C,四舍五入显示 41.1°C,与对照表第 7 行完全一致,不会出现两个页面相差 0.1 的情况。露点近似式在小数上是近似的,显示为整数。
三条常见误用:其一,把热指数当成体温——它是气象学指标,不是人体实测温度,105.9°F 不代表体温 105.9°F;其二,用热指数判断低温体感,方向上就错了,那是风寒指数的职责;其三,把「相对湿度 70%」理解成「空气里有 70% 的水」,相对湿度是当前水汽压与该温度下饱和水汽压的比值,随温度变化,同一个 70% 在 90°F 与 70°F 下含水量差很多。
常见问题
湿度和温度一样,为什么热指数会差这么多?
因为人体主要靠汗液蒸发散热,湿度越高蒸发越慢。示例里 90°F 配 40% 湿度热指数 90.7°F,配 95% 湿度就升到 126.6°F,差出来的 36°F 全是湿度造成的。
气温 79°F、湿度 90% 为什么不给结果?
Rothfusz 回归的适用范围是气温不低于 80°F,79°F 属于低温段,套用会外推失真。本页会把结果置为「—」并说明不适用,而不是给一个看似正常的数字。
热指数和天气 App 上的「体感温度」是一回事吗?
不完全。热指数只看气温与湿度;体感温度口径更宽,还会叠加风速、太阳辐射,不同 App 的算法也不统一。本页严格按 NWS 热指数口径,便于对照官方热指数表。
结果超过 137°F 还能信吗?
要打折看。NOAA 公布的表格到 137°F 附近,再往上是回归式的外推区间,高温叠加高湿时容易偏高。本页仍会显示,但会明确提示属于外推,日常判断不要把它当精确值。
露点那一栏的公式准吗?
用的是 Td ≈ T − (100 − R) / 5 的近似式,在湿度不低于 50% 时够用,示例 90°F / 70% 得 84°F。湿度低于 50% 时误差明显变大,所以本页直接显示「—」。要精确露点请用专门的露点工具。
低湿度修正那一段什么时候生效?
只有湿度低于 13% 且气温在 80~112°F 之间时才减去修正项。示例 90°F / 70% 不触发,所以结果就是纯净的九项回归值。干热地区(如沙漠)才会用上这段。
能把摄氏度直接填进去吗?
不能,公式以华氏度定义,填摄氏会被当成华氏值。请先把摄氏换算成华氏再输入,站内有摄氏度转华氏度的换算工具可直接用。
这个结果能用来指导防暑或就医吗?
不能。它是气象学意义上的热指数,不含个体差异、健康状况与用药情况,仅供参考,不构成医疗建议。出现头晕、恶心、意识模糊等中暑征兆,请立即降温并联系医生。
相关工具
炎热指数计算器只负责高温高湿这一侧,相邻的温度类指标各有专门页面。