1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
/*!
\page DataFormats_Math Package DataFormats/Math
<center>
<small>
<a href=http://cmsdoc.cern.ch/swdev/viewcvs/viewcvs.cgi/CMSSW/DataFormats/Math/?cvsroot=CMSSW>CVS head for this package</a> -
<a href=http://cmsdoc.cern.ch/swdev/viewcvs/viewcvs.cgi/CMSSW/DataFormats/Math/.admin/developers?rev=HEAD&cvsroot=CMSSW&content-type=text/vnd.viewcvs-markup>Administrative privileges</a>
</small>
</center>
\section desc Description
Persistent classes for mathematical types. This package is based on ROOT/SEAL <a href="http://seal.web.cern.ch/seal/MathLibs/MathCore/html/index.html">MathCore</a> and <a href="http://seal.web.cern.ch/seal/MathLibs/SMatrix/html/index.html">Smatrix</a> libraries.
\subsection interface Public interface
typedefs of commonly used <a href="http://seal.web.cern.ch/seal/MathLibs/MathCore/html/index.html">MathCore</a> and
and <a href="http://seal.web.cern.ch/seal/MathLibs/SMatrix/html/index.html">Smatrix</a> types.
In all cases, the elements are of type <tt>Double32_t</tt>, i.e.: are stored by default as <tt>float</tt> and represented in memory as <tt>double</tt>. Classes whose typedefs end by <tt><b>D</b></tt> store elements as <tt>double</tt>, and classes whose typedefs end by <tt><b>F</b></tt> store elements as <tt>float</tt>,
- <b>Spatial Vectors:</b>
- math::XYZVector: spatial vector with cartesian internal representation.
- math::XYZVectorD: same as above, with <tt>double</tt> elements.
- math::XYZVectorF: same as above, with <tt>float</tt> elements.
- math::RhoEtaPhiVector: spatial vector with cylindrical internal representation using pseudorapidity.
- math::RhoEtaPhiVectorD: same as above, with <tt>double</tt> elements.
- math::RhoEtaPhiVectorF: same as above, with <tt>float</tt> elements.
- math::RThetaPhiVector: spatial vector with polar internal representation.
- math::RThetaPhiVectorD: same as above, with <tt>double</tt> elements.
- math::RThetaPhiVectorF: same as above, with <tt>float</tt> elements.
- <b>Spatial Points:</b>
- math::XYZPoint: point in space with cartesian internal representation.
- math::XYZPointD: same as above, with <tt>double</tt> elements.
- math::XYZPointF: same as above, with <tt>float</tt> elements.
- <b>Lorentz Vectors:</b>
- math::XYZTLorentzVector: Lorentz vector with cartesian internal representation.
- math::XYZTLorentzVector: same as above, with <tt>double</tt> elements.
- math::XYZTLorentzVector: same as above, with <tt>float</tt> elements.
- math::PtEtaPhiELorentzVector: Lorentz vector with cylindrical internal representation using pseudorapidity.
- math::PtEtaPhiELorentzVectorD: same as above, with <tt>double</tt> elements.
- math::PtEtaPhiELorentzVectorF: same as above, with <tt>float</tt> elements.
- <b>Fixed Size Vectors:</b>
- math::Vector<N>::type: Fixed size N-dimensional vector.
- math::VectorD<N>::type: same as above, with <tt>double</tt> elements.
- math::VectorF<N>::type: same as above, with <tt>float</tt> elements.
- <b>Fixed size Matrices:</b>
- math::Error<N>::type: NxN symmetric matrix.
- math::ErrorD<N>::type: same as above, with <tt>double</tt> elements.
- math::ErrorF<N>::type: same as above, with <tt>float</tt> elements.
\subsection dictionaries Dictionaries
Reflex dictionaries are created for all of the above math types, in particular
for matrices and vectors up to <b>N=6</b>. Dictionaries are also created
for <tt>std::vector</tt> of the math types and for edm::Wrapper corresponding
to the math types and <tt>std::vector</tt> of the math types.
\subsection modules Modules
None.
\subsection tests Unit tests and examples
None.
\section status Status and planned development
Stable. The dictionary generation for this package can be replaced
eventyally using the RELAX project.
<hr>
Last updated: @DATE@ L. Lista
*/
|