🪟 ISO 15099 Glazing Calculations
Multi-pane window analysis, gas properties, U-value calculations.
Overview
ISO 15099:2003 provides standardized methods for calculating thermal properties of window systems, including multi-pane glazing units with different gases, emissivities, and coatings.
The ThermX implementation provides:
- Center-of-glass U-value — heat flow rate through glass panes
- Solar Heat Gain Coefficient (SHGC) — solar radiation penetration
- Gas gap thermal resistance — convection in sealed cavities
- Multi-pane support — any combination of panes with air, argon, krypton, or xenon fills
Physics Model
Gas Properties
Each supported gas has temperature-dependent properties defined in ISO 15099 Table 1:
| Gas | Conductivity | Viscosity | Specific Heat |
|---|---|---|---|
| Air | 2.87×10⁻³ + 7.76×10⁻⁵·T | 3.72×10⁻⁶ + 4.94×10⁻⁸·T | 1002.7 + 0.0123·T |
| Argon | 2.28×10⁻³ + 5.15×10⁻⁵·T | 3.38×10⁻⁶ + 6.45×10⁻⁸·T | 521.9 |
| Krypton | 9.44×10⁻⁴ + 2.83×10⁻⁵·T | 2.21×10⁻⁶ + 7.78×10⁻⁸·T | 248.1 |
| Xenon | 4.54×10⁻⁴ + 1.72×10⁻⁵·T | 1.07×10⁻⁶ + 7.41×10⁻⁸·T | 158.3 |
Properties are linear functions of absolute temperature (K).
Convection in Gas Gaps
Natural convection in sealed gaps is characterized by the Nusselt number:
Nu = C · (Gr · Pr)^n
Where:
- Gr = Grashof number (gravity-driven convection)
- Pr = Prandtl number (ratio of viscous to thermal diffusion)
- C, n = correlation coefficients from ISO 15099 Table 2
The Nusselt number gives the effective heat transfer coefficient:
h = Nu · k / d
Where d is the gap width and k is thermal conductivity.
Thermal Resistance
For a single glazing layer:
R = thickness / conductivity
For a gas gap:
R = thickness / (h · A)
Where h is the convective coefficient from Nusselt number.
Center-of-Glass U-Value
The overall U-value is the inverse of total thermal resistance:
U = 1 / (R_outside + R_pane1 + R_gap + R_pane2 + ... + R_inside)
External/internal convection coefficients (8 and 7.7 W/m²K by default) are included in the boundary resistances.
API Reference
Types
GlazingLayer
interface GlazingLayer {
thickness: number; // metres
conductivity: number; // W/(m·K)
emissivityFront: number; // long-wave [0-1]
emissivityBack: number; // long-wave [0-1]
}
GasGap
interface GasGap {
thickness: number; // metres (e.g., 0.012 for 12mm)
gasType: string; // "air" | "argon" | "krypton" | "xenon"
}
Functions
calculateCenterOfGlassUValue
Calculate the U-value for a glazing system:
export function calculateCenterOfGlassUValue(
panes: GlazingLayer[],
gaps: GasGap[],
meanTemp: number = 283.15 // K
): number
Example:
const doubleGlazing = {
panes: [
{ thickness: 0.004, conductivity: 1.0, emissivityFront: 0.84, emissivityBack: 0.84 },
{ thickness: 0.004, conductivity: 1.0, emissivityFront: 0.84, emissivityBack: 0.84 }
],
gaps: [
{ thickness: 0.013, gasType: 'air' }
]
};
const uValue = calculateCenterOfGlassUValue(doubleGlazing.panes, doubleGlazing.gaps);
console.log(`U-value: ${uValue.toFixed(3)} W/(m²K)`);
Standards Compliance
The implementation follows ISO 15099:2003 standard for thermal performance calculations of windows, doors, and shading devices. This standard is widely used in building energy analysis and window performance certification.
Limitations
- Center-of-glass calculations only (edge effects not included)
- Steady-state analysis (dynamic solar gains not modeled)
- Assumes uniform glazing properties across the pane
- SHGC calculation pending implementation