Skip to main content
Physics LibreTexts

1.6: Diffuse Reflection - the Lommel-Seeliger Law

  • Page ID
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)

    The Lommel-Seeliger reflectance rule is a time-honoured law which is still very much in use today. It is based on a model which is possibly the simplest from which a solution may be readily obtained for the source function and the equation of transfer. As such it is a single scattering model in which the scattering is isotropic, i.e. p0.

    Consider a surface irradiated by flux density as shown in figure 3, so that the incident radiance is given by equation (7). Of this incident radiation, only a fraction will penetrate to optical depth τ without being scattered or absorbed

    \[L(\tau, \mu, \varphi)=\mathbf{F} e^{-\tau / \mu_{0}} \delta\left(\mu-\mu_{0}\right) \delta\left(\varphi-\varphi_{0}\right)\]

    and the source function is

    \[\begin{aligned} \mathfrak{J}(\tau, \mu, \varphi) &=\frac{1}{4 \pi} \int_{-1}^{1} \int_{-1}^{2 \pi} \varpi_{0} \mathbf{F} e^{-\tau / \mu_{0}} \delta\left(\mu^{\prime}-\mu_{0}\right) \delta\left(\varphi^{\prime}-\varphi_{0}\right) d \varphi^{\prime} d \mu^{\prime} \\ &=\frac{\varpi_{0}}{4 \pi} \mathbf{F} e^{-\tau / \mu_{0}} \end{aligned}\]

    Thus the contribution to the radiance from isotropic scattering in the direction (+μ, φ) from a layer of thickness dτ at a depth τ is

    \[d L=\frac{\varpi_{0} \mathbf{F} e^{-\tau / \mu_{0}}}{4 \pi \mu} d \tau\]

    so that the radiance emerging from the surface, without incurring any further absorption or scattering, is

    \[d L(0, \mu, \varphi)=\frac{\varpi_{0} \mathbf{F} e^{-\tau / \mu_{0}}}{4 \pi \mu} e^{-\tau / \mu} d \tau\]

    Note that dL is the contribution to the total radiance from the layer resulting from single scattering. The Lommel-Seeliger model considers only the scattering of the collimated incident light. It does not take into account scattering of diffuse light which has made its way indirectly to the same position by being scattered one or more times, i.e. it does not consider multiple scattering.

    For a planetary surface, the layer is “semi-infinite” (t = ∞) and the total radiance in the direction μ is

    \[\begin{array}{c}{L_{r}=\frac{\varpi_{0} \mathbf{F}}{4 \pi u} \times} \\ {\int_{0}^{\infty} \exp \left[-\tau\left(\frac{1}{\mu_{0}}+\frac{1}{\mu}\right)\right] d \tau}\end{array}\]

    resulting in

    \[L_{r}=\frac{\varpi_{0} \mathbf{F}}{4 \pi \mu} \frac{\mu_{0} \mu}{\mu+\mu_{0}}\]

    and since the irradiance is E = Fμ0 and Lr = frE it follows that the bidirectional reflectance distribution function (BRDF) which defines the Lommel-Seeliger reflectance rule is

    \[f_{r}=\frac{\varpi_{0}}{4 \pi} \frac{1}{\mu+\mu_{0}}.\]

    It is interesting to note that Chandrasekhar never quite derives the Lommel-Seeliger law formally and explicitly; indeed the name is not even mentioned. However, he does come very close on at least two occasions - see Chandrasekhar p146 and p217.

    This page titled 1.6: Diffuse Reflection - the Lommel-Seeliger Law is shared under a CC BY-NC 4.0 license and was authored, remixed, and/or curated by Max Fairbairn & Jeremy Tatum via source content that was edited to the style and standards of the LibreTexts platform.