97 virtual Material* Clone(
double Temperature=-1);
116 void AddNucleus(
int Z,
int A,
double Proportion=1.,
ProportionUnitType ProportionUnit=
kpMOL,
string ModeratorCatgory=
"");
131 void AddNucleus(
int Z,
int A,
int I,
double Proportion,
ProportionUnitType ProportionUnit=
kpMOL,
string ModeratorCatgory=
"");
168 void ResetProportion();
182 virtual vector <Material*> Duplicate(
int N,
bool TrueClone=
true);
183 void Proportion2AtomCM3();
185 double SumProportion();
186 int GetZAIIndex(
ZAI *zai);
187 int GetZAIIndex(
int Z,
int A,
int I);
188 void UpdateZAI(
bool WithReactions=
true,
bool WithSF=
true);
189 void AddToGlobalNucleiVector();
190 void AddZAIDaughters(
ZAI *zai);
208 void SetTemperature(
double T=293.6);
210 double MeanMolarMass();
241 string PrintModerator();
242 string PrintCompositionInfo();
251 void SetPseudoMaterial();
266 void DumpMaterial(
string filename=
"material.dat");
267 void DumpCompositionInfo(
string name=
"CompInfo.dat");
269 void DumpMaterial(
string Filename,
double Mass,
double Volume);
284 void SetDefaultXSExtension(
string name);
291 void SortCompositionByAmount();
292 void SortCompositionByMass();
293 void FindTotalSigmaPerNucleus();
295 void SetTemperatureEvolution(
bool flag=
true);
298 Cell* SetOutCore(
int TheNumber,
double TheVolume);
327 map<int ,map<int ,map<int,int> > >
fIndex;
ProportionUnitType GetProportionUnit()
return the proportion units
Definition: Material.hxx:184
double GetTemperature()
returns the temperature in K.
Definition: Material.hxx:207
void SetFuel(bool flag=true)
declares material as a Fuel
Definition: Material.hxx:217
Definition: Material.hxx:25
A Cell is a MCNP cell.
Definition: Cell.hxx:48
bool IsPseudoMaterial()
Is pesudo material.
Definition: Material.hxx:252
bool IsFuel()
return true if material has been declared as a Fuel
Definition: Material.hxx:211
void SetModeratorBox(bool flag=true)
declares material as a ModeratorBox
Definition: Material.hxx:222
double fDensity
Density of the Material.
Definition: Material.hxx:314
bool HasModerator()
Whether or not will this Material contains a Moderator.
Definition: Material.hxx:209
string GetMaterialName()
returns the name of material
Definition: Material.hxx:300
Definition: Material.hxx:19
DensityUnitType GetDensityUnit()
return the density units
Definition: Material.hxx:206
Handle dynamical object creation and pointer affectation.
Definition: TReference.hxx:40
bool IsPerturbative()
Whether the material is a virtual (perturbative) material.
Definition: Material.hxx:288
void SetCoolant(bool flag=true)
declares material as a Coolant
Definition: Material.hxx:220
bool IsCladding()
return true if material has been declared as a cladding
Definition: Material.hxx:213
void SetMaterialName(string name)
declares the name of the material (used when thermal coupling)
Definition: Material.hxx:299
vector< double > fProportion
the Proportion vector
Definition: Material.hxx:324
bool fOutCore
whether or not material is an Out core evolving material
Definition: Material.hxx:338
bool IsPrintable()
wether or not the Material is printable
Definition: Material.hxx:254
bool IsWaterGap()
return true if material has been declared as a water gap
Definition: Material.hxx:215
bool fEvolution
whether or not will this Material will evolve with the time
Definition: Material.hxx:317
void SetPerturbative(bool flag=true)
Whether the material is a virtual (perturbative) material.
Definition: Material.hxx:289
void ResetTree()
Delete the fTree static attribute.
Definition: Material.hxx:301
bool IsModerator()
return true if material has been declared as a moderator
Definition: Material.hxx:212
string GetDefaultXSExtension()
return default extension for all nuclei of the material.
Definition: Material.hxx:285
Definition: Material.hxx:19
bool fWaterGap
whether or not this material is considered WaterGap.
Definition: Material.hxx:334
void EnablePrint()
allow a Material print in MCNP.
Definition: Material.hxx:249
int GetNumber()
Returns the MCNP Material number.
Definition: Material.hxx:275
void SetNumber(int n)
sets the MCNP Material number
Definition: Material.hxx:276
Definition: Material.hxx:25
bool fPrintable
whether or not material is printable in MCNP input file (default)
Definition: Material.hxx:337
ProportionUnitType fProportionUnit
Proportion vector unit (mol (default), at/barn.cm, at/cm3 or g/cm3)
Definition: Material.hxx:325
bool fCladding
whether or not this material is considered cladding.
Definition: Material.hxx:332
bool IsModeratorBox()
return true if material has been declared as a moderator box
Definition: Material.hxx:216
Definition: Material.hxx:19
string fDefaultXSExtension
Give a default extension to all nucleus.
Definition: Material.hxx:321
bool fUpdated
true if ZAI have been updated (UpdateZAI) for evolution only
Definition: Material.hxx:322
Definition: Material.hxx:19
bool IsCoolant()
return true if material has been declared as a coolant
Definition: Material.hxx:214
map< int,map< int,map< int, int > > > fIndex
The index of the ZAI in the material composition.
Definition: Material.hxx:327
static NucleiTree * fTree
The whole chart of Nucleide.
Definition: Material.hxx:326
A NucleiTree defines the whole tree of nuclei in case of evolution for a single ZAI.
Definition: NucleiTree.hxx:44
void SetModerator(bool flag=true)
declares material as a moderator
Definition: Material.hxx:218
vector< Nucleus_ptr > & GetComposition()
return the Composition vector
Definition: Material.hxx:153
DensityUnitType fDensityUnit
Density unit (either g/cm3 (default), at/cm3 or at/barn.cm)
Definition: Material.hxx:315
int fNumber
Number of the Material in MCNP file.
Definition: Material.hxx:313
Definition: Material.hxx:25
Material * fFatherOfPseudoClone
the father to used in cell in case of Pseudo clone
Definition: Material.hxx:328
string fMaterialName
Name of the material (uo2, water, ... used when thermal coupling)
Definition: Material.hxx:320
Nucleus_ptr GetComposition(int i)
return the Composition vector
Definition: Material.hxx:154
Definition: Material.hxx:19
bool fCoolant
whether or not this material is considered Coolant.
Definition: Material.hxx:333
ProportionUnitType
Define the proportion units.
Definition: Material.hxx:19
A Material constituing a Cell.
Definition: Material.hxx:53
void ForbidPrint()
Forbid Material print in MCNP.
Definition: Material.hxx:248
bool fModerator
whether or not this material is considered moderator.
Definition: Material.hxx:331
Material * GetFatherOfPseudoClone()
returns the father ("original") of a pseudo clone
Definition: Material.hxx:294
A ZAI defined a (Z,A,Isomere) for a Nucleus.
Definition: ZAI.hxx:62
void SetWaterGap(bool flag=true)
declares material as a WaterGap
Definition: Material.hxx:221
double fTemperature
Temperature (in K) at which the Material is used (to find the right MCNP code)
Definition: Material.hxx:316
string fModeratorName
Name of the moderator to be print in MT card (e.g. grph.06t)
Definition: Material.hxx:319
bool fTemperatureEvolution
whether or not temperature will evolve
Definition: Material.hxx:329
bool fPerturbative
whether this Material is a virtual (perturbative) material for MCNP input
Definition: Material.hxx:318
bool IsOutCore()
wether or not the Material is evolving out of the core
Definition: Material.hxx:297
void SetCladding(bool flag=true)
declares material as a cladding
Definition: Material.hxx:219
bool fModeratorBox
whether or not this material is considered ModeratorBox.
Definition: Material.hxx:335
Definition: Material.hxx:25
void SetComposition(vector< Nucleus_ptr > f)
set the composition vector
Definition: Material.hxx:155
bool fFuel
whether or not this material is considered fuel.
Definition: Material.hxx:330
DensityUnitType
Define the density units.
Definition: Material.hxx:25
vector< Nucleus_ptr > fComposition
the Composition vector
Definition: Material.hxx:323
bool fPseudoMaterial
Is the material a pseudomaterial?
Definition: Material.hxx:339
bool IsEvolving()
Whether or not will this Material will evolve with the time.
Definition: Material.hxx:287