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
NormalForm Class Reference

Resonance-free normal form. More...

#include <NormalForm.h>

Collaboration diagram for NormalForm:
Collaboration graph
[legend]

Public Member Functions

 NormalForm (const VpsInvMap< double > &map)
 Constructor. More...
 
 NormalForm ()
 
 NormalForm (const NormalForm &)
 
 ~NormalForm ()
 
int degreesOfFreedom () const
 Get number of stable degrees of freedom. More...
 
const Tps< double > & normalForm () const
 Get normal-form. More...
 
const Tps< double > & normalisingMap () const
 Get normalising map. More...
 
const Vector< complex< double > > & eigenValues () const
 Get eigenvalues. More...
 
const Matrix< double > & eigenVectors () const
 Get eigenvectors. More...
 
Matrix< double > anharmonicity () const
 Get anharmonicities. More...
 
Tps< double > invariant (int i) const
 Get invariant polynomial. More...
 

Protected Member Functions

void orderModes (Vector< complex< double > >, Matrix< double >)
 

Private Member Functions

void operator= (const NormalForm &)
 

Private Attributes

int dimension
 
int freedom
 
Tps< double > A_Lie
 
Tps< double > N_Lie
 
Vector< complex< double > > lambda
 
Matrix< double > V
 

Detailed Description

Resonance-free normal form.

Definition at line 41 of file NormalForm.h.

Constructor & Destructor Documentation

NormalForm::NormalForm ( const VpsInvMap< double > &  map)
NormalForm::NormalForm ( )

Definition at line 54 of file NormalForm.cpp.

NormalForm::NormalForm ( const NormalForm form)

Definition at line 64 of file NormalForm.cpp.

NormalForm::~NormalForm ( )

Definition at line 235 of file NormalForm.cpp.

Member Function Documentation

Matrix< double > NormalForm::anharmonicity ( ) const

Get anharmonicities.

Definition at line 244 of file NormalForm.cpp.

References dimension, freedom, Tps< T >::getCoefficient(), N_Lie, Physics::pi, and pi.

Here is the call graph for this function:

int NormalForm::degreesOfFreedom ( ) const

Get number of stable degrees of freedom.

Definition at line 239 of file NormalForm.cpp.

References freedom.

const Vector< complex< double > > & NormalForm::eigenValues ( ) const

Get eigenvalues.

Definition at line 307 of file NormalForm.cpp.

References lambda.

const Matrix< double > & NormalForm::eigenVectors ( ) const

Get eigenvectors.

Definition at line 312 of file NormalForm.cpp.

References V.

Tps< double > NormalForm::invariant ( int  i) const

Get invariant polynomial.

Definition at line 278 of file NormalForm.cpp.

References imag(), lambda, Array2D< T >::nrows(), Tps< T >::setCoefficient(), and V.

Here is the call graph for this function:

const Tps< double > & NormalForm::normalForm ( ) const

Get normal-form.

Definition at line 297 of file NormalForm.cpp.

References N_Lie.

const Tps< double > & NormalForm::normalisingMap ( ) const

Get normalising map.

Definition at line 302 of file NormalForm.cpp.

References A_Lie.

void NormalForm::operator= ( const NormalForm )
private
void NormalForm::orderModes ( Vector< complex< double > >  tlam,
Matrix< double >  tmat 
)
protected

Definition at line 317 of file NormalForm.cpp.

References abs(), Physics::c, Array2D< T >::col_begin(), Array2D< T >::col_end(), dimension, freedom, interpolation::im(), imag(), lambda, interpolation::re(), real(), sqrt(), Array2D< T >::swapColumns(), and V.

Referenced by NormalForm().

Here is the call graph for this function:

Member Data Documentation

Tps<double> NormalForm::A_Lie
private

Definition at line 99 of file NormalForm.h.

Referenced by NormalForm(), and normalisingMap().

int NormalForm::dimension
private

Definition at line 93 of file NormalForm.h.

Referenced by anharmonicity(), NormalForm(), and orderModes().

int NormalForm::freedom
private

Definition at line 96 of file NormalForm.h.

Referenced by anharmonicity(), degreesOfFreedom(), NormalForm(), and orderModes().

Vector<complex<double> > NormalForm::lambda
private

Definition at line 105 of file NormalForm.h.

Referenced by eigenValues(), invariant(), NormalForm(), and orderModes().

Tps<double> NormalForm::N_Lie
private

Definition at line 102 of file NormalForm.h.

Referenced by anharmonicity(), NormalForm(), and normalForm().

Matrix<double> NormalForm::V
private

Definition at line 108 of file NormalForm.h.

Referenced by eigenVectors(), invariant(), NormalForm(), and orderModes().


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