OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
FNormalForm< N > Class Template Reference

Normal form of a truncated Taylor series map. More...

#include <FNormalForm.h>

Collaboration diagram for FNormalForm< N >:
Collaboration graph
[legend]

Public Member Functions

 FNormalForm (const FVps< double, N > &map)
 Constructor. More...
 
 FNormalForm ()
 
 FNormalForm (const FNormalForm &)
 
 ~FNormalForm ()
 
int degreesOfFreedom () const
 Get number of stable degrees of freedom. More...
 
const FTps< double, N > & normalForm () const
 Get normal-form map as a Lie transform. More...
 
const FTps< double, N > & normalisingMap () const
 Get normalising map as a Lie transform. More...
 
const FVector< std::complex
< double >, N > & 
eigenValues () const
 Get eigenvalues of the linear part as a complex vector. More...
 
const FMatrix< double, N, N > & eigenVectors () const
 Get eigenvectors of the linear part in packed form. More...
 
FMatrix< double, N/2, N/2 > anharmonicity () const
 Get anharmonicities as a matrix. More...
 
FTps< double, N > invariant (int i) const
 Get invariant polynomial for mode i. More...
 

Protected Member Functions

void orderModes (FVector< std::complex< double >, N >, FMatrix< double, N, N >)
 

Private Member Functions

void operator= (const FNormalForm &)
 

Private Attributes

int freedom
 
FTps< double, N > A_Lie
 
FTps< double, N > N_Lie
 
FVector< std::complex< double >
, N > 
lambda
 
FMatrix< double, N, N > V
 

Detailed Description

template<int N>
class FNormalForm< N >

Normal form of a truncated Taylor series map.

Definition at line 51 of file FNormalForm.h.

Constructor & Destructor Documentation

template<int N>
FNormalForm< N >::FNormalForm ( const FVps< double, N > &  map)
explicit
template<int N>
FNormalForm< N >::FNormalForm ( )

Definition at line 129 of file FNormalForm.h.

template<int N>
FNormalForm< N >::FNormalForm ( const FNormalForm< N > &  form)

Definition at line 135 of file FNormalForm.h.

template<int N>
FNormalForm< N >::~FNormalForm ( )

Definition at line 297 of file FNormalForm.h.

Member Function Documentation

template<int N>
FMatrix< double, N/2, N/2 > FNormalForm< N >::anharmonicity ( ) const

Get anharmonicities as a matrix.

Definition at line 308 of file FNormalForm.h.

References Physics::pi, and pi.

template<int N>
int FNormalForm< N >::degreesOfFreedom ( ) const

Get number of stable degrees of freedom.

Definition at line 302 of file FNormalForm.h.

template<int N>
const FVector< std::complex< double >, N > & FNormalForm< N >::eigenValues ( ) const

Get eigenvalues of the linear part as a complex vector.

Definition at line 374 of file FNormalForm.h.

template<int N>
const FMatrix< double, N, N > & FNormalForm< N >::eigenVectors ( ) const

Get eigenvectors of the linear part in packed form.

Definition at line 380 of file FNormalForm.h.

Referenced by Period::fill().

template<int N>
FTps< double, N > FNormalForm< N >::invariant ( int  i) const

Get invariant polynomial for mode i.

Definition at line 342 of file FNormalForm.h.

References abs(), imag(), and FTps< T, N >::setCoefficient().

Here is the call graph for this function:

template<int N>
const FTps< double, N > & FNormalForm< N >::normalForm ( ) const

Get normal-form map as a Lie transform.

Definition at line 362 of file FNormalForm.h.

template<int N>
const FTps< double, N > & FNormalForm< N >::normalisingMap ( ) const

Get normalising map as a Lie transform.

Definition at line 368 of file FNormalForm.h.

Referenced by Period::fill().

template<int N>
void FNormalForm< N >::operator= ( const FNormalForm< N > &  )
private
template<int N>
void FNormalForm< N >::orderModes ( FVector< std::complex< double >, N >  tlam,
FMatrix< double, N, N >  tmat 
)
protected

Member Data Documentation

template<int N>
FTps<double, N> FNormalForm< N >::A_Lie
private

Definition at line 100 of file FNormalForm.h.

Referenced by FNormalForm< N >::FNormalForm().

template<int N>
int FNormalForm< N >::freedom
private

Definition at line 97 of file FNormalForm.h.

Referenced by FNormalForm< N >::FNormalForm().

template<int N>
FVector<std::complex<double>, N> FNormalForm< N >::lambda
private

Definition at line 106 of file FNormalForm.h.

Referenced by FNormalForm< N >::FNormalForm().

template<int N>
FTps<double, N> FNormalForm< N >::N_Lie
private

Definition at line 103 of file FNormalForm.h.

Referenced by FNormalForm< N >::FNormalForm().

template<int N>
FMatrix<double, N, N> FNormalForm< N >::V
private

Definition at line 109 of file FNormalForm.h.

Referenced by FNormalForm< N >::FNormalForm().


The documentation for this class was generated from the following file: