Définition des matériaux dans Geant4
Transcription
Définition des matériaux dans Geant4
Définition des matériaux dans Geant4 Emmanuel Delage, Loïc Lestand, Yann Perrot, Bogdan Vulpescu 29/11/2012 Modification des transparents de Sébastien Incerti lors du Jefferson Lab Geant4 Tutorial 2012 1/14 Introduction • Les classes de définition des matériaux couvrent : - Elements, molecules, composés, mélanges & isotopes • La Base de donnée de matériaux du NIST : - Vue d’ensemble - Comment utiliser cette base de donnée? 2/14 Les classes de définition des matériaux • Description de la matière avec Geant4: G4Isotope isotope unique (Z et A specifique), G4Element mélanges d’isotopes, naturels ou enrichis, G4Material elements unique, molécules (molecule), composé (compounds) et mélanges (mixtures). => Nécéssaire à l’instanciation de la classe logical volume • G4Material transporte les attributs physiques - Densité : requise! - Temperature (STP = 273.15 K par défaut) - Pression (STP = 1 atm = 1e5 Pa par défaut) - Etat (solide – gaz – liquide ; par défault “solide” ou “gaz” selon la densité) • Une base de donnée du NIST est aussi disponible. 3/14 Le cas le plus simple: les matériaux élémentaires • Définir un matériau élémentaire simple, e.g. argon liquide G4double density = 1.390*g/cm3; G4double z = 18., a = 39.95*g/mole; G4Material* lAr = new G4Material ("liquidArgon", z, a, density); • Le vide (vacuum) est souvent utilisé G4double density = 0.001g/cm3; G4dpouble a = 14.007*g/mole; G4Material* vacuum = new G4Material ("vacuum", z=7., a , density); • Pour implémenter le vide, il est préférable d’utiliser une densité très faible plutôt que nulle (density = 0) ou d’utiliser G4_Galactic • Un matériel moyen n’est pas autorisé (e.g. z=27.5) 4/14 Les éléments • Les éléments peuvent être définis en utilisant un poids atomique moyen G4double z = 1., a = 1.01*g/mole; G4Element* elH = new G4Element ("Hydrogen", symbol="H", z, a); z=8.; a = 16.0*g/mole; G4Element* elO = new G4Element ("Oxygen", symbol="O", z, a); z=7.; a = 14.0*g/mole; G4Element* elN = new G4Element ("Nitrogen", symbol="N", z, a); 5/14 Les molécules et les composés • Les molécules sont définies par stœchiométrie (nombre d’atomes) G4Material* H2O = new G4Material ("Water", density, ncomp=2); G4int natoms; H2O->AddElement(elH, natoms=2); H2O->AddElement(elO, natoms=1); • Les composés sont définies par fraction de masse density = 1.290*mg/cm3; G4Material* air = new G4Material ("Air", density, ncomp=2); G4double fracMass; air->AddElement(elN, fracMass=79.0*perCent); air->AddElement(elO, fracMass=21.0*perCent); 6/14 Les mélanges complexes • La combinaison par fraction de masse d’éléments (G4Element ), de composés (G4Material ) et de molécules (G4Material ) permet de définir un mélange. G4Element* elC = ...; // define "carbon" element G4Material* SiO2 = ...; // define "quartz" material G4Material* H2O = ...; // define "water" material density = 0.200*g/cm3; G4Material* aerogel = new G4Material ("Aerogel", density, ncomp=3); aerogel->AddElement (elC, fracMass = 0.1*perCent); aerogel->AddMaterial (SiO2, fracMass = 62.5*perCent); aerogel->AddMaterial (H2O, fracMass = 37.4*perCent); 7/14 Les isotopes • Si vous définissez un élément, il est traité avec l’abondance isotopique naturelle même si la valeur en g/mole que vous entrez est différente de l’abondance naturelle • Vous pouvez définir un élément avec une abondance non naturelle en assignant à la classe G4Element une liste d’instances de G4Isotope • Example : making nuclear fuel UF6 8/14 Les isotopes • Définition des isotopes d’Uranium G4Isotope* isoU235 = new G4Isotope("U235", z=92, a=235, 235.044*g/mole); G4Isotope* isoU238 = new G4Isotope("U238", z=92, a=238, 238.051*g/mole); • Définition de l’élément Uranium enrichi à partir des 2 isotopes G4Element* el_enrichedU = new G4Element("enriched U", "U", ncomp=2); el_enrichedU->AddIsotope(isoU235, abundance=5.*perCent); el_enrichedU->AddIsotope(isoU238, abundance=95.*perCent); • Définition de la fluorine G4Element* elF = new G4Element(”fluorine", “F", 9.,18.998*g/mole); • Construction du matériau G4Material* fuel = new G4Material(”nuclear fuel”, density=5.09*g/cm3, ncomp=2, kStateSolid, 640*kelvin, 1.5e7*pascal); fuel->AddElement(el_enrichedU, 1); Par défaut, la température fuel->AddElement(elF, 6); et la pression sont STP 9/14 Matériaux de la base de données du NIST • Le National Institute of STandards (NIST) fournit une base de données détaillée des propriétés des matériaux • Inclut dans Geant4 depuis http://physics.nist.gov/PhysRefData • Meilleure précision pour les paramètres principaux : - Densité, - Potentiel d’excitation moyen, - Composition élémentaire, - Composition isotopique, - Liaisons chimiques. • Recommandé pour les utilisateurs de Geant4 10/14 Matériaux NIST dans Geant4 Eléments Composés • Eléments: H to Cf • Composés: HEP, nuclear matérials,..... e.g. liquid Ar, PbWO4,... 11/14 Comment utiliser la base du NIST? (1) • Accéder à la base de données G4NistManager* manager = G4NistManager::Instance(); • Charger les G4Element et G4Material depuis la base données G4Element* elm = manager->FindOrBuildElement(”G4_C", G4bool iso); G4Element* elm = manager->FindOrBuildElement(G4int Z, G4bool iso); G4Material* mat = manager->FindOrBuildMaterial(”G4_WATER", G4bool iso); • Isotopes ? G4bool iso = true; l’élément est construit à partir d’isotopes d’abondance naturelle G4bool iso = false; les isotopes ne sont pas construit explicitement 12/14 Comment utiliser la base du NIST? (2) • Un composé peut être construit à l’aide d’un vecteur de nombre atomique et de poids G4Material* mat = manager->ConstructNewMaterial("name", const std::vector<G4int>& Z, const std::vector<G4double>& weight, G4double density,G4bool iso); • Les masses isotopiques sont accessible G4double isotopeMass = manager->GetMass( G4int Z, G4int N); • Commandes UI pour lister les éléments et les matériaux disponibles: /material/nist/printElement /material/nist/listMaterials 13/14 En résumé • Geant4 permet de définir des matériaux en terme de : isotopes (G4Isotope), éléments (G4Element), matériaux (G4Material). • Et de caractériser ces matériaux: - Densité, -Etat, -Température, -Pression. • Utilisez le plus possible les éléments et les matériaux prédéfinis de la base de données du NIST - Efficace, - Standardisé. 14/14