12#ifndef LITSTATIONGROUP_H_
13#define LITSTATIONGROUP_H_
Absorber in muon detector layout.
Class stores a grid of magnetic field values in XY slice at Z position.
Absorber in muon detector layout.
Class stores a grid of magnetic field values in XY slice at Z position.
fscal GetZ() const
Returns Z position of the grid.
void GetFieldValue(fscal x, fscal y, LitFieldValue< fscal > &B) const
Return field value for (X, Y) position (scalar version).
Storage for field approximation along Z.
void Set(const LitFieldValue< T > &B0, const T B0z, const LitFieldValue< T > &B1, const T B1z, const LitFieldValue< T > &B2, const T B2z)
Sets field region using three field values.
Magnetic field value at a certain point in the space.
virtual ~LitStationGroupMuon()
Destructor.
friend std::ostream & operator<<(std::ostream &strm, const LitStationGroupMuon &stationGroup)
Operator << for convenient output to std::ostream.
void SetFieldGridFront(const LitFieldGrid &fieldGrid)
Set field grid in front of the absorber.
LitFieldGrid fFieldGridMiddle
LitFieldGrid fFieldGridBack
std::string ToString() const
Return std::string representation for the class.
const LitFieldGrid & GetFieldGridFront() const
Return magnetic field grid in front of the absorber.
void GetFieldRegion(T x, T y, LitFieldRegion< T > &field) const
Calculate field region for the group of stations.
const LitFieldGrid & GetFieldGridMiddle() const
Return magnetic field grid in the middle of the absorber.
unsigned char GetNofStations() const
Return number of stations in this station group.
void SetAbsorber(const LitAbsorber< T > &absorber)
Set absorber.
std::vector< LitStationMuon< T > > fStations
void SetFieldGridBack(const LitFieldGrid &fieldGrid)
Set magnetic field grid in the back of the absorber.
const LitStationMuon< T > & GetStation(unsigned short index) const
Return station by index.
LitAbsorber< T > fAbsorber
const LitAbsorber< T > & GetAbsorber() const
Return absorber.
LitFieldGrid fFieldGridFront
void SetFieldGridMiddle(const LitFieldGrid &fieldGrid)
Set field grid in the middle of the absorber.
const LitFieldGrid & GetFieldGridBack() const
Return magnetic field grid in the back of the absorber.
LitStationGroupMuon()
Constructor.
void AddStation(const LitStationMuon< T > &station)
Add station to the station group.
Station in muon detector layout.
class lit::parallel::LitDetectorLayout _fvecalignment
std::string ToString(const T &value)
Function converts object into a std::string.
LitStationGroupMuon< fscal > LitStationGroupMuonScal
LitStationGroupMuon< fvec > LitStationGroupMuonVec