OPAL (Object Oriented Parallel Accelerator Library)
2.2.0
OPAL
|
Normal form of a truncated Taylor series map. More...
#include <DragtFinnNormalForm.h>
Public Member Functions | |
DragtFinnNormalForm (const DragtFinnMap< N > &map) | |
Constructor. More... | |
DragtFinnNormalForm () | |
DragtFinnNormalForm (const DragtFinnNormalForm &) | |
~DragtFinnNormalForm () | |
int | degreesOfFreedom () const |
Get number of stable degrees of freedom. More... | |
const DragtFinnMap< N > & | normalForm () const |
Get normal-form map as a Lie transform. More... | |
const DragtFinnMap< N > & | normalisingMap () const |
Get normalising map as a Lie transform. More... | |
const FVector< std::complex < double >, 2 *N > & | eigenValues () const |
Get eigenvalues of the linear part as a complex vector. More... | |
const FMatrix< double, 2 *N, 2 *N > & | eigenVectors () const |
Get eigenvectors of the linear part in packed form. More... | |
FMatrix< double, N, N > | anharmonicity () const |
Get anharmonicities as a matrix. More... | |
FLieGenerator< double, N > | invariant (int i) const |
Get invariant polynomial for mode i. More... | |
Protected Member Functions | |
void | orderModes (FVector< std::complex< double >, 2 *N >, FMatrix< double, 2 *N, 2 *N >) |
Private Member Functions | |
void | operator= (const DragtFinnNormalForm &) |
Private Attributes | |
int | freedom |
DragtFinnMap< N > | A_scr |
DragtFinnMap< N > | N_scr |
FVector< std::complex< double > , 2 *N > | lambda |
FMatrix< double, 2 *N, 2 *N > | V |
Normal form of a truncated Taylor series map.
Definition at line 50 of file DragtFinnNormalForm.h.
|
explicit |
Constructor.
Definition at line 139 of file DragtFinnNormalForm.h.
References DragtFinnNormalForm< N >::A_scr, abs(), DragtFinnMap< N >::assign(), FDoubleEigen< N >::eigenValues(), DragtFinnNormalForm< N >::freedom, FLieGenerator< T, N >::getBottomIndex(), FTpsData< N >::getExponents(), DragtFinnMap< N >::getGenerator(), DragtFinnMap< N >::getGenerators(), DragtFinnMap< N >::getMatrix(), DragtFinnMap< N >::getOrder(), FLieGenerator< T, N >::getTopIndex(), imag(), DragtFinnNormalForm< N >::lambda, DragtFinnNormalForm< N >::N_scr, DragtFinnNormalForm< N >::orderModes(), FDoubleEigen< N >::packedEigenVectors(), pi, pow(), real(), FLieGenerator< T, N >::scale(), FTps< T, N >::substitute(), FLieGenerator< T, N >::transform(), DragtFinnMap< N >::transform(), and DragtFinnNormalForm< N >::V.
DragtFinnNormalForm< N >::DragtFinnNormalForm | ( | ) |
Definition at line 126 of file DragtFinnNormalForm.h.
DragtFinnNormalForm< N >::DragtFinnNormalForm | ( | const DragtFinnNormalForm< N > & | form | ) |
Definition at line 132 of file DragtFinnNormalForm.h.
DragtFinnNormalForm< N >::~DragtFinnNormalForm | ( | ) |
Definition at line 242 of file DragtFinnNormalForm.h.
FMatrix< double, N, N > DragtFinnNormalForm< N >::anharmonicity | ( | ) | const |
Get anharmonicities as a matrix.
Definition at line 253 of file DragtFinnNormalForm.h.
References Physics::pi, and pi.
Referenced by Dynamic::execute(), and Static::execute().
int DragtFinnNormalForm< N >::degreesOfFreedom | ( | ) | const |
Get number of stable degrees of freedom.
Definition at line 247 of file DragtFinnNormalForm.h.
Referenced by Dynamic::execute(), and Static::execute().
const FVector< std::complex< double >, 2 *N > & DragtFinnNormalForm< N >::eigenValues | ( | ) | const |
Get eigenvalues of the linear part as a complex vector.
Definition at line 315 of file DragtFinnNormalForm.h.
Referenced by Dynamic::execute(), and Static::execute().
const FMatrix< double, 2 *N, 2 *N > & DragtFinnNormalForm< N >::eigenVectors | ( | ) | const |
Get eigenvectors of the linear part in packed form.
Definition at line 321 of file DragtFinnNormalForm.h.
FLieGenerator< double, N > DragtFinnNormalForm< N >::invariant | ( | int | i | ) | const |
Get invariant polynomial for mode i.
Definition at line 283 of file DragtFinnNormalForm.h.
Referenced by Dynamic::execute(), and Static::execute().
const DragtFinnMap< N > & DragtFinnNormalForm< N >::normalForm | ( | ) | const |
Get normal-form map as a Lie transform.
Definition at line 303 of file DragtFinnNormalForm.h.
Referenced by Dynamic::execute(), and Static::execute().
const DragtFinnMap< N > & DragtFinnNormalForm< N >::normalisingMap | ( | ) | const |
Get normalising map as a Lie transform.
Definition at line 309 of file DragtFinnNormalForm.h.
Referenced by Dynamic::execute(), and Static::execute().
|
private |
|
protected |
Definition at line 328 of file DragtFinnNormalForm.h.
References abs(), Physics::c, FArray2D< T, M, N >::col_begin(), FArray2D< T, M, N >::col_end(), interpolation::im(), imag(), interpolation::re(), sqrt(), and FArray2D< T, M, N >::swapColumns().
Referenced by DragtFinnNormalForm< N >::DragtFinnNormalForm().
|
private |
Definition at line 99 of file DragtFinnNormalForm.h.
Referenced by DragtFinnNormalForm< N >::DragtFinnNormalForm().
|
private |
Definition at line 96 of file DragtFinnNormalForm.h.
Referenced by DragtFinnNormalForm< N >::DragtFinnNormalForm().
|
private |
Definition at line 105 of file DragtFinnNormalForm.h.
Referenced by DragtFinnNormalForm< N >::DragtFinnNormalForm().
|
private |
Definition at line 102 of file DragtFinnNormalForm.h.
Referenced by DragtFinnNormalForm< N >::DragtFinnNormalForm().
|
private |
Definition at line 108 of file DragtFinnNormalForm.h.
Referenced by DragtFinnNormalForm< N >::DragtFinnNormalForm().