Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TGeoMaterial Class Reference

Base class describing materials.

Important note about units

Since v6-17-02 the geometry package adopted a system of units, upon the request to support an in-memory material representation consistent with the one in Geant4. The adoption was done gradually and starting with v6-19-02 (back-ported to v6-18-02) the package supports changing the default units to either ROOT (CGS) or Geant4 ones. In the same version the Geant4 units were set to be the default ones, changing the previous behavior and making material properties such as radiation and interaction lengths having in memory values an order of magnitude lower. This behavior affected versions up to v6-25-01, after which the default units were restored to be the ROOT ones.

For users needing to restore the CGS behavior for material properties, the following sequence needs to be called before creating the TGeoManager instance: From v6-18-02 to v6-22-06:

TGeoUnit::setUnitType(TGeoUnit::kTGeoUnits);

From v6-22-08 to v6-25-01:

static void SetDefaultUnits(EDefaultUnits new_value)
static Bool_t LockDefaultUnits(Bool_t new_value)

Definition at line 34 of file TGeoMaterial.h.

Public Types

enum  EGeoMaterial { kMatUsed = (1ULL << ( 17 )) , kMatSavePrimitive = (1ULL << ( 18 )) }
 
enum  EGeoMaterialState { kMatStateUndefined , kMatStateSolid , kMatStateLiquid , kMatStateGas }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 

Public Member Functions

 TGeoMaterial ()
 Default constructor.
 
 TGeoMaterial (const char *name)
 Constructor.
 
 TGeoMaterial (const char *name, Double_t a, Double_t z, Double_t rho, Double_t radlen=0, Double_t intlen=0)
 Constructor.
 
 TGeoMaterial (const char *name, Double_t a, Double_t z, Double_t rho, EGeoMaterialState state, Double_t temperature=STP_temperature, Double_t pressure=STP_pressure)
 Constructor with state, temperature and pressure.
 
 TGeoMaterial (const char *name, TGeoElement *elem, Double_t rho)
 Constructor.
 
 ~TGeoMaterial () override
 Destructor.
 
bool AddConstProperty (const char *property, const char *ref)
 
bool AddProperty (const char *property, const char *ref)
 
virtual TGeoMaterialDecayMaterial (Double_t time, Double_t precision=0.001)
 Create the material representing the decay product of this material at a given time.
 
virtual void FillMaterialEvolution (TObjArray *population, Double_t precision=0.001)
 Fills a user array with all the elements deriving from the possible decay of the top element composing the mixture.
 
virtual Double_t GetA () const
 
TGeoElementGetBaseElement () const
 
virtual Int_t GetByteCount () const
 
virtual TObjectGetCerenkovProperties () const
 
TList const & GetConstProperties () const
 
Double_t GetConstProperty (const char *property, Bool_t *error=nullptr) const
 
Double_t GetConstProperty (Int_t i, Bool_t *error=nullptr) const
 
const char * GetConstPropertyRef (const char *property) const
 
const char * GetConstPropertyRef (Int_t i) const
 
virtual Int_t GetDefaultColor () const
 Get some default color related to this material.
 
virtual Double_t GetDensity () const
 
TGeoElementGetElement () const
 Get a pointer to the element this material is made of.
 
virtual TGeoElementGetElement (Int_t i) const
 Get a pointer to the element this material is made of.
 
virtual void GetElementProp (Double_t &a, Double_t &z, Double_t &w, Int_t i=0)
 Single interface to get element properties.
 
TGeoExtensionGetFWExtension () const
 
Int_t GetIndex ()
 Retrieve material index in the list of materials.
 
virtual Double_t GetIntLen () const
 
Int_t GetNconstProperties () const
 
virtual Int_t GetNelements () const
 
Int_t GetNproperties () const
 
const char * GetPointerName () const
 Provide a pointer name containing uid.
 
Double_t GetPressure () const
 
TList const & GetProperties () const
 
TGDMLMatrixGetProperty (const char *name) const
 
TGDMLMatrixGetProperty (Int_t i) const
 
const char * GetPropertyRef (const char *property) const
 
const char * GetPropertyRef (Int_t i) const
 
virtual Double_t GetRadLen () const
 
virtual Double_t GetSpecificActivity (Int_t) const
 
EGeoMaterialState GetState () const
 
Double_t GetTemperature () const
 
Char_t GetTransparency () const
 
TGeoExtensionGetUserExtension () const
 
virtual Double_t GetZ () const
 
TGeoExtensionGrabFWExtension () const
 Get a copy of the framework extension pointer.
 
TGeoExtensionGrabUserExtension () const
 Get a copy of the user extension pointer.
 
TClassIsA () const override
 
virtual Bool_t IsEq (const TGeoMaterial *other) const
 return true if the other material has the same physical properties
 
virtual Bool_t IsMixture () const
 
Bool_t IsUsed () const
 
void Print (const Option_t *option="") const override
 print characteristics of this material
 
void SavePrimitive (std::ostream &out, Option_t *option="") override
 Save a primitive as a C++ statement(s) on output stream "out".
 
virtual void SetA (Double_t a)
 
virtual void SetCerenkovProperties (TObject *cerenkov)
 
virtual void SetDensity (Double_t density)
 
void SetFWExtension (TGeoExtension *ext)
 Connect framework defined extension to the material.
 
void SetIndex (Int_t index)
 
void SetPressure (Double_t pressure)
 
void SetRadLen (Double_t radlen, Double_t intlen=0.)
 Set radiation/absorption lengths.
 
void SetState (EGeoMaterialState state)
 
void SetTemperature (Double_t temperature)
 
void SetTransparency (Char_t transparency=0)
 
void SetUsed (Bool_t flag=kTRUE)
 
void SetUserExtension (TGeoExtension *ext)
 Connect user-defined extension to the material.
 
virtual void SetZ (Double_t z)
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor.
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 TNamed destructor.
 
void Clear (Option_t *option="") override
 Set name and title to empty strings ("").
 
TObjectClone (const char *newname="") const override
 Make a clone of an object using the Streamer facility.
 
Int_t Compare (const TObject *obj) const override
 Compare two TNamed objects.
 
void Copy (TObject &named) const override
 Copy this to obj.
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer.
 
const char * GetName () const override
 Returns name of object.
 
const char * GetTitle () const override
 Returns title of object.
 
ULong_t Hash () const override
 Return hash value for this object.
 
TClassIsA () const override
 
Bool_t IsSortable () const override
 
void ls (Option_t *option="") const override
 List TNamed name and title.
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator.
 
void Print (Option_t *option="") const override
 Print TNamed name and title.
 
virtual void SetName (const char *name)
 Set the name of the TNamed.
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title).
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed.
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject.
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Delete (Option_t *option="")
 Delete this object.
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
virtual void Dump () const
 Dump contents of object on stdout.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification (the base implementation is no-op).
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *vp)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 
- Public Member Functions inherited from TAttFill
 TAttFill ()
 AttFill default constructor.
 
 TAttFill (Color_t fcolor, Style_t fstyle)
 AttFill normal constructor.
 
virtual ~TAttFill ()
 AttFill destructor.
 
void Copy (TAttFill &attfill) const
 Copy this fill attributes to a new TAttFill.
 
virtual Color_t GetFillColor () const
 Return the fill area color.
 
virtual Style_t GetFillStyle () const
 Return the fill area style.
 
virtual Bool_t IsTransparent () const
 
virtual void Modify ()
 Change current fill area attributes if necessary.
 
virtual void ResetAttFill (Option_t *option="")
 Reset this fill attributes to default values.
 
virtual void SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001)
 Save fill attributes as C++ statement(s) on output stream out.
 
virtual void SetFillAttributes ()
 Invoke the DialogCanvas Fill attributes.
 
virtual void SetFillColor (Color_t fcolor)
 Set the fill area color.
 
virtual void SetFillColorAlpha (Color_t fcolor, Float_t falpha)
 Set a transparent fill color.
 
virtual void SetFillStyle (Style_t fstyle)
 Set the fill area style.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static Double_t Coulomb (Double_t z)
 static function Compute Coulomb correction for pair production and Brem REFERENCE : EGS MANUAL SLAC 210 - UC32 - JUNE 78 FORMULA 2.7.17
 
static const char * DeclFileName ()
 
static Double_t ScreenFactor (Double_t z)
 static function Compute screening factor for pair production and Bremsstrahlung REFERENCE : EGS MANUAL SLAC 210 - UC32 - JUNE 78 FORMULA 2.7.22
 
- 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 ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Public Member Functions inherited from TAttFill
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 

Protected Member Functions

 TGeoMaterial (const TGeoMaterial &)
 Transient framework-defined extension to materials.
 
TGeoMaterialoperator= (const TGeoMaterial &)
 assignment operator
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 

Protected Attributes

Double_t fA
 
TObjectfCerenkov
 
TList fConstProperties
 
Double_t fDensity
 
TGeoElementfElement
 
TGeoExtensionfFWExtension
 Transient user-defined extension to materials.
 
Int_t fIndex
 
Double_t fIntLen
 
Double_t fPressure
 
TList fProperties
 
Double_t fRadLen
 
TObjectfShader
 
EGeoMaterialState fState
 
Double_t fTemperature
 
TGeoExtensionfUserExtension
 
Double_t fZ
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttFill
Color_t fFillColor
 Fill area color.
 
Style_t fFillStyle
 Fill area style.
 

Additional Inherited Members

- Protected Types inherited from TObject
enum  { kOnlyPrepStep = (1ULL << ( 3 )) }
 

#include <TGeoMaterial.h>

Inheritance diagram for TGeoMaterial:
[legend]

Member Enumeration Documentation

◆ EGeoMaterial

Enumerator
kMatUsed 
kMatSavePrimitive 

Definition at line 36 of file TGeoMaterial.h.

◆ EGeoMaterialState

Enumerator
kMatStateUndefined 
kMatStateSolid 
kMatStateLiquid 
kMatStateGas 

Definition at line 37 of file TGeoMaterial.h.

Constructor & Destructor Documentation

◆ TGeoMaterial() [1/6]

TGeoMaterial::TGeoMaterial ( const TGeoMaterial gm)
protected

Transient framework-defined extension to materials.

Definition at line 264 of file TGeoMaterial.cxx.

◆ TGeoMaterial() [2/6]

TGeoMaterial::TGeoMaterial ( )

Default constructor.

Definition at line 60 of file TGeoMaterial.cxx.

◆ TGeoMaterial() [3/6]

TGeoMaterial::TGeoMaterial ( const char *  name)

Constructor.

Parameters
namematerial name.

Definition at line 91 of file TGeoMaterial.cxx.

◆ TGeoMaterial() [4/6]

TGeoMaterial::TGeoMaterial ( const char *  name,
Double_t  a,
Double_t  z,
Double_t  rho,
Double_t  radlen = 0,
Double_t  intlen = 0 
)

Constructor.

Parameters
namematerial name.
aatomic mass.
zatomic number.
rhomaterial density in g/cm3.
radlen
intlen

Definition at line 133 of file TGeoMaterial.cxx.

◆ TGeoMaterial() [5/6]

TGeoMaterial::TGeoMaterial ( const char *  name,
Double_t  a,
Double_t  z,
Double_t  rho,
EGeoMaterialState  state,
Double_t  temperature = STP_temperature,
Double_t  pressure = STP_pressure 
)

Constructor with state, temperature and pressure.

Parameters
namematerial name.
aatomic mass.
zatomic number.
rhomaterial density in g/cm3.
state
temperature
pressure

Definition at line 183 of file TGeoMaterial.cxx.

◆ TGeoMaterial() [6/6]

TGeoMaterial::TGeoMaterial ( const char *  name,
TGeoElement elem,
Double_t  rho 
)

Constructor.

Parameters
namematerial name.
elem
rhomaterial density in g/cm3.

Definition at line 224 of file TGeoMaterial.cxx.

◆ ~TGeoMaterial()

TGeoMaterial::~TGeoMaterial ( )
override

Destructor.

Definition at line 326 of file TGeoMaterial.cxx.

Member Function Documentation

◆ AddConstProperty()

bool TGeoMaterial::AddConstProperty ( const char *  property,
const char *  ref 
)

Definition at line 430 of file TGeoMaterial.cxx.

◆ AddProperty()

bool TGeoMaterial::AddProperty ( const char *  property,
const char *  ref 
)

Definition at line 418 of file TGeoMaterial.cxx.

◆ Class()

static TClass * TGeoMaterial::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TGeoMaterial::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TGeoMaterial::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 154 of file TGeoMaterial.h.

◆ Coulomb()

Double_t TGeoMaterial::Coulomb ( Double_t  z)
static

static function Compute Coulomb correction for pair production and Brem REFERENCE : EGS MANUAL SLAC 210 - UC32 - JUNE 78 FORMULA 2.7.17

Definition at line 549 of file TGeoMaterial.cxx.

◆ DecayMaterial()

TGeoMaterial * TGeoMaterial::DecayMaterial ( Double_t  time,
Double_t  precision = 0.001 
)
virtual

Create the material representing the decay product of this material at a given time.

The precision represent the minimum cumulative branching ratio for which decay products are still taken into account.

Reimplemented in TGeoMixture.

Definition at line 671 of file TGeoMaterial.cxx.

◆ DeclFileName()

static const char * TGeoMaterial::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 154 of file TGeoMaterial.h.

◆ FillMaterialEvolution()

void TGeoMaterial::FillMaterialEvolution ( TObjArray population,
Double_t  precision = 0.001 
)
virtual

Fills a user array with all the elements deriving from the possible decay of the top element composing the mixture.

Each element contained by <population> may be a radionuclide having a Bateman solution attached. The precision represent the minimum cumulative branching ratio for which decay products are still taken into account. To visualize the time evolution of each decay product one can use:

TGeoElement *elem = population->At(index);
TGeoElementRN *elemrn = 0;
if (elem->IsRadioNuclide()) elemrn = (TGeoElementRN*)elem;
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
Class representing a radionuclidevoid TGeoManager::SetDefaultRootUnits() { if ( fgDefaultUnits == kRo...
Base class for chemical elements.
Definition TGeoElement.h:36
virtual Bool_t IsRadioNuclide() const
Definition TGeoElement.h:82

One can get Ni/N1(t=0) at any moment of time. Ni is the number of atoms of one of the decay products, N1(0) is the number of atoms of the top element at t=0.

Double_t fraction_weight = elemrn->Ratio()->Concentration(time);
Double_t Concentration(Double_t time) const
Find concentration of the element at a given time.
TGeoBatemanSol * Ratio() const

One can also display the time evolution of the fractional weight:

elemrn->Ratio()->Draw(option);
Option_t Option_t option
void Draw(Option_t *option="") override
Draw the solution of Bateman equation versus time.

Reimplemented in TGeoMixture.

Definition at line 742 of file TGeoMaterial.cxx.

◆ GetA()

virtual Double_t TGeoMaterial::GetA ( ) const
inlinevirtual

Definition at line 99 of file TGeoMaterial.h.

◆ GetBaseElement()

TGeoElement * TGeoMaterial::GetBaseElement ( ) const
inline

Definition at line 107 of file TGeoMaterial.h.

◆ GetByteCount()

virtual Int_t TGeoMaterial::GetByteCount ( ) const
inlinevirtual

Reimplemented in TGeoMixture.

Definition at line 98 of file TGeoMaterial.h.

◆ GetCerenkovProperties()

virtual TObject * TGeoMaterial::GetCerenkovProperties ( ) const
inlinevirtual

Definition at line 112 of file TGeoMaterial.h.

◆ GetConstProperties()

TList const & TGeoMaterial::GetConstProperties ( ) const
inline

Definition at line 95 of file TGeoMaterial.h.

◆ GetConstProperty() [1/2]

Double_t TGeoMaterial::GetConstProperty ( const char *  property,
Bool_t error = nullptr 
) const

Definition at line 392 of file TGeoMaterial.cxx.

◆ GetConstProperty() [2/2]

Double_t TGeoMaterial::GetConstProperty ( Int_t  i,
Bool_t error = nullptr 
) const

Definition at line 405 of file TGeoMaterial.cxx.

◆ GetConstPropertyRef() [1/2]

const char * TGeoMaterial::GetConstPropertyRef ( const char *  property) const

Definition at line 384 of file TGeoMaterial.cxx.

◆ GetConstPropertyRef() [2/2]

const char * TGeoMaterial::GetConstPropertyRef ( Int_t  i) const
inline

Definition at line 90 of file TGeoMaterial.h.

◆ GetDefaultColor()

Int_t TGeoMaterial::GetDefaultColor ( ) const
virtual

Get some default color related to this material.

Definition at line 614 of file TGeoMaterial.cxx.

◆ GetDensity()

virtual Double_t TGeoMaterial::GetDensity ( ) const
inlinevirtual

Definition at line 102 of file TGeoMaterial.h.

◆ GetElement() [1/2]

TGeoElement * TGeoMaterial::GetElement ( ) const

Get a pointer to the element this material is made of.

This second call is to avoid warnings to not call a virtual method from the constructor

Definition at line 625 of file TGeoMaterial.cxx.

◆ GetElement() [2/2]

TGeoElement * TGeoMaterial::GetElement ( Int_t  i) const
virtual

Get a pointer to the element this material is made of.

Reimplemented in TGeoMixture.

Definition at line 636 of file TGeoMaterial.cxx.

◆ GetElementProp()

void TGeoMaterial::GetElementProp ( Double_t a,
Double_t z,
Double_t w,
Int_t  i = 0 
)
virtual

Single interface to get element properties.

Reimplemented in TGeoMixture.

Definition at line 647 of file TGeoMaterial.cxx.

◆ GetFWExtension()

TGeoExtension * TGeoMaterial::GetFWExtension ( ) const
inline

Definition at line 119 of file TGeoMaterial.h.

◆ GetIndex()

Int_t TGeoMaterial::GetIndex ( )

Retrieve material index in the list of materials.

Definition at line 657 of file TGeoMaterial.cxx.

◆ GetIntLen()

virtual Double_t TGeoMaterial::GetIntLen ( ) const
inlinevirtual

Definition at line 110 of file TGeoMaterial.h.

◆ GetNconstProperties()

Int_t TGeoMaterial::GetNconstProperties ( ) const
inline

Definition at line 81 of file TGeoMaterial.h.

◆ GetNelements()

virtual Int_t TGeoMaterial::GetNelements ( ) const
inlinevirtual

Reimplemented in TGeoMixture.

Definition at line 103 of file TGeoMaterial.h.

◆ GetNproperties()

Int_t TGeoMaterial::GetNproperties ( ) const
inline

Definition at line 80 of file TGeoMaterial.h.

◆ GetPointerName()

const char * TGeoMaterial::GetPointerName ( ) const

Provide a pointer name containing uid.

Definition at line 485 of file TGeoMaterial.cxx.

◆ GetPressure()

Double_t TGeoMaterial::GetPressure ( ) const
inline

Definition at line 115 of file TGeoMaterial.h.

◆ GetProperties()

TList const & TGeoMaterial::GetProperties ( ) const
inline

Definition at line 94 of file TGeoMaterial.h.

◆ GetProperty() [1/2]

TGDMLMatrix * TGeoMaterial::GetProperty ( const char *  name) const

Definition at line 364 of file TGeoMaterial.cxx.

◆ GetProperty() [2/2]

TGDMLMatrix * TGeoMaterial::GetProperty ( Int_t  i) const

Definition at line 374 of file TGeoMaterial.cxx.

◆ GetPropertyRef() [1/2]

const char * TGeoMaterial::GetPropertyRef ( const char *  property) const

Definition at line 356 of file TGeoMaterial.cxx.

◆ GetPropertyRef() [2/2]

const char * TGeoMaterial::GetPropertyRef ( Int_t  i) const
inline

Definition at line 83 of file TGeoMaterial.h.

◆ GetRadLen()

virtual Double_t TGeoMaterial::GetRadLen ( ) const
inlinevirtual

Definition at line 109 of file TGeoMaterial.h.

◆ GetSpecificActivity()

virtual Double_t TGeoMaterial::GetSpecificActivity ( Int_t  ) const
inlinevirtual

Reimplemented in TGeoMixture.

Definition at line 117 of file TGeoMaterial.h.

◆ GetState()

EGeoMaterialState TGeoMaterial::GetState ( ) const
inline

Definition at line 116 of file TGeoMaterial.h.

◆ GetTemperature()

Double_t TGeoMaterial::GetTemperature ( ) const
inline

Definition at line 114 of file TGeoMaterial.h.

◆ GetTransparency()

Char_t TGeoMaterial::GetTransparency ( ) const
inline

Definition at line 113 of file TGeoMaterial.h.

◆ GetUserExtension()

TGeoExtension * TGeoMaterial::GetUserExtension ( ) const
inline

Definition at line 118 of file TGeoMaterial.h.

◆ GetZ()

virtual Double_t TGeoMaterial::GetZ ( ) const
inlinevirtual

Definition at line 100 of file TGeoMaterial.h.

◆ GrabFWExtension()

TGeoExtension * TGeoMaterial::GrabFWExtension ( ) const

Get a copy of the framework extension pointer.

The user must call Release() on the copy pointer once this pointer is not needed anymore (equivalent to delete() after calling new())

Definition at line 475 of file TGeoMaterial.cxx.

◆ GrabUserExtension()

TGeoExtension * TGeoMaterial::GrabUserExtension ( ) const

Get a copy of the user extension pointer.

The user must call Release() on the copy pointer once this pointer is not needed anymore (equivalent to delete() after calling new())

Definition at line 463 of file TGeoMaterial.cxx.

◆ IsA()

TClass * TGeoMaterial::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TObject.

Reimplemented in TGeoMixture.

Definition at line 154 of file TGeoMaterial.h.

◆ IsEq()

Bool_t TGeoMaterial::IsEq ( const TGeoMaterial other) const
virtual

return true if the other material has the same physical properties

Reimplemented in TGeoMixture.

Definition at line 563 of file TGeoMaterial.cxx.

◆ IsMixture()

virtual Bool_t TGeoMaterial::IsMixture ( ) const
inlinevirtual

Reimplemented in TGeoMixture.

Definition at line 124 of file TGeoMaterial.h.

◆ IsUsed()

Bool_t TGeoMaterial::IsUsed ( ) const
inline

Definition at line 123 of file TGeoMaterial.h.

◆ operator=()

TGeoMaterial & TGeoMaterial::operator= ( const TGeoMaterial gm)
protected

assignment operator

Definition at line 295 of file TGeoMaterial.cxx.

◆ Print()

void TGeoMaterial::Print ( const Option_t option = "") const
override

print characteristics of this material

Definition at line 585 of file TGeoMaterial.cxx.

◆ SavePrimitive()

void TGeoMaterial::SavePrimitive ( std::ostream &  out,
Option_t option = "" 
)
overridevirtual

Save a primitive as a C++ statement(s) on output stream "out".

Reimplemented from TObject.

Reimplemented in TGeoMixture.

Definition at line 594 of file TGeoMaterial.cxx.

◆ ScreenFactor()

Double_t TGeoMaterial::ScreenFactor ( Double_t  z)
static

static function Compute screening factor for pair production and Bremsstrahlung REFERENCE : EGS MANUAL SLAC 210 - UC32 - JUNE 78 FORMULA 2.7.22

Definition at line 1343 of file TGeoMaterial.cxx.

◆ SetA()

virtual void TGeoMaterial::SetA ( Double_t  a)
inlinevirtual

Reimplemented in TGeoMixture.

Definition at line 127 of file TGeoMaterial.h.

◆ SetCerenkovProperties()

virtual void TGeoMaterial::SetCerenkovProperties ( TObject cerenkov)
inlinevirtual

Definition at line 143 of file TGeoMaterial.h.

◆ SetDensity()

virtual void TGeoMaterial::SetDensity ( Double_t  density)
inlinevirtual

Reimplemented in TGeoMixture.

Definition at line 137 of file TGeoMaterial.h.

◆ SetFWExtension()

void TGeoMaterial::SetFWExtension ( TGeoExtension ext)

Connect framework defined extension to the material.

The material "grabs" a copy, so the original object can be released by the producer. Release the previously connected extension if any.

NOTE: This interface is intended for the use by TGeo and the users should NOT connect extensions using this method

Definition at line 449 of file TGeoMaterial.cxx.

◆ SetIndex()

void TGeoMaterial::SetIndex ( Int_t  index)
inline

Definition at line 142 of file TGeoMaterial.h.

◆ SetPressure()

void TGeoMaterial::SetPressure ( Double_t  pressure)
inline

Definition at line 148 of file TGeoMaterial.h.

◆ SetRadLen()

void TGeoMaterial::SetRadLen ( Double_t  radlen,
Double_t  intlen = 0. 
)

Set radiation/absorption lengths.

If the values are negative, their absolute value is taken, otherwise radlen is recomputed using G3 formula.

Definition at line 496 of file TGeoMaterial.cxx.

◆ SetState()

void TGeoMaterial::SetState ( EGeoMaterialState  state)
inline

Definition at line 149 of file TGeoMaterial.h.

◆ SetTemperature()

void TGeoMaterial::SetTemperature ( Double_t  temperature)
inline

Definition at line 147 of file TGeoMaterial.h.

◆ SetTransparency()

void TGeoMaterial::SetTransparency ( Char_t  transparency = 0)
inline

Definition at line 146 of file TGeoMaterial.h.

◆ SetUsed()

void TGeoMaterial::SetUsed ( Bool_t  flag = kTRUE)
inline

Definition at line 145 of file TGeoMaterial.h.

◆ SetUserExtension()

void TGeoMaterial::SetUserExtension ( TGeoExtension ext)

Connect user-defined extension to the material.

The material "grabs" a copy, so the original object can be released by the producer. Release the previously connected extension if any.

NOTE: This interface is intended for user extensions and is guaranteed not to be used by TGeo

Definition at line 346 of file TGeoMaterial.cxx.

◆ SetZ()

virtual void TGeoMaterial::SetZ ( Double_t  z)
inlinevirtual

Reimplemented in TGeoMixture.

Definition at line 132 of file TGeoMaterial.h.

◆ Streamer()

void TGeoMaterial::Streamer ( TBuffer R__b)
overridevirtual

Stream an object of class TObject.

Reimplemented from TObject.

Reimplemented in TGeoMixture.

◆ StreamerNVirtual()

void TGeoMaterial::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 154 of file TGeoMaterial.h.

Member Data Documentation

◆ fA

Double_t TGeoMaterial::fA
protected

Definition at line 41 of file TGeoMaterial.h.

◆ fCerenkov

TObject* TGeoMaterial::fCerenkov
protected

Definition at line 50 of file TGeoMaterial.h.

◆ fConstProperties

TList TGeoMaterial::fConstProperties
protected

Definition at line 53 of file TGeoMaterial.h.

◆ fDensity

Double_t TGeoMaterial::fDensity
protected

Definition at line 43 of file TGeoMaterial.h.

◆ fElement

TGeoElement* TGeoMaterial::fElement
protected

Definition at line 51 of file TGeoMaterial.h.

◆ fFWExtension

TGeoExtension* TGeoMaterial::fFWExtension
protected

Transient user-defined extension to materials.

Definition at line 55 of file TGeoMaterial.h.

◆ fIndex

Int_t TGeoMaterial::fIndex
protected

Definition at line 40 of file TGeoMaterial.h.

◆ fIntLen

Double_t TGeoMaterial::fIntLen
protected

Definition at line 45 of file TGeoMaterial.h.

◆ fPressure

Double_t TGeoMaterial::fPressure
protected

Definition at line 47 of file TGeoMaterial.h.

◆ fProperties

TList TGeoMaterial::fProperties
protected

Definition at line 52 of file TGeoMaterial.h.

◆ fRadLen

Double_t TGeoMaterial::fRadLen
protected

Definition at line 44 of file TGeoMaterial.h.

◆ fShader

TObject* TGeoMaterial::fShader
protected

Definition at line 49 of file TGeoMaterial.h.

◆ fState

EGeoMaterialState TGeoMaterial::fState
protected

Definition at line 48 of file TGeoMaterial.h.

◆ fTemperature

Double_t TGeoMaterial::fTemperature
protected

Definition at line 46 of file TGeoMaterial.h.

◆ fUserExtension

TGeoExtension* TGeoMaterial::fUserExtension
protected

Definition at line 54 of file TGeoMaterial.h.

◆ fZ

Double_t TGeoMaterial::fZ
protected

Definition at line 42 of file TGeoMaterial.h.

Libraries for TGeoMaterial:

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