OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
MapAnalyser.h
Go to the documentation of this file.
1 #ifndef MAP_ANALYSER_H
2 #define MAP_ANALYSER_H
3 
5 
6 #include <array>
7 #include <complex>
8 
9 #include <Ippl.h>
10 
12 {
13 public:
16 
17  MapAnalyser();
18 
24  void linTAnalyze(const fMatrix_t& tMatrix);
25 
26 
32  void linSigAnalyze(fMatrix_t& sigMatrix);
33 private:
34 
47  void eigenDecomp_m(const fMatrix_t& M, cfMatrix_t& eigenVal, cfMatrix_t& eigenVec, cfMatrix_t& invEigenVec);
48 
73  cfMatrix_t getBlockDiagonal_m(const fMatrix_t& M, cfMatrix_t& eigenVecM, cfMatrix_t& invEigenVecM);
74 
75 
83  void printPhaseShift_m(fMatrix_t& Sigma, fMatrix_t tM, cfMatrix_t& oldN);
84 
85 
86 
95  void setNMatrix_m(fMatrix_t& M, cfMatrix_t& N, cfMatrix_t& invN);
96 
97 
98 
99 
100  fMatrix_t createRotMatrix_m(std::array<double, 3> phi);
101 
103 
105 
107 
109 
111 
112  void rearrangeEigen_m(cfMatrix_t& EigenVal, cfMatrix_t& EigenVec);
113 
114 private:
117 };
118 
119 #endif
IpplTimings::TimerRef bunchAnalysis_m
Definition: MapAnalyser.h:116
IpplTimings::TimerRef mapAnalysis_m
Definition: MapAnalyser.h:115
void setNMatrix_m(fMatrix_t &M, cfMatrix_t &N, cfMatrix_t &invN)
fMatrix_t realPartOfMatrix_m(cfMatrix_t cM)
fMatrix_t imagPartOfMatrix_m(cfMatrix_t cM)
fMatrix_t createSkewMatrix_m()
void rearrangeEigen_m(cfMatrix_t &EigenVal, cfMatrix_t &EigenVec)
cfMatrix_t complexTypeMatrix_m(fMatrix_t M)
void linSigAnalyze(fMatrix_t &sigMatrix)
void printPhaseShift_m(fMatrix_t &Sigma, fMatrix_t tM, cfMatrix_t &oldN)
void eigenDecomp_m(const fMatrix_t &M, cfMatrix_t &eigenVal, cfMatrix_t &eigenVec, cfMatrix_t &invEigenVec)
FMatrix< double, 6, 6 > fMatrix_t
Definition: MapAnalyser.h:14
fMatrix_t createRotMatrix_m(std::array< double, 3 > phi)
cfMatrix_t invertMatrix_m(const cfMatrix_t &M)
cfMatrix_t getBlockDiagonal_m(const fMatrix_t &M, cfMatrix_t &eigenVecM, cfMatrix_t &invEigenVecM)
FMatrix< std::complex< double >, 6, 6 > cfMatrix_t
Definition: MapAnalyser.h:15
void linTAnalyze(const fMatrix_t &tMatrix)
Definition: MapAnalyser.cpp:36
Timing::TimerRef TimerRef
Definition: IpplTimings.h:176