From d1feb42629160ed82617461b58ba1b03b99af2a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Widera?= Date: Mon, 23 Sep 2024 15:18:48 +0200 Subject: [PATCH] change interface `conv.*` to `conv().* nvcc is not possible to pull static constexpr member into the device code, therefore acessing a function is required. --- docs/source/usage/workflows/ionization.rst | 14 +- .../picongpu/param/ionizationEnergies.param | 322 +++++++++--------- include/picongpu/param/ionizer.param | 2 +- .../atomicPhysics/GetPhysicalEnergy.hpp | 2 +- .../Inelastic2BodyCollisionFromCoMoving.hpp | 4 +- .../StewartPyattIPD.hpp | 2 +- .../kernel/CalculateIPDInput.kernel | 2 +- .../kernel/DecelerateElectrons.kernel | 6 +- .../BoundBoundTransitionRates.hpp | 2 +- .../BoundFreeFieldTransitionRates.hpp | 2 +- .../rateCalculation/CollisionalRate.hpp | 2 +- .../picongpu/particles/boundary/Thermal.hpp | 2 +- .../particles/debyeLength/Estimate.kernel | 2 +- .../ThomasFermi/AlgorithmThomasFermi.hpp | 2 +- .../manipulators/unary/Temperature.hpp | 2 +- .../picongpu/plugins/BinEnergyParticles.x.cpp | 4 +- .../ParticleCalorimeter.x.cpp | 8 +- include/picongpu/unitless/simulation.unitless | 16 +- .../include/picongpu/param/particle.param | 4 +- .../include/picongpu/param/particle.param | 4 +- .../picongpu/param/ionizationEnergies.param | 38 +-- .../include/picongpu/param/ionizer.param | 2 +- 22 files changed, 224 insertions(+), 220 deletions(-) diff --git a/docs/source/usage/workflows/ionization.rst b/docs/source/usage/workflows/ionization.rst index b13f9407320..582846ed45d 100644 --- a/docs/source/usage/workflows/ionization.rst +++ b/docs/source/usage/workflows/ionization.rst @@ -69,13 +69,13 @@ To include charge-state-only simulations in your simulations you must: float_X, 7, // number charge states Nitrogen, // name you may reference this by later, remember to prepend the namespace and append _t! - sim.si.conv.ev2auEnergy(14.53413), - sim.si.conv.ev2auEnergy(29.60125), - sim.si.conv.ev2auEnergy(47.4453), - sim.si.conv.ev2auEnergy(77.4735), - sim.si.conv.ev2auEnergy(97.89013), - sim.si.conv.ev2auEnergy(552.06731), - sim.si.conv.ev2auEnergy(667.04609)); + sim.si.conv().ev2auEnergy(14.53413), + sim.si.conv().ev2auEnergy(29.60125), + sim.si.conv().ev2auEnergy(47.4453), + sim.si.conv().ev2auEnergy(77.4735), + sim.si.conv().ev2auEnergy(97.89013), + sim.si.conv().ev2auEnergy(552.06731), + sim.si.conv().ev2auEnergy(667.04609)); }; // namespace picongpu::ionization::energies::AU .. note:: diff --git a/include/picongpu/param/ionizationEnergies.param b/include/picongpu/param/ionizationEnergies.param index bde5391c4da..000f9a9b81d 100644 --- a/include/picongpu/param/ionizationEnergies.param +++ b/include/picongpu/param/ionizationEnergies.param @@ -39,7 +39,7 @@ namespace picongpu * Please follow these rules for defining ionization energies of atomic species, * unless your chosen ionization model requires a different unit system than `AU::` * - input of values in either atomic units or converting eV or Joule to them - * -> use either sim.si.conv.ev2auEnergy() or sim.si.conv.joule2auEnergy() for that purpose + * -> use either sim.si.conv().ev2auEnergy() or sim.si.conv().joule2auEnergy() for that purpose * - use `float_X` as the preferred data type * * example: @@ -72,216 +72,216 @@ namespace picongpu namespace AU { /* ionization energy for ground state hydrogen in atomic units */ - PMACC_CONST_VECTOR(float_X, 1, Hydrogen, sim.si.conv.ev2auEnergy(13.59843)); + PMACC_CONST_VECTOR(float_X, 1, Hydrogen, sim.si.conv().ev2auEnergy(13.59843)); /* ionization energy for ground state deuterium in atomic units */ - PMACC_CONST_VECTOR(float_X, 1, Deuterium, sim.si.conv.ev2auEnergy(13.60213)); + PMACC_CONST_VECTOR(float_X, 1, Deuterium, sim.si.conv().ev2auEnergy(13.60213)); /* ionization energy for ground state helium in atomic units */ PMACC_CONST_VECTOR( float_X, 2, Helium, - sim.si.conv.ev2auEnergy(24.58739), - sim.si.conv.ev2auEnergy(54.41776)); + sim.si.conv().ev2auEnergy(24.58739), + sim.si.conv().ev2auEnergy(54.41776)); /* ionization energy for carbon in atomic units */ PMACC_CONST_VECTOR( float_X, 6, Carbon, - sim.si.conv.ev2auEnergy(11.2603), - sim.si.conv.ev2auEnergy(24.3845), - sim.si.conv.ev2auEnergy(47.88778), - sim.si.conv.ev2auEnergy(64.49351), - sim.si.conv.ev2auEnergy(392.0905), - sim.si.conv.ev2auEnergy(489.993177)); + sim.si.conv().ev2auEnergy(11.2603), + sim.si.conv().ev2auEnergy(24.3845), + sim.si.conv().ev2auEnergy(47.88778), + sim.si.conv().ev2auEnergy(64.49351), + sim.si.conv().ev2auEnergy(392.0905), + sim.si.conv().ev2auEnergy(489.993177)); /* ionization energy for nitrogen in atomic units */ PMACC_CONST_VECTOR( float_X, 7, Nitrogen, - sim.si.conv.ev2auEnergy(14.53413), - sim.si.conv.ev2auEnergy(29.60125), - sim.si.conv.ev2auEnergy(47.4453), - sim.si.conv.ev2auEnergy(77.4735), - sim.si.conv.ev2auEnergy(97.89013), - sim.si.conv.ev2auEnergy(552.06731), - sim.si.conv.ev2auEnergy(667.04609)); + sim.si.conv().ev2auEnergy(14.53413), + sim.si.conv().ev2auEnergy(29.60125), + sim.si.conv().ev2auEnergy(47.4453), + sim.si.conv().ev2auEnergy(77.4735), + sim.si.conv().ev2auEnergy(97.89013), + sim.si.conv().ev2auEnergy(552.06731), + sim.si.conv().ev2auEnergy(667.04609)); /* ionization energy for oxygen in atomic units */ PMACC_CONST_VECTOR( float_X, 8, Oxygen, - sim.si.conv.ev2auEnergy(13.61805), - sim.si.conv.ev2auEnergy(35.12112), - sim.si.conv.ev2auEnergy(54.93554), - sim.si.conv.ev2auEnergy(77.41350), - sim.si.conv.ev2auEnergy(113.8989), - sim.si.conv.ev2auEnergy(138.1189), - sim.si.conv.ev2auEnergy(739.3268), - sim.si.conv.ev2auEnergy(871.4098)); + sim.si.conv().ev2auEnergy(13.61805), + sim.si.conv().ev2auEnergy(35.12112), + sim.si.conv().ev2auEnergy(54.93554), + sim.si.conv().ev2auEnergy(77.41350), + sim.si.conv().ev2auEnergy(113.8989), + sim.si.conv().ev2auEnergy(138.1189), + sim.si.conv().ev2auEnergy(739.3268), + sim.si.conv().ev2auEnergy(871.4098)); /* ionization energy for aluminium in atomic units */ PMACC_CONST_VECTOR( float_X, 13, Aluminium, - sim.si.conv.ev2auEnergy(5.98577), - sim.si.conv.ev2auEnergy(18.8285), - sim.si.conv.ev2auEnergy(28.4476), - sim.si.conv.ev2auEnergy(119.992), - sim.si.conv.ev2auEnergy(153.825), - sim.si.conv.ev2auEnergy(190.495), - sim.si.conv.ev2auEnergy(241.769), - sim.si.conv.ev2auEnergy(284.647), - sim.si.conv.ev2auEnergy(330.214), - sim.si.conv.ev2auEnergy(398.656), - sim.si.conv.ev2auEnergy(442.006), - sim.si.conv.ev2auEnergy(2085.97), - sim.si.conv.ev2auEnergy(2304.14)); + sim.si.conv().ev2auEnergy(5.98577), + sim.si.conv().ev2auEnergy(18.8285), + sim.si.conv().ev2auEnergy(28.4476), + sim.si.conv().ev2auEnergy(119.992), + sim.si.conv().ev2auEnergy(153.825), + sim.si.conv().ev2auEnergy(190.495), + sim.si.conv().ev2auEnergy(241.769), + sim.si.conv().ev2auEnergy(284.647), + sim.si.conv().ev2auEnergy(330.214), + sim.si.conv().ev2auEnergy(398.656), + sim.si.conv().ev2auEnergy(442.006), + sim.si.conv().ev2auEnergy(2085.97), + sim.si.conv().ev2auEnergy(2304.14)); /* ionization energy for silicon in atomic units */ PMACC_CONST_VECTOR( float_X, 14, Silicon, - sim.si.conv.ev2auEnergy(8.151683), - sim.si.conv.ev2auEnergy(16.345845), - sim.si.conv.ev2auEnergy(33.493), - sim.si.conv.ev2auEnergy(45.14179), - sim.si.conv.ev2auEnergy(166.767), - sim.si.conv.ev2auEnergy(205.267), - sim.si.conv.ev2auEnergy(246.32), - sim.si.conv.ev2auEnergy(303.66), - sim.si.conv.ev2auEnergy(351.1), - sim.si.conv.ev2auEnergy(401.38), - sim.si.conv.ev2auEnergy(476.18), - sim.si.conv.ev2auEnergy(523.415), - sim.si.conv.ev2auEnergy(2437.65804), - sim.si.conv.ev2auEnergy(2673.1774)); + sim.si.conv().ev2auEnergy(8.151683), + sim.si.conv().ev2auEnergy(16.345845), + sim.si.conv().ev2auEnergy(33.493), + sim.si.conv().ev2auEnergy(45.14179), + sim.si.conv().ev2auEnergy(166.767), + sim.si.conv().ev2auEnergy(205.267), + sim.si.conv().ev2auEnergy(246.32), + sim.si.conv().ev2auEnergy(303.66), + sim.si.conv().ev2auEnergy(351.1), + sim.si.conv().ev2auEnergy(401.38), + sim.si.conv().ev2auEnergy(476.18), + sim.si.conv().ev2auEnergy(523.415), + sim.si.conv().ev2auEnergy(2437.65804), + sim.si.conv().ev2auEnergy(2673.1774)); /* ionization energy for copper in atomic units */ PMACC_CONST_VECTOR( float_X, 29, Copper, - sim.si.conv.ev2auEnergy(7.72638), - sim.si.conv.ev2auEnergy(20.2924), - sim.si.conv.ev2auEnergy(36.8411), - sim.si.conv.ev2auEnergy(57.385), - sim.si.conv.ev2auEnergy(79.87), - sim.si.conv.ev2auEnergy(103.010), - sim.si.conv.ev2auEnergy(139.012), - sim.si.conv.ev2auEnergy(166.021), - sim.si.conv.ev2auEnergy(198.022), - sim.si.conv.ev2auEnergy(232.25), - sim.si.conv.ev2auEnergy(265.332), - sim.si.conv.ev2auEnergy(367.09), - sim.si.conv.ev2auEnergy(401.03), - sim.si.conv.ev2auEnergy(436.06), - sim.si.conv.ev2auEnergy(483.19), - sim.si.conv.ev2auEnergy(518.712), - sim.si.conv.ev2auEnergy(552.821), - sim.si.conv.ev2auEnergy(632.56), - sim.si.conv.ev2auEnergy(670.608), - sim.si.conv.ev2auEnergy(1690.59), - sim.si.conv.ev2auEnergy(1800.3), - sim.si.conv.ev2auEnergy(1918.4), - sim.si.conv.ev2auEnergy(2044.6), - sim.si.conv.ev2auEnergy(2179.4), - sim.si.conv.ev2auEnergy(2307.32), - sim.si.conv.ev2auEnergy(2479.12), - sim.si.conv.ev2auEnergy(2586.95), - sim.si.conv.ev2auEnergy(11062.4), - sim.si.conv.ev2auEnergy(11567.6)); + sim.si.conv().ev2auEnergy(7.72638), + sim.si.conv().ev2auEnergy(20.2924), + sim.si.conv().ev2auEnergy(36.8411), + sim.si.conv().ev2auEnergy(57.385), + sim.si.conv().ev2auEnergy(79.87), + sim.si.conv().ev2auEnergy(103.010), + sim.si.conv().ev2auEnergy(139.012), + sim.si.conv().ev2auEnergy(166.021), + sim.si.conv().ev2auEnergy(198.022), + sim.si.conv().ev2auEnergy(232.25), + sim.si.conv().ev2auEnergy(265.332), + sim.si.conv().ev2auEnergy(367.09), + sim.si.conv().ev2auEnergy(401.03), + sim.si.conv().ev2auEnergy(436.06), + sim.si.conv().ev2auEnergy(483.19), + sim.si.conv().ev2auEnergy(518.712), + sim.si.conv().ev2auEnergy(552.821), + sim.si.conv().ev2auEnergy(632.56), + sim.si.conv().ev2auEnergy(670.608), + sim.si.conv().ev2auEnergy(1690.59), + sim.si.conv().ev2auEnergy(1800.3), + sim.si.conv().ev2auEnergy(1918.4), + sim.si.conv().ev2auEnergy(2044.6), + sim.si.conv().ev2auEnergy(2179.4), + sim.si.conv().ev2auEnergy(2307.32), + sim.si.conv().ev2auEnergy(2479.12), + sim.si.conv().ev2auEnergy(2586.95), + sim.si.conv().ev2auEnergy(11062.4), + sim.si.conv().ev2auEnergy(11567.6)); /* ionization energy for gold in atomic units */ PMACC_CONST_VECTOR( float_X, 79, Gold, - sim.si.conv.ev2auEnergy(9.2256), - sim.si.conv.ev2auEnergy(20.203), - sim.si.conv.ev2auEnergy(30.016), - sim.si.conv.ev2auEnergy(45.017), - sim.si.conv.ev2auEnergy(60.019), - sim.si.conv.ev2auEnergy(74.020), - sim.si.conv.ev2auEnergy(94.020), - sim.si.conv.ev2auEnergy(112.02), - sim.si.conv.ev2auEnergy(130.12), - sim.si.conv.ev2auEnergy(149.02), - sim.si.conv.ev2auEnergy(168.21), - sim.si.conv.ev2auEnergy(248.01), - sim.si.conv.ev2auEnergy(275.14), - sim.si.conv.ev2auEnergy(299.15), - sim.si.conv.ev2auEnergy(324.16), - sim.si.conv.ev2auEnergy(365.19), - sim.si.conv.ev2auEnergy(392.20), - sim.si.conv.ev2auEnergy(433.21), - sim.si.conv.ev2auEnergy(487.25), - sim.si.conv.ev2auEnergy(517.30), - sim.si.conv.ev2auEnergy(546.30), - sim.si.conv.ev2auEnergy(600.30), - sim.si.conv.ev2auEnergy(650.40), - sim.si.conv.ev2auEnergy(710.40), - sim.si.conv.ev2auEnergy(760.40), - sim.si.conv.ev2auEnergy(820.40), - sim.si.conv.ev2auEnergy(870.40), - sim.si.conv.ev2auEnergy(930.50), - sim.si.conv.ev2auEnergy(990.50), - sim.si.conv.ev2auEnergy(1040.5), - sim.si.conv.ev2auEnergy(1100.5), - sim.si.conv.ev2auEnergy(1150.6), - sim.si.conv.ev2auEnergy(1210.6), - sim.si.conv.ev2auEnergy(1475.5), - sim.si.conv.ev2auEnergy(1527.5), - sim.si.conv.ev2auEnergy(1584.5), - sim.si.conv.ev2auEnergy(1644.5), - sim.si.conv.ev2auEnergy(1702.4), - sim.si.conv.ev2auEnergy(1758.4), - sim.si.conv.ev2auEnergy(1845.4), - sim.si.conv.ev2auEnergy(1904.4), - sim.si.conv.ev2auEnergy(1967.4), - sim.si.conv.ev2auEnergy(2026.4), - sim.si.conv.ev2auEnergy(2261.4), - sim.si.conv.ev2auEnergy(2320.4), - sim.si.conv.ev2auEnergy(2383.4), - sim.si.conv.ev2auEnergy(2443.4), - sim.si.conv.ev2auEnergy(2640.4), - sim.si.conv.ev2auEnergy(2708.4), - sim.si.conv.ev2auEnergy(2870.4), - sim.si.conv.ev2auEnergy(2941.0), - sim.si.conv.ev2auEnergy(4888.4), - sim.si.conv.ev2auEnergy(5013.4), - sim.si.conv.ev2auEnergy(5156.5), - sim.si.conv.ev2auEnergy(5307.5), - sim.si.conv.ev2auEnergy(5452.5), - sim.si.conv.ev2auEnergy(5594.5), - sim.si.conv.ev2auEnergy(5846.6), - sim.si.conv.ev2auEnergy(5994.6), - sim.si.conv.ev2auEnergy(6156.7), - sim.si.conv.ev2auEnergy(6305.1), - sim.si.conv.ev2auEnergy(6724.1), - sim.si.conv.ev2auEnergy(6854.1), - sim.si.conv.ev2auEnergy(6997.2), - sim.si.conv.ev2auEnergy(7130.2), - sim.si.conv.ev2auEnergy(7756.3), - sim.si.conv.ev2auEnergy(7910.4), - sim.si.conv.ev2auEnergy(8210.4), - sim.si.conv.ev2auEnergy(8360.5), - sim.si.conv.ev2auEnergy(18040.), - sim.si.conv.ev2auEnergy(18401.), - sim.si.conv.ev2auEnergy(18791.), - sim.si.conv.ev2auEnergy(19151.), - sim.si.conv.ev2auEnergy(21471.), - sim.si.conv.ev2auEnergy(21921.), - sim.si.conv.ev2auEnergy(22500.), - sim.si.conv.ev2auEnergy(22868.), - sim.si.conv.ev2auEnergy(91516.), - sim.si.conv.ev2auEnergy(93254.)); + sim.si.conv().ev2auEnergy(9.2256), + sim.si.conv().ev2auEnergy(20.203), + sim.si.conv().ev2auEnergy(30.016), + sim.si.conv().ev2auEnergy(45.017), + sim.si.conv().ev2auEnergy(60.019), + sim.si.conv().ev2auEnergy(74.020), + sim.si.conv().ev2auEnergy(94.020), + sim.si.conv().ev2auEnergy(112.02), + sim.si.conv().ev2auEnergy(130.12), + sim.si.conv().ev2auEnergy(149.02), + sim.si.conv().ev2auEnergy(168.21), + sim.si.conv().ev2auEnergy(248.01), + sim.si.conv().ev2auEnergy(275.14), + sim.si.conv().ev2auEnergy(299.15), + sim.si.conv().ev2auEnergy(324.16), + sim.si.conv().ev2auEnergy(365.19), + sim.si.conv().ev2auEnergy(392.20), + sim.si.conv().ev2auEnergy(433.21), + sim.si.conv().ev2auEnergy(487.25), + sim.si.conv().ev2auEnergy(517.30), + sim.si.conv().ev2auEnergy(546.30), + sim.si.conv().ev2auEnergy(600.30), + sim.si.conv().ev2auEnergy(650.40), + sim.si.conv().ev2auEnergy(710.40), + sim.si.conv().ev2auEnergy(760.40), + sim.si.conv().ev2auEnergy(820.40), + sim.si.conv().ev2auEnergy(870.40), + sim.si.conv().ev2auEnergy(930.50), + sim.si.conv().ev2auEnergy(990.50), + sim.si.conv().ev2auEnergy(1040.5), + sim.si.conv().ev2auEnergy(1100.5), + sim.si.conv().ev2auEnergy(1150.6), + sim.si.conv().ev2auEnergy(1210.6), + sim.si.conv().ev2auEnergy(1475.5), + sim.si.conv().ev2auEnergy(1527.5), + sim.si.conv().ev2auEnergy(1584.5), + sim.si.conv().ev2auEnergy(1644.5), + sim.si.conv().ev2auEnergy(1702.4), + sim.si.conv().ev2auEnergy(1758.4), + sim.si.conv().ev2auEnergy(1845.4), + sim.si.conv().ev2auEnergy(1904.4), + sim.si.conv().ev2auEnergy(1967.4), + sim.si.conv().ev2auEnergy(2026.4), + sim.si.conv().ev2auEnergy(2261.4), + sim.si.conv().ev2auEnergy(2320.4), + sim.si.conv().ev2auEnergy(2383.4), + sim.si.conv().ev2auEnergy(2443.4), + sim.si.conv().ev2auEnergy(2640.4), + sim.si.conv().ev2auEnergy(2708.4), + sim.si.conv().ev2auEnergy(2870.4), + sim.si.conv().ev2auEnergy(2941.0), + sim.si.conv().ev2auEnergy(4888.4), + sim.si.conv().ev2auEnergy(5013.4), + sim.si.conv().ev2auEnergy(5156.5), + sim.si.conv().ev2auEnergy(5307.5), + sim.si.conv().ev2auEnergy(5452.5), + sim.si.conv().ev2auEnergy(5594.5), + sim.si.conv().ev2auEnergy(5846.6), + sim.si.conv().ev2auEnergy(5994.6), + sim.si.conv().ev2auEnergy(6156.7), + sim.si.conv().ev2auEnergy(6305.1), + sim.si.conv().ev2auEnergy(6724.1), + sim.si.conv().ev2auEnergy(6854.1), + sim.si.conv().ev2auEnergy(6997.2), + sim.si.conv().ev2auEnergy(7130.2), + sim.si.conv().ev2auEnergy(7756.3), + sim.si.conv().ev2auEnergy(7910.4), + sim.si.conv().ev2auEnergy(8210.4), + sim.si.conv().ev2auEnergy(8360.5), + sim.si.conv().ev2auEnergy(18040.), + sim.si.conv().ev2auEnergy(18401.), + sim.si.conv().ev2auEnergy(18791.), + sim.si.conv().ev2auEnergy(19151.), + sim.si.conv().ev2auEnergy(21471.), + sim.si.conv().ev2auEnergy(21921.), + sim.si.conv().ev2auEnergy(22500.), + sim.si.conv().ev2auEnergy(22868.), + sim.si.conv().ev2auEnergy(91516.), + sim.si.conv().ev2auEnergy(93254.)); } // namespace AU } // namespace energies diff --git a/include/picongpu/param/ionizer.param b/include/picongpu/param/ionizer.param index cc0c46fa0d0..7026ebefef1 100644 --- a/include/picongpu/param/ionizer.param +++ b/include/picongpu/param/ionizer.param @@ -493,7 +493,7 @@ namespace picongpu */ constexpr float_X CUTOFF_MAX_ENERGY_KEV = 50.0; /** cutoff energy for electron "temperature" calculation in SI units*/ - constexpr float_X CUTOFF_MAX_ENERGY = CUTOFF_MAX_ENERGY_KEV * sim.si.conv.ev2Joule(1.0e3); + constexpr float_X CUTOFF_MAX_ENERGY = CUTOFF_MAX_ENERGY_KEV * sim.si.conv().ev2Joule(1.0e3); /** lower ion density cutoff * diff --git a/include/picongpu/particles/atomicPhysics/GetPhysicalEnergy.hpp b/include/picongpu/particles/atomicPhysics/GetPhysicalEnergy.hpp index c5c11635ac9..caad7338aab 100644 --- a/include/picongpu/particles/atomicPhysics/GetPhysicalEnergy.hpp +++ b/include/picongpu/particles/atomicPhysics/GetPhysicalEnergy.hpp @@ -69,7 +69,7 @@ namespace picongpu::particles::atomicPhysics // unit conversion factor for eV constexpr float_X eV = static_cast( picongpu::sim.unit.mass() * picongpu::sim.si.getSpeedOfLight() * picongpu::sim.si.getSpeedOfLight() - * sim.si.conv.joule2ev(1.0)); + * sim.si.conv().joule2ev(1.0)); // eV return energy * eV; diff --git a/include/picongpu/particles/atomicPhysics/initElectrons/Inelastic2BodyCollisionFromCoMoving.hpp b/include/picongpu/particles/atomicPhysics/initElectrons/Inelastic2BodyCollisionFromCoMoving.hpp index c7203e3ea37..83cea93f69a 100644 --- a/include/picongpu/particles/atomicPhysics/initElectrons/Inelastic2BodyCollisionFromCoMoving.hpp +++ b/include/picongpu/particles/atomicPhysics/initElectrons/Inelastic2BodyCollisionFromCoMoving.hpp @@ -199,7 +199,7 @@ namespace picongpu::particles::atomicPhysics::initElectrons float_64 const mE_mI = static_cast(massElectron / massIon); // kg * m^2/s^2 * keV/J * 1e3 = J/J * eV = eV float_64 const mc2_Ion = static_cast(massIon) * sim.unit.mass() - * pmacc::math::cPow(picongpu::sim.si.getSpeedOfLight(), 2u) * sim.si.conv.joule2ev(1.0); + * pmacc::math::cPow(picongpu::sim.si.getSpeedOfLight(), 2u) * sim.si.conv().joule2ev(1.0); // eV / eV + sim.unit.mass() / sim.unit.mass() = unitless float_64 const A_E = deltaEnergy / mc2_Ion + mE_mI; @@ -248,7 +248,7 @@ namespace picongpu::particles::atomicPhysics::initElectrons float_64 const mI_mE = static_cast(massIon / massElectron); // kg * m^2/s^2 * keV/J * 1e3 = J/J * eV = eV float_64 const mc2_Electron = static_cast(massElectron) * sim.unit.mass() - * pmacc::math::cPow(picongpu::sim.si.getSpeedOfLight(), 2u) * sim.si.conv.joule2ev(1.0); + * pmacc::math::cPow(picongpu::sim.si.getSpeedOfLight(), 2u) * sim.si.conv().joule2ev(1.0); float_64 const A_I = deltaEnergy / mc2_Electron + mI_mE; float_64 const gammaStarIon_IonSystem = (A_I * (A_I + 2.) + (mI_mE * mI_mE)) / ((A_I + 1.) * 2. * mI_mE); diff --git a/include/picongpu/particles/atomicPhysics/ionizationPotentialDepression/StewartPyattIPD.hpp b/include/picongpu/particles/atomicPhysics/ionizationPotentialDepression/StewartPyattIPD.hpp index 6d8f0e5a27f..26d0c8a6a56 100644 --- a/include/picongpu/particles/atomicPhysics/ionizationPotentialDepression/StewartPyattIPD.hpp +++ b/include/picongpu/particles/atomicPhysics/ionizationPotentialDepression/StewartPyattIPD.hpp @@ -211,7 +211,7 @@ namespace picongpu::particles::atomicPhysics::ionizationPotentialDepression // eV/(sim.unit.mass() * sim.unit.length()^2 / sim.unit.time()^2) constexpr float_X eV = static_cast( picongpu::sim.unit.mass() * pmacc::math::cPow(picongpu::sim.unit.length(), 2u) - / pmacc::math::cPow(picongpu::sim.unit.time(), 2u) * sim.si.conv.joule2ev(1.0)); + / pmacc::math::cPow(picongpu::sim.unit.time(), 2u) * sim.si.conv().joule2ev(1.0)); // eV/(sim.unit.mass() * sim.unit.length()^2 / sim.unit.time()^2) * unitless * sim.unit.charge()^2 // / ( unitless * sim.unit.charge()^2 * sim.unit.time()^2 / (sim.unit.length()^3 * sim.unit.mass())) diff --git a/include/picongpu/particles/atomicPhysics/ionizationPotentialDepression/kernel/CalculateIPDInput.kernel b/include/picongpu/particles/atomicPhysics/ionizationPotentialDepression/kernel/CalculateIPDInput.kernel index 010fde6e268..870a79bdb87 100644 --- a/include/picongpu/particles/atomicPhysics/ionizationPotentialDepression/kernel/CalculateIPDInput.kernel +++ b/include/picongpu/particles/atomicPhysics/ionizationPotentialDepression/kernel/CalculateIPDInput.kernel @@ -152,7 +152,7 @@ namespace picongpu::particles::atomicPhysics::ionizationPotentialDepression::ker // eV/(sim.unit.mass() * sim.unit.length()^2 / sim.unit.time()^2) constexpr float_X eV = static_cast( picongpu::sim.unit.mass() * pmacc::math::cPow(picongpu::sim.unit.length(), 2u) - / pmacc::math::cPow(picongpu::sim.unit.time(), 2u) * sim.si.conv.joule2ev(1.0)); + / pmacc::math::cPow(picongpu::sim.unit.time(), 2u) * sim.si.conv().joule2ev(1.0)); // eV/(sim.unit.mass() * sim.unit.length()^2 / sim.unit.time()^2) * sim.unit.mass() * // sim.unit.length()^2 / sim.unit.time()^2 diff --git a/include/picongpu/particles/atomicPhysics/kernel/DecelerateElectrons.kernel b/include/picongpu/particles/atomicPhysics/kernel/DecelerateElectrons.kernel index 6083a38d0c6..00db5ce3185 100644 --- a/include/picongpu/particles/atomicPhysics/kernel/DecelerateElectrons.kernel +++ b/include/picongpu/particles/atomicPhysics/kernel/DecelerateElectrons.kernel @@ -115,7 +115,7 @@ namespace picongpu::particles::atomicPhysics::kernel float_X const mcSquaredElectron = static_cast( static_cast(picongpu::traits::frame::getMass()) * sim.unit.mass() * pmacc::math::cPow(picongpu::sim.si.getSpeedOfLight(), 2u) - * sim.si.conv.joule2ev(1.0)); + * sim.si.conv().joule2ev(1.0)); // eV, not weighted // distribute energy change as mean by weight on all electrons in bin @@ -134,7 +134,7 @@ namespace picongpu::particles::atomicPhysics::kernel // usually ~1, internal units constexpr float_X conversionEnergy - = static_cast(sim.si.conv.ev2Joule(1.0) / sim.unit.energy()); + = static_cast(sim.si.conv().ev2Joule(1.0) / sim.unit.energy()); // J/(eV) * sim.unit.energy()/J = J/J * sim.unit.energy()/(eV) constexpr float_X scalingFactor = 1._X / c_internal * conversionEnergy; @@ -142,7 +142,7 @@ namespace picongpu::particles::atomicPhysics::kernel // sqrt(E' * (E' + 2* m*c^2)) / c float_X const newElectronMomentum = math::sqrt(newEnergyElectron * (newEnergyElectron + 2 * mcSquaredElectron)) * scalingFactor; - // AU = sim.si.conv.auEnergy2Joule() + // AU = sim.si.conv().auEnergy2Joule() // sqrt(eV * (eV + eV))/(sim.unit.length()/sim.unit.time()) * (sim.unit.energy()/eV) // = sqrt((eV)^2)/(eV) * sim.unit.time()/sim.unit.length() * sim.unit.energy() // = sim.unit.mass() * sim.unit.length()^2/sim.unit.time()^2 * sim.unit.time()/sim.unit.length() diff --git a/include/picongpu/particles/atomicPhysics/rateCalculation/BoundBoundTransitionRates.hpp b/include/picongpu/particles/atomicPhysics/rateCalculation/BoundBoundTransitionRates.hpp index 857887c4203..d6b52450fd2 100644 --- a/include/picongpu/particles/atomicPhysics/rateCalculation/BoundBoundTransitionRates.hpp +++ b/include/picongpu/particles/atomicPhysics/rateCalculation/BoundBoundTransitionRates.hpp @@ -390,7 +390,7 @@ namespace picongpu::particles::atomicPhysics::rateCalculation // J/(eV) / (Js) * s/sim.unit.time() = J/J * s/s * 1/(eV * sim.unit.time()) constexpr float_X scalingConstantPhotonFrequency - = static_cast(sim.si.conv.ev2Joule(1.0) / (2 * pi * hbar_SI) * picongpu::sim.unit.time()); + = static_cast(sim.si.conv().ev2Joule(1.0) / (2 * pi * hbar_SI) * picongpu::sim.unit.time()); /// @attention actual SI frequency, NOT angular frequency // 1/sim.unit.time() diff --git a/include/picongpu/particles/atomicPhysics/rateCalculation/BoundFreeFieldTransitionRates.hpp b/include/picongpu/particles/atomicPhysics/rateCalculation/BoundFreeFieldTransitionRates.hpp index 4c59a1692cb..048e9308910 100644 --- a/include/picongpu/particles/atomicPhysics/rateCalculation/BoundFreeFieldTransitionRates.hpp +++ b/include/picongpu/particles/atomicPhysics/rateCalculation/BoundFreeFieldTransitionRates.hpp @@ -92,7 +92,7 @@ namespace picongpu::particles::atomicPhysics::rateCalculation chargeStateDataBox); // unitless float_X const effectivePrincipalQuantumNumber - = screenedCharge / math::sqrt(2._X * ionizationEnergy * sim.si.conv.ev2auEnergy(1.0)); + = screenedCharge / math::sqrt(2._X * ionizationEnergy * sim.si.conv().ev2auEnergy(1.0)); float_X const eFieldNorm_AU = sim.pic.conv().eField2auEField(eFieldNorm); float_X const screenedChargeCubed = pmacc::math::cPow(screenedCharge, 3u); float_X const dBase = 4.0_X * math::exp(1._X) * screenedChargeCubed diff --git a/include/picongpu/particles/atomicPhysics/rateCalculation/CollisionalRate.hpp b/include/picongpu/particles/atomicPhysics/rateCalculation/CollisionalRate.hpp index f2fe5edcd51..529a54d16dd 100644 --- a/include/picongpu/particles/atomicPhysics/rateCalculation/CollisionalRate.hpp +++ b/include/picongpu/particles/atomicPhysics/rateCalculation/CollisionalRate.hpp @@ -46,7 +46,7 @@ namespace picongpu::particles2::atomicPhysics::rateCalculation constexpr float_64 c_SI = picongpu::sim.si.getSpeedOfLight(); // [m/s] constexpr float_64 m_e_SI = picongpu::sim.si.getElectronMass(); // [kg] - constexpr float_64 electronRestMassEnergy = m_e_SI * c_SI * c_SI / sim.si.conv.ev2Joule(1.0); + constexpr float_64 electronRestMassEnergy = m_e_SI * c_SI * c_SI / sim.si.conv().ev2Joule(1.0); // kg * (m^2)/(s^2) * 1/(J/eV) = Nm * eV/J = J/J * eV // [eV] ~ 5.11e5 diff --git a/include/picongpu/particles/boundary/Thermal.hpp b/include/picongpu/particles/boundary/Thermal.hpp index 63142abb951..616c9c5102b 100644 --- a/include/picongpu/particles/boundary/Thermal.hpp +++ b/include/picongpu/particles/boundary/Thermal.hpp @@ -71,7 +71,7 @@ namespace picongpu static constexpr char const* name = "reflectThermalIfOutside"; HINLINE ReflectThermalIfOutside() - : energy((m_parameters.temperature * sim.si.conv.ev2Joule(1.0e3)) / sim.unit.energy()) + : energy((m_parameters.temperature * sim.si.conv().ev2Joule(1.0e3)) / sim.unit.energy()) { } diff --git a/include/picongpu/particles/debyeLength/Estimate.kernel b/include/picongpu/particles/debyeLength/Estimate.kernel index 7a7f100b1f3..1ea0ce56c78 100644 --- a/include/picongpu/particles/debyeLength/Estimate.kernel +++ b/include/picongpu/particles/debyeLength/Estimate.kernel @@ -213,7 +213,7 @@ namespace picongpu using Frame = typename T_ElectronBox::FrameType; auto const mass = static_cast(picongpu::traits::frame::getMass()); auto const kT = (momentumVariance[0] + momentumVariance[1] + momentumVariance[2]) / (3.0 * mass); - auto const temperatureKeV = kT * sim.unit.energy() / sim.si.conv.ev2Joule(1.0e3); + auto const temperatureKeV = kT * sim.unit.energy() / sim.si.conv().ev2Joule(1.0e3); auto const electronCharge = picongpu::traits::frame::getCharge(); auto const debyeLength = sqrt(sim.pic.getEps0() * kT / (electronDensity * electronCharge * electronCharge)); diff --git a/include/picongpu/particles/ionization/byCollision/ThomasFermi/AlgorithmThomasFermi.hpp b/include/picongpu/particles/ionization/byCollision/ThomasFermi/AlgorithmThomasFermi.hpp index cbb1f95100e..e94d9121071 100644 --- a/include/picongpu/particles/ionization/byCollision/ThomasFermi/AlgorithmThomasFermi.hpp +++ b/include/picongpu/particles/ionization/byCollision/ThomasFermi/AlgorithmThomasFermi.hpp @@ -161,7 +161,7 @@ namespace picongpu /** convert kinetic energy in J to "temperature" in eV by assuming an ideal electron gas * E_kin = 3/2 k*T */ - constexpr float_64 convKinEnergyToTemperature = sim.si.conv.joule2ev(1.0) * float_64(2. / 3.); + constexpr float_64 convKinEnergyToTemperature = sim.si.conv().joule2ev(1.0) * float_64(2. / 3.); /** electron "temperature" in electron volts */ float_64 const temperature = avgKinEnergy * convKinEnergyToTemperature; diff --git a/include/picongpu/particles/manipulators/unary/Temperature.hpp b/include/picongpu/particles/manipulators/unary/Temperature.hpp index e4b5c05c9d6..c8296383581 100644 --- a/include/picongpu/particles/manipulators/unary/Temperature.hpp +++ b/include/picongpu/particles/manipulators/unary/Temperature.hpp @@ -71,7 +71,7 @@ namespace picongpu * the same relation holds, just m and E are also macroweighted */ float_X const energy - = (temperatureKeV * sim.si.conv.ev2Joule(1.0e3)) / sim.unit.energy(); + = (temperatureKeV * sim.si.conv().ev2Joule(1.0e3)) / sim.unit.energy(); float_X const macroWeighting = particle[weighting_]; float_X const macroEnergy = macroWeighting * energy; float_X const macroMass = attribute::getMass(macroWeighting, particle); diff --git a/include/picongpu/plugins/BinEnergyParticles.x.cpp b/include/picongpu/plugins/BinEnergyParticles.x.cpp index e28b6315e06..5f49e8407ec 100644 --- a/include/picongpu/plugins/BinEnergyParticles.x.cpp +++ b/include/picongpu/plugins/BinEnergyParticles.x.cpp @@ -427,8 +427,8 @@ namespace picongpu auto idProvider = dc.get("globalId"); /* convert energy values from keV to PIConGPU units */ - float_X const minEnergy = minEnergy_keV * sim.si.conv.ev2Joule(1.0e3) / sim.unit.energy(); - float_X const maxEnergy = maxEnergy_keV * sim.si.conv.ev2Joule(1.0e3) / sim.unit.energy(); + float_X const minEnergy = minEnergy_keV * sim.si.conv().ev2Joule(1.0e3) / sim.unit.energy(); + float_X const maxEnergy = maxEnergy_keV * sim.si.conv().ev2Joule(1.0e3) / sim.unit.energy(); auto const mapper = makeAreaMapper(*m_cellDescription); diff --git a/include/picongpu/plugins/particleCalorimeter/ParticleCalorimeter.x.cpp b/include/picongpu/plugins/particleCalorimeter/ParticleCalorimeter.x.cpp index 4ae8d0bee9e..ee3a2a3873a 100644 --- a/include/picongpu/plugins/particleCalorimeter/ParticleCalorimeter.x.cpp +++ b/include/picongpu/plugins/particleCalorimeter/ParticleCalorimeter.x.cpp @@ -119,8 +119,8 @@ namespace picongpu { const float_64 minEnergy_SI = this->minEnergy * sim.unit.energy(); const float_64 maxEnergy_SI = this->maxEnergy * sim.unit.energy(); - const float_64 minEnergy_keV = minEnergy_SI * sim.si.conv.joule2ev(1.0e-3); - const float_64 maxEnergy_keV = maxEnergy_SI * sim.si.conv.joule2ev(1.0e-3); + const float_64 minEnergy_keV = minEnergy_SI * sim.si.conv().joule2ev(1.0e-3); + const float_64 maxEnergy_keV = maxEnergy_SI * sim.si.conv().joule2ev(1.0e-3); dataset.setAttribute("minEnergy[keV]", minEnergy_keV); dataset.setAttribute("maxEnergy[keV]", maxEnergy_keV); @@ -301,8 +301,8 @@ namespace picongpu this->maxYaw_deg = float_X(0.5) * this->openingYaw_deg; this->maxPitch_deg = float_X(0.5) * this->openingPitch_deg; /* convert units */ - const float_64 minEnergy_SI = this->minEnergy * sim.si.conv.ev2Joule(1.0e3); - const float_64 maxEnergy_SI = this->maxEnergy * sim.si.conv.ev2Joule(1.0e3); + const float_64 minEnergy_SI = this->minEnergy * sim.si.conv().ev2Joule(1.0e3); + const float_64 maxEnergy_SI = this->maxEnergy * sim.si.conv().ev2Joule(1.0e3); this->minEnergy = minEnergy_SI / sim.unit.energy(); this->maxEnergy = maxEnergy_SI / sim.unit.energy(); diff --git a/include/picongpu/unitless/simulation.unitless b/include/picongpu/unitless/simulation.unitless index 71f65fcac1f..c8e32562c13 100644 --- a/include/picongpu/unitless/simulation.unitless +++ b/include/picongpu/unitless/simulation.unitless @@ -133,25 +133,25 @@ namespace picongpu template constexpr T_Type eField2auEField(T_Type eField = 1.0) const { - return static_cast(si.conv.eField2auEField(eField * unit.eField())); + return static_cast(si.conv().eField2auEField(eField * unit.eField())); } template constexpr T_Type auEnergy2Joule(T_Type auEnergy = 1.0) const { - return static_cast(si.conv.auEnergy2Joule(auEnergy) / unit.energy()); + return static_cast(si.conv().auEnergy2Joule(auEnergy) / unit.energy()); } template constexpr T_Type auTime2Time(T_Type auTime = 1.0) const { - return static_cast(si.conv.auTime2Time(auTime) / unit.time()); + return static_cast(si.conv().auTime2Time(auTime) / unit.time()); } template constexpr T_Type time2auTime(T_Type time = 1.0) const { - return static_cast(si.conv.time2auTime(time * unit.time())); + return static_cast(si.conv().time2auTime(time * unit.time())); } }; @@ -278,7 +278,7 @@ namespace picongpu constexpr float_64 getRydbergEnergy() const { // convert from unit eV to Joule - return conv.ev2Joule(13.605693122990); + return conv().ev2Joule(13.605693122990); } /** bohr radius, unit: m @@ -373,7 +373,11 @@ namespace picongpu } }; - static constexpr Convert conv{}; + /** get conversion functions */ + static constexpr Convert conv() + { + return Convert{}; + } }; /** units to convert from SI into PIConGPU's SI unit system */ diff --git a/share/picongpu/tests/CollisionsBeamRelaxation/include/picongpu/param/particle.param b/share/picongpu/tests/CollisionsBeamRelaxation/include/picongpu/param/particle.param index 86e91839485..a8b3ed09f27 100644 --- a/share/picongpu/tests/CollisionsBeamRelaxation/include/picongpu/param/particle.param +++ b/share/picongpu/tests/CollisionsBeamRelaxation/include/picongpu/param/particle.param @@ -82,7 +82,7 @@ namespace picongpu * unit: keV */ static constexpr float_64 temperature = sim.si.getElectronMass() * sim.si.getSpeedOfLight() - * sim.si.getSpeedOfLight() * sim.si.conv.joule2ev(1.0e-3) * 0.0000002; + * sim.si.getSpeedOfLight() * sim.si.conv().joule2ev(1.0e-3) * 0.0000002; }; /** Definition of manipulator assigning a temperature * using parameters from struct TemperatureParamElectrons. @@ -96,7 +96,7 @@ namespace picongpu * unit: keV */ static constexpr float_64 temperature = sim.si.getElectronMass() * sim.si.getSpeedOfLight() - * sim.si.getSpeedOfLight() * sim.si.conv.joule2ev(1.0e-3) * 0.00002; + * sim.si.getSpeedOfLight() * sim.si.conv().joule2ev(1.0e-3) * 0.00002; }; /** Definition of manipulator assigning a temperature * using parameters from struct TemperatureParamIons. diff --git a/share/picongpu/tests/CollisionsThermalisation/include/picongpu/param/particle.param b/share/picongpu/tests/CollisionsThermalisation/include/picongpu/param/particle.param index 8cef5b58a07..778eca91cb1 100644 --- a/share/picongpu/tests/CollisionsThermalisation/include/picongpu/param/particle.param +++ b/share/picongpu/tests/CollisionsThermalisation/include/picongpu/param/particle.param @@ -69,7 +69,7 @@ namespace picongpu * unit: keV */ static constexpr float_64 temperature = sim.si.getElectronMass() * sim.si.getSpeedOfLight() - * sim.si.getSpeedOfLight() * sim.si.conv.joule2ev(1.0e-3) * 0.0002; + * sim.si.getSpeedOfLight() * sim.si.conv().joule2ev(1.0e-3) * 0.0002; }; /** Definition of manipulator assigning a temperature * using parameters from struct TemperatureParamElectrons. @@ -83,7 +83,7 @@ namespace picongpu * unit: keV */ static constexpr float_64 temperature = sim.si.getElectronMass() * sim.si.getSpeedOfLight() - * sim.si.getSpeedOfLight() * sim.si.conv.joule2ev(1.0e-3) * 0.00018; + * sim.si.getSpeedOfLight() * sim.si.conv().joule2ev(1.0e-3) * 0.00018; }; /** Definition of manipulator assigning a temperature * using parameters from struct TemperatureParamIons. diff --git a/share/picongpu/tests/compileAtomicPhysics/include/picongpu/param/ionizationEnergies.param b/share/picongpu/tests/compileAtomicPhysics/include/picongpu/param/ionizationEnergies.param index bacf5b50f9c..f67bad5fca7 100644 --- a/share/picongpu/tests/compileAtomicPhysics/include/picongpu/param/ionizationEnergies.param +++ b/share/picongpu/tests/compileAtomicPhysics/include/picongpu/param/ionizationEnergies.param @@ -39,7 +39,7 @@ namespace picongpu * Please follow these rules for defining ionization energies of atomic species, * unless your chosen ionization model requires a different unit system than `AU::` * - input of values in either atomic units or converting eV or Joule to them - * -> use either sim.si.conv.ev2auEnergy() or sim.si.conv.joule2auEnergy() for that purpose + * -> use either sim.si.conv().ev2auEnergy() or sim.si.conv().joule2auEnergy() for that purpose * - use `float_X` as the preferred data type * * example: @@ -76,24 +76,24 @@ namespace picongpu float_X, 18, Argon, - sim.si.conv.ev2auEnergy(15.7596119), - sim.si.conv.ev2auEnergy(27.62967), - sim.si.conv.ev2auEnergy(40.735), - sim.si.conv.ev2auEnergy(59.58), - sim.si.conv.ev2auEnergy(74.84), - sim.si.conv.ev2auEnergy(91.290), - sim.si.conv.ev2auEnergy(124.41), - sim.si.conv.ev2auEnergy(143.4567), - sim.si.conv.ev2auEnergy(422.60), - sim.si.conv.ev2auEnergy(479.76), - sim.si.conv.ev2auEnergy(540.4), - sim.si.conv.ev2auEnergy(619.0), - sim.si.conv.ev2auEnergy(685.5), - sim.si.conv.ev2auEnergy(755.13), - sim.si.conv.ev2auEnergy(855.5), - sim.si.conv.ev2auEnergy(918.375), - sim.si.conv.ev2auEnergy(4120.6657), - sim.si.conv.ev2auEnergy(4426.2229)); + sim.si.conv().ev2auEnergy(15.7596119), + sim.si.conv().ev2auEnergy(27.62967), + sim.si.conv().ev2auEnergy(40.735), + sim.si.conv().ev2auEnergy(59.58), + sim.si.conv().ev2auEnergy(74.84), + sim.si.conv().ev2auEnergy(91.290), + sim.si.conv().ev2auEnergy(124.41), + sim.si.conv().ev2auEnergy(143.4567), + sim.si.conv().ev2auEnergy(422.60), + sim.si.conv().ev2auEnergy(479.76), + sim.si.conv().ev2auEnergy(540.4), + sim.si.conv().ev2auEnergy(619.0), + sim.si.conv().ev2auEnergy(685.5), + sim.si.conv().ev2auEnergy(755.13), + sim.si.conv().ev2auEnergy(855.5), + sim.si.conv().ev2auEnergy(918.375), + sim.si.conv().ev2auEnergy(4120.6657), + sim.si.conv().ev2auEnergy(4426.2229)); } // namespace AU } // namespace energies diff --git a/share/picongpu/tests/compileAtomicPhysics/include/picongpu/param/ionizer.param b/share/picongpu/tests/compileAtomicPhysics/include/picongpu/param/ionizer.param index 80551a53f5c..282fcf7093f 100644 --- a/share/picongpu/tests/compileAtomicPhysics/include/picongpu/param/ionizer.param +++ b/share/picongpu/tests/compileAtomicPhysics/include/picongpu/param/ionizer.param @@ -193,7 +193,7 @@ namespace picongpu */ constexpr float_X CUTOFF_MAX_ENERGY_KEV = 50.0; /** cutoff energy for electron "temperature" calculation in SI units*/ - constexpr float_X CUTOFF_MAX_ENERGY = CUTOFF_MAX_ENERGY_KEV * sim.si.conv.ev2Joule(1.0e3); + constexpr float_X CUTOFF_MAX_ENERGY = CUTOFF_MAX_ENERGY_KEV * sim.si.conv().ev2Joule(1.0e3); /** lower ion density cutoff *