20 #if !defined(__MITSUBA_CORE_CHISQUARE_H_) 
   21 #define __MITSUBA_CORE_CHISQUARE_H_ 
   24 #include <boost/tuple/tuple.hpp> 
   25 #include <boost/function.hpp> 
   30 #define CHISQR_MIN_EXP_FREQUENCY 5 
  112         ChiSquare(
int thetaBins = 10, 
int phiBins = 0,
 
  113                         int numTests = 1, 
size_t sampleCount = 0);
 
  144                 const boost::function<boost::tuple<Vector, Float, EMeasure>()> &sampleFn,
 
  150         void dumpTables(
const fs::path &filename);
 
  162         ETestResult runTest(
Float pvalThresh = 0.01f);
 
  170         static 
void integrand(
 
  173                 #if defined(MTS_OPENMP) 
  174                 #pragma omp parallel for 
  176                 for (
int i=0; i<(int) nPts; ++i)
 
  183         int m_thetaBins, m_phiBins;
 
  185         size_t m_sampleCount;
 
void setTolerance(Float tolerance)
Set the tolerance threshold for bins with very low aggregate probabilities. 
Definition: chisquare.h:135
 
ETestResult
Possible outcomes in runTest() 
Definition: chisquare.h:84
 
Chi-square goodness-of-fit test on the sphere. 
Definition: chisquare.h:81
 
#define MTS_EXPORT_CORE
Definition: getopt.h:29
 
void setLogLevel(ELogLevel logLevel)
Set the log level. 
Definition: chisquare.h:119
 
EMeasure
A list of measures that are associated with various sampling methods in Mitsuba. 
Definition: common.h:56
 
ELogLevel getLogLevel() const 
Get the log level. 
Definition: chisquare.h:116
 
Solid angle measure. 
Definition: common.h:60
 
#define MTS_DECLARE_CLASS()
This macro must be used in the initial definition in classes that derive from Object. 
Definition: class.h:158
 
MTS_EXPORT_CORE Vector sphericalDirection(Float theta, Float phi)
Convert spherical coordinates to a direction. 
 
ELogLevel
Available Log message types. 
Definition: formatter.h:28
 
Parent of all Mitsuba classes. 
Definition: object.h:38