Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
black_body.h File Reference
#include "Math/constant.h"
#include "Math/math.h"
#include <Common/assertion.h>
#include <cmath>
#include <cstddef>
#include <vector>
#include <utility>

Go to the source code of this file.

Namespaces

namespace  ph
 The root for all renderer implementations.
 
namespace  ph::math
 Math functions and utilities.
 

Functions

template<typename T >
ph::math::black_body_spectral_radiance_at (const T temperatureK, const T wavelengthNM)
 Get Black-body spectral radiance at specific temperature and wavelength. Note that this function is not returning radiance but spectral radiance. The returned spectral radiance has the unit of watt per steradian per square meter per meter (W * sr^-1 * m^-2 * m^-1).
 
template<typename T >
std::vector< T > ph::math::black_body_spectral_radiance_curve (const T temperatureK, const T lambdaMinNM, const T lambdaMaxNM, const std::size_t numCurvePoints, std::vector< T > *const out_lambdaValues=nullptr)
 Get a curve for Black-body radiation. Note that this function is not returning radiance but spectral radiance. The returned spectral radiance has the unit of watt per steradian per square meter per meter (W * sr^-1 * m^-2 * m^-1).