#include "lux.h"
#include "randomgen.h"
#include "shape.h"
#include "mc.h"
#include "volume.h"
#include <limits>
Go to the source code of this file.
Namespaces | |
namespace | lux |
Defines | |
#define | A1 (-3.969683028665376e+01) |
#define | A2 2.209460984245205e+02 |
#define | A3 (-2.759285104469687e+02) |
#define | A4 1.383577518672690e+02 |
#define | A5 (-3.066479806614716e+01) |
#define | A6 2.506628277459239e+00 |
#define | B1 (-5.447609879822406e+01) |
#define | B2 1.615858368580409e+02 |
#define | B3 (-1.556989798598866e+02) |
#define | B4 6.680131188771972e+01 |
#define | B5 (-1.328068155288572e+01) |
#define | C1 (-7.784894002430293e-03) |
#define | C2 (-3.223964580411365e-01) |
#define | C3 (-2.400758277161838e+00) |
#define | C4 (-2.549732539343734e+00) |
#define | C5 4.374664141464968e+00 |
#define | C6 2.938163982698783e+00 |
#define | D1 7.784695709041462e-03 |
#define | D2 3.224671290700398e-01 |
#define | D3 2.445134137142996e+00 |
#define | D4 3.754408661907416e+00 |
#define | P_LOW 0.02425 |
#define | P_HIGH 0.97575 |
Functions | |
void | lux::ComputeStep1dCDF (float *f, int nSteps, float *c, float *cdf) |
float | lux::SampleStep1d (float *f, float *cdf, float c, int nSteps, float u, float *pdf) |
void | lux::RejectionSampleDisk (const TsPack *tspack, float *x, float *y) |
Vector | lux::UniformSampleHemisphere (float u1, float u2) |
float | lux::UniformHemispherePdf (float theta, float phi) |
Vector | lux::UniformSampleSphere (float u1, float u2) |
float | lux::UniformSpherePdf () |
void | lux::UniformSampleDisk (float u1, float u2, float *x, float *y) |
void | lux::ConcentricSampleDisk (float u1, float u2, float *dx, float *dy) |
void | lux::UniformSampleTriangle (float u1, float u2, float *u, float *v) |
float | lux::UniformConePdf (float cosThetaMax) |
Vector | lux::UniformSampleCone (float u1, float u2, float costhetamax) |
Vector | lux::UniformSampleCone (float u1, float u2, float costhetamax, const Vector &x, const Vector &y, const Vector &z) |
Vector | lux::SampleHG (const Vector &w, float g, float u1, float u2) |
float | lux::HGPdf (const Vector &w, const Vector &wp, float g) |
double | lux::normsinv (double p) |
float | lux::GaussianSampleDisk (float u1) |
float | lux::InverseGaussianSampleDisk (float u1) |
float | lux::ExponentialSampleDisk (float u1, int power) |
float | lux::InverseExponentialSampleDisk (float u1, int power) |
float | lux::TriangularSampleDisk (float u1) |
#define A1 (-3.969683028665376e+01) |
Definition at line 184 of file mc.cpp.
Referenced by lux::normsinv().
#define A2 2.209460984245205e+02 |
Definition at line 185 of file mc.cpp.
Referenced by lux::normsinv().
#define A3 (-2.759285104469687e+02) |
Definition at line 186 of file mc.cpp.
Referenced by lux::normsinv().
#define A4 1.383577518672690e+02 |
Definition at line 187 of file mc.cpp.
Referenced by lux::normsinv().
#define A5 (-3.066479806614716e+01) |
Definition at line 188 of file mc.cpp.
Referenced by lux::normsinv().
#define A6 2.506628277459239e+00 |
Definition at line 189 of file mc.cpp.
Referenced by lux::normsinv().
#define B1 (-5.447609879822406e+01) |
Definition at line 191 of file mc.cpp.
Referenced by lux::Matrix4x4::Mul(), and lux::normsinv().
#define B2 1.615858368580409e+02 |
Definition at line 192 of file mc.cpp.
Referenced by lux::Matrix4x4::Mul(), and lux::normsinv().
#define B3 (-1.556989798598866e+02) |
Definition at line 193 of file mc.cpp.
Referenced by lux::Matrix4x4::Mul(), and lux::normsinv().
#define B4 6.680131188771972e+01 |
Definition at line 194 of file mc.cpp.
Referenced by lux::Matrix4x4::Mul(), and lux::normsinv().
#define B5 (-1.328068155288572e+01) |
Definition at line 195 of file mc.cpp.
Referenced by lux::normsinv().
#define C1 (-7.784894002430293e-03) |
Definition at line 197 of file mc.cpp.
Referenced by lux::normsinv().
#define C2 (-3.223964580411365e-01) |
Definition at line 198 of file mc.cpp.
Referenced by lux::normsinv().
#define C3 (-2.400758277161838e+00) |
Definition at line 199 of file mc.cpp.
Referenced by lux::normsinv().
#define C4 (-2.549732539343734e+00) |
Definition at line 200 of file mc.cpp.
Referenced by lux::normsinv().
#define C5 4.374664141464968e+00 |
Definition at line 201 of file mc.cpp.
Referenced by lux::normsinv().
#define C6 2.938163982698783e+00 |
Definition at line 202 of file mc.cpp.
Referenced by lux::normsinv().
#define D1 7.784695709041462e-03 |
Definition at line 204 of file mc.cpp.
Referenced by cimg_library::CImg< T >::draw_fill(), and lux::normsinv().
#define D2 3.224671290700398e-01 |
Definition at line 205 of file mc.cpp.
Referenced by lux::normsinv().
#define D3 2.445134137142996e+00 |
Definition at line 206 of file mc.cpp.
Referenced by lux::normsinv().
#define D4 3.754408661907416e+00 |
Definition at line 207 of file mc.cpp.
Referenced by lux::normsinv().
#define P_HIGH 0.97575 |
Definition at line 211 of file mc.cpp.
Referenced by lux::normsinv().
#define P_LOW 0.02425 |
Definition at line 209 of file mc.cpp.
Referenced by lux::normsinv().