/*
$Log$
+Revision 1.10 2000/10/02 21:28:15 fca
+Removal of useless dependecies via forward declarations
+
+Revision 1.9 2000/06/11 12:32:12 morsch
+Coding rule violations corrected
+
+Revision 1.8 2000/02/23 13:46:04 morsch
+Detailed composition of insulation material.
+
+Revision 1.7 2000/01/12 15:36:28 morsch
+Base class only
+
Revision 1.6 1999/09/29 09:24:29 fca
Introduction of the Copyright and cvs Log
#include "AliABSO.h"
#include "AliRun.h"
+#include "AliMagF.h"
#include "AliConst.h"
ClassImp(AliABSO)
//
// Define materials for muon absorber
//
- Int_t ISXFLD = gAlice->Field()->Integ();
- Float_t SXMGMX = gAlice->Field()->Max();
+ Int_t isxfld = gAlice->Field()->Integ();
+ Float_t sxmgmx = gAlice->Field()->Max();
Float_t apoly[2] = { 12.01,1. };
Float_t zpoly[2] = { 6.,1. };
Float_t aniwcu[3] ={58.6934, 183.84, 63.546};
Float_t zniwcu[3] ={28., 74., 29};
Float_t wniwcu[3] ={0.015,0.95,0.035};
+// Poly Concrete
+// H Li F C Al Si Ca Pb O
+ Float_t aPolyCc[9] = {1. , 6.941, 18.998, 12.01, 26.98, 28.086, 40.078, 207.2, 15.999};
+ Float_t zPolyCc[9] = {1. , 3. , 9. , 6. , 13. , 14. , 20. , 82. , 8. };
+ Float_t wPolyCc[9] = {4.9, 1.2 , 1.3 , 1.1 , 0.15, 0.02 , 0.06 , 0.7, 1.1 };
+ Float_t wtot=0;
+ Int_t i=0;
+
+ for (i=0; i<9; i++) wtot+=wPolyCc[i];
+ for (i=0; i<9; i++) wPolyCc[i]/=wtot;
+
//
// Insulation powder
- Float_t ains[3] ={28.0855, 15.9994};
- Float_t zins[3] ={14., 8.};
- Float_t wins[3] ={1., 2.};
+// Si O Ti Al
+ Float_t ains[4] ={28.0855, 15.9994, 47.867, 26.982};
+ Float_t zins[4] ={14., 8. , 22. , 13. };
+ Float_t wins[4] ={ 0.3019, 0.4887, 0.1914, 0.018};
//
Float_t epsil, stmin, tmaxfd, deemax, stemax;
//
// Carbon
- AliMaterial(6, "CARBON$ ", 12.01, 6., 2.265, 18.8, 49.9);
- AliMaterial(26, "CARBON$ ", 12.01, 6., 2.265, 18.8, 49.9);
- AliMaterial(46, "CARBON$ ", 12.01, 6., 2.265, 18.8, 49.9);
+ AliMaterial( 6, "CARBON$ ", 12.01, 6., 1.75, 24.4, 49.9);
+ AliMaterial(26, "CARBON$ ", 12.01, 6., 1.75, 24.4, 49.9);
+ AliMaterial(46, "CARBON$ ", 12.01, 6., 1.75, 24.4, 49.9);
//
// Aluminum
AliMaterial(9, "ALUMINIUM$", 26.98, 13., 2.7, 8.9, 37.2);
AliMaterial(30, "IRON$ ", 55.85, 26., 7.87, 1.76, 17.1);
AliMaterial(50, "IRON$ ", 55.85, 26., 7.87, 1.76, 17.1);
//
+ // Copper
+ AliMaterial(11, "COPPER$ ", 63.55, 29., 8.96, 1.43, 15.1);
+ AliMaterial(31, "COPPER$ ", 63.55, 29., 8.96, 1.43, 15.1);
+ AliMaterial(51, "COPPER$ ", 63.55, 29., 8.96, 1.43, 15.1);
+ //
// Tungsten
AliMaterial(12, "TUNGSTEN$ ", 183.85, 74., 19.3, .35, 10.3);
AliMaterial(32, "TUNGSTEN$ ", 183.85, 74., 19.3, .35, 10.3);
AliMixture(59, "STAINLESS STEEL$", asteel, zsteel, 7.88, 4, wsteel);
//
// Insulation powder
- AliMixture(14, "INSULATION$", ains, zins, 0.41, -2, wins);
- AliMixture(34, "INSULATION$", ains, zins, 0.41, 2, wins);
- AliMixture(54, "INSULATION$", ains, zins, 0.41, 2, wins);
+ AliMixture(14, "INSULATION$", ains, zins, 0.41, 4, wins);
+ AliMixture(34, "INSULATION$", ains, zins, 0.41, 4, wins);
+ AliMixture(54, "INSULATION$", ains, zins, 0.41, 4, wins);
+ // Polymere Concrete
+ AliMixture(20, "Poly Concrete$", aPolyCc, zPolyCc, 3.53, -9, wPolyCc);
+ AliMixture(40, "Poly Concrete$", aPolyCc, zPolyCc, 3.53, 9, wPolyCc);
+ AliMixture(60, "Poly Concrete$", aPolyCc, zPolyCc, 3.53, 9, wPolyCc);
//
// ****************
// ***************
//
// Carbon
- AliMedium(6, "C_C0 ", 6, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(26, "C_C1 ", 26, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(46, "C_C2 ", 46, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(6, "C_C0 ", 6, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(26, "C_C1 ", 26, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(46, "C_C2 ", 46, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Aluminum
- AliMedium(9, "ALU_C0 ", 9, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(29, "ALU_C1 ", 29, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(49, "ALU_C2 ", 49, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(9, "ALU_C0 ", 9, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(29, "ALU_C1 ", 29, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(49, "ALU_C2 ", 49, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Iron
- AliMedium(10, "FE_C0 ", 10, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(30, "FE_C1 ", 30, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(50, "FE_C2 ", 50, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(10, "FE_C0 ", 10, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(30, "FE_C1 ", 30, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(50, "FE_C2 ", 50, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ //
+ // Copper
+ AliMedium(11, "Cu_C0 ", 11, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(31, "Cu_C1 ", 31, 0, isxfld, sxmgmx, tmaxfd, -stemax, deemax, epsil, stmin);
+ AliMedium(51, "Cu_C2 ", 51, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Tungsten
- AliMedium(12, "W_C0 ", 12, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(32, "W_C1 ", 32, 0, ISXFLD, SXMGMX, tmaxfd, -stemax, deemax, epsil, stmin);
- AliMedium(52, "W_C2 ", 52, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(12, "W_C0 ", 12, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(32, "W_C1 ", 32, 0, isxfld, sxmgmx, tmaxfd, -stemax, deemax, epsil, stmin);
+ AliMedium(52, "W_C2 ", 52, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
// Ni/Tungsten
- AliMedium(21, "Ni/W0 ", 21, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(41, "Ni/W1 ", 41, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(61, "Ni/W3 ", 61, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(21, "Ni/W0 ", 21, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(41, "Ni/W1 ", 41, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(61, "Ni/W3 ", 61, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Lead
- AliMedium(13, "PB_C0 ", 13, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(33, "PB_C1 ", 33, 0, ISXFLD, SXMGMX, tmaxfd, -stemax, deemax, epsil, stmin);
- AliMedium(53, "PB_C2 ", 53, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(13, "PB_C0 ", 13, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(33, "PB_C1 ", 33, 0, isxfld, sxmgmx, tmaxfd, -stemax, deemax, epsil, stmin);
+ AliMedium(53, "PB_C2 ", 53, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Insulation Powder
- AliMedium(14, "INS_C0 ", 14, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(34, "INS_C1 ", 34, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(54, "INS_C2 ", 54, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(14, "INS_C0 ", 14, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(34, "INS_C1 ", 34, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(54, "INS_C2 ", 54, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Air
- AliMedium(15, "AIR_C0 ", 15, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(35, "AIR_C1 ", 35, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(55, "AIR_C2 ", 55, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(15, "AIR_C0 ", 15, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(35, "AIR_C1 ", 35, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(55, "AIR_C2 ", 55, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Vacuum
- AliMedium(16, "VA_C0 ", 16, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(36, "VA_C1 ", 36, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(56, "VA_C2 ", 56, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(16, "VA_C0 ", 16, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(36, "VA_C1 ", 36, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(56, "VA_C2 ", 56, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Concrete
- AliMedium(17, "CC_C0 ", 17, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(37, "CC_C1 ", 37, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(57, "CC_C2 ", 57, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(17, "CC_C0 ", 17, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(37, "CC_C1 ", 37, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(57, "CC_C2 ", 57, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Polyethilene
- AliMedium(18, "CH2_C0 ", 18, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(38, "CH2_C1 ", 38, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(58, "CH2_C2 ", 58, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(18, "CH2_C0 ", 18, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(38, "CH2_C1 ", 38, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(58, "CH2_C2 ", 58, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
//
// Steel
- AliMedium(19, "ST_C0 ", 19, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(39, "ST_C1 ", 39, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(59, "ST_C3 ", 59, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(19, "ST_C0 ", 19, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(39, "ST_C1 ", 39, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(59, "ST_C3 ", 59, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ //
+ // Polymer Concrete
+ AliMedium(20, "PCc_C0 ", 20, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(40, "PCc_C1 ", 40, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+ AliMedium(60, "PCc_C3 ", 60, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
}
//_____________________________________________________________________________
printf("\n");
}
+Int_t AliABSO::GetMatId(Int_t imat)
+{
+// Get geant material number
+ Int_t kmat=(*fIdmate)[imat];
+ return kmat;
+}