This file is indexed.

/usr/include/CLHEP/GenericFunctions/AssociatedLegendre.icc is in libclhep-dev 2.1.4.1-1.2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
// -*- C++ -*-
// $Id: 
#include "CLHEP/GenericFunctions/Variable.hh"
#include "CLHEP/GenericFunctions/Power.hh"
#include <gsl/gsl_sf_legendre.h>
#include <cmath>
#include <signal.h>
#include <assert.h>


namespace Genfun {

FUNCTION_OBJECT_IMP(AssociatedLegendre)

// This is the product n (n-2) (n-4)... 
inline double dfactorial (int n) {
  if (n<=1) return 1.0;
  else return n*dfactorial(n-2);
}
//
inline
AssociatedLegendre::AssociatedLegendre(unsigned int l, unsigned int m):
  AbsFunction(),
  _l(l),
  _m(m)
{
  assert(m<=l);
}

inline
AssociatedLegendre::~AssociatedLegendre() {
}

inline
AssociatedLegendre::AssociatedLegendre(const AssociatedLegendre & right):
AbsFunction(),
_l(right._l),
_m(right._m)
{
}

inline
unsigned int AssociatedLegendre::l() const {
  return _l;
}

inline
unsigned int AssociatedLegendre::m() const {
  return _m;
}


inline
double AssociatedLegendre::operator() (double x) const {
  gsl_sf_result result;
  int status = gsl_sf_legendre_Plm_e (_l, _m, x, &result);
  
  if (status!=0) {
    std::cerr << "Warning, GSL function gsl_sf_bessel_Yn_impl" 
	      << " return code" << status << std::endl;
    raise(SIGFPE);
  }
  return result.val;
}

} // end namespace Genfun