OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
Public Member Functions | Private Member Functions | Private Attributes | List of all members
CavityAutophaser Class Reference

#include <CavityAutophaser.h>

Collaboration diagram for CavityAutophaser:
Collaboration graph
[legend]

Public Member Functions

 CavityAutophaser (const PartData &ref, std::shared_ptr< Component > cavity)
 
 ~CavityAutophaser ()
 
double getPhaseAtMaxEnergy (const Vector_t &R, const Vector_t &P, double t, double dt)
 

Private Member Functions

double guessCavityPhase (double t)
 
std::pair< double, double > optimizeCavityPhase (double initialGuess, double t, double dt)
 
double track (double t, const double dt, const double phase, std::ofstream *out=NULL) const
 

Private Attributes

const PartDataitsReference_m
 
std::shared_ptr< ComponentitsCavity_m
 
Vector_t initialR_m
 
Vector_t initialP_m
 

Detailed Description

Definition at line 28 of file CavityAutophaser.h.

Constructor & Destructor Documentation

◆ CavityAutophaser()

CavityAutophaser::CavityAutophaser ( const PartData ref,
std::shared_ptr< Component cavity 
)

Definition at line 37 of file CavityAutophaser.cpp.

References initialR_m.

◆ ~CavityAutophaser()

CavityAutophaser::~CavityAutophaser ( )

Definition at line 47 of file CavityAutophaser.cpp.

Member Function Documentation

◆ getPhaseAtMaxEnergy()

double CavityAutophaser::getPhaseAtMaxEnergy ( const Vector_t R,
const Vector_t P,
double  t,
double  dt 
)

◆ guessCavityPhase()

double CavityAutophaser::guessCavityPhase ( double  t)
private

◆ optimizeCavityPhase()

std::pair< double, double > CavityAutophaser::optimizeCavityPhase ( double  initialGuess,
double  t,
double  dt 
)
private

◆ track()

double CavityAutophaser::track ( double  t,
const double  dt,
const double  phase,
std::ofstream *  out = NULL 
) const
private

Member Data Documentation

◆ initialP_m

Vector_t CavityAutophaser::initialP_m
private

Definition at line 55 of file CavityAutophaser.h.

Referenced by getPhaseAtMaxEnergy(), guessCavityPhase(), and track().

◆ initialR_m

Vector_t CavityAutophaser::initialR_m
private

Definition at line 54 of file CavityAutophaser.h.

Referenced by CavityAutophaser(), and getPhaseAtMaxEnergy().

◆ itsCavity_m

std::shared_ptr<Component> CavityAutophaser::itsCavity_m
private

◆ itsReference_m

const PartData& CavityAutophaser::itsReference_m
private

Definition at line 51 of file CavityAutophaser.h.

Referenced by getPhaseAtMaxEnergy(), guessCavityPhase(), and track().


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