FLAME  devel
 All Classes Functions Variables Typedefs Enumerations Pages
moment_sup.h
1 #ifndef MOMENT2_SUP_H
2 #define MOMENT2_SUP_H
3 
4 #include <vector>
5 #include "base.h"
6 #include "moment.h"
7 
8 static std::map<std::string,boost::shared_ptr<Config> > CurveMap;
9 
10 void inverse(MomentElementBase::value_t& out, const MomentElementBase::value_t& in);
11 
12 void RotMat(const double dx, const double dy,
13  const double theta_x, const double theta_y, const double theta_z,
14  typename MomentElementBase::value_t &R);
15 
16 void GetQuadMatrix(const double L, const double K, const unsigned ind, typename MomentElementBase::value_t &M);
17 
18 void GetSextMatrix(const double L, const double K, double Dx, double Dy,
19  const double D2x, const double D2y, const double D2xy, const bool thinlens, const bool dstkick, typename MomentElementBase::value_t &M);
20 
21 void GetEdgeMatrix(const double rho, const double phi, const double dphi, const double qmrel, typename MomentElementBase::value_t &M);
22 
23 void GetEEdgeMatrix(const double fringe_x, const double fringe_y, const double kappa, typename MomentElementBase::value_t &M);
24 
25 void GetSBendMatrix(const double L, const double phi, const double phi1, const double phi2, const double K,
26  const double IonEs, const double ref_gamma, const double qmrel,
27  const double dphi1, const double dphi2, const unsigned EFcorrection,
28  const double dip_beta, const double dip_gamma, const double d, const double dip_IonK, typename MomentElementBase::value_t &M);
29 
30 void GetSolMatrix(const double L, const double K, typename MomentElementBase::value_t &M);
31 
32 
33 void GetEBendMatrix(const double L, const double phi, const double fringe_x, const double fringe_y, const double kappa,
34  const double Kx, const double Ky, const double IonEs, const double real_gamma, const double eta0, const double h,
35  const double delta_K, const double delta_KZ, const double SampleIonK, typename MomentElementBase::value_t &M);
36 
37 void GetCurveData(const Config &c, const unsigned ncurve, std::vector<double> &Scales, std::vector<std::vector<double> > &Curves);
38 
39 #endif // MOMENT2_SUP_H
Associative configuration container.
Definition: config.h:66