Environment 'Shade' temperatures.
Add shade to profiles
Add shade to table column
This commit is contained in:
fraxle
2026-06-27 15:15:59 +01:00
parent 05ab4cf76b
commit df3256462a
6 changed files with 146 additions and 83 deletions
+6 -3
View File
@@ -13,7 +13,7 @@
import {
vaporPressureHpa, solarElevationDeg, calcTmrt, utciApprox,
calcConcreteTempPass, calcVehicleInteriorTemp,
calcIndoorTempPass, calcManagedIndoorTempPass,
calcIndoorTempPass, calcManagedIndoorTempPass, calcShadeAirTemp,
} from './physics.js';
import { windCompass8, uvSplit, cloudCategory, precipPenalty, sunburnMinutes, burnLabel } from './utils.js';
import { UTCI_ENVIRONMENTS } from './config.js';
@@ -77,6 +77,9 @@ export function buildHourlyRows({ forecast, airQuality, location, vehicleType, v
// a surface as direct beam, so we weight it accordingly.
const effectiveRad = dir + dif * 0.2;
// concreteT is now stamped in the two-pass section below (thermal lag).
// Shade air temp: the air you'd feel in this Solar Model's typical shade
// (building shadow, beach umbrella, canopy...). Uses the env's shade block.
const shadeT = calcShadeAirTemp(Ta, effectiveRad, va, elev, env.shade);
const vehicleT = calcVehicleInteriorTemp(Ta, glob, elev, vehicleType, vehicleVent, vehicleSpeed);
const eh = vaporPressureHpa(Ta, RH);
// Apply environment modifier - adjust solar inputs and air temp for shaded environments.
@@ -147,7 +150,7 @@ export function buildHourlyRows({ forecast, airQuality, location, vehicleType, v
cc, ccLow, ccMid, ccHigh, cloudCat,
uv, uvA, uvB,
precip, precipProb, lightning, cape, snow,
soilT0, soilT6, soilM, vehicleT,
soilT0, soilT6, soilM, vehicleT, shadeT,
effectiveRad,
elev, Tmrt, utci, utciAdj, eh, compass,
visKm, aqi,
@@ -258,7 +261,7 @@ export function buildHourlyRows({ forecast, airQuality, location, vehicleType, v
// interval <= 1 returns the input untouched (zero behaviour change).
// ------------------------------------------------------------------------
const AGG_MEAN = [
'Ta', 'RH', 'dew', 'va', 'dir', 'dif', 'cc', 'ccLow', 'ccMid', 'ccHigh',
'Ta', 'shadeT', 'RH', 'dew', 'va', 'dir', 'dif', 'cc', 'ccLow', 'ccMid', 'ccHigh',
'soilT0', 'soilT6', 'soilM', 'Tmrt', 'eh', 'visKm', 'aqi', 'effectiveRad',
'grassPollen', 'birchPollen', 'alderPollen', 'mugwortPollen', 'olivePollen', 'ragweedPollen',
];