33 std::cout <<
"rot: ( " ;
34 std::ostream_iterator<double> oi(std::cout,
" ");
35 rot.GetComponents(oi);
36 std::cout <<
") " << std::endl;
40 std::cout <<
"vec : ( " ;
41 std::ostream_iterator<double> oi(std::cout,
" ");
43 std::cout <<
") " << std::endl;
47 std::cout <<
"list : ( " ;
48 std::ostream_iterator<double> oi(std::cout,
" ");
49 std::copy(l.begin(),l.end(),oi);
50 std::cout <<
") " << std::endl;
77 double d[10] = {1,2,3,4,5,6,7,8,9,10};
78 std::list<double> inputData(d,d+3);
81 std::list<double> data(3);
85 inputData = std::list<double>(d+3,d+6);
86 XYZPoint p; p.SetCoordinates(inputData.begin(),inputData.end() );
88 data = std::list<double>(3);
89 p.GetCoordinates(data.begin(), data.end() );
92 inputData = std::list<double>(d+6,d+10);
93 XYZTVector q; q.SetCoordinates(inputData.begin(),inputData.end() );
95 data = std::list<double>(4);
96 q.GetCoordinates(data.begin(), data.end() );
100 inputData = std::list<double>(d,d+3);
101 EulerAngles re(inputData.begin(), inputData.end() );
102 data = std::list<double>(3);
103 re.GetComponents(data.begin(), data.end() );
106 inputData = std::list<double>(d,d+4);
107 AxisAngle ra(inputData.begin(), inputData.end() );
108 data = std::list<double>(4);
109 ra.GetComponents(data.begin(), data.end() );
112 inputData = std::list<double>(d,d+4);
113 Quaternion rq(inputData.begin(), inputData.end() );
114 data = std::list<double>(4);
115 rq.GetComponents(data.begin(), data.end() );
118 double b[3] = {0.3,0.4,0.8};
119 inputData = std::list<double>(b,b+3);
120 Boost bst(inputData.begin(), inputData.end() );
121 data = std::list<double>(3);
122 bst.GetComponents(data.begin(), data.end() );
126 inputData = std::list<double>(9);
129 data = std::list<double>(9);
130 r.GetComponents(data.begin(), data.end() );
135 inputData = std::list<double>(12);
138 data = std::list<double>(12);
144 inputData = std::list<double>(16);
147 data = std::list<double>(16);
Class describing a generic LorentzVector in the 4D space-time, using the specified coordinate system ...
DisplacementVector3D< CoordSystem, Tag > & SetCoordinates(const Scalar src[])
Set internal data based on a C-style array of 3 Scalar numbers.
RooArgList L(const RooAbsArg &v1)
void printRot(const Rot &rot)
Class describing a generic position vector (point) in 3 dimensions.
void GetCoordinates(Scalar &a, Scalar &b, Scalar &c) const
get internal data into 3 Scalar numbers
Rotation class with the (3D) rotation represented by a unit quaternion (u, i, j, k).
AxisAngle class describing rotation represented with direction axis (3D Vector) and an angle of rotat...
Lorentz boost class with the (4D) transformation represented internally by a 4x4 orthosymplectic matr...
Lorentz transformation class with the (4D) transformation represented by a 4x4 orthosymplectic matrix...
void printVec(const V &v)
Global Helper functions for generic Vector classes.
Rotation class with the (3D) rotation represented by a 3x3 orthogonal matrix.
void GetComponents(Foreign4Vector &v1, Foreign4Vector &v2, Foreign4Vector &v3, Foreign4Vector &v4) const
Get components into four 4-vectors which will be the (orthosymplectic) columns of the rotation matrix...
void GetComponents(ForeignVector &v1, ForeignVector &v2, ForeignVector &v3) const
Get components into three vectors which will be the (orthonormal) columns of the rotation matrix...
EulerAngles class describing rotation as three angles (Euler Angles).
void printList(const L &l)
DisplacementVector3D< Cartesian3D< double >, DefaultCoordinateSystemTag > XYZVector
3D Vector based on the cartesian coordinates x,y,z in double precision