]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - TFluka/abscff.cxx
Macro to calculate the resolution and the efficiency of chamber(s) (Nicolas)
[u/mrichter/AliRoot.git] / TFluka / abscff.cxx
... / ...
CommitLineData
1#include "Fdimpar.h" //(DIMPAR) fluka include
2#include "Ftrackr.h" //(TRACKR) fluka common
3#include "Fiounit.h" //(IOUNIT) fluka common
4#include "TFluka.h"
5#include "TGeoMaterial.h"
6#include "TFlukaCerenkov.h"
7
8
9#ifndef WIN32
10# define abscff abscff_
11#else
12# define abscff ABSCFF
13#endif
14extern "C" {
15Double_t abscff(Double_t& wvlngt, Double_t& /*omgpho*/, Int_t& mmat)
16{
17// printf("abscff%f %d\n", wvlngt, mmat);
18
19//
20// Return absorption length for given photon energy and material
21//
22
23 TFluka* fluka = (TFluka*) gMC;
24//
25// Check if stopping has been required by user
26//
27 if (fluka->GetStoppingCondition()) {
28 fluka->ResetStoppingCondition();
29 return (1.e15);
30 }
31//
32// Get absorption coefficient for current material
33//
34 TGeoMaterial* material = (TGeoMaterial*) (fluka->GetFlukaMaterials())->At(fluka->GetMaterialIndex(mmat));
35 TFlukaCerenkov* cerenkov = dynamic_cast<TFlukaCerenkov*> (material->GetCerenkovProperties());
36 Double_t y = (cerenkov->GetAbsorptionCoefficientByWaveLength(wvlngt));
37 return (y);
38
39}
40}
41
42