OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
RBendGeometry Class Reference

The geometry for a RBend element. More...

#include <RBendGeometry.h>

Inheritance diagram for RBendGeometry:
Collaboration diagram for RBendGeometry:

Public Member Functions

 RBendGeometry (double length, double angle)
 Constructor.
 RBendGeometry (const RBendGeometry &)
virtual ~RBendGeometry ()
const RBendGeometryoperator= (const RBendGeometry &)
virtual double getArcLength () const
 Get arc length.
virtual double getBendAngle () const
 Get angle.
void setBendAngle (double angle)
 Set angle.
Euclid3D getTotalTransform () const
 Get transform.
Euclid3D getEntranceFrame () const
 Get transform.
Euclid3D getExitFrame () const
 Get transform.
Euclid3D getEntrancePatch () const
 Get patch.
Euclid3D getExitPatch () const
 Get patch.
virtual double getElementLength () const
 Get design length.
virtual void setElementLength (double length)
 Set design length.
double getOrigin () const
 Get origin.
double getEntrance () const
 Get entrance.
double getExit () const
 Get exit.
Euclid3D getTransform (double fromS, double toS) const
 Get transform.
Euclid3D getTransform (double s) const
 Get transform.

Private Attributes

double half_angle
double len

Detailed Description

The geometry for a RBend element.

Definition at line 41 of file RBendGeometry.h.

Constructor & Destructor Documentation

◆ RBendGeometry() [1/2]

RBendGeometry::RBendGeometry ( double length,
double angle )

Constructor.

Definition at line 30 of file RBendGeometry.cpp.

References half_angle, and StraightGeometry::StraightGeometry().

Referenced by operator=(), and RBendGeometry().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RBendGeometry() [2/2]

RBendGeometry::RBendGeometry ( const RBendGeometry & rhs)

Definition at line 35 of file RBendGeometry.cpp.

References half_angle, RBendGeometry(), and StraightGeometry::StraightGeometry().

Here is the call graph for this function:

◆ ~RBendGeometry()

RBendGeometry::~RBendGeometry ( )
virtual

Definition at line 40 of file RBendGeometry.cpp.

Member Function Documentation

◆ getArcLength()

double RBendGeometry::getArcLength ( ) const
virtual

Get arc length.

Reimplemented from StraightGeometry.

Definition at line 44 of file RBendGeometry.cpp.

References StraightGeometry::getElementLength(), and half_angle.

Here is the call graph for this function:

◆ getBendAngle()

double RBendGeometry::getBendAngle ( ) const
virtual

Get angle.

Definition at line 50 of file RBendGeometry.cpp.

References half_angle.

◆ getElementLength()

double StraightGeometry::getElementLength ( ) const
virtualinherited

Get design length.

Implements BGeometryBase.

Definition at line 40 of file StraightGeometry.cpp.

References len.

Referenced by RBendGeometry::getArcLength(), RBendGeometry::getEntrancePatch(), RBendGeometry::getExitPatch(), Corrector::goOnline(), and Corrector::setDesignEnergy().

Here is the caller graph for this function:

◆ getEntrance()

double StraightGeometry::getEntrance ( ) const
virtualinherited

Get entrance.

Reimplemented from BGeometryBase.

Definition at line 59 of file StraightGeometry.cpp.

References len.

◆ getEntranceFrame()

Euclid3D RBendGeometry::getEntranceFrame ( ) const
virtual

Get transform.

Reimplemented from BGeometryBase.

Definition at line 67 of file RBendGeometry.cpp.

References StraightGeometry::getEntranceFrame(), half_angle, and Euclid3D::YRotation().

Here is the call graph for this function:

◆ getEntrancePatch()

Euclid3D RBendGeometry::getEntrancePatch ( ) const
virtual

Get patch.

Reimplemented from BGeometryBase.

Definition at line 81 of file RBendGeometry.cpp.

References StraightGeometry::getElementLength(), half_angle, Euclid3D::translation(), and Euclid3D::YRotation().

Here is the call graph for this function:

◆ getExit()

double StraightGeometry::getExit ( ) const
virtualinherited

Get exit.

Reimplemented from BGeometryBase.

Definition at line 64 of file StraightGeometry.cpp.

References len.

◆ getExitFrame()

Euclid3D RBendGeometry::getExitFrame ( ) const
virtual

Get transform.

Reimplemented from BGeometryBase.

Definition at line 74 of file RBendGeometry.cpp.

References StraightGeometry::getExitFrame(), half_angle, and Euclid3D::YRotation().

Here is the call graph for this function:

◆ getExitPatch()

Euclid3D RBendGeometry::getExitPatch ( ) const
virtual

Get patch.

Reimplemented from BGeometryBase.

Definition at line 88 of file RBendGeometry.cpp.

References StraightGeometry::getElementLength(), half_angle, Euclid3D::translation(), and Euclid3D::YRotation().

Here is the call graph for this function:

◆ getOrigin()

double StraightGeometry::getOrigin ( ) const
virtualinherited

Get origin.

Reimplemented from BGeometryBase.

Definition at line 54 of file StraightGeometry.cpp.

References len.

◆ getTotalTransform()

Euclid3D RBendGeometry::getTotalTransform ( ) const
virtual

Get transform.

Reimplemented from BGeometryBase.

Definition at line 60 of file RBendGeometry.cpp.

References StraightGeometry::getTotalTransform(), half_angle, and Euclid3D::YRotation().

Here is the call graph for this function:

◆ getTransform() [1/2]

Euclid3D StraightGeometry::getTransform ( double fromS,
double toS ) const
virtualinherited

Get transform.

Implements BGeometryBase.

Definition at line 69 of file StraightGeometry.cpp.

References Euclid3D::translation().

Here is the call graph for this function:

◆ getTransform() [2/2]

Euclid3D StraightGeometry::getTransform ( double s) const
virtualinherited

Get transform.

Reimplemented from BGeometryBase.

Definition at line 79 of file StraightGeometry.cpp.

References Euclid3D::translation().

Here is the call graph for this function:

◆ operator=()

const RBendGeometry & RBendGeometry::operator= ( const RBendGeometry & )

References RBendGeometry().

Here is the call graph for this function:

◆ setBendAngle()

void RBendGeometry::setBendAngle ( double angle)

Set angle.

Definition at line 55 of file RBendGeometry.cpp.

References half_angle.

◆ setElementLength()

void StraightGeometry::setElementLength ( double length)
virtualinherited

Set design length.

Reimplemented from BGeometryBase.

Definition at line 45 of file StraightGeometry.cpp.

References len.

Member Data Documentation

◆ half_angle

◆ len


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