Radiation

Overview

Thermal radiation describes heat transfer by electromagnetic emission from matter at nonzero temperature, independent of any intervening fluid motion. In engineering analysis, radiation becomes dominant at elevated temperatures and can materially affect furnace performance, insulation design, atmospheric energy balance, and high-temperature equipment reliability. The core physics is grounded in blackbody theory and radiative properties such as emissivity and absorptivity, with practical formulations built from Planck’s law and the Stefan-Boltzmann law. This category focuses on compact formulas that are directly useful in spreadsheet-driven thermal calculations.

The unifying concepts are spectral behavior, medium attenuation, and net exchange. Spectral behavior captures how emission intensity varies with wavelength and temperature, while attenuation models how participating media reduce transmitted intensity along a path. Net exchange then combines emissive power and environmental back-radiation into an actionable heat-flux term. These ideas are often used together: engineers estimate spectral intensity to understand where energy is emitted, apply transmittance through gases or semitransparent layers, and close the balance with a Stefan-Boltzmann-style net flux at boundaries.

The functions here are implemented from the Python ht package, specifically ht.radiation, a heat-transfer library that provides validated engineering correlations and transport utilities. Boardflare exposes these routines in an Excel-friendly form so analysts can apply physically consistent radiation equations without rebuilding constants and unit-sensitive expressions each time.

BB_SPECTRAL_RAD covers wavelength-resolved blackbody emission using Planck’s law, giving spectral radiance as a function of T and \lambda. It is most useful when a problem depends on where energy is distributed across the spectrum, such as sensor-band estimation, selective surface assessment, or comparing thermal sources at different temperatures. Because it is spectral, it complements integrated flux expressions rather than replacing them. In practical workflows, this function is often used early to identify dominant wavelength regions before selecting optical properties or filter assumptions.

GREY_TRANSMITTANCE models attenuation through a grey participating medium with an exponential form analogous to Beer-Lambert behavior. It combines extinction coefficient, molar density, and path length to estimate transmitted fraction, which is essential in combustion gases, humid-air paths, and simple enclosure screening calculations. This abstraction is intentionally compact: it does not resolve line-by-line spectroscopy but provides fast, engineering-grade estimates for scenario analysis. When paired with boundary heat-flux calculations, it helps account for losses between emitter and receiver.

Q_RAD computes net radiative heat flux using emissivity and absolute temperatures, following q = \epsilon\sigma\left(T_1^4 - T_2^4\right). It is the direct tool for surface-to-surroundings exchange estimates in thermal design, from hot process equipment to electronics enclosures with radiative cooling effects. Including the surrounding temperature term makes it suitable for both emission-only and net-exchange cases, which is critical when ambient radiation is non-negligible. In many engineering sheets, this function is the closure equation that translates temperature assumptions into required heat removal or expected thermal loading.

Together, these three tools form a minimal but coherent radiation workflow: characterize emission spectrum, estimate transmission through media, and compute boundary-level net heat transfer. For many preliminary and intermediate analyses, this structure provides enough physical fidelity to prioritize design options before moving to full radiative-transfer simulations.

BB_SPECTRAL_RAD

This function computes blackbody spectral radiance at a specified wavelength using Planck’s law. It models the ideal thermal emission from a surface at absolute temperature T and is useful for radiation analysis in thermal engineering and heat-transfer calculations.

The spectral radiance is given by:

I_{\lambda}(\lambda, T) = \frac{2 h c^2}{\lambda^5\left[\exp\left(\frac{h c}{\lambda k T}\right)-1\right]}

where h is Planck’s constant, c is the speed of light, k is Boltzmann’s constant, \lambda is wavelength, and T is absolute temperature.

Excel Usage

=BB_SPECTRAL_RAD(T, wavelength)
  • T (float, required): Temperature of the surface (K).
  • wavelength (float, required): Wavelength of interest (m).

Returns (float): Spectral radiance in W/(m^2srm), or an error message if invalid.

Example 1: Blackbody radiance at 800 K and 4 micrometers

Inputs:

T wavelength
800 0.000004

Excel formula:

=BB_SPECTRAL_RAD(800, 0.000004)

Expected output:

1311690000

Example 2: Blackbody radiance at 5778 K and 500 nm

Inputs:

T wavelength
5778 5e-7

Excel formula:

=BB_SPECTRAL_RAD(5778, 5e-7)

Expected output:

26375700000000

Example 3: Blackbody radiance at 1000 K and 1 micrometer

Inputs:

T wavelength
1000 0.000001

Excel formula:

=BB_SPECTRAL_RAD(1000, 0.000001)

Expected output:

67204600

Example 4: Blackbody radiance at 300 K and 10 micrometers

Inputs:

T wavelength
300 0.00001

Excel formula:

=BB_SPECTRAL_RAD(300, 0.00001)

Expected output:

9924030

Python Code

Show Code
from ht.radiation import blackbody_spectral_radiance as ht_blackbody_spectral_radiance

def bb_spectral_rad(T, wavelength):
    """
    Compute blackbody spectral radiance at a wavelength.

    See: https://ht.readthedocs.io/en/latest/ht.radiation.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        T (float): Temperature of the surface (K).
        wavelength (float): Wavelength of interest (m).

    Returns:
        float: Spectral radiance in W/(m^2*sr*m), or an error message if invalid.
    """
    try:
        T_val = float(T)
        wavelength_val = float(wavelength)
        if T_val <= 0:
            return "Error: T must be greater than 0"
        if wavelength_val <= 0:
            return "Error: wavelength must be greater than 0"
        return ht_blackbody_spectral_radiance(T_val, wavelength_val)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Temperature of the surface (K).
Wavelength of interest (m).

GREY_TRANSMITTANCE

This function computes the transmittance of radiation through a grey participating medium from the extinction coefficient, molar density, and path length. It applies an exponential attenuation model analogous to Beer-Lambert behavior for absorbing media.

The transmittance is calculated as:

tau = b^{-\epsilon \rho_m l}

where \epsilon is the extinction coefficient, \rho_m is the molar density, l is the path length, and b is the selected exponential base. Larger extinction coefficients, denser media, or longer path lengths all reduce the transmitted fraction.

Excel Usage

=GREY_TRANSMITTANCE(extinction_coefficient, molar_density, length, base)
  • extinction_coefficient (float, required): Extinction coefficient at the modeled frequency (m^2/mol).
  • molar_density (float, required): Molar density of the material (mol/m^3).
  • length (float, required): Path length through the material (m).
  • base (float, optional, default: 2.718281828459045): Exponent base used in the transmittance calculation (-).

Returns (float): Transmittance fraction through the material, or an error message if invalid.

Example 1: Atmospheric water vapor transmittance

Inputs:

extinction_coefficient molar_density length
0.00038 55300 0.01

Excel formula:

=GREY_TRANSMITTANCE(0.00038, 55300, 0.01)

Expected output:

0.810471

Example 2: Transmittance with base ten

Inputs:

extinction_coefficient molar_density length base
0.0002 20000 0.005 10

Excel formula:

=GREY_TRANSMITTANCE(0.0002, 20000, 0.005, 10)

Expected output:

0.954993

Example 3: Short path length

Inputs:

extinction_coefficient molar_density length
0.001 1000 0.0001

Excel formula:

=GREY_TRANSMITTANCE(0.001, 1000, 0.0001)

Expected output:

0.9999

Example 4: Longer path length with dilute gas

Inputs:

extinction_coefficient molar_density length
0.00005 500 0.2

Excel formula:

=GREY_TRANSMITTANCE(0.00005, 500, 0.2)

Expected output:

0.995012

Python Code

Show Code
from ht.radiation import grey_transmittance as ht_grey_transmittance

def grey_transmittance(extinction_coefficient, molar_density, length, base=2.718281828459045):
    """
    Compute grey-body transmittance from extinction and path length.

    See: https://ht.readthedocs.io/en/latest/ht.radiation.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        extinction_coefficient (float): Extinction coefficient at the modeled frequency (m^2/mol).
        molar_density (float): Molar density of the material (mol/m^3).
        length (float): Path length through the material (m).
        base (float, optional): Exponent base used in the transmittance calculation (-). Default is 2.718281828459045.

    Returns:
        float: Transmittance fraction through the material, or an error message if invalid.
    """
    try:
        extinction_coefficient_val = float(extinction_coefficient)
        molar_density_val = float(molar_density)
        length_val = float(length)
        base_val = float(base)
        if extinction_coefficient_val < 0:
            return "Error: extinction_coefficient must be non-negative"
        if molar_density_val < 0:
            return "Error: molar_density must be non-negative"
        if base_val <= 0:
            return "Error: base must be greater than 0"
        if length_val < 0:
            return "Error: length must be non-negative"
        return ht_grey_transmittance(
            extinction_coefficient=extinction_coefficient_val,
            molar_density=molar_density_val,
            length=length_val,
            base=base_val,
        )
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Extinction coefficient at the modeled frequency (m^2/mol).
Molar density of the material (mol/m^3).
Path length through the material (m).
Exponent base used in the transmittance calculation (-).

Q_RAD

This function computes net radiative heat flux between a surface and its surroundings using emissivity and absolute temperatures. It applies the Stefan-Boltzmann relation and supports back-radiation from a surrounding temperature.

The governing expression is:

q = \epsilon \sigma \left(T_1^4 - T_2^4\right)

where \epsilon is emissivity, \sigma is the Stefan-Boltzmann constant, T_1 is surface temperature, and T_2 is surrounding temperature.

Excel Usage

=Q_RAD(emissivity, T, T_two)
  • emissivity (float, required): Surface emissivity fraction (-).
  • T (float, required): Surface temperature (K).
  • T_two (float, optional, default: 0): Surroundings temperature (K).

Returns (float): Radiant heat flux in W/m^2, or an error message if invalid.

Example 1: Blackbody radiation at 400 K

Inputs:

emissivity T
1 400

Excel formula:

=Q_RAD(1, 400)

Expected output:

1451.61

Example 2: Gray surface with 305 K surroundings

Inputs:

emissivity T T_two
0.85 400 305

Excel formula:

=Q_RAD(0.85, 400, 305)

Expected output:

816.782

Example 3: Moderate temperature difference

Inputs:

emissivity T T_two
0.5 350 250

Excel formula:

=Q_RAD(0.5, 350, 250)

Expected output:

314.705

Example 4: High temperature surface

Inputs:

emissivity T T_two
0.9 1200 800

Excel formula:

=Q_RAD(0.9, 1200, 800)

Expected output:

84919.4

Python Code

Show Code
from ht.radiation import q_rad as ht_q_rad

def q_rad(emissivity, T, T_two=0):
    """
    Compute radiant heat flux between a surface and surroundings.

    See: https://ht.readthedocs.io/en/latest/ht.radiation.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        emissivity (float): Surface emissivity fraction (-).
        T (float): Surface temperature (K).
        T_two (float, optional): Surroundings temperature (K). Default is 0.

    Returns:
        float: Radiant heat flux in W/m^2, or an error message if invalid.
    """
    try:
        emissivity_val = float(emissivity)
        T_val = float(T)
        T_two_val = float(T_two)
        if emissivity_val < 0 or emissivity_val > 1:
            return "Error: emissivity must be between 0 and 1"
        if T_val < 0 or T_two_val < 0:
            return "Error: temperatures must be non-negative"
        return ht_q_rad(emissivity=emissivity_val, T=T_val, T2=T_two_val)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Surface emissivity fraction (-).
Surface temperature (K).
Surroundings temperature (K).