From 38cf6382fdbc3e1676f0d5feba30bc23a18350f3 Mon Sep 17 00:00:00 2001 From: Sebastian Schunert <sebastian.schunert@inl.gov> Date: Thu, 9 Aug 2018 10:37:08 -0600 Subject: [PATCH] mass number matching (#300) --- include/userobjects/MyTRIMRasterizer.h | 6 +- include/userobjects/PKAGeneratorBase.h | 1 + src/userobjects/MyTRIMRasterizer.C | 13 +++ src/userobjects/PKAEmpiricalBase.C | 2 +- src/userobjects/PKAFissionFragmentEmpirical.C | 4 +- .../PKAFissionFragmentNeutronics.C | 6 +- src/userobjects/PKAFixedPointGenerator.C | 3 +- src/userobjects/PKAGeneratorAlphaDecay.C | 6 +- src/userobjects/PKAGeneratorBase.C | 37 +++---- .../gold/tagging_all_Xe_out.e | Bin 0 -> 36624 bytes tests/polyatomic_cascade/gold/tagging_out.e | Bin 0 -> 36532 bytes tests/polyatomic_cascade/tagging.i | 103 ++++++++++++++++++ tests/polyatomic_cascade/tests | 15 +++ 13 files changed, 167 insertions(+), 29 deletions(-) create mode 100644 tests/polyatomic_cascade/gold/tagging_all_Xe_out.e create mode 100644 tests/polyatomic_cascade/gold/tagging_out.e create mode 100644 tests/polyatomic_cascade/tagging.i diff --git a/include/userobjects/MyTRIMRasterizer.h b/include/userobjects/MyTRIMRasterizer.h index 51eb5fb3..f5541b23 100644 --- a/include/userobjects/MyTRIMRasterizer.h +++ b/include/userobjects/MyTRIMRasterizer.h @@ -58,13 +58,14 @@ class MyTRIMRasterizer : public ElementUserObject struct AveragedData { AveragedData(unsigned int nvars = 0) - : _elements(nvars, 0.0), _Z(nvars, 0.0), _M(nvars, 0.0), _site_volume(0.0) + : _elements(nvars, 0.0), _Z(nvars, 0.0), _M(nvars, 0.0), _M_tol(nvars, 0.5), _site_volume(0.0) { } std::vector<Real> _elements; std::vector<Real> _Z; std::vector<Real> _M; + std::vector<Real> _M_tol; Real _site_volume; }; @@ -86,6 +87,9 @@ class MyTRIMRasterizer : public ElementUserObject // Element prototype data (charge, mass, displacement and binding energies) std::vector<MyTRIM_NS::Element> element_prototypes; + /// tolerance for matching mass numbers for tagging + std::vector<Real> mtol; + /// conversion factor from chosen length unit to Angstrom Real length_scale; diff --git a/include/userobjects/PKAGeneratorBase.h b/include/userobjects/PKAGeneratorBase.h index f1e156a0..a3dd1b6d 100644 --- a/include/userobjects/PKAGeneratorBase.h +++ b/include/userobjects/PKAGeneratorBase.h @@ -56,6 +56,7 @@ class PKAGeneratorBase : public DiscreteElementUserObject /// finds the right ion tag; -1 means that the nuclide is not tracked, otherwise the index in the rasterizer nuclide vector must be retrieved int ionTag(const std::vector<Real> & rasterizer_Z, const std::vector<Real> & rasterizer_m, + const std::vector<Real> & mass_number_tolerance, Real Z, Real m) const; }; diff --git a/src/userobjects/MyTRIMRasterizer.C b/src/userobjects/MyTRIMRasterizer.C index 81fb1ca8..33971ea3 100644 --- a/src/userobjects/MyTRIMRasterizer.C +++ b/src/userobjects/MyTRIMRasterizer.C @@ -76,6 +76,8 @@ InputParameters validParams<MyTRIMRasterizer>() params.addCoupledVar("periodic_var", "Optional variables that determines the periodicity. If not supplied the first argument of 'var' will be used."); params.addRequiredParam<std::vector<Real>>("M", "Element mass in amu"); params.addRequiredParam<std::vector<Real>>("Z", "Nuclear charge in e"); + params.addParam<std::vector<Real>>("Mtol", + "Tolerance on mass number for tagging PKAs with var id."); params.addParam<std::vector<Real>>("Ebind", "Binding energy in eV"); params.addParam<std::vector<Real>>("Edisp", "Displacement threshold in eV"); params.addRequiredParam<MaterialPropertyName>("site_volume", "Lattice site volume in nm^3 (regardless of the chosen mesh units)"); @@ -141,6 +143,16 @@ MyTRIMRasterizer::MyTRIMRasterizer(const InputParameters & parameters) : if (trim_Z.size() != _nvars) mooseError("Parameter 'Z' must have as many components as coupled variables."); + if (isParamValid("Mtol")) + { + _trim_parameters.mtol = getParam<std::vector<Real>>("Mtol"); + if (_trim_parameters.mtol.size() != _nvars) + mooseError( + "Parameter 'Mtol' (if provided) must have as many components as coupled variables."); + } + else + _trim_parameters.mtol.assign(_nvars, 0.5); + for (unsigned int i = 0; i < _nvars; ++i) if (trim_Z[i] > trim_M[i]) mooseError("Value of Z is larger than value of M for entry ", i); @@ -265,6 +277,7 @@ MyTRIMRasterizer::execute() average._elements[i] += qpvol * (*_var[i])[qp]; average._M[i] = _trim_parameters.element_prototypes[i]._m; average._Z[i] = _trim_parameters.element_prototypes[i]._Z; + average._M_tol[i] = _trim_parameters.mtol[i]; } // average site volume property diff --git a/src/userobjects/PKAEmpiricalBase.C b/src/userobjects/PKAEmpiricalBase.C index 455c8d0a..63f59ac3 100644 --- a/src/userobjects/PKAEmpiricalBase.C +++ b/src/userobjects/PKAEmpiricalBase.C @@ -30,7 +30,7 @@ PKAEmpiricalBase::appendPKAs(std::vector<MyTRIM_NS::IonBase> & ion_list, Real dt const Real m = getM(); const Real E = getE(); - int tag = ionTag(averaged_data._Z, averaged_data._M, Z, m); + int tag = ionTag(averaged_data._Z, averaged_data._M, averaged_data._M_tol, Z, m); unsigned int num_pka = std::floor(recoil_rate_scaling * dt * vol * getPKARate() + getRandomReal()); diff --git a/src/userobjects/PKAFissionFragmentEmpirical.C b/src/userobjects/PKAFissionFragmentEmpirical.C index 456ac784..7874d9f3 100644 --- a/src/userobjects/PKAFissionFragmentEmpirical.C +++ b/src/userobjects/PKAFissionFragmentEmpirical.C @@ -64,8 +64,8 @@ PKAFissionFragmentEmpirical::appendPKAs(std::vector<MyTRIM_NS::IonBase> & ion_li // the tag is the element this PKA get registered as upon stopping // -1 means the PKA will be ignored - ion1._tag = ionTag(averaged_data._Z, averaged_data._M, ion1._Z, ion1._m); - ion2._tag = ionTag(averaged_data._Z, averaged_data._M, ion2._Z, ion2._m); + ion1._tag = ionTag(averaged_data._Z, averaged_data._M, averaged_data._M_tol, ion1._Z, ion1._m); + ion2._tag = ionTag(averaged_data._Z, averaged_data._M, averaged_data._M_tol, ion2._Z, ion2._m); // set location of the fission event setPosition(ion1); diff --git a/src/userobjects/PKAFissionFragmentNeutronics.C b/src/userobjects/PKAFissionFragmentNeutronics.C index c6a1a69d..12e7f724 100644 --- a/src/userobjects/PKAFissionFragmentNeutronics.C +++ b/src/userobjects/PKAFissionFragmentNeutronics.C @@ -59,8 +59,10 @@ PKAFissionFragmentNeutronics::appendPKAs(std::vector<MyTRIM_NS::IonBase> & ion_l // the tag is the element this PKA get registered as upon stopping // -1 means the PKA will be ignored - ion[0]._tag = ionTag(averaged_data._Z, averaged_data._M, ion[0]._Z, ion[0]._m); - ion[1]._tag = ionTag(averaged_data._Z, averaged_data._M, ion[1]._Z, ion[1]._m); + ion[0]._tag = + ionTag(averaged_data._Z, averaged_data._M, averaged_data._M_tol, ion[0]._Z, ion[0]._m); + ion[1]._tag = + ionTag(averaged_data._Z, averaged_data._M, averaged_data._M_tol, ion[1]._Z, ion[1]._m); // set location of the fission event setPosition(ion[0]); diff --git a/src/userobjects/PKAFixedPointGenerator.C b/src/userobjects/PKAFixedPointGenerator.C index 0046282c..5f37a497 100644 --- a/src/userobjects/PKAFixedPointGenerator.C +++ b/src/userobjects/PKAFixedPointGenerator.C @@ -59,7 +59,8 @@ PKAFixedPointGenerator::appendPKAs(std::vector<MyTRIM_NS::IonBase> & ion_list, R // the tag is the element this PKA get registered as upon stopping // -1 means the PKA will be ignored - pka._tag = ionTag(averaged_data._Z, averaged_data._M, pka._Z, pka._m);; + pka._tag = ionTag(averaged_data._Z, averaged_data._M, averaged_data._M_tol, pka._Z, pka._m); + ; // set stopping criteria pka.setEf(); diff --git a/src/userobjects/PKAGeneratorAlphaDecay.C b/src/userobjects/PKAGeneratorAlphaDecay.C index a182a5c3..4f98870a 100644 --- a/src/userobjects/PKAGeneratorAlphaDecay.C +++ b/src/userobjects/PKAGeneratorAlphaDecay.C @@ -155,8 +155,10 @@ PKAGeneratorAlphaDecay::appendPKAs(std::vector<MyTRIM_NS::IonBase> & ion_list, R ion[1]._Z = parent_Z - 2; ion[1]._m = parent_A - 4; - ion[0]._tag = ionTag(averaged_data._Z, averaged_data._M, ion[0]._Z, ion[0]._m); - ion[1]._tag = ionTag(averaged_data._Z, averaged_data._M, ion[1]._Z, ion[1]._m); + ion[0]._tag = + ionTag(averaged_data._Z, averaged_data._M, averaged_data._M_tol, ion[0]._Z, ion[0]._m); + ion[1]._tag = + ionTag(averaged_data._Z, averaged_data._M, averaged_data._M_tol, ion[1]._Z, ion[1]._m); // set the energies; use momentum conservation ion[0]._E = decay[l]._alpha_energies; diff --git a/src/userobjects/PKAGeneratorBase.C b/src/userobjects/PKAGeneratorBase.C index 0841e27d..dfc03c22 100644 --- a/src/userobjects/PKAGeneratorBase.C +++ b/src/userobjects/PKAGeneratorBase.C @@ -10,16 +10,18 @@ #include "MagpieUtils.h" #include <algorithm> -template<> -InputParameters validParams<PKAGeneratorBase>() +template <> +InputParameters +validParams<PKAGeneratorBase>() { InputParameters params = validParams<DiscreteElementUserObject>(); - params.addClassDescription("PKA generator user object base class.\n Takes pdf and samples PKAs due to various interactions."); + params.addClassDescription("PKA generator user object base class.\n Takes pdf and samples PKAs " + "due to various interactions."); return params; } -PKAGeneratorBase::PKAGeneratorBase(const InputParameters & parameters) : - DiscreteElementUserObject(parameters) +PKAGeneratorBase::PKAGeneratorBase(const InputParameters & parameters) + : DiscreteElementUserObject(parameters) { setRandomResetFrequency(EXEC_TIMESTEP_END); } @@ -31,22 +33,17 @@ PKAGeneratorBase::setPosition(MyTRIM_NS::IonBase & ion) const } int -PKAGeneratorBase::ionTag(const std::vector<Real> & rasterizer_Z, const std::vector<Real> & rasterizer_m, Real Z, Real m) const +PKAGeneratorBase::ionTag(const std::vector<Real> & rasterizer_Z, + const std::vector<Real> & rasterizer_m, + const std::vector<Real> & mass_number_tolerance, + Real Z, + Real m) const { - // this function relies on the exact representation of whole numbers in IEEE floating point numbers - // up to a reasonable upper limit [Z < m < 300] - unsigned int count = std::count(rasterizer_Z.begin(), rasterizer_Z.end(), Z); - if (count == 1) - { - const auto & it = std::find(rasterizer_Z.begin(), rasterizer_Z.end(), Z); - mooseAssert(it != rasterizer_Z.end(), "Z position in rasterizer_Z was unexpectedly not found"); - unsigned int index = std::distance(rasterizer_Z.begin(), it); - return index; - } - else if (count > 1) - for (unsigned int j = 0; j < rasterizer_Z.size(); ++j) - if (rasterizer_Z[j] == Z && rasterizer_m[j] == m) - return j; + // this function relies on the exact representation of whole numbers in IEEE floating point + // numbers up to a reasonable upper limit [Z < m < 300] + for (unsigned int j = 0; j < rasterizer_Z.size(); ++j) + if (rasterizer_Z[j] == Z && std::abs(rasterizer_m[j] - m) < mass_number_tolerance[j]) + return j; return -1; } diff --git a/tests/polyatomic_cascade/gold/tagging_all_Xe_out.e b/tests/polyatomic_cascade/gold/tagging_all_Xe_out.e new file mode 100644 index 0000000000000000000000000000000000000000..177c0e008948ce0643adbd5d0fb2e1d1b4fa8207 GIT binary patch literal 36624 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 literal 0 HcmV?d00001 diff --git a/tests/polyatomic_cascade/gold/tagging_out.e b/tests/polyatomic_cascade/gold/tagging_out.e new file mode 100644 index 0000000000000000000000000000000000000000..67410076761924791ef4f4814728840734c917b9 GIT binary patch literal 36532 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 literal 0 HcmV?d00001 diff --git a/tests/polyatomic_cascade/tagging.i b/tests/polyatomic_cascade/tagging.i new file mode 100644 index 00000000..8d92c155 --- /dev/null +++ b/tests/polyatomic_cascade/tagging.i @@ -0,0 +1,103 @@ +[Mesh] + type = MyTRIMMesh + dim = 3 + nx = 2 + ny = 2 + nz = 2 + xmin = 0 + xmax = 100 + ymin = 0 + ymax = 100 + zmin = 0 + zmax = 100 +[] + +[Problem] + kernel_coverage_check = false +[] + +[Variables] + [./dummy] + [../] +[] + +[AuxVariables] + [./cC] + order = CONSTANT + family = MONOMIAL + initial_condition = 0.5 + [../] + [./cSi] + order = CONSTANT + family = MONOMIAL + initial_condition = 0.5 + [../] + [./cXe] + order = CONSTANT + family = MONOMIAL + initial_condition = 0.0 + [../] + + [./int] + order = CONSTANT + family = MONOMIAL + [../] +[] + +[AuxKernels] + [./int] + variable = int + type = MyTRIMElementResultAux + runner = runner + ivar = 2 + defect = INT + [../] +[] + +[BCs] + [./Periodic] + [./all] + auto_direction = 'x y z' + [../] + [../] +[] + +[UserObjects] + [./ffe] + type = PKAFissionFragmentEmpirical + fission_rate = 0.00001 + relative_density = 1 + [../] + [./rasterizer] + type = MyTRIMRasterizer + var = 'cC cSi cXe' + M = '12 28 136' + Z = '6 14 54' + # MTol = '0.5 0.5 4' + site_volume = 0.0404 + pka_generator = ffe + periodic_var = dummy + analytical_energy_cutoff = 1e5 + [../] + [./runner] + type = MyTRIMElementRun + rasterizer = rasterizer + [../] +[] + +[Postprocessors] + [./total_vacancies] + type = ElementIntegralVariablePostprocessor + variable = int + [../] +[] + +[Executioner] + type = Transient + num_steps = 1 + nl_abs_tol = 1e-10 +[] + +[Outputs] + exodus = true +[] diff --git a/tests/polyatomic_cascade/tests b/tests/polyatomic_cascade/tests index 25222cce..97ea75c9 100644 --- a/tests/polyatomic_cascade/tests +++ b/tests/polyatomic_cascade/tests @@ -38,4 +38,19 @@ recover = false cli_args = "Outputs/file_base=polyatomic_cascade_recoil_scaled_out UserObjects/constant/pka_rate=0.01 UserObjects/rasterizer/max_pka_count=1000 UserObjects/rasterizer/recoil_rate_scaling=0.8" [../] + [./tagging_default] + type = 'Exodiff' + input = 'tagging.i' + exodiff = 'tagging_out.e' + abs_zero = 1e-6 + recover = false + [../] + [./tagging_all_Xe] + type = 'Exodiff' + input = 'tagging.i' + exodiff = 'tagging_all_Xe_out.e' + abs_zero = 1e-6 + cli_args = "Outputs/file_base=tagging_all_Xe_out UserObjects/rasterizer/Mtol='0.5 0.5 4'" + recover = false + [../] []