30 #include "gsl/gsl_sf_gamma.h" 
   31 #include "gsl/gsl_sf_pow_int.h" 
   34 using namespace endfieldmodel;
 
   38     straightGeometry_m(getLength()) {
 
   43     straightGeometry_m(right.straightGeometry_m) {
 
   67         for(std::size_t i = 0; i <= 
n; i++) {
 
   71         f_n *= gsl_sf_pow_int(-1.0, 
n);
 
   72         Bx += f_n * gsl_sf_pow_int(R[1], 2 * 
n + 1) / gsl_sf_fact(2 * 
n + 1);
 
   81         for(std::size_t i = 0; i <= 
n; i++) {
 
   85         f_n *= gsl_sf_pow_int(-1.0, 
n);
 
   86         Bs += f_n * gsl_sf_pow_int(R[1], 2 * 
n + 1) / gsl_sf_fact(2 * 
n + 1);
 
   98     for (std::size_t i = 0; i <= 
n; i++) {
 
  102     f_n *= gsl_sf_pow_int(-1.0, n);
 
Interface for basic beam line object. 
 
virtual void setMaxOrder(const std::size_t &maxOrder) override
 
virtual ElementBase * clone() const override
 
MultipoleTStraight(const std::string &name)
 
virtual void transformCoords(Vector_t &R) override
 
virtual double getFn(const std::size_t &n, const double &x, const double &s) override
 
PartBunchBase< double, 3 > * RefPartBunch_m
 
double getTransDeriv(const std::size_t &n, const double &x)
 
double getFringeDeriv(const std::size_t &n, const double &s)
 
virtual double getBx(const Vector_t &R) override
 
std::size_t getMaxOrder() const 
 
virtual void setMaxOrder(const std::size_t &maxOrder)
 
virtual double getBs(const Vector_t &R) override