00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #include "Materials.h"
00019
00020
00021
00022 #include "G4Material.hh"
00023 #include "G4NistManager.hh"
00024
00025
00026
00027 void Materials( G4bool output ) {
00028
00029
00030
00031 G4NistManager * Nist_man = G4NistManager::Instance();
00032
00033 Nist_man->FindOrBuildMaterial( "G4_Be" );
00034
00035 Nist_man->FindOrBuildMaterial( "G4_C" );
00036
00037 Nist_man->FindOrBuildMaterial( "G4_Al" );
00038
00039 Nist_man->FindOrBuildMaterial( "G4_Cu" );
00040
00041 Nist_man->FindOrBuildMaterial( "G4_Fe" );
00042
00043 Nist_man->FindOrBuildMaterial( "G4_Si" );
00044
00045 Nist_man->FindOrBuildMaterial( "G4_W" );
00046
00047 Nist_man->FindOrBuildMaterial( "G4_Pb" );
00048
00049 Nist_man->FindOrBuildMaterial( "G4_CARBON_DIOXIDE" );
00050
00051 Nist_man->FindOrBuildMaterial( "G4_KAPTON" );
00052
00053 Nist_man->FindOrBuildMaterial( "G4_MYLAR" );
00054
00055 Nist_man->FindOrBuildMaterial( "G4_BAKELITE" );
00056
00057 Nist_man->FindOrBuildMaterial( "G4_CONCRETE" );
00058
00059 Nist_man->FindOrBuildMaterial( "G4_PLASTIC_SC_VINYLTOLUENE" );
00060
00061 Nist_man->FindOrBuildMaterial( "G4_WATER" );
00062
00063 Nist_man->FindOrBuildMaterial( "G4_GLASS_PLATE" );
00064
00065 Nist_man->FindOrBuildMaterial( "G4_Galactic" );
00066
00067 Nist_man->FindOrBuildMaterial( "G4_PbWO4" );
00068
00069 Nist_man->FindOrBuildMaterial( "G4_GLASS_LEAD" );
00070
00071
00072
00073 G4Material * STP_Air
00074 = Nist_man->FindOrBuildMaterial( "G4_AIR" );
00075
00076
00077
00078
00079 G4Element * el_H
00080 = Nist_man->FindOrBuildElement( "H" );
00081
00082 G4Element * el_C
00083 = Nist_man->FindOrBuildElement( "C" );
00084
00085 G4Element * el_N
00086 = Nist_man->FindOrBuildElement( "N" );
00087
00088 G4Element * el_O
00089 = Nist_man->FindOrBuildElement( "O" );
00090
00091 G4Element * el_Al
00092 = Nist_man->FindOrBuildElement( "Al" );
00093
00094 G4Element * el_Si
00095 = Nist_man->FindOrBuildElement( "Si" );
00096
00097 G4Element * el_Ar
00098 = Nist_man->FindOrBuildElement( "Ar" );
00099
00100 G4Element * el_Mn
00101 = Nist_man->FindOrBuildElement( "Mn" );
00102
00103 G4Element * el_Cr
00104 = Nist_man->FindOrBuildElement( "Cr" );
00105
00106 G4Element * el_Mo
00107 = Nist_man->FindOrBuildElement( "Mo" );
00108
00109 G4Element * el_Ni
00110 = Nist_man->FindOrBuildElement( "Ni" );
00111
00112 G4Element * el_P
00113 = Nist_man->FindOrBuildElement( "P" );
00114
00115 G4Element * el_S
00116 = Nist_man->FindOrBuildElement( "S" );
00117
00118 G4Element * el_Fe
00119 = Nist_man->FindOrBuildElement( "Fe" );
00120
00121 G4Element * el_F
00122 = Nist_man->FindOrBuildElement( "F" );
00123
00124 G4Element * el_Pb
00125 = Nist_man->FindOrBuildElement( "Pb" );
00126
00127
00128
00129 G4Material * G10
00130 = new G4Material(
00131 "NemaG10",
00132 1.700 * g/cm3,
00133 4 );
00134
00135 G10->AddElement( el_Si, 1 );
00136 G10->AddElement( el_O, 2 );
00137 G10->AddElement( el_C, 3 );
00138 G10->AddElement( el_H, 3 );
00139
00140 G4Material * AlN
00141 = new G4Material(
00142 "AlN",
00143 3.3 * g/cm3,
00144 2 );
00145
00146 AlN->AddElement( el_Al, 1 );
00147 AlN->AddElement( el_N, 1 );
00148
00149 G4Material * SST316 = new
00150 G4Material( "SST316", 8.0 * g/cm3, 9 );
00151
00152 SST316->AddElement( el_Fe, 65.345 * perCent );
00153 SST316->AddElement( el_Cr, 17.000 * perCent );
00154 SST316->AddElement( el_Ni, 12.000 * perCent );
00155 SST316->AddElement( el_Mo, 2.500 * perCent );
00156 SST316->AddElement( el_Mn, 2.000 * perCent );
00157 SST316->AddElement( el_Si, 1.000 * perCent );
00158 SST316->AddElement( el_C, 0.080 * perCent );
00159 SST316->AddElement( el_P, 0.045 * perCent );
00160 SST316->AddElement( el_S, 0.030 * perCent );
00161
00162
00163
00164 G4Material * WC_gas
00165 = new G4Material(
00166 "WC_gas",
00167 1.70 * mg/cm3,
00168 3,
00169 kStateGas,
00170 293.15 * kelvin,
00171 1.0 * atmosphere );
00172
00173 WC_gas->AddElement( el_Ar, 7 );
00174 WC_gas->AddElement( el_O, 6 );
00175 WC_gas->AddElement( el_C, 3 );
00176
00177 G4Material * TPC_gas
00178 = new G4Material(
00179 "TPC_gas",
00180 1.6756 * mg/cm3 * 273.15 / 293.15,
00181 3,
00182 kStateGas,
00183 293.15 * kelvin,
00184 1.0 * atmosphere );
00185
00186 TPC_gas->AddElement( el_Ar, 9 );
00187 TPC_gas->AddElement( el_H, 4 );
00188 TPC_gas->AddElement( el_C, 1 );
00189
00190 G4Material * Air
00191 = new G4Material(
00192 "Air",
00193 1.2931 * mg/cm3 * 273.15 / 293.15,
00194 1,
00195 kStateGas,
00196 293.15 * kelvin,
00197 1.0 * atmosphere );
00198
00199 Air->AddMaterial( STP_Air, 1.0 );
00200
00201 G4Material * Beam_gas
00202 = new G4Material(
00203 "Beam_gas",
00204 1.2931E-11 * mg/cm3 * 273.15 / 293.15,
00205 1,
00206 kStateGas,
00207 293.15 * kelvin,
00208 1.0E-11 * atmosphere );
00209
00210 Beam_gas->AddMaterial( STP_Air, 1.0 );
00211
00212 G4Material * PbF2
00213 = new G4Material(
00214 "PbF2",
00215 7.77 * g/cm3,
00216 2 );
00217
00218 PbF2->AddElement( el_Pb, 1 );
00219 PbF2->AddElement( el_F, 2 );
00220
00221
00222
00223 if( output ) G4cout << "\n\nThe materials defined are:\n\n"
00224 << *(G4Material::GetMaterialTable())
00225 << G4endl;
00226
00227 }