class
BeamBeamRep
: public BeamBeam
(Return to index)
Representation of beam-beam interaction.
A concrete representation for a beam-beam interaction.
The opposite bunch has a Gaussian distribution of the form
N(x,y,s) = c * exp(- transpose(z - delta) sigma**(-1) (z - delta)),
with the definitions
- z
- position vector in space,
- delta
- centroid of opposite bunch in global reference system,
- sigma
- beam matrix in the TRANSPORT sense,
- c
- a normalising factor, such that the total charge is Q,
- sigma(i,i)
- standard deviation sigma(i) in direction i,
- r(i,j)
- = sigma(i,j)/sqrt(sigma(i,i)*sigma(i,j)),
correlations between phase space coordinates i and j.
Type: |
Instantiable |
Superclasses: |
public BeamBeam |
Include file: |
./BeamlineCore/BeamBeamRep.hh |
Inheritance
Synopsis (including inherited members):
- Public members:
-
BeamBeamRep
(const string&)
;
-
BeamBeamRep
()
;
-
BeamBeamRep
(const BeamBeamRep&)
;
-
virtual ~BeamBeamRep
()
;
-
virtual ElementBase* clone
()const
;
-
virtual Channel* getChannel
(const string&)
;
-
virtual double getBunchCharge
()const
;
-
virtual const Matrix3D& getBunchMoment
()const
;
-
virtual const Vector3D& getBunchDisplacement
()const
;
-
virtual NullField& getField
()
;
-
virtual const NullField& getField
()const
;
-
virtual NullGeometry& getGeometry
()
;
-
virtual const NullGeometry& getGeometry
()const
;
-
virtual ElementImage* getImage
()const
;
-
virtual const string& getType
()const
;
-
void setBunchCharge
(double)
;
-
void setBunchMoment
(const Matrix3D&)
;
-
void setBunchDisplacement
(const Vector3D&)
;
-
virtual void accept
(BeamlineVisitor&)const
;
-
EVector Efield
(const Point3D&)const
;
-
BVector Bfield
(const Point3D&)const
;
-
EVector Efield
(const Point3D&,double)const
;
-
BVector Bfield
(const Point3D&,double)const
;
-
EBVectors EBfield
(const Point3D&)const
;
-
EBVectors EBfield
(const Point3D&,double)const
;
-
virtual const ElementBase& getDesign
()const
;
-
virtual void trackBunch
(PartBunch&,const PartData&,bool,bool)const
;
-
virtual void trackMap
(FVps<double,6>&,const PartData&,bool,bool)const
;
-
virtual const string& getName
()const
;
-
virtual void setName
(const string&)
;
-
virtual double getArcLength
()const
;
-
virtual double getElementLength
()const
;
-
virtual void setElementLength
(double)
;
-
virtual double getOrigin
()const
;
-
virtual double getEntrance
()const
;
-
virtual double getExit
()const
;
-
virtual Euclid3D getTransform
(double,double)const
;
-
virtual Euclid3D getTransform
(double)const
;
-
virtual Euclid3D getTotalTransform
()const
;
-
virtual Euclid3D getEntranceFrame
()const
;
-
virtual Euclid3D getExitFrame
()const
;
-
virtual Euclid3D getEntrancePatch
()const
;
-
virtual Euclid3D getExitPatch
()const
;
-
virtual double getAttribute
(const string&)const
;
-
virtual bool hasAttribute
(const string&)const
;
-
virtual void removeAttribute
(const string&)
;
-
virtual void setAttribute
(const string&,double)
;
-
virtual const ConstChannel* getConstChannel
(const string&)const
;
-
virtual ElementBase* copyStructure
()
;
-
bool isSharable
()const
;
-
virtual void makeSharable
()
;
-
virtual ElementBase* makeAlignWrapper
()
;
-
virtual ElementBase* makeFieldWrapper
()
;
-
virtual ElementBase* makeWrappers
()
;
-
virtual ElementBase* removeAlignWrapper
()
;
-
virtual const ElementBase* removeAlignWrapper
()const
;
-
virtual ElementBase* removeFieldWrapper
()
;
-
virtual const ElementBase* removeFieldWrapper
()const
;
-
virtual ElementBase* removeWrappers
()
;
-
virtual const ElementBase* removeWrappers
()const
;
-
bool update
(const AttributeSet&)
;
-
int addReference
()const
;
-
int removeReference
()const
;
-
bool isShared
()const
;
Documentation:
- Public members:
-
BeamBeamRep
(const string&)
;
- Constructor with given name.
-
virtual ElementBase* clone
()const
;
- Return clone.
Return an identical deep copy of the element.
-
virtual double getBunchCharge
()const
;
- Get bunch charge.
Return the number of particles times the particle charge in the
opposite bunch. Units are proton charges.
-
virtual const Vector3D& getBunchDisplacement
()const
;
- Get displacement.
Return the displacement vector for position of opposite bunch.
Units are metres.
-
virtual const Matrix3D& getBunchMoment
()const
;
- Get moments.
Return the moment matrix for the opposite bunch (the matrix of
second momenta). Units are square metres.
-
virtual Channel* getChannel
(const string&)
;
- Construct a read/write channel.
This method constructs a Channel permitting read/write access to
the attributeaKey and returns it.
If the attribute does not exist, it returns NULL.
-
virtual NullField& getField
()
;
- Get field.
Version for non-constant object.
-
virtual const NullField& getField
()const
;
- Get field.
Version for constant object.
-
virtual NullGeometry& getGeometry
()
;
- Get geometry.
Version for non-constant object.
-
virtual const NullGeometry& getGeometry
()const
;
- Get geometry.
Version for constant object.
-
virtual ElementImage* getImage
()const
;
- Construct an image.
Return the image of the element, containing the name and type string
of the element, and a copy of the user-defined attributes.
-
virtual const string& getType
()const
;
- Return type name string
-
void setBunchCharge
(double)
;
- Set the bunch charge.
Units are proton charges.
-
void setBunchDisplacement
(const Vector3D&)
;
- Set displacement.
Assign the displacement vector for the opposite bunch.
Units are metres.
-
void setBunchMoment
(const Matrix3D&)
;
- Set moments.
Assign the moment matrix for the opposite bunch
(the matrix of second momenta). Units are square metres.
Documentation generated by fci on Mon Feb 7 11:41:32 2000