18 namespace JGEOMETRY3D {}
 
   19 namespace JPP { 
using namespace JGEOMETRY3D; }
 
   21 namespace JGEOMETRY3D {
 
   46       for (const_iterator i = this->begin(); i != this->end(); ++i) {
 
   48         const double x = dir.
getDot(*i);
 
  134       double thetaMin = theta.first;
 
  135       double thetaMax = theta.second;
 
  137       if (thetaMin < 0.0) { thetaMin = 0.0; }
 
  138       if (thetaMin > 
PI)  { thetaMin = 
PI; }
 
  139       if (thetaMax < 0.0) { thetaMax = 0.0; }
 
  140       if (thetaMax > 
PI)  { thetaMax = 
PI; }
 
  142       if (thetaMax > thetaMin) {
 
  146         const double rad  = thetaMax - thetaMin;
 
  147         const double bin  = rad / floor(rad/(1.4*grid) + 0.5);        
 
  148         const double unit = 2.0 * sqrt(1.0 - cos(grid));              
 
  150         for (
double theta = thetaMin; theta < thetaMax + 0.5*bin; theta += bin) {
 
  154           if (theta > 0.5*bin && 
PI - theta > 0.5*bin)
 
  155             step = 
PI / floor(
PI*sin(theta)/unit + 0.5);              
 
  159           for (
double phi = 0.0; phi < 2.0*
PI - 0.5*step; phi += step) {
 
Data structure for angles in three dimensions. 
 
JOmega3D(const JAngle3D &dir, const range_type &theta, const double grid)
Constructor. 
 
JOmega3D()
Default constructor. 
 
Data structure for direction in three dimensions. 
 
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance. 
 
double getDot(const JAngle3D &angle) const 
Get dot product. 
 
Direction set covering (part of) solid angle. 
 
std::pair< double, double > range_type
 
JOmega3D(const double grid)
Constructor. 
 
static const double PI
Mathematical constants. 
 
int find(const JAngle3D &dir) const 
Get index of direction closest to given direction. 
 
then usage $script[distance] fi case set_variable R
 
void configure(const JAngle3D &dir, const range_type &theta, const double grid)
Configure direction set. 
 
Base class for direction set. 
 
JOmega3D(const JAngle3D &dir)
Constructor.