Files
fraxle 71860b9dd9 5.4.0
Restructure
New Journal entries
Colour tabs update with wind
2026-08-31 15:12:45 +01:00

157 lines
10 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SunSoak &amp; the science · SunScope</title>
<meta name="description" content="How the SunSoak index works — built on the UTCI standard with a rain and snow penalty, a Solar Model for your surroundings (forest, alpine, beach, river, desert, open water), and full mean radiant temperature." />
<meta name="robots" content="index, follow" />
<link rel="canonical" href="https://sunscope.net/sunsoak.html" />
<meta property="og:title" content="SunSoak &amp; the science · SunScope" />
<meta property="og:description" content="What SunSoak is and how it layers a precipitation penalty, a Solar Model for your surroundings, and mean radiant temperature on top of UTCI." />
<meta property="og:url" content="https://sunscope.net/sunsoak.html" />
<meta property="og:type" content="article" />
<meta property="og:image" content="https://sunscope.net/og-image.png" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="SunSoak &amp; the science · SunScope" />
<meta name="twitter:description" content="What SunSoak is and how it layers a precipitation penalty, a Solar Model for your surroundings, and mean radiant temperature on top of UTCI." />
<meta name="twitter:image" content="https://sunscope.net/og-image.png" />
<link rel="icon" type="image/svg+xml" href="./favicon.svg" />
<link rel="stylesheet" href="./assets/about.css?v=15b">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "SunSoak & the science",
"about": "The SunSoak thermal comfort index and how it extends the UTCI standard.",
"publisher": { "@type": "Organization", "name": "SunScope", "url": "https://sunscope.net" },
"mainEntityOfPage": "https://sunscope.net/sunsoak.html"
}
</script>
</head>
<body>
<header id="site-nav">
<div class="nav-overlay" onclick="toggleNav(false)"></div>
<a href="./index.html" class="nav-logo">
<span class="nav-logo-wordmark"><span class="nav-logo-sun">Sun</span><svg class="nav-logo-icon" viewBox="0 0 174 173" aria-hidden="true" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:1.5;"><g transform="matrix(0.986226,0,0,0.986226,-585.724252,-110.041209)"><clipPath id="ss-clip-ss"><circle cx="681.9838" cy="199.4502" r="83.2987"/></clipPath><g clip-path="url(#ss-clip-ss)"><g transform="matrix(0.948836,0,0,0.948836,19.748711,-12.198562)"><path d="M666.992,233.0768C666.3949,230.6581 666.1785,228.6317 666.1785,226.0296C666.1785,208.6786 680.2653,194.5919 697.6163,194.5919C714.9672,194.5919 729.054,208.6786 729.054,226.0296C729.054,228.4125 728.9892,230.9346 728.4859,233.1663" fill="#f4b047" stroke="#f4b047" stroke-width="7.48" stroke-linecap="round"/></g><g transform="matrix(0.520349,0,0,0.520349,304.727514,54.521964)"><path d="M724.9315,291.8131C777.359,291.8131 826.5862,305.6245 869.1698,329.8044" fill="none" stroke="currentColor" stroke-width="13.64"/></g><g transform="matrix(0.520349,0,0,0.520349,304.727514,54.521964)"><path d="M580.8436,329.719C623.3927,305.592 672.5657,291.8131 724.9315,291.8131" fill="none" stroke="currentColor" stroke-width="13.64"/></g></g><circle cx="681.9838" cy="199.4502" r="83.2987" fill="none" stroke="currentColor" stroke-width="9.13"/></g></svg><span class="nav-logo-scope">Scope</span></span>
<span class="nav-logo-tag">See the world the way your skin does.</span>
</a>
<div class="nav-links" id="nav-drawer">
<a href="./index.html">Forecast</a>
<div class="nav-dropdown">
<a href="./about.html" class="nav-dropdown-toggle active">About<span class="caret"></span></a>
<div class="nav-dropdown-menu">
<a href="./about.html">Overview</a>
<a href="./sunsoak.html" class="active">SunSoak &amp; the science</a>
<a href="./profiles.html">Forecast profiles</a>
<a href="./columns.html">Column reference</a>
<a href="./temperatures.html">Derived temperatures</a>
<a href="./features.html">On-screen features</a>
<a href="./stress-bands.html">Stress bands</a>
</div>
</div>
<a href="./faq.html">FAQ</a>
<div class="nav-dropdown nav-dropdown--right">
<a href="./dashboard.html" class="nav-dropdown-toggle">Account<span class="caret"></span></a>
<div class="nav-dropdown-menu">
<a href="./dashboard.html">Dashboard</a>
<a id="nav-account-subscription" href="https://buy.stripe.com/9B63cw7vl8k15Ei9DQd7q00" target="_blank" rel="noopener noreferrer">Subscription</a>
<a id="nav-account-signinout" href="./dashboard.html">Sign in</a>
</div>
</div>
</div>
<button class="utci-burger" aria-label="Open menu" aria-expanded="false" id="burger-btn" onclick="toggleNav()">
<span></span><span></span><span></span>
</button>
</header>
<script>
function toggleNav(force) {
const nav = document.getElementById('site-nav');
const drawer = document.getElementById('nav-drawer');
const btn = document.getElementById('burger-btn');
const open = force !== undefined ? force : !nav.classList.contains('nav-open');
nav.classList.toggle('nav-open', open);
drawer.classList.toggle('is-open', open);
btn.setAttribute('aria-expanded', open ? 'true' : 'false');
}
</script>
<script src="./assets/js/nav-account.js" defer></script>
<main>
<h1>SunSoak &amp; the science</h1>
<p class="tagline">The honest felt-temperature number, and what goes into it.</p>
<h2>What is SunSoak?</h2>
<p>
Standard UTCI is calculated assuming open, unshaded conditions with no precipitation — it tells
you how the wind and sun affect your body, but not the full picture of where you actually are or
what the weather is actively doing to you. <strong>SunSoak</strong> fills those gaps with three
layers of original calculation stacked on top of the UTCI foundation.
</p>
<h2>The precipitation penalty</h2>
<p>
Rain and snow are not in UTCI. The soak-factor formula adds an original penalty based on rain
intensity, snowfall rate, and wind speed — reflecting the extra chill of wet clothing and skin.
Light drizzle (under 1 mm/hr) reduces the felt temperature by roughly 12 °C. Heavy rain combined
with strong wind can push it down by 78 °C. Snowfall carries an additional penalty on top.
</p>
<h2>The Solar Model</h2>
<p>
UTCI assumes you are standing in the open. SunScope's <strong>Solar Model</strong> adjusts the
solar radiation load and air temperature for the place you actually are, selectable from a
dropdown on the SunSoak column. There are eight models:
</p>
<table class="stress-table">
<thead>
<tr><th>Solar Model</th><th>What it does to the felt temperature</th></tr>
</thead>
<tbody>
<tr><td><strong>Grass / Open Field</strong></td><td>The UTCI default — full sun exposure over natural ground, no adjustment.</td></tr>
<tr><td><strong>Town / City</strong></td><td>Urban heat island raises air temp ~23 °C; building canyons cut direct and diffuse solar, with reflections partly offsetting the reduced sky view.</td></tr>
<tr><td><strong>Beach / Lakeside</strong></td><td>Water and sand reflect extra radiation back at you, increasing the effective solar load and UV dose.</td></tr>
<tr><td><strong>River / Riverbank</strong></td><td>Canopy and valley walls cut direct sun; evaporative cooling from the water lowers apparent air temperature.</td></tr>
<tr><td><strong>Forest / Woodland</strong></td><td>Canopy reduces direct radiation by around 85%; air temperature is adjusted down for evapotranspiration cooling.</td></tr>
<tr><td><strong>Open Water</strong></td><td>Full solar exposure with additional reflection off the water surface, no shade or shelter, and no ground-heat contribution.</td></tr>
<tr><td><strong>High Altitude / Alpine</strong></td><td>Thinner atmosphere at ~2,000 m enhances radiation by around 15%, adjusted for exposed ridge conditions.</td></tr>
<tr><td><strong>Desert / Arid</strong></td><td>Extreme radiation load from high-albedo sand and bare ground, with ground-level heat significantly raising the felt temperature.</td></tr>
</tbody>
</table>
<p>
Selecting a Place, Activity, or Work profile automatically sets the most appropriate Solar Model
for that context — but you can always override it manually. The chosen model also drives the
<strong>Shade Air</strong> column, which estimates the air temperature sitting in that model's
typical shade (see the <a href="./columns.html">column reference</a>).
</p>
<h2>Mean radiant temperature</h2>
<p>
The full radiant heat load from surrounding surfaces — ground, walls, sky, and direct sun — is
calculated as Mean Radiant Temperature (Tmrt) and fed into the UTCI polynomial. On a sunny day
this alone can add 2030 °C to the felt temperature compared to a shaded reading. It is why
stepping into shade feels so much cooler even though the air temperature hasn't changed.
</p>
<h2>Reading the result</h2>
<p>
The combined SunSoak value is colour-coded into thermal stress bands so you can read conditions
at a glance — see <a href="./stress-bands.html">reading the stress bands</a>. For a plain-language
description of every column that feeds into or sits alongside SunSoak, see the
<a href="./columns.html">column reference</a>.
</p>
</main>
<footer>
&copy; 2026 <a href="https://fraxle.net" target="_blank" rel="noopener noreferrer">Fraxle.NET</a> · <a href="./index.html">Forecast</a> · <a href="./about.html">About</a> · <a href="./faq.html">FAQ</a>
· <a href="./dashboard.html">Dashboard</a> · <a href="https://billing.stripe.com/p/login/9B63cw7vl8k15Ei9DQd7q00" target="_blank" rel="noopener noreferrer">Account</a> · Data: <a href="https://open-meteo.com/" target="_blank" rel="noopener noreferrer">Open-Meteo</a> · UTCI: <a href="https://utci.org/" target="_blank" rel="noopener noreferrer">Bröde 2012</a>
</footer>
</body>
</html>