CbmRoot
lit::parallel::LitMaterialGrid Class Reference

Class stores a grid of material thickness in silicon equivalent. More...

#include <LitMaterialGrid.h>

Collaboration diagram for lit::parallel::LitMaterialGrid:
[legend]

Public Member Functions

void SetMaterial (const vector< vector< fscal >> &material, fscal xmin, fscal xmax, fscal ymin, fscal ymax, int nofBinsX, int nofBinsY)
 Returns Z position of the grid. More...
 
fscal GetMaterial (fscal x, fscal y) const
 Return material thickness in silicon equivalent for (X, Y) position (scalar version). More...
 
fvec GetMaterialValue (fvec x, fvec y) const
 Return material thickness in silicon equivalent for (X, Y) position (SIMD version). More...
 
bool IsEmpty () const
 Check if material was set. More...
 
string ToString () const
 Return string representation of the class. More...
 

Private Attributes

fscal fXMin
 
fscal fXMax
 
fscal fYMin
 
fscal fYMax
 
unsigned short fNofBinsX
 
unsigned short fNofBinsY
 
fscal fBinSizeX
 
fscal fBinSizeY
 
vector< vector< fscal > > fMaterial
 

Friends

ostream & operator<< (ostream &strm, const LitMaterialGrid &grid)
 Operator << for convenient output to ostream. More...
 

Detailed Description

Class stores a grid of material thickness in silicon equivalent.

Author
Andrey Lebedev andre.nosp@m.y.le.nosp@m.bedev.nosp@m.@gsi.nosp@m..de
Date
2013

Each object of this class stores a slice in XY for approximated material thickness in silicon equivalent.

Definition at line 37 of file LitMaterialGrid.h.

Member Function Documentation

◆ GetMaterial()

fscal lit::parallel::LitMaterialGrid::GetMaterial ( fscal  x,
fscal  y 
) const
inline

Return material thickness in silicon equivalent for (X, Y) position (scalar version).

Parameters
[in]xX position.
[in]yY position.
Returns
Material thickness in silicon equivalent.

Definition at line 91 of file LitMaterialGrid.h.

References fBinSizeX, fBinSizeY, fMaterial, fNofBinsX, fNofBinsY, fXMax, fXMin, fYMin, x, and y.

Referenced by GetMaterialValue(), lit::parallel::LitTrackFitter(), lit::parallel::LitTrackFinderNN::PropagateToStation(), and lit::parallel::LitTrackFinderNN::PropagateVirtualStations().

◆ GetMaterialValue()

fvec lit::parallel::LitMaterialGrid::GetMaterialValue ( fvec  x,
fvec  y 
) const
inline

Return material thickness in silicon equivalent for (X, Y) position (SIMD version).

Parameters
[in]xX position.
[in]yY position.
Returns
Material thickness in silicon equivalent.

Definition at line 149 of file LitMaterialGrid.h.

References fvecLen, GetMaterial(), i, v, x, and y.

◆ IsEmpty()

bool lit::parallel::LitMaterialGrid::IsEmpty ( ) const
inline

◆ SetMaterial()

void lit::parallel::LitMaterialGrid::SetMaterial ( const vector< vector< fscal >> &  material,
fscal  xmin,
fscal  xmax,
fscal  ymin,
fscal  ymax,
int  nofBinsX,
int  nofBinsY 
)
inline

Returns Z position of the grid.

Returns
Z position of the grid.

Sets Z position of the grid.

Parameters
[in]Zposition of the grid.

Set material thicknesses for the grid.

Grid is a rectangle with (xmin, ymax) as a top left corner and (xmax, ymin) as a bottom right corner and has a total number of bins nofBinsX*nofBinsY.

Parameters
[in]material2D vector of silicon thickness.
[in]xmaxMaximum X position.
[in]xminMinimum X position.
[in]ymaxMaximum Y position.
[in]yminMinimum Y position.
[in]nofBinsXNumber of bins in X.
[in]nofBinsYNumber of bins in Y.

Definition at line 67 of file LitMaterialGrid.h.

References fBinSizeX, fBinSizeY, fMaterial, fNofBinsX, fNofBinsY, fXMax, fXMin, fYMax, and fYMin.

Referenced by CbmLitTrackingGeometryConstructor::ConvertTProfile2DToLitMaterialGrid().

◆ ToString()

string lit::parallel::LitMaterialGrid::ToString ( ) const
inline

Return string representation of the class.

Returns
String representation of the class.

Definition at line 167 of file LitMaterialGrid.h.

References fBinSizeX, fBinSizeY, fMaterial, fNofBinsX, fNofBinsY, fXMax, fXMin, fYMax, fYMin, and i.

Referenced by lit::parallel::LitVirtualStation< T >::ToString().

Friends And Related Function Documentation

◆ operator<<

ostream& operator<< ( ostream &  strm,
const LitMaterialGrid grid 
)
friend

Operator << for convenient output to ostream.

Returns
Insertion stream in order to be able to call a succession of insertion operations.

Definition at line 203 of file LitMaterialGrid.h.

Member Data Documentation

◆ fBinSizeX

fscal lit::parallel::LitMaterialGrid::fBinSizeX
private

Definition at line 214 of file LitMaterialGrid.h.

Referenced by GetMaterial(), SetMaterial(), and ToString().

◆ fBinSizeY

fscal lit::parallel::LitMaterialGrid::fBinSizeY
private

Definition at line 215 of file LitMaterialGrid.h.

Referenced by GetMaterial(), SetMaterial(), and ToString().

◆ fMaterial

vector<vector<fscal> > lit::parallel::LitMaterialGrid::fMaterial
private

Definition at line 219 of file LitMaterialGrid.h.

Referenced by GetMaterial(), IsEmpty(), SetMaterial(), and ToString().

◆ fNofBinsX

unsigned short lit::parallel::LitMaterialGrid::fNofBinsX
private

Definition at line 212 of file LitMaterialGrid.h.

Referenced by GetMaterial(), SetMaterial(), and ToString().

◆ fNofBinsY

unsigned short lit::parallel::LitMaterialGrid::fNofBinsY
private

Definition at line 213 of file LitMaterialGrid.h.

Referenced by GetMaterial(), SetMaterial(), and ToString().

◆ fXMax

fscal lit::parallel::LitMaterialGrid::fXMax
private

Definition at line 209 of file LitMaterialGrid.h.

Referenced by GetMaterial(), SetMaterial(), and ToString().

◆ fXMin

fscal lit::parallel::LitMaterialGrid::fXMin
private

Definition at line 209 of file LitMaterialGrid.h.

Referenced by GetMaterial(), SetMaterial(), and ToString().

◆ fYMax

fscal lit::parallel::LitMaterialGrid::fYMax
private

Definition at line 210 of file LitMaterialGrid.h.

Referenced by SetMaterial(), and ToString().

◆ fYMin

fscal lit::parallel::LitMaterialGrid::fYMin
private

Definition at line 210 of file LitMaterialGrid.h.

Referenced by GetMaterial(), SetMaterial(), and ToString().


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