10 #include <utl/Point.h>
11 #include <utl/VRandomSampler.h>
12 #include <utl/RandomSamplerFromPDF.h>
13 #include <utl/PhysicalConstants.h>
14 #include <utl/TabulatedFunction.h>
16 #include <atm/VMieModel.h>
23 fAngularDistribution(0)
39 const double angleMin = 0*
deg;
40 const double angleMax = 360*
deg;
42 const double delta = (angleMax - angleMin) / (n-1);
45 for (
int i = 0; i < n; ++i) {
46 const double angle = angleMin + delta*i;
virtual const utl::VRandomSampler & EvaluateScatteringAngleDistribution(const utl::Point &p, const double wLength) const
Class to hold collection (x,y) points and provide interpolation between them.
void PushBack(const double x, const double y)
virtual double EvaluateScatteringAngle(const utl::Point &p, const double angle, const double wLength) const =0
utl::VRandomSampler * fAngularDistribution
Class to shoot random numbers given by a user-defined distribution function.