KaliVeda
Toolkit for HIC analysis
Loading...
Searching...
No Matches
KVSilicon Class Reference

Detailed Description

Silicon detectors of the INDRA array.

In order to create a detector, use the KVSilicon::KVSilicon(Float_t thick) constructor with "thick" the thickness in microns

Type of detector : "SI"

Definition at line 19 of file KVSilicon.h.

#include <KVSilicon.h>

Inheritance diagram for KVSilicon:

Public Member Functions

 KVSilicon ()
 
 KVSilicon (Float_t thick)
 
virtual ~KVSilicon ()
 
void DeduceACQParameters (KVEvent *, KVNumberList &)
 
Double_t GetDeltaE (Int_t Z, Int_t A, Double_t Einc)
 
virtual TF1GetELossFunction (Int_t Z, Int_t A)
 
Double_t GetPHD (Double_t dE, UInt_t Z)
 void SetACQParams();
 
virtual Double_t GetThickness () const
 
void SetMoultonPHDParameters (Double_t a1, Double_t a2, Double_t b1, Double_t b2)
 
void SetThickness (Double_t thick)
 
- Public Member Functions inherited from KVINDRADetector
 KVINDRADetector ()
 
 KVINDRADetector (const Char_t *type, const Float_t thick=0.0)
 
virtual ~KVINDRADetector ()
 
const Char_tGetArrayName ()
 
KVINDRADetectorGetChIo () const
 
Int_t GetIndex () const
 
UInt_t GetModuleNumber () const
 
UInt_t GetRingNumber () const
 
KVINDRATelescopeGetTelescope () const
 
virtual void SetSegment (UShort_t)
 
void SetType (const Char_t *t)
 
- Public Member Functions inherited from KVDetector
 KVDetector ()
 default ctor
 
 KVDetector (const Char_t *type, const Float_t thick=0.0)
 Create a new detector of a given material and thickness in centimetres (default value = 0.0)
 
 KVDetector (const KVDetector &)
 copy ctor
 
virtual ~KVDetector ()
 
void AddAbsorber (KVMaterial *)
 
Bool_t AddCalibrator (KVCalibrator *cal, const KVNameValueList &opts="")
 
KVDetectorSignalAddDetectorSignal (const KVString &type)
 
Bool_t AddDetectorSignalExpression (const KVString &type, const KVString &_expr)
 
void AddHit (KVNucleus *part)
 
virtual void AddIDTelescope (TObject *idt)
 Add ID telescope to list of telescopes to which detector belongs.
 
void AddParentStructure (KVGeoStrucElement *elem)
 
virtual void AddToGeometry ()
 
Bool_t BelongsToIdentifiedParticle () const
 
Bool_t BelongsToUnidentifiedParticle () const
 
virtual void Clear (Option_t *opt="")
 
void ClearHits ()
 
virtual void Copy (TObject &obj) const
 
virtual void DetectParticle (KVNucleus *, TVector3 *norm=0)
 
virtual TGraphDrawPunchThroughEnergyVsZ (Int_t massform=KVNucleus::kBetaMass)
 
virtual TGraphDrawPunchThroughEsurAVsZ (Int_t massform=KVNucleus::kBetaMass)
 
virtual Int_t FindZmin (Double_t ELOSS=-1., Char_t mass_formula=-1)
 
virtual Bool_t Fired (Option_t *opt="any") const
 
KVMaterialGetAbsorber (const Char_t *name) const
 
KVMaterialGetAbsorber (Int_t i) const
 Returns pointer to the i-th absorber in the detector (i=0 first absorber, i=1 second, etc.)
 
KVMaterialGetActiveLayer () const
 
TGeoHMatrixGetActiveLayerMatrix () const
 
TGeoBBoxGetActiveLayerShape () const
 
TVector3 GetActiveLayerSurfaceCentre () const
 
TVector3 GetActiveLayerVolumeCentre () const
 
virtual TListGetAlignedDetectors (UInt_t direction=1)
 
KVListGetAlignedIDTelescopes ()
 
virtual Double_t GetCalibratedEnergy () const
 
KVCalibratorGetCalibrator (const Char_t *name, const Char_t *type) const
 
KVCalibratorGetCalibrator (const Char_t *type) const
 
const TVector3 GetCentreOfEntranceWindow () const
 
virtual Double_t GetCorrectedEnergy (KVNucleus *, Double_t e=-1., Bool_t transmission=kTRUE)
 
Double_t GetCosTheta () const
 
virtual Double_t GetDeltaEFromERes (Int_t Z, Int_t A, Double_t Eres)
 
virtual Double_t GetDepthInTelescope () const
 
virtual KVDetectorSignalGetDetectorSignal (const KVString &type) const
 
Double_t GetDetectorSignalValue (const KVString &type, const KVNameValueList &params="") const
 
TVector3 GetDirection ()
 
Double_t GetDistance () const
 
virtual Double_t GetEIncOfMaxDeltaE (Int_t Z, Int_t A)
 
virtual Double_t GetELostByParticle (KVNucleus *, TVector3 *norm=0)
 
virtual Double_t GetEnergy () const
 
virtual Double_t GetEnergyLoss () const
 
const KVPositionGetEntranceWindow () const
 
virtual Double_t GetEntranceWindowSurfaceArea ()
 Return surface area of first layer of detector in cm2.
 
virtual Double_t GetERes (Int_t Z, Int_t A, Double_t Einc)
 
virtual Double_t GetEResAfterDetector () const
 
virtual TF1GetEResFunction (Int_t Z, Int_t A)
 
Double_t GetGain () const
 
virtual TGeoVolumeGetGeoVolume ()
 
KVGroupGetGroup () const
 
UInt_t GetGroupNumber ()
 
KVListGetHits () const
 Return the list of particles hitting this detector in an event.
 
KVListGetIDTelescopes ()
 
virtual Double_t GetIncidentEnergy (Int_t Z, Int_t A, Double_t delta_e=-1.0, enum SolType type=kEmax)
 
virtual Double_t GetIncidentEnergyFromERes (Int_t Z, Int_t A, Double_t Eres)
 
Double_t GetInverseDetectorSignalValue (const KVString &output, Double_t value, const KVString &input, const KVNameValueList &params="") const
 
virtual Double_t GetLinearRange (Int_t Z, Int_t A, Double_t Einc)
 
KVListGetListOfAbsorbers () const
 
KVListGetListOfCalibrators () const
 
const KVSeqCollectionGetListOfDetectorSignals () const
 
const Char_tGetMaterialName () const
 
virtual Double_t GetMaxDeltaE (Int_t Z, Int_t A)
 
const Char_tGetNameOfArray () const
 
Int_t GetNHits () const
 Return the number of particles hitting this detector in an event.
 
KVGeoDetectorNodeGetNode ()
 
Int_t GetNumberOfAbsorberLayers () const
 
KVGeoStrucElementGetParentStructure (const Char_t *type, const Char_t *name="") const
 
virtual Double_t GetParticleEIncFromERes (KVNucleus *, TVector3 *norm=0)
 
Double_t GetPhi () const
 
virtual Double_t GetPunchThroughEnergy (Int_t Z, Int_t A)
 
void GetRandomAngles (Double_t &th, Double_t &ph, Option_t *t="isotropic")
 
TVector3 GetRandomDirection (Option_t *t="isotropic")
 
virtual Double_t GetRange (Int_t Z, Int_t A, Double_t Einc)
 
virtual TF1GetRangeFunction (Int_t Z, Int_t A)
 
UShort_t GetSegment () const
 
Double_t GetSinTheta () const
 
virtual Double_t GetSmallestEmaxValid (Int_t Z, Int_t A)
 
Double_t GetSolidAngle () const
 
TListGetTelescopesForIdentification ()
 
Double_t GetTheta () const
 
virtual Double_t GetTotalDeltaE (Int_t Z, Int_t A, Double_t Einc)
 
Double_t GetTotalThicknessInCM ()
 
virtual void GetVerticesInOwnFrame (TVector3 *, Double_t, Double_t)
 
Bool_t HasDetectorSignal (const KVString &type) const
 
Bool_t HasSameStructureAs (const KVDetector *) const
 
void IncrementIdentifiedParticles (Int_t n=1)
 
void IncrementUnidentifiedParticles (Int_t n=1)
 
void init ()
 default initialisations
 
Bool_t IsAnalysed ()
 
Bool_t IsCalibrated () const
 
Bool_t IsCalibrated (const KVNameValueList &params) const
 
virtual Bool_t IsDetecting () const
 
virtual Bool_t IsOK () const
 
virtual Bool_t IsPresent () const
 
virtual Bool_t IsSimMode () const
 
Bool_t IsSingleLayer () const
 
virtual void Print (Option_t *option="") const
 
virtual void ReadDefinitionFromFile (const Char_t *)
 
virtual void RemoveCalibrators ()
 
void RemoveHit (KVNucleus *part)
 
void RemoveParentStructure (KVGeoStrucElement *elem)
 
Bool_t ReplaceCalibrator (const Char_t *type, KVCalibrator *cal, const KVNameValueList &opts="")
 
virtual void Reset (Option_t *opt="")
 
void ResetAlignedDetectors (UInt_t direction=1)
 
void SetActiveLayer (KVMaterial *actif)
 
void SetActiveLayerMatrix (const TGeoHMatrix *)
 Set ROOT geometry global matrix transformation to coordinate frame of active layer volume.
 
void SetActiveLayerShape (TGeoBBox *)
 Set ROOT geometry shape of active layer volume.
 
void SetAnalysed (Bool_t b=kTRUE)
 
void SetDetecting (Bool_t yes=kTRUE)
 
void SetDetectorSignalValue (const KVString &type, Double_t val) const
 
virtual void SetEnergy (Double_t e) const
 
virtual void SetEnergyLoss (Double_t e) const
 
void SetEntranceWindowMatrix (const TGeoHMatrix *)
 Set ROOT geometry global matrix transformation to coordinate frame of entrance window.
 
void SetEntranceWindowShape (TGeoBBox *)
 Set ROOT geometry shape of entrance window.
 
virtual void SetEResAfterDetector (Double_t e)
 
void SetGain (Double_t gain)
 
virtual void SetMaterial (const Char_t *type)
 
void SetNameOfArray (const TString &n)
 
void SetPresent (Bool_t yes=kTRUE)
 
virtual void SetSimMode (Bool_t on=kTRUE)
 
- Public Member Functions inherited from KVMaterial
 KVMaterial ()
 default ctor
 
 KVMaterial (const Char_t *gas, const Double_t thick, const Double_t pressure, const Double_t temperature=19.0)
 
 KVMaterial (const Char_t *type, const Double_t thick=0.0)
 Create material with given type and linear thickness in cm.
 
 KVMaterial (const KVMaterial &)
 Copy ctor.
 
 KVMaterial (Double_t area_density, const Char_t *type)
 Create material with given area density in \(g/cm^{2}\) and given type.
 
virtual ~KVMaterial ()
 Destructor.
 
virtual TGeoVolumeGetAbsGeoVolume () const
 
Double_t GetAreaDensity () const
 
Double_t GetDensity () const
 
Double_t GetEffectiveAreaDensity (TVector3 &norm, TVector3 &direction)
 
Double_t GetEffectiveThickness (TVector3 &norm, TVector3 &direction)
 
Double_t GetEmaxValid (Int_t Z, Int_t A)
 
virtual Double_t GetEResFromDeltaE (Int_t Z, Int_t A, Double_t dE=-1.0, enum SolType type=kEmax)
 
virtual TGeoMediumGetGeoMedium (const Char_t *="")
 
virtual TGraphGetGraphOfDeltaEVsE (const KVNucleus &nuc, Int_t npts, Double_t Emin, Double_t Emax)
 
Double_t GetMass () const
 
virtual Double_t GetPressure () const
 
virtual Double_t GetTemperature () const
 
Double_t GetZ () const
 
void init ()
 
Bool_t IsGas () const
 
Bool_t IsIsotopic () const
 
Bool_t IsNat () const
 
virtual void SetAbsGeoVolume (TGeoVolume *v)
 
void SetAreaDensity (Double_t dens)
 
void SetMass (Int_t a)
 
virtual void SetPressure (Double_t)
 
virtual void SetTemperature (Double_t)
 
- Public Member Functions inherited from KVBase
 KVBase ()
 Default constructor.
 
 KVBase (const Char_t *name, const Char_t *title="")
 Ctor for object with given name and type.
 
 KVBase (const KVBase &)
 copy ctor
 
virtual ~KVBase ()
 
const Char_tGetLabel () const
 
UInt_t GetNumber () const
 
UInt_t GetNumberOfObjects () const
 
virtual TObjectGetObject () const
 
virtual const Char_tGetType () const
 
Bool_t HasLabel () const
 
virtual Bool_t IsCalled (const Char_t *name) const
 
Bool_t IsLabelled (const Char_t *l) const
 
virtual Bool_t IsType (const Char_t *typ) const
 
virtual void List ()
 
KVBaseoperator= (const KVBase &)
 copy assignment operator
 
Double_t ProtectedGetX (const TF1 *func, Double_t val, int &status, Double_t xmin=0.0, Double_t xmax=0.0) const
 
void SetLabel (const Char_t *lab)
 
virtual void SetNumber (UInt_t num)
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 
void Clear (Option_t *option="") override
 
TObjectClone (const char *newname="") const override
 
Int_t Compare (const TObject *obj) const override
 
void Copy (TObject &named) const override
 
virtual void FillBuffer (char *&buffer)
 
const char * GetName () const override
 
const char * GetTitle () const override
 
ULong_t Hash () const override
 
TClassIsA () const override
 
Bool_t IsSortable () const override
 
void ls (Option_t *option="") const override
 
TNamedoperator= (const TNamed &rhs)
 
void Print (Option_t *option="") const override
 
virtual void SetName (const char *name)
 
virtual void SetNameTitle (const char *name, const char *title)
 
virtual void SetTitle (const char *title="")
 
virtual Int_t Sizeof () const
 
void Streamer (TBuffer &) override
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 
 TObject (const TObject &object)
 
virtual ~TObject ()
 
void AbstractMethod (const char *method) const
 
virtual void AppendPad (Option_t *option="")
 
virtual void Browse (TBrowser *b)
 
ULong_t CheckedHash ()
 
virtual const char * ClassName () const
 
virtual void Delete (Option_t *option="")
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 
virtual void Draw (Option_t *option="")
 
virtual void DrawClass () const
 
virtual TObjectDrawClone (Option_t *option="") const
 
virtual void Dump () const
 
virtual void Error (const char *method, const char *msgfmt,...) const
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 
virtual TObjectFindObject (const char *name) const
 
virtual TObjectFindObject (const TObject *obj) const
 
virtual Option_tGetDrawOption () const
 
virtual const char * GetIconName () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 
virtual Bool_t HandleTimer (TTimer *timer)
 
Bool_t HasInconsistentHash () const
 
virtual void Info (const char *method, const char *msgfmt,...) const
 
virtual Bool_t InheritsFrom (const char *classname) const
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 
virtual void Inspect () const
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 
virtual Bool_t IsEqual (const TObject *obj) const
 
virtual Bool_t IsFolder () const
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
void MayNotUse (const char *method) const
 
virtual Bool_t Notify ()
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 
void operator delete (void *ptr)
 
void operator delete (void *ptr, void *vp)
 
void operator delete[] (void *ptr)
 
void operator delete[] (void *ptr, void *vp)
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 
virtual void Paint (Option_t *option="")
 
virtual void Pop ()
 
virtual Int_t Read (const char *name)
 
virtual void RecursiveRemove (TObject *obj)
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 
virtual void SetDrawOption (Option_t *option="")
 
virtual void SetUniqueID (UInt_t uid)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 
- Public Member Functions inherited from KVPosition
 KVPosition ()
 
 KVPosition (Double_t thmin, Double_t thmax, Double_t phmin, Double_t phmax, Double_t dist=0.0)
 
virtual ~KVPosition ()
 
Double_t GetAzimuthalWidth (Double_t phmin=-1., Double_t phimax=-1.) const
 
void GetCornerCoordinates (TVector3 *, Double_t=0)
 
void GetCornerCoordinatesInOwnFrame (TVector3 *, Double_t=0)
 
Double_t GetPhiMax () const
 
Double_t GetPhiMin () const
 
TRotation GetRandomIsotropicRotation ()
 
Double_t GetThetaMax () const
 
Double_t GetThetaMin () const
 
void GetWidthsFromDimension (Double_t lin_dim)
 
void init ()
 default initialiser
 
Bool_t IsAlignedWith (KVPosition *pos)
 kTRUE if one of the two solid angle elements is completely contained within the other.
 
Bool_t IsAzimuthallyWiderThan (KVPosition *pos)
 
Bool_t IsInPhiRange (const Double_t phi)
 
Bool_t IsInPolarRange (const Double_t theta)
 kTRUE if given angle theta is within the polar range of this solid angle element
 
Bool_t IsOverlappingWith (KVPosition *pos)
 kTRUE if there is at least partial overlap between two solid angle elements
 
Bool_t IsSmallerThan (KVPosition *pos)
 kTRUE if "this" is entirely contained within "pos"
 
Bool_t ROOTGeo () const
 Returns kTRUE if ROOT geometry is used, kFALSE if not.
 
virtual void SetAzimuthalAngle (Double_t ph)
 
virtual void SetAzimuthalMinMax (Double_t min, Double_t max)
 Set min and max azimuthal angles and calculate (mean) phi.
 
virtual void SetAzimuthalWidth (Double_t aw)
 
void SetDistance (Double_t d)
 
void SetPhi (Double_t p)
 
void SetPhiMinMax (Double_t min, Double_t max)
 
virtual void SetPolarAngle (Double_t th)
 
virtual void SetPolarMinMax (Double_t min, Double_t max)
 Set min and max polar angles and calculate (mean) theta.
 
virtual void SetPolarWidth (Double_t pw)
 
void SetTheta (Double_t t)
 

Private Member Functions

void init ()
 

Additional Inherited Members

- Public Types inherited from KVMaterial
enum  SolType { kEmax , kEmin }
 
- Public Types inherited from KVBase
enum  EKaliVedaBits { kIsKaliVedaObject = BIT(23) }
 
- Public Types inherited from TObject
enum  EDeprecatedStatusBits
 
enum  EStatusBits
 
- Static Public Member Functions inherited from KVDetector
static KVDetectorMakeDetector (const Char_t *name, Float_t thick)
 
- Static Public Member Functions inherited from KVMaterial
static KVIonRangeTableChangeRangeTable (const Char_t *name)
 
static KVIonRangeTableGetRangeTable ()
 
- Static Public Member Functions inherited from KVBase
static Bool_t AreEqual (Double_t x, Double_t y, Long64_t maxdif=1)
 Comparison between two 64-bit floating-point values.
 
static void BackupFileWithDate (const Char_t *path)
 
static void CombineFiles (const Char_t *file1, const Char_t *file2, const Char_t *newfilename, Bool_t keep=kTRUE)
 
static void Deprecated (const char *method, const char *advice)
 
static Bool_t FindClassSourceFiles (const Char_t *class_name, KVString &imp_file, KVString &dec_file, const Char_t *dir_name=".")
 
static Bool_t FindExecutable (TString &exec, const Char_t *path="$(PATH)")
 
static const Char_tFindFile (const Char_t *search, TString &wfil)
 
static const Char_tGetBINDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetDATABASEFilePath ()
 
static const Char_tGetDATADIRFilePath (const Char_t *namefile="")
 
static Bool_t GetDataSetEnv (const Char_t *dataset, const Char_t *type, Bool_t defval)
 
static const Char_tGetDataSetEnv (const Char_t *dataset, const Char_t *type, const Char_t *defval)
 
static Double_t GetDataSetEnv (const Char_t *dataset, const Char_t *type, Double_t defval)
 
static const Char_tGetETCDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetExampleFilePath (const Char_t *library, const Char_t *namefile)
 Return full path to example file for given library (="KVMultiDet", "BackTrack", etc.)
 
static const Char_tGetINCDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetKVBuildDate ()
 Returns KaliVeda build date.
 
static const Char_tGetKVBuildDir ()
 Returns top-level directory used for build.
 
static const Char_tGetKVBuildTime ()
 Returns KaliVeda build time.
 
static const Char_tGetKVBuildType ()
 Returns KaliVeda build type (cmake build: Release, Debug, RelWithDebInfo, ...)
 
static const Char_tGetKVBuildUser ()
 Returns username of person who performed build.
 
static const Char_tGetKVSourceDir ()
 Returns top-level directory of source tree used for build.
 
static const Char_tGetKVVersion ()
 Returns KaliVeda version string.
 
static const Char_tGetLIBDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetListOfPlugins (const Char_t *base)
 
static const Char_tGetListOfPluginURIs (const Char_t *base)
 
static const Char_tGetPluginURI (const Char_t *base, const Char_t *plugin)
 
static void GetTempFileName (TString &base)
 
static const Char_tGetTEMPLATEDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetWORKDIRFilePath (const Char_t *namefile="")
 
static const Char_tgitBranch ()
 Returns git branch of sources.
 
static const Char_tgitCommit ()
 Returns last git commit of sources.
 
static void InitEnvironment ()
 
static bool is_gnuinstall ()
 
static Bool_t IsThisAPlugin (const TString &uri, TString &base)
 
static TPluginHandlerLoadPlugin (const Char_t *base, const Char_t *uri="0")
 
static Bool_t OpenContextMenu (const char *method, TObject *obj, const char *alt_method_name="")
 
static void OpenTempFile (TString &base, std::ofstream &fp)
 
static void PrintSplashScreen ()
 Prints welcome message and infos on version etc.
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, KVSQLite::database &dbfile, const Char_t *kvsubdir="")
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, std::ifstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0)
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, std::ofstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0)
 
static Bool_t SearchKVFile (const Char_t *name, TString &fullpath, const Char_t *kvsubdir="")
 
static const Char_tWorkingDirectory ()
 
- Static Public Member Functions inherited from TNamed
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 
static Bool_t GetObjectStat ()
 
static void SetDtorOnly (void *obj)
 
static void SetObjectStat (Bool_t stat)
 
- Public Attributes inherited from TObject
 kBitMask
 
 kCanDelete
 
 kCannotPick
 
 kHasUUID
 
 kInconsistent
 
 kInvalidObject
 
 kIsOnHeap
 
 kIsReferenced
 
 kMustCleanup
 
 kNoContextMenu
 
 kNotDeleted
 
 kObjInCanvas
 
 kOverwrite
 
 kSingleKey
 
 kWriteDelete
 
 kZombie
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 
void MakeZombie ()
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TObject
 kOnlyPrepStep
 

Constructor & Destructor Documentation

◆ KVSilicon() [1/2]

KVSilicon::KVSilicon ( )

Default ctor This ctor (which in turn calls the KVDetector default ctor) must exist in order for Cloning of detectors to work (as used in KVTelescope::AddDetector). Do not replace this ctor by giving default arguments to KVSilicon(Float_t).

Definition at line 43 of file KVSilicon.cpp.

◆ KVSilicon() [2/2]

KVSilicon::KVSilicon ( Float_t  thick)

constructor for silicon detector, thickness in microns Type of detector: "SI"

Definition at line 59 of file KVSilicon.cpp.

◆ ~KVSilicon()

KVSilicon::~KVSilicon ( )
virtual

Definition at line 73 of file KVSilicon.cpp.

Member Function Documentation

◆ DeduceACQParameters()

void KVSilicon::DeduceACQParameters ( KVEvent ,
KVNumberList  
)
virtual

Reimplemented from KVDetector.

Definition at line 186 of file KVSilicon.cpp.

◆ GetDeltaE()

Double_t KVSilicon::GetDeltaE ( Int_t  Z,
Int_t  A,
Double_t  Einc 
)
virtual

Overrides KVDetector::GetDeltaE If no PHD is set, we use the optimized KVMaterial::GetDeltaE if (fPHD && fPHD->GetStatus()) return fPHD->GetELossFunction(Z, A)->Eval(Einc);

Reimplemented from KVDetector.

Definition at line 206 of file KVSilicon.cpp.

◆ GetELossFunction()

TF1 * KVSilicon::GetELossFunction ( Int_t  Z,
Int_t  A 
)
virtual

Overrides KVDetector::GetELossFunction If the pulse height deficit (PHD) has been set for this detector, we return an energy loss function which takes into account the PHD, i.e. for an incident energy E we calculate

dEphd(E,Z,A) = dE(E,Z,A) - PHD(dE,Z)

If no PHD is set, we return the usual KVDetector::GetELossFunction which calculates dE(E,Z,A) if (fPHD && fPHD->GetStatus()) return fPHD->GetELossFunction(Z, A);

Reimplemented from KVDetector.

Definition at line 165 of file KVSilicon.cpp.

◆ GetPHD()

Double_t KVSilicon::GetPHD ( Double_t  dE,
UInt_t  Z 
)

void SetACQParams();

Calculate Pulse Height Defect in MeV for a given energy loss dE(MeV) and Z. The formula of Moulton is used (see class KVPulseHeightDefect).

Returns 0 if PHD is not defined.

Definition at line 97 of file KVSilicon.cpp.

◆ GetThickness()

virtual Double_t KVSilicon::GetThickness ( ) const
inlinevirtual

Returns thickness of active layer in microns

Reimplemented from KVMaterial.

Definition at line 43 of file KVSilicon.h.

◆ init()

void KVSilicon::init ( void  )
private

Definition at line 28 of file KVSilicon.cpp.

◆ SetMoultonPHDParameters()

void KVSilicon::SetMoultonPHDParameters ( Double_t  a1,
Double_t  a2,
Double_t  b1,
Double_t  b2 
)

Sets parameters of Moulton formula used to calculate PHD for particles stopping in this detector. The parameters are as in the following:

log_10(PHD) = b(Z) + a(Z)*log_10(E)

with a(Z) = a_1*(Z**2/1000) + a_2 b(Z) = b_1*(100/Z) + b_2 E = energy lost by particle

See class KVPulseHeightDefect

Definition at line 123 of file KVSilicon.cpp.

◆ SetThickness()

void KVSilicon::SetThickness ( Double_t  thick)
inlinevirtual

Sets thickness of active layer in microns

Reimplemented from KVINDRADetector.

Definition at line 37 of file KVSilicon.h.