Commit 2d28ed9d authored by Simon Spannagel's avatar Simon Spannagel
Browse files

Merge branch 'new_materials' into 'master'

New materials: Titanium, Titanium Grade 5

See merge request allpix-squared/allpix-squared!747
parents 909485f3 42a41a12
Loading
Loading
Loading
Loading
+16 −4
Original line number Diff line number Diff line
@@ -75,6 +75,7 @@ void Materials::set(const std::string& name, G4Material* material) {
 *   - nickel
 *   - gold
 *   - cadmium_telluride
 *   - titanium
 * - Composite or custom materials:
 *   - carbon fiber
 *   - epoxy
@@ -87,6 +88,7 @@ void Materials::set(const std::string& name, G4Material* material) {
 *   - cadmium zinc telluride
 *   - diamond
 *   - silicon carbide
 *   - titanium grade 5
 *   - vacuum
 */
void Materials::init_materials() {
@@ -108,18 +110,22 @@ void Materials::init_materials() {
    materials_["cadmium_telluride"] = nistman->FindOrBuildMaterial("G4_CADMIUM_TELLURIDE");
    materials_["nickel"] = nistman->FindOrBuildMaterial("G4_Ni");
    materials_["gold"] = nistman->FindOrBuildMaterial("G4_Au");
    materials_["titanium"] = nistman->FindOrBuildMaterial("G4_Ti");

    // Create required elements:
    auto* H = new G4Element("Hydrogen", "H", 1., 1.01 * CLHEP::g / CLHEP::mole);
    auto* C = new G4Element("Carbon", "C", 6., 12.01 * CLHEP::g / CLHEP::mole);
    auto* O = new G4Element("Oxygen", "O", 8., 16.0 * CLHEP::g / CLHEP::mole);
    auto* Cl = new G4Element("Chlorine", "Cl", 17., 35.45 * CLHEP::g / CLHEP::mole);
    auto* Sn = new G4Element("Tin", "Sn", 50., 118.710 * CLHEP::g / CLHEP::mole);
    auto* Pb = new G4Element("Lead", "Pb", 82., 207.2 * CLHEP::g / CLHEP::mole);
    auto* Al = new G4Element("Aluminum", "Al", 13, 26.98 * CLHEP::g / CLHEP::mole);
    auto* Si = new G4Element("Silicon", "Si", 14, 28.086 * CLHEP::g / CLHEP::mole);
    auto* Cd = new G4Element("Cadmium", "Cd", 48., 112.41 * CLHEP::g / CLHEP::mole);
    auto* Cl = new G4Element("Chlorine", "Cl", 17., 35.45 * CLHEP::g / CLHEP::mole);
    auto* Ti = new G4Element("Titanium", "Ti", 22., 47.87 * CLHEP::g / CLHEP::mole);
    auto* V = new G4Element("Vanadium", "Ti", 23., 50.94 * CLHEP::g / CLHEP::mole);
    auto* Zn = new G4Element("Zinc", "Zn", 30., 65.38 * CLHEP::g / CLHEP::mole);
    auto* Cd = new G4Element("Cadmium", "Cd", 48., 112.41 * CLHEP::g / CLHEP::mole);
    auto* Sn = new G4Element("Tin", "Sn", 50., 118.710 * CLHEP::g / CLHEP::mole);
    auto* Te = new G4Element("Tellurium", "Te", 52., 127.60 * CLHEP::g / CLHEP::mole);
    auto* Pb = new G4Element("Lead", "Pb", 82., 207.2 * CLHEP::g / CLHEP::mole);

    // Create Epoxy material
    auto* Epoxy = new G4Material("Epoxy", 1.3 * CLHEP::g / CLHEP::cm3, 3);
@@ -191,6 +197,12 @@ void Materials::init_materials() {
    SiliconCarbide->AddElement(C, 1);
    materials_["silicon_carbide"] = SiliconCarbide;

    auto* TitaniumGrade5 = new G4Material("Ti5", 4.43 * CLHEP::g / CLHEP::cm3, 3);
    TitaniumGrade5->AddElement(Ti, 0.89875);
    TitaniumGrade5->AddElement(Al, 0.06125);
    TitaniumGrade5->AddElement(V, 0.04);
    materials_["ti5"] = TitaniumGrade5;

    // Add vacuum
    materials_["vacuum"] = new G4Material("Vacuum", 1, 1.008 * CLHEP::g / CLHEP::mole, CLHEP::universe_mean_density);
}
+2 −0
Original line number Diff line number Diff line
@@ -96,6 +96,7 @@ This module can create support layers and passive volumes of the following mater
    * cadmium telluride
    * nickel
    * gold
    * titanium
* Composite or custom materials:
    * carbon fiber
    * epoxy
@@ -108,6 +109,7 @@ This module can create support layers and passive volumes of the following mater
    * cadmium zinc telluride
    * diamond
    * silicon carbide
    * titanium grade 5
    * vacuum

Furthermore, this module can automatically load any material defined in the Geant4 material database [@g4materials]. This comprises both simple materials and pre-defined NIST compounds.