25 position_ =
Point(0., 0., 0.);
31 for (
int j = 0;
j < 7;
j++) {
32 for (
int k =
j;
k < 7;
k++) {
48 ss <<
"-----------------------------------------------------\n" 49 <<
" Beam Spot Data\n\n" 50 <<
" Beam type = " <<
type() <<
"\n" 51 <<
" X0 = " << x0() <<
" +/- " << x0Error() <<
" [cm]\n" 52 <<
" Y0 = " << y0() <<
" +/- " << y0Error() <<
" [cm]\n" 53 <<
" Z0 = " <<
z0() <<
" +/- " << z0Error() <<
" [cm]\n" 54 <<
" Sigma Z0 = " <<
sigmaZ() <<
" +/- " << sigmaZ0Error() <<
" [cm]\n" 55 <<
" dxdz = " <<
dxdz() <<
" +/- " << dxdzError() <<
" [radians]\n" 56 <<
" dydz = " <<
dydz() <<
" +/- " << dydzError() <<
" [radians]\n" 57 <<
" Beam width X = " << BeamWidthX() <<
" +/- " << BeamWidthXError() <<
" [cm]\n" 58 <<
" Beam width Y = " << BeamWidthY() <<
" +/- " << BeamWidthYError() <<
" [cm]\n" 59 <<
" EmittanceX = " <<
emittanceX() <<
" [cm]\n" 60 <<
" EmittanceY = " <<
emittanceY() <<
" [cm]\n" 61 <<
" beta-star = " <<
betaStar() <<
" [cm]\n" 62 <<
"-----------------------------------------------------\n\n";
76 AlgebraicVector3 rotationAxis = ROOT::Math::Cross(globalZ.Unit(), newZ.Unit());
77 float rotationAngle = -acos(ROOT::Math::Dot(globalZ.Unit(), newZ.Unit()));
92 diagError(0, 0) =
pow(BeamWidthX(), 2);
93 diagError(1, 1) =
pow(BeamWidthY(), 2);
ROOT::Math::SMatrix< double, 3, 3, ROOT::Math::MatRepStd< double, 3, 3 > > AlgebraicMatrix33
math::Error< dim3 >::type Covariance3DMatrix
const Point & position() const
position
BeamSpot()
default constructor
math::XYZPoint Point
point in the space
void print(std::stringstream &ss) const
print information
std::ostream & operator<<(std::ostream &, BeamSpot beam)
Covariance3DMatrix rotatedCovariance3D() const
__host__ __device__ riemannFit::Matrix2d rotationMatrix(double slope)
Computes the 2D rotation matrix that transforms the line y=slope*x into the line y=0.
Structure Point Contains parameters of Gaussian fits to DMRs.
ROOT::Math::SVector< double, 3 > AlgebraicVector3
ROOT::Math::SMatrix< double, 3, 3, ROOT::Math::MatRepSym< double, 3 > > AlgebraicSymMatrix33
Power< A, B >::type pow(const A &a, const B &b)