| Summary: | I-Value mis-match for the same composition and same density material defined differently. | ||
|---|---|---|---|
| Product: | Geant4 | Reporter: | DP <sweet_darsha> |
| Component: | materials | Assignee: | Marc.Verderi |
| Status: | RESOLVED INVALID | ||
| Severity: | normal | CC: | sweet_darsha |
| Priority: | P4 | ||
| Version: | 10.0 | ||
| Hardware: | All | ||
| OS: | All | ||
Hello,
When the NIST manager finds a potential value defined, it uses it (instead of the one obtained by chemical formula). For the case of "G4_LUCITE", the material is defined as follows, in G4NistMaterialBuilder :
// LUCITE is equal to plustiglass
AddMaterial("G4_LUCITE", 1.19, 0, 74., 3);
AddElementByWeightFraction( 1, 0.080538);
AddElementByWeightFraction( 6, 0.599848);
AddElementByWeightFraction( 8, 0.319614);
AddMaterial is a method of G4NistMaterialBuilder; in the present case, you can see that the 4-th argument, 74. , is forcing the ionisation potential. Underneath, what is does for a material with pointer "mat" is:
mat->GetIonisation()->SetMeanExcitationEnergy(Ivalue);
You can explicitly make this call to set the ionisation energy Ivalue.
This feature is certainly a bit confusing (because of similar case you report), but allows to be more precise.
Marc
|
For the following two cases the I-Values are substantially different while the composition and density are EXACTLY the same! Case 1: G4Material* Lucite = new G4Material("Lucite",density=1.19*g/cm3,numberOfElements=3); Lucite->AddElement(elH,0.080538); Lucite->AddElement(elC,0.599848); Lucite->AddElement(elO,0.319614); Results in I-value of 68.61 eV Case 2: G4Material* Lucite = G4NistManager::Instance()->FindOrBuildMaterial("G4_LUCITE"); Ncomp Name density(g/cm^3) I(eV) ChFormula ============================================================= 3 G4_LUCITE 1.19 74 1 0.080538 6 0.599848 8 0.319614 Results in I-value of 74 eV