/usr/include/CLHEP/GenericFunctions/Bessel.hh is in libclhep-dev 2.1.4.1+dfsg-1.
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 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | // -*- C++ -*-
// $Id: Bessel.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
//---------------------Bessel-------------------------------------------------//
// //
// Class Bessel, providing Bessel Functions The Namespace "FractionalORder" //
// and "Integral order" are nested here, so that you fully specify the class //
// like this: //
// //
// Genfun::FractionalOrder::Bessel //
// //
// or //
// //
// Genfun::IntegralOrder::Bessel //
// //
// //
// Joe Boudreau, April 2001 //
// //
//-------------------------------------------------------------------------- //
#ifndef Bessel_h
#define Bessel_h 1
#include "CLHEP/GenericFunctions/AbsFunction.hh"
#include "CLHEP/GenericFunctions/Parameter.hh"
namespace Genfun {
namespace FractionalOrder {
/**
* @author
* @ingroup genfun
*/
class Bessel : public AbsFunction {
FUNCTION_OBJECT_DEF(Bessel)
public:
// Enumerated type:
enum Type {J, Y};
// Constructor: Use this one and you will get a Bessel function of
// integer order
Bessel (Type type);
// Copy constructor
Bessel(const Bessel &right);
// Destructor
virtual ~Bessel();
// Retreive function value
virtual double operator ()(double argument) const;
virtual double operator ()(const Argument & a) const {return operator() (a[0]);}
// Get the order of the Bessel Function. Default value, 0.0. If modified the
// Bessel function
Parameter & order();
const Parameter & order() const;
private:
// It is illegal to assign an adjustable constant
const Bessel & operator=(const Bessel &right);
// The type and order of the Bessel function
Type _type;
Parameter _order; // the fractional order:
};
} // namespace FractionalOrder
namespace IntegralOrder {
/**
* @author
* @ingroup genfun
*/
class Bessel : public AbsFunction {
FUNCTION_OBJECT_DEF(Bessel)
public:
// Enumerated type:
enum Type {J, Y};
// Constructor: Use this one and you will get a Bessel function of
// integer order
Bessel (Type type, unsigned int order);
// Copy constructor
Bessel(const Bessel &right);
// Destructor
virtual ~Bessel();
// Retreive function value
virtual double operator ()(double argument) const;
virtual double operator ()(const Argument & a) const {return operator() (a[0]);}
private:
// It is illegal to assign an adjustable constant
const Bessel & operator=(const Bessel &right);
// The type and order of the Bessel function
Type _type;
unsigned int _order;
double _bessel_IJ_taylor(double nu,
double x,
int sign,
int kmax,
double threshhold) const;
};
} // namespace IntegralOrder
} // namespace Genfun
#include "CLHEP/GenericFunctions/Bessel.icc"
#endif
|