On the Effective Dimension of Light Transport
=============================================

AUTHORS: Christian Lessig and Eugene Fiume
PUBLICATIONS: Computer Graphics Forum (Proceedings of Eurographics Symposium on Rendering 2010)
URL: http://www.dgp.toronto.edu/people/lessig/effective-dimension/
CONTACT: lessig (at) dgp (dot) toronto (dot) edu

Content:
--------

Matlab code used to generate the figures in the above publication. Run the function 'runSlepian' in the root directory to re-generate the graphs. The code has been run with Matlab 7.9.


Important functions:
--------------------

Effective dimension:
--------------------

experimentTransport( max_band, op_type, Theta_degs, rho, samples_cap)
 
  Run experiment comparing the spectrum of a numerical Phong-like transport 
  operator and the spectrum of the corresponding spatio-spectral
  concentration problem on the sphere.
 
  @param max_band     max. Spherical Harmonics band L 
                      (def = 10)
  @param op_type      transport operator type ('diffuse', 'phong')
                      (def = 'phong')
  @param Theta_degs   max. latitude(s) for Spherical caps 
                      (def = [15, 20, 25, 30])
  @param rho          exponent for the transport operator (supported for
                      phong *and* diffuse transport)
                      (def = '64')
  @param samples_cap  number of samples in the cap
                      (def = 2000)


Slepian functions:
------------------

plotEvalsSlepianCap( L, Theta, epsilon, x_scale)
 
  Plot spectrum of spatio-spectral concentration problem for spherical cap
  with \theta \leq \Theta and for bandlimit L. Plotted are also the Shannon
  and generalized Shannon numbers (with respect to epsilon).
 
  @return
  @param  L        Spherical Harmonics band limit.
  @param  Theta    Maximum latitude of the spherical cap (can be a list of 
                   Theta values in which case all are plotted in one fig.
  @param  epsilon  Threshold for Shannon and generalized Shannon number.

plotFctsSlepianCap( L, Theta, num_fcts, spectrum_end)

  Plots the \num_fcts first or last spherical Slepian functions and save
  them if requested.

  @param L              Bandlimit in the Spherical Harmonics domain
  @param Theta          Maximum latitude of the spherical cap
  @param num_fcts       Number of basis functions to plot
  @param spectrum_end   From which end of the spectrum the basis functions
                        are to be plotted
  @param save_files     Save image files for basis functions (eps + pdf)

Acknowledgement:
----------------
The code is based on the implementation of Slepian functions for the sphere by Frederik Simons: http://geoweb.princeton.edu/people/simons/software.html.

