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