diff --git a/python/test/block/Test_ACEtk_AngularDistributionBlock.py b/python/test/block/Test_ACEtk_AngularDistributionBlock.py index 85642cd1..7e6103fa 100644 --- a/python/test/block/Test_ACEtk_AngularDistributionBlock.py +++ b/python/test/block/Test_ACEtk_AngularDistributionBlock.py @@ -9,7 +9,6 @@ from ACEtk import FullyIsotropicDistribution from ACEtk import AngularDistributionData from ACEtk import IsotropicAngularDistribution -from ACEtk import EquiprobableAngularBins from ACEtk import TabulatedAngularDistribution from ACEtk import AngularDistributionType diff --git a/src/ACEtk/block/AngleEnergyDistributionData/src/generateXSS.hpp b/src/ACEtk/block/AngleEnergyDistributionData/src/generateXSS.hpp index 7274fffa..e22d4ba0 100644 --- a/src/ACEtk/block/AngleEnergyDistributionData/src/generateXSS.hpp +++ b/src/ACEtk/block/AngleEnergyDistributionData/src/generateXSS.hpp @@ -6,12 +6,12 @@ generateXSS( const std::string& name, std::size_t locb ) { // add the distribution data to the xss array - std::size_t nr = boundaries.size(); - std::size_t ne = distributions.size(); + const auto nr = boundaries.size(); + const auto ne = distributions.size(); std::vector< double > xss( 1 + 2 * ne ); xss[0] = ne; std::size_t index = 1; - std::size_t offset = 1 + 2 * nr + locb; + const auto offset = 1 + 2 * nr + locb; for ( const auto& distribution : distributions ) { // set the associated value @@ -21,11 +21,11 @@ generateXSS( const std::string& name, xss[index + ne] = xss.size() + offset; // remake the internal xss array with the proper locators - TabulatedAngleEnergyDistribution temp( - distribution.value(), - distribution.interpolation(), - std::move( distribution.distributions() ), - xss[index + ne] ); + const TabulatedAngleEnergyDistribution temp( + distribution.value(), + distribution.interpolation(), + std::move( distribution.distributions() ), + xss[index + ne] ); xss.insert( xss.end(), temp.begin(), temp.end() ); // on to the next distribution diff --git a/src/ACEtk/block/AngularDistributionData/src/generateXSS.hpp b/src/ACEtk/block/AngularDistributionData/src/generateXSS.hpp index b1c3535b..5afec5c4 100644 --- a/src/ACEtk/block/AngularDistributionData/src/generateXSS.hpp +++ b/src/ACEtk/block/AngularDistributionData/src/generateXSS.hpp @@ -1,7 +1,7 @@ static std::vector< double > generateXSS( std::vector< Distribution >&& distributions, std::size_t locb ) { - std::size_t ne = distributions.size(); + const auto ne = distributions.size(); std::vector< double > xss( 1 + 2 * ne ); auto incidentEnergy = [] ( const auto& value ) diff --git a/src/ACEtk/block/DelayedNeutronPrecursorData/src/generateXSS.hpp b/src/ACEtk/block/DelayedNeutronPrecursorData/src/generateXSS.hpp index e2c268e1..177b20b3 100644 --- a/src/ACEtk/block/DelayedNeutronPrecursorData/src/generateXSS.hpp +++ b/src/ACEtk/block/DelayedNeutronPrecursorData/src/generateXSS.hpp @@ -6,11 +6,11 @@ generateXSS( double lambda, std::vector< double >&& y ) { std::vector< double > xss = { lambda }; - details::BaseTabulatedData data( "DelayedNeutronPrecursorData", - std::move( boundaries ), - std::move( interpolants ), - std::move( x ), - std::move( y ) ); + const details::BaseTabulatedData data( "DelayedNeutronPrecursorData", + std::move( boundaries ), + std::move( interpolants ), + std::move( x ), + std::move( y ) ); xss.insert( xss.end(), data.begin(), data.end() ); return xss; } diff --git a/src/ACEtk/block/EnergyAngleDistributionData/src/generateXSS.hpp b/src/ACEtk/block/EnergyAngleDistributionData/src/generateXSS.hpp index 4852a825..15766870 100644 --- a/src/ACEtk/block/EnergyAngleDistributionData/src/generateXSS.hpp +++ b/src/ACEtk/block/EnergyAngleDistributionData/src/generateXSS.hpp @@ -6,26 +6,26 @@ generateXSS( const std::string& name, std::size_t locb ) { // add the distribution data to the xss array - std::size_t nr = boundaries.size(); - std::size_t ne = distributions.size(); - std::vector< double > xss( 1 + 2 * ne ); + const auto nr = boundaries.size(); + const auto ne = distributions.size(); + std::vector< double > xss( static_cast< double >( 1 + 2 * ne ) ); xss[0] = ne; std::size_t index = 1; - std::size_t offset = 1 + 2 * nr + locb; + const auto offset = 1 + 2 * nr + locb; for ( const auto& distribution : distributions ) { // set the associated value xss[index] = distribution.value(); // set the locator - xss[index + ne] = xss.size() + offset; + xss[index + ne] = static_cast< double >( xss.size() + offset ); // remake the internal xss array with the proper locators - TabulatedEnergyAngleDistribution temp( - distribution.value(), - distribution.interpolation(), - std::move( distribution.distributions() ), - xss[index + ne] ); + const TabulatedEnergyAngleDistribution temp( + distribution.value(), + distribution.interpolation(), + std::move( distribution.distributions() ), + xss[index + ne] ); xss.insert( xss.end(), temp.begin(), temp.end() ); // on to the next distribution @@ -33,9 +33,9 @@ generateXSS( const std::string& name, } // insert the interpolation data in the front - InterpolationData interpolation( std::string( name ), - std::move( boundaries ), - std::move( interpolants ) ); + const InterpolationData interpolation( std::string( name ), + std::move( boundaries ), + std::move( interpolants ) ); xss.insert( xss.begin(), interpolation.begin(), interpolation.end() ); return xss; diff --git a/src/ACEtk/block/EnergyDistributionBlock/src/generateXSS.hpp b/src/ACEtk/block/EnergyDistributionBlock/src/generateXSS.hpp index dc5e424b..0274352f 100644 --- a/src/ACEtk/block/EnergyDistributionBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/EnergyDistributionBlock/src/generateXSS.hpp @@ -10,8 +10,8 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions, throw std::exception(); } - std::size_t size = distributions.size(); - std::vector< double > xss( size ); + const auto size = distributions.size(); + std::vector< double > xss( static_cast< double >( size ) ); std::vector< unsigned int > tyr; std::size_t index = 0; for ( auto&& distribution : distributions ) { @@ -26,13 +26,13 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions, [ &xss, &tyr, &locator, size ] ( const TabulatedMultiplicity& value ) { - tyr.insert( tyr.end(), 100 + locator ); + tyr.insert( tyr.end(), static_cast< double >( 100 + locator ) ); xss.insert( xss.end(), value.begin(), value.end() ); locator = xss.size() - size + 1; }, [ &tyr ] ( const unsigned int& value ) { - tyr.insert( tyr.end(), value ); + tyr.insert( tyr.end(), static_cast< double >( value ) ); } }, multiplicities[index] @@ -51,10 +51,10 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions, [ &xss, locator ] ( const MultiDistributionData& value ) { // remake the internal xss array with the proper locators - MultiDistributionData temp( - std::move( value.probabilities() ), - std::move( value.distributions() ), - locator ); + const MultiDistributionData temp( + std::move( value.probabilities() ), + std::move( value.distributions() ), + locator ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [] ( const auto& ) { /* nothing to do here */ } @@ -74,11 +74,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions, [ &xss, &idat, locator ] ( const auto& value ) { idat = locator + 3 + 1 + 5; - xss.push_back( 0 ); // LNW - xss.push_back( static_cast< short >( value.LAW() ) ); // LAW - xss.push_back( idat ); // IDAT - xss.push_back( 0 ); // NR - xss.push_back( 2 ); // NE + xss.push_back( 0. ); // LNW + xss.push_back( static_cast< double >( value.LAW() ) ); // LAW + xss.push_back( static_cast< double >( idat ) ); // IDAT + xss.push_back( 0. ); // NR + xss.push_back( 2. ); // NE xss.push_back( value.minimumIncidentEnergy() ); // E[0] xss.push_back( value.maximumIncidentEnergy() ); // E[1] xss.push_back( 1. ); // P[0] @@ -96,11 +96,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions, // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - OutgoingEnergyDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - idat ); + const OutgoingEnergyDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + idat ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss, idat ] ( const KalbachMannDistributionData& value ) { @@ -108,11 +108,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions, // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - KalbachMannDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - idat ); + const KalbachMannDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + idat ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss, idat ] ( const EnergyAngleDistributionData& value ) { @@ -120,11 +120,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions, // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - EnergyAngleDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - idat ); + const EnergyAngleDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + idat ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss, idat ] ( const AngleEnergyDistributionData& value ) { @@ -132,11 +132,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions, // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - AngleEnergyDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - idat ); + const AngleEnergyDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + idat ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss ] ( const auto& value ) { diff --git a/src/ACEtk/block/EquiprobableOutgoingEnergyBinData/src/generateXSS.hpp b/src/ACEtk/block/EquiprobableOutgoingEnergyBinData/src/generateXSS.hpp index bd0f4c98..bcde6689 100644 --- a/src/ACEtk/block/EquiprobableOutgoingEnergyBinData/src/generateXSS.hpp +++ b/src/ACEtk/block/EquiprobableOutgoingEnergyBinData/src/generateXSS.hpp @@ -5,9 +5,9 @@ generateXSS( std::vector< EquiprobableOutgoingEnergyBins >&& distributions ) { // reserve size in the vector - std::size_t nr = boundaries.size(); - std::size_t ne = distributions.size(); - std::vector< double > xss( 2 + ne ); // NE, list of energies, NET + const auto nr = boundaries.size(); + const auto ne = distributions.size(); + std::vector< double > xss( static_cast< double >( 2 + ne ) ); // NE, list of energies, NET // sort distributions std::sort( distributions.begin(), distributions.end(), @@ -15,14 +15,14 @@ generateXSS( { return left.incidentEnergy() < right.incidentEnergy(); } ); // insert the interpolation data - InterpolationData interpolation( "EquiprobableOutgoingEnergyBinData", - std::move( boundaries ), - std::move( interpolants ) ); + const InterpolationData interpolation( "EquiprobableOutgoingEnergyBinData", + std::move( boundaries ), + std::move( interpolants ) ); xss.insert( xss.begin(), interpolation.begin(), interpolation.end() ); // insert the bin data - xss[ 1 + 2 * nr ] = ne; - xss[ 2 + 2 * nr + ne ] = distributions.front().numberBins() + 1; + xss[ 1 + 2 * nr ] = static_cast< double >( ne ); + xss[ 2 + 2 * nr + ne ] = static_cast< double >( distributions.front().numberBins() + 1 ); std::size_t index = 2 + 2 * nr; for ( const auto& distribution : distributions ) { diff --git a/src/ACEtk/block/FrameAndMultiplicityBlock/src/generateXSS.hpp b/src/ACEtk/block/FrameAndMultiplicityBlock/src/generateXSS.hpp index c40eb2d8..bd1d7791 100644 --- a/src/ACEtk/block/FrameAndMultiplicityBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/FrameAndMultiplicityBlock/src/generateXSS.hpp @@ -3,7 +3,7 @@ generateXSS( std::vector< ReferenceFrame >&& frames, std::vector< unsigned int >&& multiplicities ) { std::vector< double > xss; - auto ntr = multiplicities.size(); + const auto ntr = multiplicities.size(); xss.reserve( ntr ); if ( frames.size() != ntr ) { diff --git a/src/ACEtk/block/GeneralEvaporationSpectrum/src/generateXSS.hpp b/src/ACEtk/block/GeneralEvaporationSpectrum/src/generateXSS.hpp index 578148f9..d7c3feab 100644 --- a/src/ACEtk/block/GeneralEvaporationSpectrum/src/generateXSS.hpp +++ b/src/ACEtk/block/GeneralEvaporationSpectrum/src/generateXSS.hpp @@ -8,11 +8,11 @@ generateXSS( // insert the tabulated data std::vector< double > xss; - details::BaseTabulatedData table( "GeneralEvaporationSpectrum", - std::move( boundaries ), - std::move( interpolants ), - std::move( energies ), - std::move( temperatures ) ); + const details::BaseTabulatedData table( "GeneralEvaporationSpectrum", + std::move( boundaries ), + std::move( interpolants ), + std::move( energies ), + std::move( temperatures ) ); xss.insert( xss.end(), table.begin(), table.end() ); // insert the bin data diff --git a/src/ACEtk/block/MultiDistributionData/src/generateXSS.hpp b/src/ACEtk/block/MultiDistributionData/src/generateXSS.hpp index 02d488d5..0f4acf40 100644 --- a/src/ACEtk/block/MultiDistributionData/src/generateXSS.hpp +++ b/src/ACEtk/block/MultiDistributionData/src/generateXSS.hpp @@ -4,7 +4,7 @@ generateXSS( std::vector< DistributionProbability >&& probabilities, std::size_t locb ) { std::vector< double > xss; - std::size_t size = probabilities.size(); + const auto size = probabilities.size(); if ( distributions.size() != size ) { Log::error( "The number of distributions and probabilities is not the same" ); @@ -17,15 +17,15 @@ generateXSS( std::vector< DistributionProbability >&& probabilities, // set lnw and idat appropriately for ( unsigned int i = 0; i < size; ++i ) { - std::size_t offset = xss.size(); + const auto offset = xss.size(); xss.push_back( 0 ); // lnw std::visit( [ &xss ] ( const auto& value ) { xss.push_back( static_cast< double >( value.LAW() ) ); }, distributions[i] ); - xss.push_back( 1 ); // idat + xss.push_back( 1. ); // idat xss.insert( xss.end(), probabilities[i].begin(), probabilities[i].end() ); - xss[ offset + 2 ] = xss.size() + locb; // idat + xss[ offset + 2 ] = static_cast< double >( xss.size() + locb ); // idat std::visit( utility::overload{ @@ -35,11 +35,11 @@ generateXSS( std::vector< DistributionProbability >&& probabilities, // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - OutgoingEnergyDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - xss[ offset + 2 ] ); + const OutgoingEnergyDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + xss[ offset + 2 ] ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss, offset ] ( const KalbachMannDistributionData& value ) { @@ -47,11 +47,11 @@ generateXSS( std::vector< DistributionProbability >&& probabilities, // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - KalbachMannDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - xss[ offset + 2 ] ); + const KalbachMannDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + xss[ offset + 2 ] ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss ] ( const auto& value ) { diff --git a/src/ACEtk/block/MultiplicityReactionNumberBlock/src/generateXSS.hpp b/src/ACEtk/block/MultiplicityReactionNumberBlock/src/generateXSS.hpp index 94f663ac..6b63e30c 100644 --- a/src/ACEtk/block/MultiplicityReactionNumberBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/MultiplicityReactionNumberBlock/src/generateXSS.hpp @@ -1,6 +1,6 @@ static std::vector< double > generateXSS( std::vector< unsigned int >&& mts ) { - auto nyp = mts.size(); + const auto nyp = mts.size(); std::vector< double > xss{ static_cast< double >( nyp ) }; xss.reserve( nyp + 1 ); xss.insert( xss.end(), mts.begin(), mts.end() ); diff --git a/src/ACEtk/block/NBodyPhaseSpaceDistribution/src/generateXSS.hpp b/src/ACEtk/block/NBodyPhaseSpaceDistribution/src/generateXSS.hpp index af85ff79..389e0cb3 100644 --- a/src/ACEtk/block/NBodyPhaseSpaceDistribution/src/generateXSS.hpp +++ b/src/ACEtk/block/NBodyPhaseSpaceDistribution/src/generateXSS.hpp @@ -8,10 +8,10 @@ static std::vector< double > generateXSS( unsigned int npsx, double ap, ap, static_cast< double >( interpolation ) }; xss.reserve( 5 + 3 * values.size() ); - details::ColumnData columns( "NBodyPhaseSpaceDistribution", - std::move( values ), - std::move( pdf ), - std::move( cdf ) ); + const details::ColumnData columns( "NBodyPhaseSpaceDistribution", + std::move( values ), + std::move( pdf ), + std::move( cdf ) ); xss.insert( xss.end(), columns.begin(), columns.end() ); return xss; diff --git a/src/ACEtk/block/PhotonProductionCrossSectionBlock/src/generateXSS.hpp b/src/ACEtk/block/PhotonProductionCrossSectionBlock/src/generateXSS.hpp index 9d12eb4b..5b9b8e41 100644 --- a/src/ACEtk/block/PhotonProductionCrossSectionBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/PhotonProductionCrossSectionBlock/src/generateXSS.hpp @@ -1,6 +1,6 @@ static std::vector< double > generateXSS( std::vector< PhotonProductionData >&& xs ) { - std::size_t ntr = xs.size(); + const auto ntr = xs.size(); std::vector< double > xss( ntr ); std::size_t index = 0; for ( const auto& data : xs ) { diff --git a/src/ACEtk/block/PhotonProductionCrossSectionData/src/generateXSS.hpp b/src/ACEtk/block/PhotonProductionCrossSectionData/src/generateXSS.hpp index ca191163..56cfb13c 100644 --- a/src/ACEtk/block/PhotonProductionCrossSectionData/src/generateXSS.hpp +++ b/src/ACEtk/block/PhotonProductionCrossSectionData/src/generateXSS.hpp @@ -2,7 +2,7 @@ static std::vector< double > generateXSS( std::size_t index, std::vector< double >&& values ) { - std::vector< double > xss = { 13, + std::vector< double > xss = { 13., static_cast< double >( index ), static_cast< double >( values.size() ) }; xss.reserve( 3 + values.size() ); diff --git a/src/ACEtk/block/PhotonuclearSecondaryParticleLocatorBlock/src/generateXSS.hpp b/src/ACEtk/block/PhotonuclearSecondaryParticleLocatorBlock/src/generateXSS.hpp index ac5a0ffd..cebc1f49 100644 --- a/src/ACEtk/block/PhotonuclearSecondaryParticleLocatorBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/PhotonuclearSecondaryParticleLocatorBlock/src/generateXSS.hpp @@ -4,7 +4,7 @@ generateXSS( std::vector< unsigned int >&& types, std::vector< std::array< unsigned int, 10 > >&& locators ) { std::vector< double > xss; - auto ntype = locators.size(); + const auto ntype = locators.size(); xss.reserve( ntype * 12 ); if ( ( types.size() != ntype ) || ( numbers.size() != ntype ) ) { @@ -20,8 +20,8 @@ generateXSS( std::vector< unsigned int >&& types, for ( unsigned int index = 0; index < ntype; ++index ) { - xss.push_back( types[index] ); - xss.push_back( numbers[index] ); + xss.push_back( static_cast< double >( types[index] ) ); + xss.push_back( static_cast< double >( numbers[index] ) ); xss.insert( xss.end(), locators[index].begin(), locators[index].end() ); } return xss; diff --git a/src/ACEtk/block/PolynomialFissionMultiplicity/src/generateXSS.hpp b/src/ACEtk/block/PolynomialFissionMultiplicity/src/generateXSS.hpp index 944fa4e9..64fd9e20 100644 --- a/src/ACEtk/block/PolynomialFissionMultiplicity/src/generateXSS.hpp +++ b/src/ACEtk/block/PolynomialFissionMultiplicity/src/generateXSS.hpp @@ -1,7 +1,7 @@ static std::vector< double > generateXSS( std::vector< double >&& coefficients ) { - std::vector< double > xss = { 1, static_cast< double >( coefficients.size() ) }; + std::vector< double > xss = { 1., static_cast< double >( coefficients.size() ) }; xss.reserve( 2 + coefficients.size() ); xss.insert( xss.end(), coefficients.begin(), coefficients.end() ); diff --git a/src/ACEtk/block/ProbabilityTableBlock/src/generateXSS.hpp b/src/ACEtk/block/ProbabilityTableBlock/src/generateXSS.hpp index 5acff118..13809321 100644 --- a/src/ACEtk/block/ProbabilityTableBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/ProbabilityTableBlock/src/generateXSS.hpp @@ -4,13 +4,13 @@ generateXSS( unsigned int interpolation, int inelastic, std::vector< ProbabilityTable >&& tables ) { std::vector< double > xss( 6 + tables.size() ); - std::size_t bins = tables.front().numberBins(); - xss[0] = tables.size(); - xss[1] = bins; - xss[2] = interpolation; - xss[3] = inelastic; - xss[4] = absorption; - xss[5] = type; + const auto bins = tables.front().numberBins(); + xss[0] = static_cast< double >( tables.size() ); + xss[1] = static_cast< double >( bins ); + xss[2] = static_cast< double >( interpolation ); + xss[3] = static_cast< double >( inelastic ); + xss[4] = static_cast< double >( absorption ); + xss[5] = static_cast< double >( type ); unsigned int index = 6; for ( const auto& table : tables ) { diff --git a/src/ACEtk/block/SecondaryParticleEnergyDistributionBlock/src/generateXSS.hpp b/src/ACEtk/block/SecondaryParticleEnergyDistributionBlock/src/generateXSS.hpp index 021e5408..ed8f33d5 100644 --- a/src/ACEtk/block/SecondaryParticleEnergyDistributionBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/SecondaryParticleEnergyDistributionBlock/src/generateXSS.hpp @@ -1,7 +1,7 @@ static std::vector< double > generateXSS( std::vector< EnergyDistributionData >&& distributions ) { - std::size_t size = distributions.size(); + const auto size = distributions.size(); std::vector< double > xss( size ); std::size_t index = 0; for ( auto&& distribution : distributions ) { @@ -20,10 +20,10 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions ) { [ &xss, offset ] ( const MultiDistributionData& value ) { // remake the internal xss array with the proper locators - MultiDistributionData temp( - std::move( value.probabilities() ), - std::move( value.distributions() ), - offset ); + const MultiDistributionData temp( + std::move( value.probabilities() ), + std::move( value.distributions() ), + offset ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [] ( const auto& ) { /* nothing to do here */ } @@ -43,11 +43,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions ) { [ &xss, &idat, offset ] ( const auto& value ) { idat = offset + 3 + 1 + 5; - xss.push_back( 0 ); // LNW - xss.push_back( static_cast< short >( value.LAW() ) ); // LAW - xss.push_back( idat ); // IDAT - xss.push_back( 0 ); // NR - xss.push_back( 2 ); // NE + xss.push_back( 0. ); // LNW + xss.push_back( static_cast< double >( value.LAW() ) ); // LAW + xss.push_back( static_cast< double >( idat ) ); // IDAT + xss.push_back( 0. ); // NR + xss.push_back( 2. ); // NE xss.push_back( value.minimumIncidentEnergy() ); // E[0] xss.push_back( value.maximumIncidentEnergy() ); // E[1] xss.push_back( 1. ); // P[0] @@ -65,11 +65,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions ) { // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - OutgoingEnergyDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - idat ); + const OutgoingEnergyDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + idat ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss, idat ] ( const KalbachMannDistributionData& value ) { @@ -77,11 +77,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions ) { // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - KalbachMannDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - idat ); + const KalbachMannDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + idat ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss, idat ] ( const EnergyAngleDistributionData& value ) { @@ -89,11 +89,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions ) { // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - EnergyAngleDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - idat ); + const EnergyAngleDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + idat ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss, idat ] ( const AngleEnergyDistributionData& value ) { @@ -101,11 +101,11 @@ generateXSS( std::vector< EnergyDistributionData >&& distributions ) { // remake the internal xss array with the proper locators decltype(auto) boundaries = value.boundaries(); decltype(auto) interpolants = value.interpolants(); - AngleEnergyDistributionData temp( - { boundaries.begin(), boundaries.end() }, - { interpolants.begin(), interpolants.end() }, - std::move( value.distributions() ), - idat ); + const AngleEnergyDistributionData temp( + { boundaries.begin(), boundaries.end() }, + { interpolants.begin(), interpolants.end() }, + std::move( value.distributions() ), + idat ); xss.insert( xss.end(), temp.begin(), temp.end() ); }, [ &xss ] ( const auto& value ) { diff --git a/src/ACEtk/block/SecondaryParticleInformationBlock/src/generateXSS.hpp b/src/ACEtk/block/SecondaryParticleInformationBlock/src/generateXSS.hpp index 159e69a4..6dfd0a2c 100644 --- a/src/ACEtk/block/SecondaryParticleInformationBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/SecondaryParticleInformationBlock/src/generateXSS.hpp @@ -1,7 +1,7 @@ static std::vector< double > generateXSS( std::vector< unsigned int >&& numbers ) { std::vector< double > xss; - auto ntype = numbers.size(); + const auto ntype = numbers.size(); xss.reserve( ntype ); xss.insert( xss.end(), numbers.begin(), numbers.end() ); return xss; diff --git a/src/ACEtk/block/SecondaryParticleLocatorBlock/src/generateXSS.hpp b/src/ACEtk/block/SecondaryParticleLocatorBlock/src/generateXSS.hpp index 6a5b9a7e..3d0ee533 100644 --- a/src/ACEtk/block/SecondaryParticleLocatorBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/SecondaryParticleLocatorBlock/src/generateXSS.hpp @@ -2,7 +2,7 @@ static std::vector< double > generateXSS( std::vector< std::array< unsigned int, 10 > >&& locators ) { std::vector< double > xss; - auto ntype = locators.size(); + const auto ntype = locators.size(); xss.reserve( ntype * 10 ); for ( const auto& array : locators ) { diff --git a/src/ACEtk/block/SecondaryParticleProductionBlock/src/generateXSS.hpp b/src/ACEtk/block/SecondaryParticleProductionBlock/src/generateXSS.hpp index 03ce9e49..5d1aa074 100644 --- a/src/ACEtk/block/SecondaryParticleProductionBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/SecondaryParticleProductionBlock/src/generateXSS.hpp @@ -3,7 +3,7 @@ static std::vector< double > generateXSS( std::vector< double >&& production, std::vector< double >&& heating ) { - std::size_t size = production.size(); + const auto size = production.size(); if ( heating.size() != size ) { Log::error( "The number of heating values is not equal to the number of " diff --git a/src/ACEtk/block/TabulatedEnergyAngleDistribution/src/generateXSS.hpp b/src/ACEtk/block/TabulatedEnergyAngleDistribution/src/generateXSS.hpp index 9c049a9b..82f60130 100644 --- a/src/ACEtk/block/TabulatedEnergyAngleDistribution/src/generateXSS.hpp +++ b/src/ACEtk/block/TabulatedEnergyAngleDistribution/src/generateXSS.hpp @@ -5,11 +5,11 @@ generateXSS( const std::string& name, std::size_t locb ) { // add the distribution data to the xss array - std::size_t ne = distributions.size(); + const auto ne = distributions.size(); std::vector< double > xss( 1 + 4 * ne ); - xss[0] = ne; + xss[0] = static_cast< double >( ne ); std::size_t index = 1; - std::size_t offset = 1 + locb; + const auto offset = 1 + locb; for ( const auto& distribution : distributions ) { // set the associated energy, probability and cumulative probability value @@ -18,7 +18,7 @@ generateXSS( const std::string& name, xss[index + 2 * ne] = distribution.cumulativeProbability(); // set the locator - xss[index + 3 * ne] = xss.size() + offset; + xss[index + 3 * ne] = static_cast< double >( xss.size() + offset ); // insert the xss array xss.insert( xss.end(), distribution.begin(), distribution.end() ); @@ -28,7 +28,7 @@ generateXSS( const std::string& name, } // insert the interpolation data in the front - xss.insert( xss.begin(), interpolation ); + xss.insert( xss.begin(), static_cast< double >( interpolation ) ); return xss; } diff --git a/src/ACEtk/block/TabulatedFissionMultiplicity/src/generateXSS.hpp b/src/ACEtk/block/TabulatedFissionMultiplicity/src/generateXSS.hpp index 6637c7e2..08603c5d 100644 --- a/src/ACEtk/block/TabulatedFissionMultiplicity/src/generateXSS.hpp +++ b/src/ACEtk/block/TabulatedFissionMultiplicity/src/generateXSS.hpp @@ -4,12 +4,12 @@ generateXSS( std::vector< long >&& boundaries, std::vector< double >&& x, std::vector< double >&& y ) { - std::vector< double > xss = { 2 }; - details::BaseTabulatedData data( "TabulatedFissionMultiplicity", - std::move( boundaries ), - std::move( interpolants ), - std::move( x ), - std::move( y ) ); + std::vector< double > xss = { 2. }; + const details::BaseTabulatedData data( "TabulatedFissionMultiplicity", + std::move( boundaries ), + std::move( interpolants ), + std::move( x ), + std::move( y ) ); xss.insert( xss.end(), data.begin(), data.end() ); return xss; } diff --git a/src/ACEtk/block/ThermalScatteringInelasticAngularDistributionBlock/src/generateXSS.hpp b/src/ACEtk/block/ThermalScatteringInelasticAngularDistributionBlock/src/generateXSS.hpp index 02717750..d7867241 100644 --- a/src/ACEtk/block/ThermalScatteringInelasticAngularDistributionBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/ThermalScatteringInelasticAngularDistributionBlock/src/generateXSS.hpp @@ -4,8 +4,8 @@ generateXSS( std::size_t ) { std::vector< double > xss; - auto ne = cosines.size(); - auto nieb = cosines.front().size(); + const auto ne = cosines.size(); + const auto nieb = cosines.front().size(); for ( unsigned int i = 0; i < ne; ++i ) { if ( nieb != cosines[i].size() ) { @@ -32,7 +32,7 @@ generateXSS( std::vector< std::vector< ThermalScatteringDiscreteCosinesWithProbability > >&& cosines, std::size_t locb ) { - std::size_t size = cosines.size(); + const auto size = cosines.size(); std::vector< double > xss( size * 2 ); std::size_t index = 0; for ( auto&& data : cosines ) { @@ -45,8 +45,8 @@ generateXSS( // set the locator and number of outgoing energies for the current incident // energy // Note: historically, these locators are off by 1 - xss[index] = locator + ( locb - 1 ) - 1; - xss[size + index] = data.size(); + xss[index] = static_cast< double >( locator + ( locb - 1 ) - 1 ); + xss[size + index] = static_cast< double >( data.size() ); // insert every set of discrete cosines for ( auto&& entry : data ) { diff --git a/src/ACEtk/block/details/ArrayData/src/generateXSS.hpp b/src/ACEtk/block/details/ArrayData/src/generateXSS.hpp index 23a3ddfb..69df2266 100644 --- a/src/ACEtk/block/details/ArrayData/src/generateXSS.hpp +++ b/src/ACEtk/block/details/ArrayData/src/generateXSS.hpp @@ -3,7 +3,7 @@ static std::vector< double > generateXSS( std::vector< std::vector< Number > >&& arrays ) { std::vector< double > xss; - auto n = arrays.front().size(); + const auto n = arrays.front().size(); xss.reserve( arrays.size() * n ); unsigned int index = 1; diff --git a/src/ACEtk/block/details/BaseAngularDistributionBlock/src/generateBlocks.hpp b/src/ACEtk/block/details/BaseAngularDistributionBlock/src/generateBlocks.hpp index c7f0c69d..7297c93a 100644 --- a/src/ACEtk/block/details/BaseAngularDistributionBlock/src/generateBlocks.hpp +++ b/src/ACEtk/block/details/BaseAngularDistributionBlock/src/generateBlocks.hpp @@ -20,7 +20,7 @@ void generateBlocks() { auto right = this->end(); for ( auto next = index + 1; next <= this->NR(); ++next ) { - auto nextlocator = xand + this->LAND( next ) - 1; + const auto nextlocator = xand + this->LAND( next ) - 1; if ( nextlocator > locator ) { right = this->iterator( nextlocator ); diff --git a/src/ACEtk/block/details/BaseAngularDistributionBlock/src/generateXSS.hpp b/src/ACEtk/block/details/BaseAngularDistributionBlock/src/generateXSS.hpp index f8159a72..d2e0cfdd 100644 --- a/src/ACEtk/block/details/BaseAngularDistributionBlock/src/generateXSS.hpp +++ b/src/ACEtk/block/details/BaseAngularDistributionBlock/src/generateXSS.hpp @@ -1,8 +1,8 @@ static std::vector< double > generateXSS( std::vector< DistributionData >&& distributions ) { - std::size_t nr = distributions.size(); - std::vector< double > xss( nr ); + const auto nr = distributions.size(); + std::vector< double > xss( static_cast< double >( nr ) ); std::size_t index = 0; for ( const auto& distribution : distributions ) { @@ -23,9 +23,9 @@ generateXSS( std::vector< DistributionData >&& distributions ) { xss[index] = xss.size() - nr + 1; // remake the internal xss array with the proper locators - AngularDistributionData temp( - std::move( value.distributions() ), - xss[index] ); + const AngularDistributionData temp( + std::move( value.distributions() ), + xss[index] ); xss.insert( xss.end(), temp.begin(), temp.end() ); } }, diff --git a/src/ACEtk/block/details/BaseBlockWithLocators/src/generateXSS.hpp b/src/ACEtk/block/details/BaseBlockWithLocators/src/generateXSS.hpp index a3c29489..3e8e8687 100644 --- a/src/ACEtk/block/details/BaseBlockWithLocators/src/generateXSS.hpp +++ b/src/ACEtk/block/details/BaseBlockWithLocators/src/generateXSS.hpp @@ -1,11 +1,11 @@ static std::vector< double > generateXSS( std::vector< Data >&& xs ) { - std::size_t nr = xs.size(); - std::vector< double > xss( nr ); + const auto nr = xs.size(); + std::vector< double > xss( static_cast< double >( nr ) ); std::size_t index = 0; for ( const auto& data : xs ) { - xss[index] = xss.size() - nr + 1; + xss[index] = static_cast< double >( xss.size() - nr + 1 ); xss.insert( xss.end(), data.begin(), data.end() ); ++index; } diff --git a/src/ACEtk/block/details/BaseDistributionData.hpp b/src/ACEtk/block/details/BaseDistributionData.hpp index 186124ae..7c8e180c 100644 --- a/src/ACEtk/block/details/BaseDistributionData.hpp +++ b/src/ACEtk/block/details/BaseDistributionData.hpp @@ -52,7 +52,10 @@ class BaseDistributionData : protected details::Base { /** * @brief Return the interpolation data */ - auto interpolationData() const { return this->interpolation_; } + const InterpolationData& interpolationData() const { + + return this->interpolation_; + } /** * @brief Return the number of interpolation regions diff --git a/src/ACEtk/block/details/BaseDistributionData/src/ctor.hpp b/src/ACEtk/block/details/BaseDistributionData/src/ctor.hpp index bf7da702..068a0fa0 100644 --- a/src/ACEtk/block/details/BaseDistributionData/src/ctor.hpp +++ b/src/ACEtk/block/details/BaseDistributionData/src/ctor.hpp @@ -61,8 +61,8 @@ BaseDistributionData( std::string name, std::size_t locb, Iterator begin, Iterator end ) : Base( std::move( name ), begin, end ), locb_( locb ) { - std::size_t nr = static_cast< std::size_t >( round( this->XSS( 1 ) ) ); - std::size_t ne = static_cast< std::size_t >( round( this->XSS( 1 + 2 * nr + 1 ) ) ); + const auto nr = static_cast< std::size_t >( round( this->XSS( 1 ) ) ); + const auto ne = static_cast< std::size_t >( round( this->XSS( 1 + 2 * nr + 1 ) ) ); verifySize( this->begin(), this->end(), nr, ne ); static_cast< Derived* >( this )->generateBlocks(); } diff --git a/src/ACEtk/block/details/BaseDistributionData/src/generateBlocks.hpp b/src/ACEtk/block/details/BaseDistributionData/src/generateBlocks.hpp index ee10359e..17107ce8 100644 --- a/src/ACEtk/block/details/BaseDistributionData/src/generateBlocks.hpp +++ b/src/ACEtk/block/details/BaseDistributionData/src/generateBlocks.hpp @@ -1,7 +1,7 @@ void generateBlocks() { - std::size_t nr = static_cast< std::size_t >( this->IXSS( 1 ) ); - std::size_t ne = static_cast< std::size_t >( this->IXSS( 2 + 2 * nr ) ); + const auto nr = static_cast< std::size_t >( this->IXSS( 1 ) ); + const auto ne = static_cast< std::size_t >( this->IXSS( 2 + 2 * nr ) ); auto begin = this->begin(); auto data = this->iterator( 2 + 2 * nr ); auto end = this->iterator( 2 + 2 * nr + 2 * ne + 1 ); diff --git a/src/ACEtk/block/details/BaseDistributionData/src/generateXSS.hpp b/src/ACEtk/block/details/BaseDistributionData/src/generateXSS.hpp index 8d5b6fdd..42234df2 100644 --- a/src/ACEtk/block/details/BaseDistributionData/src/generateXSS.hpp +++ b/src/ACEtk/block/details/BaseDistributionData/src/generateXSS.hpp @@ -6,19 +6,19 @@ generateXSS( const std::string& name, std::size_t locb ) { // add the distribution data to the xss array - std::size_t nr = boundaries.size(); - std::size_t ne = distributions.size(); - std::vector< double > xss( 1 + 2 * ne ); + const auto nr = boundaries.size(); + const auto ne = distributions.size(); + std::vector< double > xss( static_cast< double >( 1 + 2 * ne ) ); xss[0] = ne; std::size_t index = 1; - std::size_t offset = 1 + 2 * nr + locb; + const auto offset = 1 + 2 * nr + locb; for ( const auto& distribution : distributions ) { // set the associated value xss[index] = distribution.value(); // set the locator - xss[index + ne] = xss.size() + offset; + xss[index + ne] = static_cast< double >( xss.size() + offset ); // insert the xss array xss.insert( xss.end(), distribution.begin(), distribution.end() ); @@ -28,9 +28,9 @@ generateXSS( const std::string& name, } // insert the interpolation data in the front - InterpolationData interpolation( std::string( name ), - std::move( boundaries ), - std::move( interpolants ) ); + const InterpolationData interpolation( std::string( name ), + std::move( boundaries ), + std::move( interpolants ) ); xss.insert( xss.begin(), interpolation.begin(), interpolation.end() ); return xss; diff --git a/src/ACEtk/block/details/BaseDistributionDataWithInterpolationType/src/generateXSS.hpp b/src/ACEtk/block/details/BaseDistributionDataWithInterpolationType/src/generateXSS.hpp index 69fc829d..cf0edb08 100644 --- a/src/ACEtk/block/details/BaseDistributionDataWithInterpolationType/src/generateXSS.hpp +++ b/src/ACEtk/block/details/BaseDistributionDataWithInterpolationType/src/generateXSS.hpp @@ -5,18 +5,18 @@ generateXSS( const std::string& name, std::size_t locb ) { // add the distribution data to the xss array - std::size_t ne = distributions.size(); - std::vector< double > xss( 1 + 2 * ne ); + const auto ne = distributions.size(); + std::vector< double > xss( static_cast< double >( 1 + 2 * ne ) ); xss[0] = ne; std::size_t index = 1; - std::size_t offset = 1 + locb; + const auto offset = 1 + locb; for ( const auto& distribution : distributions ) { // set the associated value xss[index] = distribution.value(); // set the locator - xss[index + ne] = xss.size() + offset; + xss[index + ne] = static_cast< double >( xss.size() + offset ); // insert the xss array xss.insert( xss.end(), distribution.begin(), distribution.end() ); diff --git a/src/ACEtk/block/details/BaseEvaporationSpectrum/src/generateXSS.hpp b/src/ACEtk/block/details/BaseEvaporationSpectrum/src/generateXSS.hpp index 38224bc8..4e85fb0f 100644 --- a/src/ACEtk/block/details/BaseEvaporationSpectrum/src/generateXSS.hpp +++ b/src/ACEtk/block/details/BaseEvaporationSpectrum/src/generateXSS.hpp @@ -8,11 +8,11 @@ generateXSS( // insert the tabulated data std::vector< double > xss; - details::BaseTabulatedData table( "DLW::GeneralEvaporationSpectrum", - std::move( boundaries ), - std::move( interpolants ), - std::move( energies ), - std::move( temperatures ) ); + const details::BaseTabulatedData table( "DLW::GeneralEvaporationSpectrum", + std::move( boundaries ), + std::move( interpolants ), + std::move( energies ), + std::move( temperatures ) ); xss.insert( xss.end(), table.begin(), table.end() ); // insert the restriction energy diff --git a/src/ACEtk/block/details/BaseTabulatedData/src/generateXSS.hpp b/src/ACEtk/block/details/BaseTabulatedData/src/generateXSS.hpp index 393fd4ae..4d00203c 100644 --- a/src/ACEtk/block/details/BaseTabulatedData/src/generateXSS.hpp +++ b/src/ACEtk/block/details/BaseTabulatedData/src/generateXSS.hpp @@ -7,18 +7,18 @@ generateXSS( const std::string& name, // reserve size in the vector std::vector< double > xss; - std::size_t nr = boundaries.size(); - std::size_t ne = x.size(); + const auto nr = boundaries.size(); + const auto ne = x.size(); xss.reserve( 2 + 2 * nr + 2 * ne ); // insert the interpolation data - InterpolationData interpolation( std::string( name ), - std::move( boundaries ), - std::move( interpolants ) ); + const InterpolationData interpolation( std::string( name ), + std::move( boundaries ), + std::move( interpolants ) ); xss.insert( xss.end(), interpolation.begin(), interpolation.end() ); // insert the tabulated data - ColumnData table( std::string( name ), std::move( x ), std::move( y ) ); + const ColumnData table( std::string( name ), std::move( x ), std::move( y ) ); xss.insert( xss.end(), table.begin(), table.end() ); return xss; diff --git a/src/ACEtk/block/details/ColumnData/src/generateXSS.hpp b/src/ACEtk/block/details/ColumnData/src/generateXSS.hpp index ba0b8cd6..dfe5a9e4 100644 --- a/src/ACEtk/block/details/ColumnData/src/generateXSS.hpp +++ b/src/ACEtk/block/details/ColumnData/src/generateXSS.hpp @@ -2,10 +2,10 @@ static std::vector< double > generateXSS( std::vector< std::vector< double > >&& columns ) { std::vector< double > xss; - auto nc = columns.size(); - auto ne = columns[0].size(); + const auto nc = columns.size(); + const auto ne = columns[0].size(); xss.reserve( 1 + ne * nc ); - xss.push_back( ne ); + xss.push_back( static_cast< double >( ne ) ); for ( unsigned int i = 0; i < nc; ++i ) { diff --git a/src/ACEtk/block/details/TabulatedProbabilityDistribution/src/generateXSS.hpp b/src/ACEtk/block/details/TabulatedProbabilityDistribution/src/generateXSS.hpp index 03577b4e..2d005841 100644 --- a/src/ACEtk/block/details/TabulatedProbabilityDistribution/src/generateXSS.hpp +++ b/src/ACEtk/block/details/TabulatedProbabilityDistribution/src/generateXSS.hpp @@ -6,10 +6,10 @@ static std::vector< double > generateXSS( std::vector< std::vector< double > >&& data ) { std::vector< double > xss = { static_cast< double >( interpolation ) }; + xss.reserve( 2 + 3 * values.size() ); data.insert( data.begin(), std::move( cdf ) ); data.insert( data.begin(), std::move( pdf ) ); data.insert( data.begin(), std::move( values ) ); - xss.reserve( 2 + 3 * values.size() ); details::ColumnData columns( "TabulatedProbabilityDistribution", std::move( data ) ); xss.insert( xss.end(), columns.begin(), columns.end() );