Skip to contents

estimate_temperature() applies an experimental, spectrally smooth temperature-emissivity separation (TES) model to calibrated FTIR thermal-emission radiance. The primary OpenSpecy method evaluates spectra in bounded, BLAS-backed blocks and returns one compact row per input spectrum. It does not create a full emissivity cube.

The input must contain calibrated, surface-leaving spectral radiance in "W m^-2 sr^-1 (cm^-1)^-1". This is not suitable for absorbance, transmittance, reflectance, normalized intensities, or detector counts.

Usage

estimate_temperature(x, ...)

# Default S3 method
estimate_temperature(x, ...)

# S3 method for class 'OpenSpecy'
estimate_temperature(
  x,
  downwelling,
  temperature_range_k,
  fit_range_cm1,
  radiance_uncertainty = NULL,
  emissivity_stat = c("planck_weighted", "mean", "median", "max"),
  block_size = NULL,
  ...
)

# S3 method for class 'FileSpecs'
estimate_temperature(
  x,
  downwelling,
  temperature_range_k,
  fit_range_cm1,
  radiance_uncertainty = NULL,
  emissivity_stat = c("planck_weighted", "mean", "median", "max"),
  block_size = NULL,
  ...
)

Arguments

x

An OpenSpecy or FileSpecs object containing calibrated FTIR surface-leaving spectral radiance.

...

Additional arguments passed to methods.

downwelling

Required background/downwelling radiance. Supply a numeric scalar, a numeric vector aligned to x$wavenumber, or a one-spectrum calibrated-radiance OpenSpecy object on the same axis. Numeric zero explicitly requests the no-background assumption.

temperature_range_k

A finite, increasing two-value temperature search interval in kelvin. The endpoints are rejection boundaries, not valid estimates.

fit_range_cm1

A finite two-value fitting interval in inverse centimetres. Select a range for which the opaque, isothermal, surface-leaving model is valid.

radiance_uncertainty

Optional positive radiance uncertainty, supplied as a numeric scalar/vector or one-spectrum OpenSpecy. It inverse-variance weights spectral curvature and excludes trial-temperature channels whose blackbody/downwelling separation is too small for stable inversion.

emissivity_stat

One scalar emissivity reduction per spectrum: "planck_weighted" (the default band-effective directional value), "mean", "median", or "max".

block_size

Optional positive whole number of in-memory spectra per compute block. NULL derives a bounded value from the number of fitting bands. It changes memory/time trade-offs, not results.

Value

estimate_temperature() returns a source-aligned data.table with estimated material temperature, one selected emissivity value, roughness, physical- and valid-band fractions, fitting-band provenance, and a status. Only status == "ok" rows contain estimates. calculate_emissivity() returns an OpenSpecy object with unclipped emissivity spectra.

Details

The surface model is L = epsilon * B(T) + (1 - epsilon) * L_down, for an opaque isothermal target. Because temperature-emissivity separation is underdetermined, the selected temperature is conditional on a smooth-emissivity prior. A unique interior roughness minimum is required. Boundary, flat, multiple, unresolved, near-singular, and insufficient-band cases remain aligned but return NA estimates and a diagnostic status.

planck_weighted integrates the retrieved spectral emissivity over the fitting band using Planck radiance and trapezoidal wavenumber weights. It is a band-effective directional value; it is not necessarily the total hemispherical emissivity listed in material tables. Emissivity also depends on wavelength, temperature, viewing geometry, surface finish, oxidation, particle thickness, and sub-pixel mixing.

No values are clipped to [0, 1]. The physical fraction reports how much of the retrieved curve lies in that interval, making calibration/model failures visible. Use direct radiance or established signal/noise contrast as the baseline for particle detection until TES metrics are validated on held-out measurements.

References

National Bureau of Standards. Radiometric temperature measurements: II. Applications (Technical Note 910-8). https://www.nist.gov/publications/self-study-manual-optical-radiation-measurements-part-i-concepts-chapter-12

Borel CC (1997). Iterative retrieval of surface emissivity and temperature for a hyperspectral sensor. https://digital.library.unt.edu/ark:/67531/metadc696880/

Wilber AC, Kratz DP, Gupta SK (1999). Surface emissivity maps for use in satellite retrievals of longwave radiation. NASA/TP-1999-209362. https://ntrs.nasa.gov/citations/19990100634

Wu Z, Ren H, Zhang T, Qin Q, Dong J, Ye X (2017). A modified method to prevent false minimums occurring in iterative spectrally smooth temperature emissivity separation. doi:10.1109/IGARSS.2017.8128417 .