From 15ce544225882bcac190193e656c200df0998863 Mon Sep 17 00:00:00 2001 From: gaudu Date: Thu, 7 Sep 2023 16:24:07 +0200 Subject: [PATCH 01/30] Updated to Pythia 8.3.10 + Added H2,Kr84 + Setup reusable files for MPI and HeavyIon runs. --- src/chromo/models/pythia8.py | 28 ++++++++++++++++++++++------ src/chromo/util.py | 2 ++ 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 2ae9ba1f..16adbd22 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -76,7 +76,7 @@ def _prepare_for_hepmc(self): class Pythia8(MCRun): _name = "Pythia" - _version = "8.308" + _version = "8.310" _library_name = "_pythia8" _event_class = PYTHIA8Event _frame = EventFrame.CENTER_OF_MASS @@ -85,12 +85,12 @@ class Pythia8(MCRun): # Support for more nuclei can be added with ParticleData.addParticle. _targets = _projectiles | { name2pdg(x) - for x in ("He4", "Li6", "C12", "O16", "Cu63", "Xe129", "Au197", "Pb208") + for x in ("H2", "He4", "Li6", "C12", "O16", "Cu63", "Kr84", "Xe129", "Au197", "Pb208") } _restartable = True _data_url = ( "https://github.com/impy-project/chromo" - + "/releases/download/zipped_data_v1.0/Pythia8_v002.zip" + + "/releases/download/zipped_data_v1.0/Pythia8_v002.zip" # TODO to be updated ) def __init__(self, evt_kin, *, seed=None, config=None, banner=True): @@ -160,16 +160,22 @@ def _cross_section(self, kin=None): diffractive_xx=st.sigmaXX, diffractive_axb=st.sigmaAXB, ) + + # not estimated total cross-section -> def _set_kinematics(self, kin): config = self._config[:] + initPrefix = f"{int(kin.p1)}_{int(kin.p2)}_{kin.ecm}" + # TODO use numpy PRNG instead of Pythia's config += [ # use center-of-mass frame "Beams:frameType = 1", # do not print progress "Next:numberCount = 0", + "MultipartonInteractions:reuseInit = 3", + f"MultipartonInteractions:initFile = {initPrefix}.mpi" ] if (kin.p1.A or 0) > 1 or (kin.p2.A or 1) > 1: @@ -178,18 +184,28 @@ def _set_kinematics(self, kin): warnings.warn( "Support for nuclei is experimental; event generation takes a long time", RuntimeWarning, + ) + + config += [ + "HeavyIon:SasdMpiReuseInit = 3", + "HeavyIon:SigFitReuseInit = 3", + f"HeavyIon:SasdMpiInitFile = {initPrefix}.sasd.mpi", + f"HeavyIon:SigFitInitFile = {initPrefix}.sigfit" + + ] # speed-up initialization by not fitting nuclear cross-section - config.append("HeavyIon:SigFitNGen = 0") - config.append("HeavyIon:SigFitDefPar = 10.79,1.75,0.30,0.0,0.0,0.0,0.0,0.0") + #config.append("HeavyIon:SigFitNGen = 0") + #config.append("HeavyIon:SigFitDefPar = 10.79,1.75,0.30,0.0,0.0,0.0,0.0,0.0") + config += [ f"Beams:idA = {int(kin.p1)}", f"Beams:idB = {int(kin.p2)}", f"Beams:eCM = {kin.ecm}", ] - + self._init_pythia(config) def _init_pythia(self, config): diff --git a/src/chromo/util.py b/src/chromo/util.py index ec66aeac..530cf33b 100644 --- a/src/chromo/util.py +++ b/src/chromo/util.py @@ -219,12 +219,14 @@ def _make_name2pdg_db(): db.update( H=db["p"], H1=db["p"], + H2=db["D2"], He=db["He4"], C=db["C12"], N=db["N14"], O=db["O16"], Ne=db["Ne20"], Ar=db["Ar40"], + Kr=db["Kr84"], Xe=db["Xe131"], Pb=db["Pb206"], photon=db["gamma"], From 92560dd45920b701659c7f3b802dd8189302d00d Mon Sep 17 00:00:00 2001 From: gaudu Date: Thu, 7 Sep 2023 16:40:48 +0200 Subject: [PATCH 02/30] Updated to Pythia 8.3.10. --- default_models.cfg | 20 +------------------- src/cpp/pythia83 | 2 +- 2 files changed, 2 insertions(+), 20 deletions(-) diff --git a/default_models.cfg b/default_models.cfg index 9e0407b9..5f111a2b 100644 --- a/default_models.cfg +++ b/default_models.cfg @@ -1,19 +1 @@ -eposlhc -sib21 -sib23 -sib23d -sib23d_star -sib23c01 -qgs01 -qgsII03 -qgsII04 -pythia6 -sophia -dpmjet307 -phojet112 -phojet191 -phojet193 -dpmjetIII191 -dpmjetIII193 -urqmd34 -pythia8 \ No newline at end of file +pythia8 diff --git a/src/cpp/pythia83 b/src/cpp/pythia83 index 38ebd868..b5a3fb48 160000 --- a/src/cpp/pythia83 +++ b/src/cpp/pythia83 @@ -1 +1 @@ -Subproject commit 38ebd86865e4f25e9cf461b610f5c82d475ab77a +Subproject commit b5a3fb48f79b3b4441cbf22f7ab710be3b1d7a46 From f82aebb66757956a350823c78477461af2466fdd Mon Sep 17 00:00:00 2001 From: gaudu Date: Thu, 7 Sep 2023 17:02:11 +0200 Subject: [PATCH 03/30] Fixed few first error messages from Pythia 8.3.08 -> 8.3.10. --- src/cpp/_pythia8.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/cpp/_pythia8.cpp b/src/cpp/_pythia8.cpp index b7f02ce5..90de620a 100644 --- a/src/cpp/_pythia8.cpp +++ b/src/cpp/_pythia8.cpp @@ -2,7 +2,9 @@ #include #include #include -#include +#include +#include +// #include #include #include #include @@ -248,7 +250,7 @@ PYBIND11_MODULE(_pythia8, m) .def(py::init(), py::call_guard()) .def("init", &Pythia::init, py::call_guard()) .def("next", py::overload_cast<>(&Pythia::next)) - .def("readString", &Pythia::readString, "setting"_a, "warn"_a = true) + .def("readString", &Pythia::readString, "setting"_a, "warn"_a = true, "subrun"_a = SUBRUNDEFAULT) .def("forceHadronLevel", &Pythia::forceHadronLevel, "find_junctions"_a = true) .def_readwrite("particleData", &Pythia::particleData) .def_readwrite("settings", &Pythia::settings) @@ -287,4 +289,4 @@ PYBIND11_MODULE(_pythia8, m) .def("list", py::overload_cast(&Event::list, py::const_), "showScaleAndVertex"_a = false, "showMothersAndDaughters"_a = false, "precision"_a = 3) .def("append", py::overload_cast(&Event::append), "pdgid"_a, "status"_a, "col"_a, "acol"_a, "px"_a, "py"_a, "pz"_a, "e"_a, "m"_a = 0, "scale"_a = 0, "pol"_a = 9.) .def("fill", &fill); -} \ No newline at end of file +} From 1ab3a422f86f71be6bf5019de6b3e5b9dbb84993 Mon Sep 17 00:00:00 2001 From: gaudu Date: Thu, 7 Sep 2023 17:30:47 +0200 Subject: [PATCH 04/30] Implementing Han's fix for: PYTHIA Abort from Pythia::checkVersion: unmatched version numbers : in code 8.310 but in XML 8.308. --- src/chromo/models/pythia8.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 16adbd22..fe691816 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -90,7 +90,7 @@ class Pythia8(MCRun): _restartable = True _data_url = ( "https://github.com/impy-project/chromo" - + "/releases/download/zipped_data_v1.0/Pythia8_v002.zip" # TODO to be updated + + "/releases/download/zipped_data_v1.0/Pythia8_v003.zip" ) def __init__(self, evt_kin, *, seed=None, config=None, banner=True): From 54b5f7e1250cc0af5ea0ef526f5fdd70428f1ad6 Mon Sep 17 00:00:00 2001 From: Hans Dembinski Date: Thu, 7 Sep 2023 18:11:20 +0200 Subject: [PATCH 05/30] test_nuclear_collision now works --- src/chromo/models/pythia8.py | 60 ++++++++++++++++++++++-------------- src/chromo/util.py | 12 +++++--- src/cpp/_pythia8.cpp | 11 ++++++- tests/test_pythia8.py | 3 +- 4 files changed, 56 insertions(+), 30 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index fe691816..7813b366 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -1,5 +1,6 @@ from chromo.common import MCRun, EventData, CrossSectionData -from chromo.util import _cached_data_dir, name2pdg +from chromo.util import _cached_data_dir, _cache_base_dir, name2pdg +from chromo.constants import MeV from os import environ import numpy as np from chromo.kinematics import EventFrame @@ -85,7 +86,18 @@ class Pythia8(MCRun): # Support for more nuclei can be added with ParticleData.addParticle. _targets = _projectiles | { name2pdg(x) - for x in ("H2", "He4", "Li6", "C12", "O16", "Cu63", "Kr84", "Xe129", "Au197", "Pb208") + for x in ( + "H2", + "He4", + "Li6", + "C12", + "O16", + "Cu63", + "Kr84", + "Xe129", + "Au197", + "Pb208", + ) } _restartable = True _data_url = ( @@ -160,13 +172,19 @@ def _cross_section(self, kin=None): diffractive_xx=st.sigmaXX, diffractive_axb=st.sigmaAXB, ) - - # not estimated total cross-section -> + + # not estimated total cross-section -> def _set_kinematics(self, kin): config = self._config[:] - initPrefix = f"{int(kin.p1)}_{int(kin.p2)}_{kin.ecm}" + # Path prefix for some cache files that Pythia8 generates + # to speed up subsequent runs + cache_prefix = str( + _cache_base_dir() + / "Pythia8" + / f"cache_{int(kin.p1)}_{int(kin.p2)}_{kin.ecm / MeV:.0f}".replace("-", "m") + ) # TODO use numpy PRNG instead of Pythia's config += [ @@ -175,37 +193,33 @@ def _set_kinematics(self, kin): # do not print progress "Next:numberCount = 0", "MultipartonInteractions:reuseInit = 3", - f"MultipartonInteractions:initFile = {initPrefix}.mpi" + f"MultipartonInteractions:initFile = {cache_prefix}.mpi", ] + # TODO Pythia8 likes to say this: + # To avoid refitting, add the following lines to your configuration file: + # HeavyIon:SigFitNGen = 0 + # HeavyIon:SigFitDefPar = 18.39,1.91,0.36 + # but these numbers of collision-specific, so we cannot just set this globally. + # We could generate collision-specific cache files like we do for the + # MPI stuff and set the numbers via those. To get the numbers, call + # SubCollisionModel::getParm(), which is complicated to call from the Pythia + # object, this is work in progress. + if (kin.p1.A or 0) > 1 or (kin.p2.A or 1) > 1: - import warnings - - warnings.warn( - "Support for nuclei is experimental; event generation takes a long time", - RuntimeWarning, - - ) - config += [ "HeavyIon:SasdMpiReuseInit = 3", "HeavyIon:SigFitReuseInit = 3", - f"HeavyIon:SasdMpiInitFile = {initPrefix}.sasd.mpi", - f"HeavyIon:SigFitInitFile = {initPrefix}.sigfit" - + f"HeavyIon:SasdMpiInitFile = {cache_prefix}.sasd.mpi", + f"HeavyIon:SigFitInitFile = {cache_prefix}.sigfit", ] - # speed-up initialization by not fitting nuclear cross-section - #config.append("HeavyIon:SigFitNGen = 0") - #config.append("HeavyIon:SigFitDefPar = 10.79,1.75,0.30,0.0,0.0,0.0,0.0,0.0") - - config += [ f"Beams:idA = {int(kin.p1)}", f"Beams:idB = {int(kin.p2)}", f"Beams:eCM = {kin.ecm}", ] - + self._init_pythia(config) def _init_pythia(self, config): diff --git a/src/chromo/util.py b/src/chromo/util.py index 530cf33b..7ce9b057 100644 --- a/src/chromo/util.py +++ b/src/chromo/util.py @@ -474,6 +474,13 @@ def _download_file(outfile, url): raise ConnectionError(f"{fname} has not been downloaded") +# Path to directory to store precomputed data tables +def _cache_base_dir(): + base_dir = Path(__file__).parent.absolute() / "iamdata" + base_dir.mkdir(parents=True, exist_ok=True) + return base_dir + + # Function to check and download dababase files on github def _cached_data_dir(url): """Checks for existence of version file @@ -483,10 +490,7 @@ def _cached_data_dir(url): Args: url (str): url for zip file """ - - base_dir = Path(__file__).parent.absolute() / "iamdata" - base_dir.mkdir(parents=True, exist_ok=True) - + base_dir = _cache_base_dir() vname = Path(url).stem model_dir = base_dir / vname.split("_v")[0] version_file = model_dir / vname diff --git a/src/cpp/_pythia8.cpp b/src/cpp/_pythia8.cpp index 90de620a..225028bb 100644 --- a/src/cpp/_pythia8.cpp +++ b/src/cpp/_pythia8.cpp @@ -246,6 +246,13 @@ PYBIND11_MODULE(_pythia8, m) ; + py::class_>(m, "SubCollisionModel") + // TODO add getParm + ; + + py::class_(m, "HIUserHooks") + .def_property_readonly("subCollisionModel", &HIUserHooks::subCollisionModel); + py::class_(m, "Pythia") .def(py::init(), py::call_guard()) .def("init", &Pythia::init, py::call_guard()) @@ -267,7 +274,9 @@ PYBIND11_MODULE(_pythia8, m) for (auto pit = self.event.begin() + 1; pit != self.event.end(); ++pit) *ptr++ = charge_from_pid(self.particleData, pit->id()); return result; - }); + }) + .def_property_readonly("hiHooks", [](Pythia &self) -> py::object + { return self.hiHooksPtr ? py::cast(self.hiHooksPtr) : py::none(); }); py::class_(m, "Event") .def_property_readonly("size", [](Event &self) diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index f2cf185a..70042d82 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -98,7 +98,6 @@ def test_mothers(event): assert sum(x[1] >= -1 and x[1] < len(event) for x in event.mothers) == n -@pytest.mark.skip(reason="Simulating nuclei in Pythia8 is very time-consuming") def test_nuclear_collision(): # The test takes ages because the initialization is extremely long, # and Pythia seldom raises the success flag unless Ecm > TeV are used. @@ -107,7 +106,7 @@ def test_nuclear_collision(): assert event.pid[0] == 2212 assert event.pid[1] == 1000020040 assert_allclose(event.en[0], 1e3) - assert_allclose(event.en[1], 4e3) + assert_allclose(event.en[1], 4e3, rtol=1e-2) assert event.impact_parameter > 0 assert event.n_wounded[0] == 1 assert event.n_wounded[1] > 0 From f2456d50f40de32ffe8263c52c70deb269974b98 Mon Sep 17 00:00:00 2001 From: Hans Dembinski Date: Fri, 8 Sep 2023 13:33:53 +0200 Subject: [PATCH 06/30] support and test also nuclear projectiles --- src/chromo/models/pythia8.py | 5 ++--- tests/test_pythia8.py | 27 ++++++++++++++++++--------- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 7813b366..c7709a94 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -81,10 +81,8 @@ class Pythia8(MCRun): _library_name = "_pythia8" _event_class = PYTHIA8Event _frame = EventFrame.CENTER_OF_MASS - _projectiles = standard_projectiles | {lp.photon.pdgid} - # Nuclei are supported in principle, but generation is very slow. # Support for more nuclei can be added with ParticleData.addParticle. - _targets = _projectiles | { + _targets = standard_projectiles | { name2pdg(x) for x in ( "H2", @@ -99,6 +97,7 @@ class Pythia8(MCRun): "Pb208", ) } + _projectiles = _targets | {lp.photon.pdgid} _restartable = True _data_url = ( "https://github.com/impy-project/chromo" diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index 70042d82..d72ed9d3 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -1,6 +1,7 @@ from chromo.kinematics import CenterOfMass from chromo.models import Pythia8 from chromo.constants import GeV, long_lived +from chromo.util import name2pdg import numpy as np from numpy.testing import assert_allclose, assert_equal from .util import reference_charge @@ -98,17 +99,25 @@ def test_mothers(event): assert sum(x[1] >= -1 and x[1] < len(event) for x in event.mothers) == n -def test_nuclear_collision(): - # The test takes ages because the initialization is extremely long, - # and Pythia seldom raises the success flag unless Ecm > TeV are used. - - event = run_collision(2000 * GeV, "p", (4, 2)) - assert event.pid[0] == 2212 +@pytest.mark.parametrize("projectile", ("pi-", "K+", "p", "He")) +def test_nuclear_collision(projectile): + # This test is very slow the first time when Pythia is computing + # some cached results. Afterwards it runs super fast. + ecm = 2000 * GeV + event = run_collision(ecm, projectile, "He") + assert event.pid[0] == name2pdg(projectile) assert event.pid[1] == 1000020040 - assert_allclose(event.en[0], 1e3) - assert_allclose(event.en[1], 4e3, rtol=1e-2) + if projectile == "p": + assert_allclose(event.en[0], ecm / 2) + assert_allclose(event.en[1], ecm * 2, rtol=1e-2) + elif projectile == "He": + assert_allclose(event.en[0], ecm * 2, rtol=1e-2) + assert_allclose(event.en[1], ecm * 2, rtol=1e-2) assert event.impact_parameter > 0 - assert event.n_wounded[0] == 1 + if projectile == "He": + assert event.n_wounded[0] >= 1 + else: + assert event.n_wounded[0] == 1 assert event.n_wounded[1] > 0 apid = np.abs(event.final_state_charged().pid) assert np.sum(apid == 211) > 10 From d26d0c51e945b00a7eca1be4d922e8dc34231caa Mon Sep 17 00:00:00 2001 From: gaudu Date: Mon, 11 Sep 2023 16:03:58 +0200 Subject: [PATCH 07/30] Restoring default_models.cfg to its original state. --- default_models.cfg | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/default_models.cfg b/default_models.cfg index 5f111a2b..c2644460 100644 --- a/default_models.cfg +++ b/default_models.cfg @@ -1 +1,19 @@ +eposlhc +sib21 +sib23 +sib23d +sib23d_star +sib23c01 +qgs01 +qgsII03 +qgsII04 +pythia6 +sophia +dpmjet307 +phojet112 +phojet191 +phojet193 +dpmjetIII191 +dpmjetIII193 +urqmd34 pythia8 From b69849597adcda5d46d9cf4cad9e2de94aa45c37 Mon Sep 17 00:00:00 2001 From: gaudu Date: Mon, 16 Oct 2023 13:23:35 +0200 Subject: [PATCH 08/30] Added comments to use correct cross-sections for Angantyr HeavyIon runs. --- src/chromo/models/pythia8.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index c7709a94..86e791aa 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -172,7 +172,21 @@ def _cross_section(self, kin=None): diffractive_axb=st.sigmaAXB, ) - # not estimated total cross-section -> + # TODO use pythia.info.sigmaGen(i) for cross-sections including nucleus in the + # initial collision system. + # pythia.info.sigmaTot() are the estimated cross-section values for the equivalent + # pp collision for each sub-processes. + # pythia.info.sigmaGen(i) are the cross-section values generated by the MC events + # for each subprocesses. Best is to grab these values at the end of the event generation + # when the full statistics is available. + # The subprocesses are defined with codes in Pythia: + # i subprocess + # 101 non-diffractive + # 102 A B -> A B elastic + # 103 A B -> X B single diffractive + # 104 A B -> A X single diffractive + # 105 A B -> X X double diffractive + # 106 A B -> A X B central diffractive def _set_kinematics(self, kin): config = self._config[:] From aff496be8c176faef279715bd61950ddbad6d3d6 Mon Sep 17 00:00:00 2001 From: gaudu Date: Tue, 17 Oct 2023 15:13:47 +0200 Subject: [PATCH 09/30] Fixing comments lenght to <90 characters per line. --- src/chromo/models/pythia8.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 86e791aa..23dfa0da 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -174,19 +174,19 @@ def _cross_section(self, kin=None): # TODO use pythia.info.sigmaGen(i) for cross-sections including nucleus in the # initial collision system. - # pythia.info.sigmaTot() are the estimated cross-section values for the equivalent - # pp collision for each sub-processes. - # pythia.info.sigmaGen(i) are the cross-section values generated by the MC events - # for each subprocesses. Best is to grab these values at the end of the event generation - # when the full statistics is available. + # pythia.info.sigmaTot() are the estimated cross-section values for the + # equivalent pp collision for each sub-processes. + # pythia.info.sigmaGen(i) are the cross-section values generated by the MC + # events for each subprocesses. Best is to grab these values at the end of the + # event generation when the full statistics is available. # The subprocesses are defined with codes in Pythia: # i subprocess - # 101 non-diffractive - # 102 A B -> A B elastic - # 103 A B -> X B single diffractive - # 104 A B -> A X single diffractive - # 105 A B -> X X double diffractive - # 106 A B -> A X B central diffractive + # 101 non-diffractive + # 102 A B -> A B elastic + # 103 A B -> X B single diffractive + # 104 A B -> A X single diffractive + # 105 A B -> X X double diffractive + # 106 A B -> A X B central diffractive def _set_kinematics(self, kin): config = self._config[:] From bd3f8d4a6b55ca12737f1827840e034e0243b30b Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 17 Oct 2023 12:22:30 +0000 Subject: [PATCH 10/30] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/chromo/models/pythia8.py | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 23dfa0da..78bac497 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -172,21 +172,21 @@ def _cross_section(self, kin=None): diffractive_axb=st.sigmaAXB, ) - # TODO use pythia.info.sigmaGen(i) for cross-sections including nucleus in the - # initial collision system. - # pythia.info.sigmaTot() are the estimated cross-section values for the - # equivalent pp collision for each sub-processes. - # pythia.info.sigmaGen(i) are the cross-section values generated by the MC - # events for each subprocesses. Best is to grab these values at the end of the - # event generation when the full statistics is available. + # TODO use pythia.info.sigmaGen(i) for cross-sections including nucleus in the + # initial collision system. + # pythia.info.sigmaTot() are the estimated cross-section values for the equivalent + # pp collision for each sub-processes. + # pythia.info.sigmaGen(i) are the cross-section values generated by the MC events + # for each subprocesses. Best is to grab these values at the end of the event generation + # when the full statistics is available. # The subprocesses are defined with codes in Pythia: # i subprocess - # 101 non-diffractive - # 102 A B -> A B elastic - # 103 A B -> X B single diffractive - # 104 A B -> A X single diffractive - # 105 A B -> X X double diffractive - # 106 A B -> A X B central diffractive + # 101 non-diffractive + # 102 A B -> A B elastic + # 103 A B -> X B single diffractive + # 104 A B -> A X single diffractive + # 105 A B -> X X double diffractive + # 106 A B -> A X B central diffractive def _set_kinematics(self, kin): config = self._config[:] From f3f31f0c1319f3cfd367f4502e238f8d25782e08 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 17 Oct 2023 13:36:10 +0000 Subject: [PATCH 11/30] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/chromo/models/pythia8.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 78bac497..f15948e5 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -174,13 +174,14 @@ def _cross_section(self, kin=None): # TODO use pythia.info.sigmaGen(i) for cross-sections including nucleus in the # initial collision system. - # pythia.info.sigmaTot() are the estimated cross-section values for the equivalent - # pp collision for each sub-processes. - # pythia.info.sigmaGen(i) are the cross-section values generated by the MC events - # for each subprocesses. Best is to grab these values at the end of the event generation - # when the full statistics is available. + # pythia.info.sigmaTot() are the estimated cross-section values for the + # equivalent pp collision for each sub-processes. + # pythia.info.sigmaGen(i) are the cross-section values generated by the MC + # events for each subprocesses. Best is to grab these values at the end of the + # event generation when the full statistics is available. # The subprocesses are defined with codes in Pythia: # i subprocess + # 101 non-diffractive # 102 A B -> A B elastic # 103 A B -> X B single diffractive From 5ce70ec79166e51fb26f38bb26600703c6ceb808 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Chlo=C3=A9=20Gaudu?= <95409748+gaudu@users.noreply.github.com> Date: Mon, 20 Nov 2023 12:24:34 +0100 Subject: [PATCH 12/30] set default pythia8 settings to no cache file production + enable cache file production using cache flag during init + tests --- src/chromo/models/pythia8.py | 31 +++++++++++++++++++------------ tests/test_pythia8.py | 17 +++++++++++++++++ 2 files changed, 36 insertions(+), 12 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index f15948e5..98805246 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -104,7 +104,7 @@ class Pythia8(MCRun): + "/releases/download/zipped_data_v1.0/Pythia8_v003.zip" ) - def __init__(self, evt_kin, *, seed=None, config=None, banner=True): + def __init__(self, evt_kin, *, seed=None, config=None, banner=True, cache=False): """ Parameters @@ -148,6 +148,14 @@ def __init__(self, evt_kin, *, seed=None, config=None, banner=True): f"Random:seed = {self.seed % 900_000_000}", ] + # enable production of cache files by Pythia8 + if cache: + self._config += [ + "MultipartonInteractions:reuseInit = 3", + "HeavyIon:SasdMpiReuseInit = 3", + "HeavyIon:SigFitReuseInit = 3", + ] + # Add "Print:quiet = on" if no "Print:quiet" is in config if not any("Print:quiet" in s for s in self._config): self._config.append("Print:quiet = on") @@ -173,15 +181,13 @@ def _cross_section(self, kin=None): ) # TODO use pythia.info.sigmaGen(i) for cross-sections including nucleus in the - # initial collision system. - # pythia.info.sigmaTot() are the estimated cross-section values for the - # equivalent pp collision for each sub-processes. - # pythia.info.sigmaGen(i) are the cross-section values generated by the MC + # initial collision system. pythia.info.sigmaTot() are the estimated + # cross-section values for the equivalent pp collision for each sub-processes. + # pythia.info.sigmaGen(i) are the cross-section values generated by the MC # events for each subprocesses. Best is to grab these values at the end of the - # event generation when the full statistics is available. - # The subprocesses are defined with codes in Pythia: - # i subprocess - + # event generation when the full statistics is available. The subprocesses are + # defined with codes in Pythia: + # i subprocess # 101 non-diffractive # 102 A B -> A B elastic # 103 A B -> X B single diffractive @@ -206,7 +212,7 @@ def _set_kinematics(self, kin): "Beams:frameType = 1", # do not print progress "Next:numberCount = 0", - "MultipartonInteractions:reuseInit = 3", + "MultipartonInteractions:reuseInit = 0", f"MultipartonInteractions:initFile = {cache_prefix}.mpi", ] @@ -222,8 +228,9 @@ def _set_kinematics(self, kin): if (kin.p1.A or 0) > 1 or (kin.p2.A or 1) > 1: config += [ - "HeavyIon:SasdMpiReuseInit = 3", - "HeavyIon:SigFitReuseInit = 3", + # similar to MultipartonInteractions:reuseInit + "HeavyIon:SasdMpiReuseInit = 0", + "HeavyIon:SigFitReuseInit = 0", f"HeavyIon:SasdMpiInitFile = {cache_prefix}.sasd.mpi", f"HeavyIon:SigFitInitFile = {cache_prefix}.sigfit", ] diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index d72ed9d3..9f98a726 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -185,3 +185,20 @@ def test_gp(): def test_gg(): evt = run_collision(100 * GeV, "gamma", "gamma") assert len(evt) > 2 + +def test_cache_file(): + evt_kin = CenterOfMass(10 * GeV, "p", "p") + m = Pythia8(evt_kin, seed=1, cache=True) # False + config_lines = "\n".join(m._config) + assert "MultipartonInteractions:reuseInit = 3" in config_lines # 0 + # TODO Test for the cache file production for pp@10GeV when we have agreed on the + # filename for the cache files. + +def test_cache_file_heavy_ion(): + evt_kin = CenterOfMass(2000 * GeV, "p", "He") + m = Pythia8(evt_kin, seed=1, cache=True) # False + config_lines = "\n".join(m._config) + assert "HeavyIon:SasdMpiReuseInit = 3" in config_lines # 0 + assert "HeavyIon:SigFitReuseInit = 3" in config_lines # 0 + # TODO Test for the cache file production for pHe@2TeV when we have agreed on the + # filename for the cache files. \ No newline at end of file From 81fd03d75ae15e8c0df3d63bb860dc5ab1b671ce Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 20 Nov 2023 11:25:20 +0000 Subject: [PATCH 13/30] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- tests/test_pythia8.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index 9f98a726..30d5bc58 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -186,19 +186,21 @@ def test_gg(): evt = run_collision(100 * GeV, "gamma", "gamma") assert len(evt) > 2 + def test_cache_file(): evt_kin = CenterOfMass(10 * GeV, "p", "p") - m = Pythia8(evt_kin, seed=1, cache=True) # False + m = Pythia8(evt_kin, seed=1, cache=True) # False config_lines = "\n".join(m._config) - assert "MultipartonInteractions:reuseInit = 3" in config_lines # 0 + assert "MultipartonInteractions:reuseInit = 3" in config_lines # 0 # TODO Test for the cache file production for pp@10GeV when we have agreed on the # filename for the cache files. - + + def test_cache_file_heavy_ion(): evt_kin = CenterOfMass(2000 * GeV, "p", "He") - m = Pythia8(evt_kin, seed=1, cache=True) # False + m = Pythia8(evt_kin, seed=1, cache=True) # False config_lines = "\n".join(m._config) - assert "HeavyIon:SasdMpiReuseInit = 3" in config_lines # 0 - assert "HeavyIon:SigFitReuseInit = 3" in config_lines # 0 + assert "HeavyIon:SasdMpiReuseInit = 3" in config_lines # 0 + assert "HeavyIon:SigFitReuseInit = 3" in config_lines # 0 # TODO Test for the cache file production for pHe@2TeV when we have agreed on the - # filename for the cache files. \ No newline at end of file + # filename for the cache files. From 701e083da3a86d9d926094921b7da516d05c3daf Mon Sep 17 00:00:00 2001 From: afedynitch Date: Mon, 27 Nov 2023 20:32:46 +0800 Subject: [PATCH 14/30] Add reference files for Pythia8 with He projectile --- .../test_generators/Pythia8_He_p_cms.pkl.gz | Bin 0 -> 42759 bytes .../test_generators/Pythia8_He_p_cms2ft.pkl.gz | Bin 0 -> 21512 bytes .../data/test_generators/Pythia8_He_p_ft.pkl.gz | Bin 0 -> 18250 bytes .../test_generators/Pythia8_He_p_ft2cms.pkl.gz | Bin 0 -> 26300 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 tests/data/test_generators/Pythia8_He_p_cms.pkl.gz create mode 100644 tests/data/test_generators/Pythia8_He_p_cms2ft.pkl.gz create mode 100644 tests/data/test_generators/Pythia8_He_p_ft.pkl.gz create mode 100644 tests/data/test_generators/Pythia8_He_p_ft2cms.pkl.gz diff --git a/tests/data/test_generators/Pythia8_He_p_cms.pkl.gz b/tests/data/test_generators/Pythia8_He_p_cms.pkl.gz new file mode 100644 index 0000000000000000000000000000000000000000..f8c986118859aabb0cf74d7c337500c449c5fbed GIT binary patch literal 42759 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 JON;At{sN&yDaQZ+ literal 0 HcmV?d00001 diff --git a/tests/data/test_generators/Pythia8_He_p_ft.pkl.gz b/tests/data/test_generators/Pythia8_He_p_ft.pkl.gz new file mode 100644 index 0000000000000000000000000000000000000000..2b7fa5dbd45d911dbc91eff7ab31301284fea139 GIT binary patch literal 18250 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

DNDeLvjIe!oNL4K0P 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 Date: Tue, 28 Nov 2023 17:04:26 +0100 Subject: [PATCH 15/30] fixes for Pythia 8 cache files + tests using cache filenames --- src/chromo/models/pythia8.py | 39 +++++++++++++++++------------------- tests/test_pythia8.py | 28 +++++++++++++++++--------- 2 files changed, 37 insertions(+), 30 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 98805246..16de891c 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -148,12 +148,28 @@ def __init__(self, evt_kin, *, seed=None, config=None, banner=True, cache=False) f"Random:seed = {self.seed % 900_000_000}", ] - # enable production of cache files by Pythia8 + # production of cache files by Pythia8 to speed up subsequent runs + cache_prefix = str(_cache_base_dir() / "Pythia8" + / f"cache_{int(evt_kin.p1)}_{int(evt_kin.p2)}_{evt_kin.ecm/MeV:.0f}" + .replace("-", "m") + ) if cache: self._config += [ "MultipartonInteractions:reuseInit = 3", + f"MultipartonInteractions:initFile = {cache_prefix}.mpi" + ] + if (evt_kin.p1.A or 0) > 1 or (evt_kin.p2.A or 1) > 1: + self._config += [ "HeavyIon:SasdMpiReuseInit = 3", + f"HeavyIon:SasdMpiInitFile = {cache_prefix}.sasd.mpi", "HeavyIon:SigFitReuseInit = 3", + f"HeavyIon:SigFitInitFile = {cache_prefix}.sigfit" + ] + else: + self._config += [ + "MultipartonInteractions:reuseInit = 0", + "HeavyIon:SasdMpiReuseInit = 0", + "HeavyIon:SigFitReuseInit = 0" ] # Add "Print:quiet = on" if no "Print:quiet" is in config @@ -197,23 +213,13 @@ def _cross_section(self, kin=None): def _set_kinematics(self, kin): config = self._config[:] - - # Path prefix for some cache files that Pythia8 generates - # to speed up subsequent runs - cache_prefix = str( - _cache_base_dir() - / "Pythia8" - / f"cache_{int(kin.p1)}_{int(kin.p2)}_{kin.ecm / MeV:.0f}".replace("-", "m") - ) - + # TODO use numpy PRNG instead of Pythia's config += [ # use center-of-mass frame "Beams:frameType = 1", # do not print progress "Next:numberCount = 0", - "MultipartonInteractions:reuseInit = 0", - f"MultipartonInteractions:initFile = {cache_prefix}.mpi", ] # TODO Pythia8 likes to say this: @@ -226,15 +232,6 @@ def _set_kinematics(self, kin): # SubCollisionModel::getParm(), which is complicated to call from the Pythia # object, this is work in progress. - if (kin.p1.A or 0) > 1 or (kin.p2.A or 1) > 1: - config += [ - # similar to MultipartonInteractions:reuseInit - "HeavyIon:SasdMpiReuseInit = 0", - "HeavyIon:SigFitReuseInit = 0", - f"HeavyIon:SasdMpiInitFile = {cache_prefix}.sasd.mpi", - f"HeavyIon:SigFitInitFile = {cache_prefix}.sigfit", - ] - config += [ f"Beams:idA = {int(kin.p1)}", f"Beams:idB = {int(kin.p2)}", diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index 30d5bc58..7a33d163 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -189,18 +189,28 @@ def test_gg(): def test_cache_file(): evt_kin = CenterOfMass(10 * GeV, "p", "p") - m = Pythia8(evt_kin, seed=1, cache=True) # False + m = Pythia8(evt_kin, seed=1, cache=True) + config_lines = "\n".join(m._config) - assert "MultipartonInteractions:reuseInit = 3" in config_lines # 0 - # TODO Test for the cache file production for pp@10GeV when we have agreed on the - # filename for the cache files. + assert "MultipartonInteractions:reuseInit = 3" in config_lines + + m.generate() + cache_file_path = os.path.join(_cache_base_dir(), "Pythia8", + "cache_2212_2212_10000.mpi") + assert os.path.exists(cache_file_path) + assert os.path.getsize(cache_file_path) > 0 def test_cache_file_heavy_ion(): evt_kin = CenterOfMass(2000 * GeV, "p", "He") - m = Pythia8(evt_kin, seed=1, cache=True) # False + m = Pythia8(evt_kin, seed=1, cache=True) + config_lines = "\n".join(m._config) - assert "HeavyIon:SasdMpiReuseInit = 3" in config_lines # 0 - assert "HeavyIon:SigFitReuseInit = 3" in config_lines # 0 - # TODO Test for the cache file production for pHe@2TeV when we have agreed on the - # filename for the cache files. + assert "HeavyIon:SasdMpiReuseInit = 3" in config_lines + assert "HeavyIon:SigFitReuseInit = 3" in config_lines + + m.generate() + cache_file_path = os.path.join(_cache_base_dir(), "Pythia8", + "cache_2212_1000020040_2000000.mpi") + assert os.path.exists(cache_file_path) + assert os.path.getsize(cache_file_path) > 0 \ No newline at end of file From 3b0d9cdfcc703e0f96c20e5886df6d083d4483d4 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 28 Nov 2023 16:05:30 +0000 Subject: [PATCH 16/30] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/chromo/models/pythia8.py | 25 ++++++++++++++----------- tests/test_pythia8.py | 20 +++++++++++--------- 2 files changed, 25 insertions(+), 20 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 16de891c..85439bb7 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -149,27 +149,30 @@ def __init__(self, evt_kin, *, seed=None, config=None, banner=True, cache=False) ] # production of cache files by Pythia8 to speed up subsequent runs - cache_prefix = str(_cache_base_dir() / "Pythia8" - / f"cache_{int(evt_kin.p1)}_{int(evt_kin.p2)}_{evt_kin.ecm/MeV:.0f}" - .replace("-", "m") + cache_prefix = str( + _cache_base_dir() + / "Pythia8" + / f"cache_{int(evt_kin.p1)}_{int(evt_kin.p2)}_{evt_kin.ecm/MeV:.0f}".replace( + "-", "m" + ) ) if cache: self._config += [ "MultipartonInteractions:reuseInit = 3", - f"MultipartonInteractions:initFile = {cache_prefix}.mpi" + f"MultipartonInteractions:initFile = {cache_prefix}.mpi", ] if (evt_kin.p1.A or 0) > 1 or (evt_kin.p2.A or 1) > 1: self._config += [ - "HeavyIon:SasdMpiReuseInit = 3", - f"HeavyIon:SasdMpiInitFile = {cache_prefix}.sasd.mpi", - "HeavyIon:SigFitReuseInit = 3", - f"HeavyIon:SigFitInitFile = {cache_prefix}.sigfit" + "HeavyIon:SasdMpiReuseInit = 3", + f"HeavyIon:SasdMpiInitFile = {cache_prefix}.sasd.mpi", + "HeavyIon:SigFitReuseInit = 3", + f"HeavyIon:SigFitInitFile = {cache_prefix}.sigfit", ] - else: + else: self._config += [ "MultipartonInteractions:reuseInit = 0", "HeavyIon:SasdMpiReuseInit = 0", - "HeavyIon:SigFitReuseInit = 0" + "HeavyIon:SigFitReuseInit = 0", ] # Add "Print:quiet = on" if no "Print:quiet" is in config @@ -213,7 +216,7 @@ def _cross_section(self, kin=None): def _set_kinematics(self, kin): config = self._config[:] - + # TODO use numpy PRNG instead of Pythia's config += [ # use center-of-mass frame diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index 7a33d163..3dcbebec 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -190,13 +190,14 @@ def test_gg(): def test_cache_file(): evt_kin = CenterOfMass(10 * GeV, "p", "p") m = Pythia8(evt_kin, seed=1, cache=True) - + config_lines = "\n".join(m._config) assert "MultipartonInteractions:reuseInit = 3" in config_lines - + m.generate() - cache_file_path = os.path.join(_cache_base_dir(), "Pythia8", - "cache_2212_2212_10000.mpi") + cache_file_path = os.path.join( + _cache_base_dir(), "Pythia8", "cache_2212_2212_10000.mpi" + ) assert os.path.exists(cache_file_path) assert os.path.getsize(cache_file_path) > 0 @@ -204,13 +205,14 @@ def test_cache_file(): def test_cache_file_heavy_ion(): evt_kin = CenterOfMass(2000 * GeV, "p", "He") m = Pythia8(evt_kin, seed=1, cache=True) - + config_lines = "\n".join(m._config) assert "HeavyIon:SasdMpiReuseInit = 3" in config_lines assert "HeavyIon:SigFitReuseInit = 3" in config_lines - + m.generate() - cache_file_path = os.path.join(_cache_base_dir(), "Pythia8", - "cache_2212_1000020040_2000000.mpi") + cache_file_path = os.path.join( + _cache_base_dir(), "Pythia8", "cache_2212_1000020040_2000000.mpi" + ) assert os.path.exists(cache_file_path) - assert os.path.getsize(cache_file_path) > 0 \ No newline at end of file + assert os.path.getsize(cache_file_path) > 0 From 33fca37dc4487c425166f122861759f78e2be257 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Chlo=C3=A9=20Gaudu?= <95409748+gaudu@users.noreply.github.com> Date: Fri, 1 Dec 2023 15:59:30 +0100 Subject: [PATCH 17/30] fix tests + edit TODO for cross-section implementation --- src/chromo/models/pythia8.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 85439bb7..62c0d3e0 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -198,10 +198,11 @@ def _cross_section(self, kin=None): diffractive_xx=st.sigmaXX, diffractive_axb=st.sigmaAXB, ) - - # TODO use pythia.info.sigmaGen(i) for cross-sections including nucleus in the - # initial collision system. pythia.info.sigmaTot() are the estimated - # cross-section values for the equivalent pp collision for each sub-processes. + + # pythia.info.sigmaTot(), used in _cross_section(), are estimated cross-section + # values for the pp collision for each sub-processes. + # TODO Implement the correct cross-sections when running simulations including + # hadron/nucleus in the initial collision systems using pythia.info.sigmaGen(i). # pythia.info.sigmaGen(i) are the cross-section values generated by the MC # events for each subprocesses. Best is to grab these values at the end of the # event generation when the full statistics is available. The subprocesses are From 0a74e2073371d39e7a0fecbf14e263d391a8e136 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Fri, 1 Dec 2023 15:01:33 +0000 Subject: [PATCH 18/30] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/chromo/models/pythia8.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 62c0d3e0..a628b1e7 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -198,7 +198,7 @@ def _cross_section(self, kin=None): diffractive_xx=st.sigmaXX, diffractive_axb=st.sigmaAXB, ) - + # pythia.info.sigmaTot(), used in _cross_section(), are estimated cross-section # values for the pp collision for each sub-processes. # TODO Implement the correct cross-sections when running simulations including From 6301cec7d08088879b6c3fcb1a558119ac00f9cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Chlo=C3=A9=20Gaudu?= <95409748+gaudu@users.noreply.github.com> Date: Fri, 1 Dec 2023 16:12:10 +0100 Subject: [PATCH 19/30] fix tests --- tests/test_pythia8.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index 3dcbebec..b67ff615 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -8,6 +8,7 @@ import pytest from functools import lru_cache import sys +import os pytestmark = pytest.mark.skipif( From 3c6f680ff4b9931c6460129b227ea513ed5e1dfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Chlo=C3=A9=20Gaudu?= <95409748+gaudu@users.noreply.github.com> Date: Mon, 4 Dec 2023 15:13:01 +0100 Subject: [PATCH 20/30] remove generate() + add _cache_base_dir in import --- tests/test_pythia8.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index b67ff615..4ec8927b 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -1,7 +1,7 @@ from chromo.kinematics import CenterOfMass from chromo.models import Pythia8 from chromo.constants import GeV, long_lived -from chromo.util import name2pdg +from chromo.util import _cache_base_dir, name2pdg import numpy as np from numpy.testing import assert_allclose, assert_equal from .util import reference_charge @@ -195,7 +195,6 @@ def test_cache_file(): config_lines = "\n".join(m._config) assert "MultipartonInteractions:reuseInit = 3" in config_lines - m.generate() cache_file_path = os.path.join( _cache_base_dir(), "Pythia8", "cache_2212_2212_10000.mpi" ) @@ -211,7 +210,6 @@ def test_cache_file_heavy_ion(): assert "HeavyIon:SasdMpiReuseInit = 3" in config_lines assert "HeavyIon:SigFitReuseInit = 3" in config_lines - m.generate() cache_file_path = os.path.join( _cache_base_dir(), "Pythia8", "cache_2212_1000020040_2000000.mpi" ) From 65d17639e46074405caf42acb50c6a39faa99174 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Chlo=C3=A9=20Gaudu?= <95409748+gaudu@users.noreply.github.com> Date: Tue, 5 Dec 2023 09:32:15 +0100 Subject: [PATCH 21/30] fix for "AttributeError: 'NoneType' object has no attribute 'p1'" --- src/chromo/models/pythia8.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index a628b1e7..fafa780d 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -148,14 +148,14 @@ def __init__(self, evt_kin, *, seed=None, config=None, banner=True, cache=False) f"Random:seed = {self.seed % 900_000_000}", ] - # production of cache files by Pythia8 to speed up subsequent runs - cache_prefix = str( - _cache_base_dir() - / "Pythia8" - / f"cache_{int(evt_kin.p1)}_{int(evt_kin.p2)}_{evt_kin.ecm/MeV:.0f}".replace( - "-", "m" + if evt_kin is not None: + # production of cache files by Pythia8 to speed up subsequent runs + cache_prefix = str( + _cache_base_dir() + / "Pythia8" + / f"cache_{int(evt_kin.p1)}_{int(evt_kin.p2)}_{evt_kin.ecm/MeV:.0f}" + .replace("-", "m") ) - ) if cache: self._config += [ "MultipartonInteractions:reuseInit = 3", From 0db6d28e2701b95ba212e2f28bb940d9b7ee09c1 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 5 Dec 2023 08:32:47 +0000 Subject: [PATCH 22/30] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/chromo/models/pythia8.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index fafa780d..90ac2ca2 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -153,8 +153,9 @@ def __init__(self, evt_kin, *, seed=None, config=None, banner=True, cache=False) cache_prefix = str( _cache_base_dir() / "Pythia8" - / f"cache_{int(evt_kin.p1)}_{int(evt_kin.p2)}_{evt_kin.ecm/MeV:.0f}" - .replace("-", "m") + / f"cache_{int(evt_kin.p1)}_{int(evt_kin.p2)}_{evt_kin.ecm/MeV:.0f}".replace( + "-", "m" + ) ) if cache: self._config += [ From 882570edff2ac7cfcc12121260643cc0b3c3319f Mon Sep 17 00:00:00 2001 From: Hans Dembinski Date: Tue, 30 Jan 2024 15:34:50 +0100 Subject: [PATCH 23/30] use full config as url --- src/chromo/models/pythia8.py | 55 ++++++++++++++++++++---------------- src/chromo/util.py | 15 ++++++++++ 2 files changed, 46 insertions(+), 24 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 90ac2ca2..48ff5672 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -1,6 +1,5 @@ from chromo.common import MCRun, EventData, CrossSectionData -from chromo.util import _cached_data_dir, _cache_base_dir, name2pdg -from chromo.constants import MeV +from chromo.util import _cached_data_dir, name2pdg, dump_to_url from os import environ import numpy as np from chromo.kinematics import EventFrame @@ -8,6 +7,7 @@ from particle import literals as lp import warnings from typing import Collection, List +from pathlib import Path class PYTHIA8Event(EventData): @@ -104,18 +104,37 @@ class Pythia8(MCRun): + "/releases/download/zipped_data_v1.0/Pythia8_v003.zip" ) - def __init__(self, evt_kin, *, seed=None, config=None, banner=True, cache=False): + def __init__( + self, + evt_kin, + *, + seed=None, + config=None, + banner=True, + cache=_cached_data_dir(_data_url) + "/cache", + ): """ Parameters ---------- - config: str or list of str, optional + evt_kin: EventKinematics or None + Setup of initial state. You can set this to None if you want to use + Pythia to decay particles on the particle stack. + seed: int or None, optional + Seed for the random number generator. + config: str or list of str or None, optional Pass standard Pythia configuration here. You can use this to change the physics processes which are enabled in Pythia. You can pass a single string that is read from a configuration file or a list of strings, where each string is a single configuration command. - If config is not set, 'SoftQCD:inelastic = on' is used to get the + If config is None, 'SoftQCD:inelastic = on' is used to get the equivalent of other generators in chromo. + banner: bool, optional + Whether to show the Pythia banner. Default is True. + cache: str or None, optional + Path to the cache directory that we generate to speed up sub-sequent + runs of Pythia with same inputs. If None, cache is deactivated. + Default is to use the Pythia8 data directory. """ super().__init__(seed) @@ -148,33 +167,21 @@ def __init__(self, evt_kin, *, seed=None, config=None, banner=True, cache=False) f"Random:seed = {self.seed % 900_000_000}", ] - if evt_kin is not None: - # production of cache files by Pythia8 to speed up subsequent runs - cache_prefix = str( - _cache_base_dir() - / "Pythia8" - / f"cache_{int(evt_kin.p1)}_{int(evt_kin.p2)}_{evt_kin.ecm/MeV:.0f}".replace( - "-", "m" - ) - ) - if cache: + if evt_kin is not None and cache: + cf = Path(cache) / dump_to_url(self._config) self._config += [ "MultipartonInteractions:reuseInit = 3", - f"MultipartonInteractions:initFile = {cache_prefix}.mpi", + f"MultipartonInteractions:initFile = {cf.with_ext('.mpi')}", ] if (evt_kin.p1.A or 0) > 1 or (evt_kin.p2.A or 1) > 1: self._config += [ "HeavyIon:SasdMpiReuseInit = 3", - f"HeavyIon:SasdMpiInitFile = {cache_prefix}.sasd.mpi", + f"HeavyIon:SasdMpiInitFile = {cf.with_ext('.sasd-mpi')}", + ] + self._config += [ "HeavyIon:SigFitReuseInit = 3", - f"HeavyIon:SigFitInitFile = {cache_prefix}.sigfit", + f"HeavyIon:SigFitInitFile = {cf.with_ext('.sigfit')}", ] - else: - self._config += [ - "MultipartonInteractions:reuseInit = 0", - "HeavyIon:SasdMpiReuseInit = 0", - "HeavyIon:SigFitReuseInit = 0", - ] # Add "Print:quiet = on" if no "Print:quiet" is in config if not any("Print:quiet" in s for s in self._config): diff --git a/src/chromo/util.py b/src/chromo/util.py index 7ce9b057..4564fabd 100644 --- a/src/chromo/util.py +++ b/src/chromo/util.py @@ -15,6 +15,9 @@ import numpy as np from particle import Particle, PDGID, ParticleNotFound, InvalidParticle from chromo.constants import MeV, nucleon_mass, sec2cm +import gzip +import pickle +import base64 EventFrame = Enum("EventFrame", ["CENTER_OF_MASS", "FIXED_TARGET", "GENERIC"]) @@ -815,3 +818,15 @@ def select_long_lived(tau=0, mm=False): long_lived.append(pid) return long_lived + + +def dump_to_url(obj): + b = pickle.dumps(obj) + b = gzip.compress(b) + return base64.urlsafe_b64encode(b) + + +def load_from_url(url): + b = base64.urlsafe_b64decode(url) + b = gzip.uncompress(b) + return pickle.loads(b) From bd42e24fdf0d1ea5c859a3168643c983dbe73d36 Mon Sep 17 00:00:00 2001 From: Hans Dembinski Date: Tue, 30 Jan 2024 16:23:16 +0100 Subject: [PATCH 24/30] fix --- src/cpp/_pythia8.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/cpp/_pythia8.cpp b/src/cpp/_pythia8.cpp index 225028bb..6efcee7e 100644 --- a/src/cpp/_pythia8.cpp +++ b/src/cpp/_pythia8.cpp @@ -1,5 +1,4 @@ #include -#include #include #include #include From 5e5550273af5b99e74eb6157170f50ea656c41fd Mon Sep 17 00:00:00 2001 From: Hans Dembinski Date: Tue, 30 Jan 2024 16:35:02 +0100 Subject: [PATCH 25/30] basic fixes, most tests pass now --- src/chromo/models/pythia8.py | 8 ++++---- src/chromo/util.py | 6 +++--- tests/test_util.py | 7 +++++++ 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 48ff5672..dd320650 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -111,7 +111,7 @@ def __init__( seed=None, config=None, banner=True, - cache=_cached_data_dir(_data_url) + "/cache", + cache=_cached_data_dir(_data_url), ): """ @@ -171,16 +171,16 @@ def __init__( cf = Path(cache) / dump_to_url(self._config) self._config += [ "MultipartonInteractions:reuseInit = 3", - f"MultipartonInteractions:initFile = {cf.with_ext('.mpi')}", + f"MultipartonInteractions:initFile = {cf.with_suffix('.mpi')}", ] if (evt_kin.p1.A or 0) > 1 or (evt_kin.p2.A or 1) > 1: self._config += [ "HeavyIon:SasdMpiReuseInit = 3", - f"HeavyIon:SasdMpiInitFile = {cf.with_ext('.sasd-mpi')}", + f"HeavyIon:SasdMpiInitFile = {cf.with_suffix('.sasd-mpi')}", ] self._config += [ "HeavyIon:SigFitReuseInit = 3", - f"HeavyIon:SigFitInitFile = {cf.with_ext('.sigfit')}", + f"HeavyIon:SigFitInitFile = {cf.with_suffix('.sigfit')}", ] # Add "Print:quiet = on" if no "Print:quiet" is in config diff --git a/src/chromo/util.py b/src/chromo/util.py index 4564fabd..5da339ae 100644 --- a/src/chromo/util.py +++ b/src/chromo/util.py @@ -823,10 +823,10 @@ def select_long_lived(tau=0, mm=False): def dump_to_url(obj): b = pickle.dumps(obj) b = gzip.compress(b) - return base64.urlsafe_b64encode(b) + return base64.urlsafe_b64encode(b).decode("ascii") def load_from_url(url): - b = base64.urlsafe_b64decode(url) - b = gzip.uncompress(b) + b = base64.urlsafe_b64decode(url.encode("ascii")) + b = gzip.decompress(b) return pickle.loads(b) diff --git a/tests/test_util.py b/tests/test_util.py index 12526d77..10984a35 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -98,3 +98,10 @@ def test_is_real_nucleus(): mix = util.CompositeTarget([("p", 0.5), ("He", 0.5)]) assert util.is_real_nucleus(mix) + + +def test_dump_to_url(): + obj = ["foo", "barian", "bazzer"] + s = util.dump_to_url(obj) + assert type(s) is str + assert util.load_from_url(s) == obj From cd7ffb57b25e05584b3f8cba6454fb0e77abe06a Mon Sep 17 00:00:00 2001 From: Hans Dembinski Date: Tue, 30 Jan 2024 19:00:02 +0100 Subject: [PATCH 26/30] final fixes, all pythia8 tests are passing --- src/chromo/models/pythia8.py | 9 +- src/chromo/util.py | 8 +- ...1oVp5YEp6amKNgqgET54aJgIcMpqXoA9PV6OU0AAAA | 3 + ...daFaeWBKempkBF-eGiYCGDKal6ANPQAaVRAAAA.mpi | 15 +++ ...daFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.mpi | 15 +++ ...WBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sasd.mpi | 31 ++++++ ...aeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sigfit | 4 + ...daFaeWBKempkBF-eGiYCHDKal6ALa3vR1RAAAA.mpi | 15 +++ ...KempkBFxeGiYCETM2NzA2NzE7MpqXoA1095A1kAAAA | 15 +++ ...eWBKempkBFxeGiYCFDAyiYkqoHAHf3PwBZAAAA.mpi | 15 +++ ...KempkBFxeGiYCFTc1NjMwszU9MpqXoAtfVBKVkAAAA | 15 +++ tests/test_pythia8.py | 94 ++++++++++++------- tests/test_util.py | 8 +- 13 files changed, 197 insertions(+), 50 deletions(-) create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerEAAGxUzR6hILz00oCnV2sUnMSi0syk23z86b0CAcl5qXk51oVp5YEp6amKNgqgET54aJgIcMpqXoA9PV6OU0AAAA create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGDKal6ANPQAaVRAAAA.mpi create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.mpi create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sasd.mpi create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sigfit create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCHDKal6ALa3vR1RAAAA.mpi create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCETM2NzA2NzE7MpqXoA1095A1kAAAA create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCFDAyiYkqoHAHf3PwBZAAAA.mpi create mode 100644 tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCFTc1NjMwszU9MpqXoAtfVBKVkAAAA diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index dd320650..46bffb72 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -168,19 +168,20 @@ def __init__( ] if evt_kin is not None and cache: - cf = Path(cache) / dump_to_url(self._config) + cf = str(Path(cache) / dump_to_url(self._config)) + # beware: exact suffix seems to matter! self._config += [ "MultipartonInteractions:reuseInit = 3", - f"MultipartonInteractions:initFile = {cf.with_suffix('.mpi')}", + f"MultipartonInteractions:initFile = {cf}.mpi", ] if (evt_kin.p1.A or 0) > 1 or (evt_kin.p2.A or 1) > 1: self._config += [ "HeavyIon:SasdMpiReuseInit = 3", - f"HeavyIon:SasdMpiInitFile = {cf.with_suffix('.sasd-mpi')}", + f"HeavyIon:SasdMpiInitFile = {cf}.sasd.mpi", ] self._config += [ "HeavyIon:SigFitReuseInit = 3", - f"HeavyIon:SigFitInitFile = {cf.with_suffix('.sigfit')}", + f"HeavyIon:SigFitInitFile = {cf}.sigfit", ] # Add "Print:quiet = on" if no "Print:quiet" is in config diff --git a/src/chromo/util.py b/src/chromo/util.py index 5da339ae..275e1864 100644 --- a/src/chromo/util.py +++ b/src/chromo/util.py @@ -822,11 +822,5 @@ def select_long_lived(tau=0, mm=False): def dump_to_url(obj): b = pickle.dumps(obj) - b = gzip.compress(b) + b = gzip.compress(b, mtime=0) return base64.urlsafe_b64encode(b).decode("ascii") - - -def load_from_url(url): - b = base64.urlsafe_b64decode(url.encode("ascii")) - b = gzip.decompress(b) - return pickle.loads(b) diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerEAAGxUzR6hILz00oCnV2sUnMSi0syk23z86b0CAcl5qXk51oVp5YEp6amKNgqgET54aJgIcMpqXoA9PV6OU0AAAA b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerEAAGxUzR6hILz00oCnV2sUnMSi0syk23z86b0CAcl5qXk51oVp5YEp6amKNgqgET54aJgIcMpqXoA9PV6OU0AAAA new file mode 100644 index 00000000..8521e1fe --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerEAAGxUzR6hILz00oCnV2sUnMSi0syk23z86b0CAcl5qXk51oVp5YEp6amKNgqgET54aJgIcMpqXoA9PV6OU0AAAA @@ -0,0 +1,3 @@ +======iDiffSys= 0 nPDFA= 1 ====== +1 1.0000000000e+00 1.0000000000e+00 1.0000000000e+00 +5.5749216527e-01 4.3382347042e+01 1.7107651314e+00 7.1911372900e+01 2.8357956104e+00 2.7952853683e+00 2.7513871331e+00 2.7079112547e+00 2.6663040679e+00 2.6239120714e+00 2.5798830154e+00 2.5387082552e+00 2.4965744880e+00 2.4534810540e+00 2.4139535105e+00 2.3717986333e+00 2.3311060780e+00 2.2920885922e+00 2.2526848277e+00 2.2153052014e+00 2.1743642381e+00 2.1339988542e+00 2.0943018805e+00 2.0540342276e+00 2.0159751477e+00 1.9751099686e+00 1.9387696428e+00 1.9001017111e+00 1.8600773290e+00 1.8214349644e+00 1.7816877992e+00 1.7442099752e+00 1.7073402863e+00 1.6712578131e+00 1.6352338093e+00 1.5976160563e+00 1.5620030955e+00 1.5258640910e+00 1.4881083594e+00 1.4519982227e+00 1.4144007225e+00 1.3769347181e+00 1.3420172587e+00 1.3078395907e+00 1.2730068553e+00 1.2376239912e+00 1.2025353948e+00 1.1661716866e+00 1.1320997137e+00 1.0973241311e+00 1.0628617535e+00 1.0294402022e+00 9.9516150116e-01 9.6110977673e-01 9.2674470606e-01 8.9303049982e-01 8.6081437116e-01 8.2823463178e-01 7.9630301691e-01 7.6530984565e-01 7.3366231827e-01 7.0280438410e-01 6.7166891938e-01 6.4258478852e-01 6.1374643046e-01 5.8413291823e-01 5.5653300346e-01 5.2824169818e-01 5.0166067709e-01 4.7301644635e-01 4.4549180136e-01 4.1783852587e-01 3.9245277868e-01 3.6885620557e-01 3.4500108964e-01 3.2141345032e-01 2.9896442446e-01 2.7734221746e-01 2.5513585226e-01 2.3496338717e-01 2.1468921833e-01 1.9608117259e-01 1.7803845486e-01 1.5985757164e-01 1.4327926532e-01 1.2639495935e-01 1.1088538361e-01 9.6432585226e-02 8.3105689205e-02 7.0557814242e-02 5.8697527241e-02 4.7994286906e-02 3.8752347776e-02 3.0465945325e-02 2.2907519341e-02 1.6301386661e-02 1.1194838376e-02 7.3867316564e-03 4.2854747342e-03 2.2939614554e-03 1.0153158280e-03 3.0966411878e-04 4.4635187485e-05 7.0846087275e-07 0.0000000000e+00 8.5853381775e-01 2.7858283485e+00 1.5800079975e+01 1.2447105387e+00 1.5228412136e+00 6.8629445361e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.1772637928e+00 2.1772637928e+00 diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGDKal6ANPQAaVRAAAA.mpi b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGDKal6ANPQAaVRAAAA.mpi new file mode 100644 index 00000000..969f7898 --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGDKal6ANPQAaVRAAAA.mpi @@ -0,0 +1,15 @@ +======iDiffSys= 0 nPDFA= 1 ====== +1 1.0000000000e+00 1.0000000000e+00 1.0000000000e+00 +5.5749216527e-01 4.3382347042e+01 1.7107651314e+00 7.2119907026e+01 2.8440190684e+00 2.8009649645e+00 2.7600229325e+00 2.7150503197e+00 2.6741666752e+00 2.6296526973e+00 2.5862504097e+00 2.5456292373e+00 2.5023477754e+00 2.4597495923e+00 2.4185045256e+00 2.3777827741e+00 2.3378022187e+00 2.2975203653e+00 2.2549987329e+00 2.2135657272e+00 2.1754679019e+00 2.1356291554e+00 2.0930923759e+00 2.0532039425e+00 2.0135112973e+00 1.9738389666e+00 1.9357789928e+00 1.8975512920e+00 1.8589300781e+00 1.8199880419e+00 1.7797702144e+00 1.7432689004e+00 1.7052445733e+00 1.6663596885e+00 1.6291694058e+00 1.5906939978e+00 1.5539873516e+00 1.5169303715e+00 1.4807791472e+00 1.4436641741e+00 1.4064922620e+00 1.3686443177e+00 1.3325428674e+00 1.2966920466e+00 1.2608307683e+00 1.2254397803e+00 1.1894873137e+00 1.1543715948e+00 1.1210754611e+00 1.0868507748e+00 1.0523163503e+00 1.0192815032e+00 9.8497626757e-01 9.5117877746e-01 9.1746650021e-01 8.8457542273e-01 8.5110827891e-01 8.2005774391e-01 7.9000180900e-01 7.5896605590e-01 7.2767869350e-01 6.9777359884e-01 6.6866425832e-01 6.3900576287e-01 6.0822237506e-01 5.7916447665e-01 5.4899396952e-01 5.2150263998e-01 4.9415185524e-01 4.6708783465e-01 4.3942136579e-01 4.1326162300e-01 3.8796730335e-01 3.6464369690e-01 3.4116777325e-01 3.1801964972e-01 2.9550005223e-01 2.7262259199e-01 2.5173578643e-01 2.3137156802e-01 2.1180734990e-01 1.9252734627e-01 1.7488524043e-01 1.5698382989e-01 1.4028129220e-01 1.2350423787e-01 1.0943327776e-01 9.5424444269e-02 8.2746420630e-02 7.0929918093e-02 5.9550766769e-02 4.9114373299e-02 3.9370561989e-02 3.0899779091e-02 2.3086163798e-02 1.6563592086e-02 1.1498595188e-02 7.1764164660e-03 4.3899017414e-03 2.3024170822e-03 9.9775434848e-04 2.5579655818e-04 3.8918924622e-05 7.3322569371e-07 0.0000000000e+00 8.5918770520e-01 2.7912298932e+00 1.5876622319e+01 1.2455191645e+00 1.5228412136e+00 6.8525305822e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.1772637928e+00 2.1772637928e+00 +======iDiffSys= 1 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6273555530e+01 1.6273555530e+00 2.1051143143e+01 2.1051143143e+00 2.0799336853e+00 2.0544598927e+00 2.0291847842e+00 2.0037795544e+00 1.9770508411e+00 1.9529580024e+00 1.9283593251e+00 1.9034118135e+00 1.8792076081e+00 1.8529424844e+00 1.8283749086e+00 1.8032782454e+00 1.7783595834e+00 1.7532190555e+00 1.7283435261e+00 1.7017982761e+00 1.6769561379e+00 1.6521133283e+00 1.6257688271e+00 1.6010292065e+00 1.5733097267e+00 1.5469909558e+00 1.5211064887e+00 1.4944700343e+00 1.4692483821e+00 1.4443640854e+00 1.4188261146e+00 1.3935553264e+00 1.3669275669e+00 1.3416386865e+00 1.3153837015e+00 1.2904592785e+00 1.2650923713e+00 1.2383724814e+00 1.2124301062e+00 1.1889448482e+00 1.1632212553e+00 1.1384281092e+00 1.1122593968e+00 1.0873981863e+00 1.0629782829e+00 1.0373085165e+00 1.0115035237e+00 9.8744263988e-01 9.6210254983e-01 9.3693470110e-01 9.1273374274e-01 8.8782829747e-01 8.6162891946e-01 8.3506337987e-01 8.0922804939e-01 7.8464954510e-01 7.5920551386e-01 7.3586287884e-01 7.0973342214e-01 6.8599620997e-01 6.6336058685e-01 6.3794984814e-01 6.1401680664e-01 5.9007054194e-01 5.6678630452e-01 5.4421140212e-01 5.2180033952e-01 4.9945100409e-01 4.7679584607e-01 4.5311196826e-01 4.3113360192e-01 4.0922677294e-01 3.8692969816e-01 3.6386415357e-01 3.4041729057e-01 3.1952504108e-01 2.9989047857e-01 2.8050404682e-01 2.6070009295e-01 2.4159553609e-01 2.2224712294e-01 2.0459111761e-01 1.8702347354e-01 1.7053965108e-01 1.5426962890e-01 1.3769184374e-01 1.2233223066e-01 1.0713726874e-01 9.3637616517e-02 8.0368337526e-02 6.7981596255e-02 5.6989154438e-02 4.6599217135e-02 3.8051561262e-02 2.9436933135e-02 2.1519634985e-02 1.5490689655e-02 1.0200353188e-02 6.2162619600e-03 3.0277138477e-03 1.1001605438e-03 2.3713736257e-04 1.1425052872e-05 0.0000000000e+00 7.6974848224e-01 2.0345608220e+00 8.5659663065e+00 1.0862084821e+00 1.2500000000e+00 6.3509495113e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6104679161e+01 1.6104679161e+00 2.1230450346e+01 2.1230450346e+00 2.0980833496e+00 2.0730043168e+00 2.0480522473e+00 2.0210767374e+00 1.9970124974e+00 1.9724153867e+00 1.9488918315e+00 1.9238256355e+00 1.8976128000e+00 1.8735942360e+00 1.8493143372e+00 1.8237736177e+00 1.7992289586e+00 1.7756856132e+00 1.7493100656e+00 1.7234705339e+00 1.6975582125e+00 1.6717686504e+00 1.6462384501e+00 1.6197780853e+00 1.5931999256e+00 1.5652866987e+00 1.5391784303e+00 1.5125901013e+00 1.4864590473e+00 1.4613183235e+00 1.4344756695e+00 1.4071619891e+00 1.3818594339e+00 1.3553534726e+00 1.3297206194e+00 1.3051777155e+00 1.2772301658e+00 1.2500607749e+00 1.2255937229e+00 1.1998452116e+00 1.1723406297e+00 1.1465279125e+00 1.1204087948e+00 1.0947156384e+00 1.0691550739e+00 1.0430204763e+00 1.0175337816e+00 9.9339663839e-01 9.6811260057e-01 9.4201988413e-01 9.1784452415e-01 8.9217760181e-01 8.6749540017e-01 8.4154602389e-01 8.1738653096e-01 7.9069169425e-01 7.6625607990e-01 7.3973117063e-01 7.1518606934e-01 6.8993743239e-01 6.6581651839e-01 6.4230268485e-01 6.1869993918e-01 5.9529543039e-01 5.7066672697e-01 5.4581045322e-01 5.2118626563e-01 4.9825554687e-01 4.7446106065e-01 4.5104269340e-01 4.2875292942e-01 4.0671279023e-01 3.8388303777e-01 3.6390388674e-01 3.4255447464e-01 3.2267883745e-01 3.0239857567e-01 2.8306404706e-01 2.6292932790e-01 2.4315973531e-01 2.2382831164e-01 2.0559908004e-01 1.8688902962e-01 1.6980381078e-01 1.5378724661e-01 1.3845756420e-01 1.2372908979e-01 1.0910461177e-01 9.5544662354e-02 8.2015006745e-02 6.9907677385e-02 5.7635845421e-02 4.7020916440e-02 3.7310552304e-02 2.8435299854e-02 2.1352074250e-02 1.5383636673e-02 9.9176398685e-03 5.7627343709e-03 2.7987662738e-03 1.1329616728e-03 2.5203230870e-04 7.6244156675e-06 0.0000000000e+00 7.7327865228e-01 2.0507489022e+00 8.7076647180e+00 1.0884547995e+00 1.2600000000e+00 6.4078363973e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 2 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6208694830e+01 1.6208694830e+00 2.1190537908e+01 2.1190537908e+00 2.0929257847e+00 2.0671932143e+00 2.0423056879e+00 2.0148986700e+00 1.9894419093e+00 1.9641654303e+00 1.9380449252e+00 1.9122066122e+00 1.8861262371e+00 1.8619803184e+00 1.8356114261e+00 1.8098150375e+00 1.7846814432e+00 1.7585055774e+00 1.7326465692e+00 1.7074399167e+00 1.6818193401e+00 1.6559679797e+00 1.6306847649e+00 1.6045660602e+00 1.5794519043e+00 1.5546753460e+00 1.5288287251e+00 1.5033695305e+00 1.4758733103e+00 1.4504106396e+00 1.4238165981e+00 1.3981477471e+00 1.3717039675e+00 1.3473626016e+00 1.3197963512e+00 1.2934937794e+00 1.2684391167e+00 1.2444762622e+00 1.2187163950e+00 1.1932887739e+00 1.1664128052e+00 1.1415180115e+00 1.1144990284e+00 1.0874897178e+00 1.0615127265e+00 1.0358372354e+00 1.0093036559e+00 9.8427045946e-01 9.5898900366e-01 9.3437384637e-01 9.0729838211e-01 8.8125930268e-01 8.5648439533e-01 8.3325226812e-01 8.0956952728e-01 7.8489576538e-01 7.5928237094e-01 7.3489200038e-01 7.1127127250e-01 6.8742617156e-01 6.6224696770e-01 6.3873183223e-01 6.1319967790e-01 5.9182255655e-01 5.6731833485e-01 5.4431666525e-01 5.1984138891e-01 4.9627703496e-01 4.7276847524e-01 4.5042050956e-01 4.2660054283e-01 4.0451838776e-01 3.8323018136e-01 3.6294991246e-01 3.4277141292e-01 3.2216191287e-01 3.0309766150e-01 2.8214258749e-01 2.6276016550e-01 2.4388837154e-01 2.2459122660e-01 2.0621321041e-01 1.8880614051e-01 1.7237436494e-01 1.5524739358e-01 1.3884914090e-01 1.2319259296e-01 1.0856325039e-01 9.4861920002e-02 8.2570106076e-02 7.0911847199e-02 5.8660617093e-02 4.7773161735e-02 3.8091323091e-02 2.9759320445e-02 2.1792191077e-02 1.5727525528e-02 1.0368927825e-02 6.2425252708e-03 3.2218373818e-03 1.2341395679e-03 2.5500426777e-04 1.2101126138e-05 0.0000000000e+00 7.7250108567e-01 2.0471651654e+00 8.6761063567e+00 1.0879567004e+00 1.2600000000e+00 6.4161894656e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6187563384e+01 1.6187563384e+00 2.1272936486e+01 2.1272936486e+00 2.1041770706e+00 2.0796721234e+00 2.0554611543e+00 2.0300715027e+00 2.0033507131e+00 1.9769473123e+00 1.9511969512e+00 1.9250215325e+00 1.8981689461e+00 1.8725805282e+00 1.8477869374e+00 1.8223268073e+00 1.7968170723e+00 1.7715027928e+00 1.7451250571e+00 1.7194111265e+00 1.6933762858e+00 1.6676237189e+00 1.6416645781e+00 1.6167794836e+00 1.5916759627e+00 1.5660397538e+00 1.5408372596e+00 1.5153550476e+00 1.4885013722e+00 1.4624570284e+00 1.4354984526e+00 1.4100106820e+00 1.3839581987e+00 1.3588985290e+00 1.3320422304e+00 1.3055213029e+00 1.2800985339e+00 1.2540903944e+00 1.2272066798e+00 1.2005713255e+00 1.1725663150e+00 1.1446401396e+00 1.1184626697e+00 1.0925651197e+00 1.0655434510e+00 1.0404963676e+00 1.0137372767e+00 9.8863424526e-01 9.6262016413e-01 9.3704222507e-01 9.1153776246e-01 8.8549785236e-01 8.6088226314e-01 8.3470309216e-01 8.0938784131e-01 7.8560319003e-01 7.6060120924e-01 7.3626695501e-01 7.1098493112e-01 6.8436771930e-01 6.6214596716e-01 6.3783697066e-01 6.1405683678e-01 5.9098914566e-01 5.6656969360e-01 5.4363805375e-01 5.2077014909e-01 4.9867265610e-01 4.7616808957e-01 4.5412279636e-01 4.3170314464e-01 4.0961518482e-01 3.8748258443e-01 3.6500986170e-01 3.4344371896e-01 3.2250406598e-01 3.0289825672e-01 2.8350330920e-01 2.6421331482e-01 2.4417498324e-01 2.2522974393e-01 2.0683440790e-01 1.9030279480e-01 1.7250410890e-01 1.5588192641e-01 1.4021145412e-01 1.2412094029e-01 1.0893191656e-01 9.4748272503e-02 8.1595496522e-02 6.8759571191e-02 5.8051094652e-02 4.8113565530e-02 3.8645005054e-02 2.9727365151e-02 2.2176189250e-02 1.5660902064e-02 9.9297683524e-03 6.1937134356e-03 2.9880933008e-03 1.1557622117e-03 2.6683309766e-04 1.0400167696e-05 0.0000000000e+00 7.7410126231e-01 2.0545515336e+00 8.7412690517e+00 1.0889838210e+00 1.2600000000e+00 6.3989656649e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 3 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +4.0641178848e-01 1.2535441590e+01 1.2535441590e+00 1.5753089486e+01 1.5753089486e+00 1.5590873901e+00 1.5427835398e+00 1.5249298287e+00 1.5063067822e+00 1.4884640953e+00 1.4719402315e+00 1.4560068934e+00 1.4396602307e+00 1.4225337242e+00 1.4046825497e+00 1.3878334981e+00 1.3696524293e+00 1.3511227590e+00 1.3316095835e+00 1.3139614961e+00 1.2946958007e+00 1.2767020556e+00 1.2571964789e+00 1.2386196755e+00 1.2209923262e+00 1.2036143778e+00 1.1860066713e+00 1.1676886399e+00 1.1498509140e+00 1.1297242464e+00 1.1110642505e+00 1.0923555956e+00 1.0740876828e+00 1.0554874598e+00 1.0358257094e+00 1.0166330529e+00 9.9798959455e-01 9.7926989343e-01 9.5957950299e-01 9.4153476374e-01 9.2274144429e-01 9.0365547050e-01 8.8429703381e-01 8.6585702628e-01 8.4641791526e-01 8.2701504085e-01 8.0774661567e-01 7.8889390009e-01 7.7001558890e-01 7.5158149632e-01 7.3299884388e-01 7.1416795173e-01 6.9455972485e-01 6.7587721755e-01 6.5547620437e-01 6.3586695246e-01 6.1790285259e-01 5.9873338632e-01 5.8114452237e-01 5.6228839479e-01 5.4429033892e-01 5.2613447064e-01 5.0833962599e-01 4.9022311704e-01 4.7119173966e-01 4.5348338010e-01 4.3679983012e-01 4.1863393478e-01 4.0144740456e-01 3.8432868867e-01 3.6787585445e-01 3.5021234050e-01 3.3348368387e-01 3.1827558497e-01 3.0212312718e-01 2.8523820117e-01 2.6911350151e-01 2.5342257155e-01 2.3856672711e-01 2.2407011492e-01 2.0965511281e-01 1.9607397168e-01 1.8283277026e-01 1.7026153100e-01 1.5533002080e-01 1.4188790370e-01 1.2882270205e-01 1.1645079352e-01 1.0450041726e-01 9.3422191601e-02 8.3120187803e-02 7.3371796298e-02 6.2909449727e-02 5.3389375135e-02 4.4559260208e-02 3.6829163274e-02 2.9913605362e-02 2.3184347283e-02 1.6823337092e-02 1.1527525055e-02 6.9500726601e-03 3.4303724787e-03 1.1930966294e-03 1.3873386671e-04 0.0000000000e+00 5.9942724845e-01 1.4138133031e+00 4.4543854966e+00 1.0080695698e+00 9.5000000000e-01 4.9979286902e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +4.0641178848e-01 1.2857934806e+01 1.2857934806e+00 1.5800684345e+01 1.5800684345e+00 1.5629592150e+00 1.5451716050e+00 1.5276095483e+00 1.5115361747e+00 1.4941034358e+00 1.4762016733e+00 1.4590649845e+00 1.4413176904e+00 1.4242501115e+00 1.4058768968e+00 1.3883955009e+00 1.3706046256e+00 1.3528993834e+00 1.3349818147e+00 1.3163389999e+00 1.2992175015e+00 1.2805109086e+00 1.2625629788e+00 1.2450012112e+00 1.2271701740e+00 1.2086634203e+00 1.1903051673e+00 1.1723169058e+00 1.1535743213e+00 1.1342387140e+00 1.1161190268e+00 1.0976907398e+00 1.0781508877e+00 1.0592265770e+00 1.0410746774e+00 1.0227918839e+00 1.0052405211e+00 9.8660663433e-01 9.6816133449e-01 9.4784854903e-01 9.2899943748e-01 9.0982108759e-01 8.8939529517e-01 8.7021097561e-01 8.5213085433e-01 8.3386099191e-01 8.1555975259e-01 7.9543001148e-01 7.7665254271e-01 7.5742006503e-01 7.3913184820e-01 7.2026145822e-01 7.0204454703e-01 6.8276387183e-01 6.6357911825e-01 6.4478212202e-01 6.2569175780e-01 6.0684027006e-01 5.8811965690e-01 5.6925429530e-01 5.5068926586e-01 5.3275103210e-01 5.1443276061e-01 4.9568883197e-01 4.7752372373e-01 4.5909520311e-01 4.4135348226e-01 4.2515922578e-01 4.0860441675e-01 3.9064808246e-01 3.7352412705e-01 3.5524556922e-01 3.3814962645e-01 3.2204118860e-01 3.0572719782e-01 2.8967836166e-01 2.7261221331e-01 2.5824560608e-01 2.4323979080e-01 2.2849166999e-01 2.1368203496e-01 1.9940640943e-01 1.8459554817e-01 1.7003139341e-01 1.5626360981e-01 1.4188000677e-01 1.2888903707e-01 1.1627320397e-01 1.0429074077e-01 9.3434427503e-02 8.2757195036e-02 7.2781267566e-02 6.3060493091e-02 5.3613660418e-02 4.5257182403e-02 3.7400562241e-02 3.0137536579e-02 2.3283433767e-02 1.7090723835e-02 1.1527263687e-02 6.7564073572e-03 3.5231668763e-03 1.1827928642e-03 1.5610768287e-04 0.0000000000e+00 6.0181308329e-01 1.4210975835e+00 4.4908628685e+00 1.0088904979e+00 9.6000000000e-01 5.0776395906e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.mpi b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.mpi new file mode 100644 index 00000000..2096baed --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.mpi @@ -0,0 +1,15 @@ +======iDiffSys= 0 nPDFA= 1 ====== +1 1.0000000000e+00 1.0000000000e+00 1.0000000000e+00 +5.5749216527e-01 4.3382347042e+01 1.7107651314e+00 7.1815113268e+01 2.8319996511e+00 2.7903202522e+00 2.7490812339e+00 2.7075254594e+00 2.6662047686e+00 2.6250051645e+00 2.5820666595e+00 2.5407168808e+00 2.4993868645e+00 2.4570292263e+00 2.4149069216e+00 2.3713973726e+00 2.3291357139e+00 2.2901720496e+00 2.2500204293e+00 2.2074355923e+00 2.1680806087e+00 2.1286635599e+00 2.0894742057e+00 2.0492911210e+00 2.0095700136e+00 1.9704404727e+00 1.9311081878e+00 1.8926742064e+00 1.8535356504e+00 1.8141733664e+00 1.7763633434e+00 1.7363532451e+00 1.6991909785e+00 1.6603511540e+00 1.6210231533e+00 1.5868382047e+00 1.5494270404e+00 1.5123435154e+00 1.4750966150e+00 1.4389676077e+00 1.4018760109e+00 1.3651861698e+00 1.3296933163e+00 1.2941460972e+00 1.2578754918e+00 1.2232667261e+00 1.1889295330e+00 1.1516698211e+00 1.1175372655e+00 1.0827256343e+00 1.0477839558e+00 1.0151364094e+00 9.8164325161e-01 9.4762042228e-01 9.1443019110e-01 8.8114765807e-01 8.4859474229e-01 8.1524978432e-01 7.8393393134e-01 7.5265327756e-01 7.2194230538e-01 6.9127529784e-01 6.6086403531e-01 6.3136163790e-01 6.0397574908e-01 5.7571766747e-01 5.4879641731e-01 5.1938519215e-01 4.9218927400e-01 4.6624225533e-01 4.3920484438e-01 4.1399888697e-01 3.8684741623e-01 3.6350370763e-01 3.4064395993e-01 3.1843448012e-01 2.9614596605e-01 2.7389230315e-01 2.5148394262e-01 2.3052536453e-01 2.1070033254e-01 1.9225016428e-01 1.7507437960e-01 1.5682909837e-01 1.4009136143e-01 1.2437717192e-01 1.0924617756e-01 9.5219875853e-02 8.1901681133e-02 6.9543868787e-02 5.8683454518e-02 4.8106062695e-02 3.9085322957e-02 3.0375844408e-02 2.3136085796e-02 1.6624180319e-02 1.1618654220e-02 7.5652862522e-03 4.4456036664e-03 2.3537068825e-03 9.4387509192e-04 2.9610650530e-04 4.4797457735e-05 7.7409691462e-07 0.0000000000e+00 8.5823010313e-01 2.7833279397e+00 1.5764767939e+01 1.2443363002e+00 1.5228412136e+00 6.8677595856e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.1772637928e+00 2.1772637928e+00 +======iDiffSys= 1 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6147682337e+01 1.6147682337e+00 2.1098748089e+01 2.1098748089e+00 2.0834435601e+00 2.0574948439e+00 2.0317585924e+00 2.0062667276e+00 1.9813726005e+00 1.9572171506e+00 1.9327532353e+00 1.9065250237e+00 1.8828452899e+00 1.8588728633e+00 1.8336494623e+00 1.8097490549e+00 1.7818179773e+00 1.7572753184e+00 1.7333031473e+00 1.7079550518e+00 1.6823331609e+00 1.6555573087e+00 1.6291904698e+00 1.6037681466e+00 1.5793192946e+00 1.5554666685e+00 1.5315197848e+00 1.5053673347e+00 1.4779674152e+00 1.4532797332e+00 1.4269492803e+00 1.4000662474e+00 1.3737352135e+00 1.3490277465e+00 1.3221554486e+00 1.2961725911e+00 1.2713389883e+00 1.2469559875e+00 1.2222814233e+00 1.1962905045e+00 1.1702516044e+00 1.1438535108e+00 1.1177184371e+00 1.0931201102e+00 1.0679951767e+00 1.0408270773e+00 1.0156978592e+00 9.8905011758e-01 9.6289311379e-01 9.3763199564e-01 9.1299204350e-01 8.8796639551e-01 8.6274775247e-01 8.3717368835e-01 8.1202253752e-01 7.8643303229e-01 7.6041727933e-01 7.3575001008e-01 7.1206535834e-01 6.8808234024e-01 6.6371517820e-01 6.3966735973e-01 6.1505223034e-01 5.8918812898e-01 5.6522834081e-01 5.4238253166e-01 5.1993583871e-01 4.9738334115e-01 4.7260531426e-01 4.4957015636e-01 4.2756972068e-01 4.0523970093e-01 3.8225371137e-01 3.6106209756e-01 3.3962040710e-01 3.1908276394e-01 2.9769861645e-01 2.7749103598e-01 2.5821137353e-01 2.3892768883e-01 2.2006725426e-01 2.0200902778e-01 1.8488118790e-01 1.6849572693e-01 1.5261533412e-01 1.3698773457e-01 1.2110522965e-01 1.0720676069e-01 9.4240359587e-02 8.1156231029e-02 6.8976950236e-02 5.7444054510e-02 4.7145576631e-02 3.7828426490e-02 2.9423294374e-02 2.1888937213e-02 1.5552281849e-02 1.0386834480e-02 6.0293851628e-03 3.0904035536e-03 1.2141701051e-03 2.3225501607e-04 7.9160166443e-06 0.0000000000e+00 7.7069504446e-01 2.0388808582e+00 8.6035668276e+00 1.0868070282e+00 1.2500000000e+00 6.3407930842e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6127226906e+01 1.6127226906e+00 2.1172539375e+01 2.1172539375e+00 2.0912265977e+00 2.0654205100e+00 2.0402883846e+00 2.0153185955e+00 1.9906889092e+00 1.9653316958e+00 1.9409063045e+00 1.9156198491e+00 1.8894164319e+00 1.8640669131e+00 1.8380201360e+00 1.8132763226e+00 1.7878966323e+00 1.7635572693e+00 1.7375459562e+00 1.7105426461e+00 1.6855246109e+00 1.6612598724e+00 1.6353634163e+00 1.6071633021e+00 1.5824208501e+00 1.5566989452e+00 1.5293190012e+00 1.5044557614e+00 1.4777707312e+00 1.4523398888e+00 1.4254824501e+00 1.3990036096e+00 1.3727118399e+00 1.3479481021e+00 1.3226728185e+00 1.2970552862e+00 1.2698370203e+00 1.2447510895e+00 1.2191605803e+00 1.1930457682e+00 1.1690184542e+00 1.1433258916e+00 1.1182120627e+00 1.0930912605e+00 1.0679239313e+00 1.0416379657e+00 1.0182320479e+00 9.9321888786e-01 9.6702824574e-01 9.4165274164e-01 9.1817863570e-01 8.9449047434e-01 8.6931731200e-01 8.4516565472e-01 8.2070895545e-01 7.9507893258e-01 7.6972484950e-01 7.4311084519e-01 7.1669069557e-01 6.9279709585e-01 6.6920010065e-01 6.4438510426e-01 6.2175583679e-01 5.9715345925e-01 5.7166465572e-01 5.4833625360e-01 5.2529642626e-01 5.0138711485e-01 4.7764201563e-01 4.5364951872e-01 4.3108960071e-01 4.0899001486e-01 3.8559001691e-01 3.6381707924e-01 3.4211420893e-01 3.2208216256e-01 3.0196351062e-01 2.8157064296e-01 2.6188196998e-01 2.4343733121e-01 2.2494074162e-01 2.0610758004e-01 1.8905646831e-01 1.7125750031e-01 1.5449061469e-01 1.3800572211e-01 1.2332611384e-01 1.0826569476e-01 9.4181426938e-02 8.0933400177e-02 6.8426381437e-02 5.7573819689e-02 4.7430047805e-02 3.8501113774e-02 2.9567463079e-02 2.1208686780e-02 1.4922652104e-02 9.8794057044e-03 5.8564274013e-03 2.8779763679e-03 1.1178360952e-03 2.4359755593e-04 1.1172091369e-05 0.0000000000e+00 7.7214891377e-01 2.0455454269e+00 8.6618783583e+00 1.0877317249e+00 1.2600000000e+00 6.4199625496e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 2 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6134175650e+01 1.6134175650e+00 2.1334998349e+01 2.1334998349e+00 2.1085705977e+00 2.0850010670e+00 2.0589855527e+00 2.0336610897e+00 2.0072335820e+00 1.9826154736e+00 1.9570742922e+00 1.9296184317e+00 1.9031590888e+00 1.8776877358e+00 1.8520245360e+00 1.8268852261e+00 1.8012670304e+00 1.7738899047e+00 1.7476433362e+00 1.7221312741e+00 1.6969094637e+00 1.6722211561e+00 1.6481790197e+00 1.6238011087e+00 1.5988571808e+00 1.5735103009e+00 1.5463623917e+00 1.5208658950e+00 1.4936524940e+00 1.4678776180e+00 1.4417363868e+00 1.4164675718e+00 1.3910256732e+00 1.3644460546e+00 1.3375053809e+00 1.3107051172e+00 1.2839569106e+00 1.2584371001e+00 1.2322833282e+00 1.2052141864e+00 1.1792230535e+00 1.1535379572e+00 1.1272072304e+00 1.1021480526e+00 1.0767832071e+00 1.0515998049e+00 1.0260670506e+00 9.9998631831e-01 9.7564425405e-01 9.4904721305e-01 9.2416061296e-01 8.9966941940e-01 8.7571020763e-01 8.4968866320e-01 8.2258355452e-01 7.9635622467e-01 7.7054174369e-01 7.4559450025e-01 7.2071712036e-01 6.9604442135e-01 6.7200382258e-01 6.4666834290e-01 6.2287447344e-01 5.9945957849e-01 5.7463931172e-01 5.4998512764e-01 5.2540873095e-01 5.0067926301e-01 4.7651905617e-01 4.5323740141e-01 4.2893641938e-01 4.0651721796e-01 3.8486677478e-01 3.6421468605e-01 3.4350637188e-01 3.2220901464e-01 3.0076212436e-01 2.8022376882e-01 2.6185109274e-01 2.4298725330e-01 2.2352809611e-01 2.0561505629e-01 1.8783654160e-01 1.7083659871e-01 1.5380406868e-01 1.3815102480e-01 1.2244524162e-01 1.0799196260e-01 9.4395104516e-02 8.2036170217e-02 6.9697781373e-02 5.8023748207e-02 4.6950062099e-02 3.7643509905e-02 2.8896323166e-02 2.1623103033e-02 1.5324038926e-02 9.8547423599e-03 5.9226666358e-03 2.8624962557e-03 1.1098092454e-03 2.5043814962e-04 9.9610335991e-06 0.0000000000e+00 7.7529353904e-01 2.0600838065e+00 8.7903771587e+00 1.0897543828e+00 1.2600000000e+00 6.3860463930e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6185040413e+01 1.6185040413e+00 2.1251472927e+01 2.1251472927e+00 2.0990410586e+00 2.0739446752e+00 2.0477131951e+00 2.0213040037e+00 1.9960674449e+00 1.9708515212e+00 1.9455802032e+00 1.9202860815e+00 1.8934724357e+00 1.8690477681e+00 1.8427914559e+00 1.8163634975e+00 1.7910041141e+00 1.7652702902e+00 1.7375375217e+00 1.7121979058e+00 1.6872941576e+00 1.6628298146e+00 1.6383316070e+00 1.6133553400e+00 1.5886044649e+00 1.5632403075e+00 1.5387676801e+00 1.5131747850e+00 1.4861140893e+00 1.4600257750e+00 1.4346272305e+00 1.4097081677e+00 1.3859586990e+00 1.3606206900e+00 1.3332528175e+00 1.3067081192e+00 1.2810521337e+00 1.2541234513e+00 1.2282107865e+00 1.2022383085e+00 1.1751302336e+00 1.1497085055e+00 1.1229380052e+00 1.0961597701e+00 1.0704744510e+00 1.0436931249e+00 1.0175768437e+00 9.9347101308e-01 9.6863332219e-01 9.4316730873e-01 9.1675783890e-01 8.9175479745e-01 8.6597892439e-01 8.4009836957e-01 8.1607562031e-01 7.9061417323e-01 7.6569288460e-01 7.4070818668e-01 7.1464471885e-01 6.9189134573e-01 6.6567827808e-01 6.4065837800e-01 6.1575098637e-01 5.9181109650e-01 5.6921939766e-01 5.4664811225e-01 5.2208228465e-01 4.9749187160e-01 4.7421777378e-01 4.5104997722e-01 4.2906759677e-01 4.0491187639e-01 3.8376994109e-01 3.6230053679e-01 3.4105484293e-01 3.1947137969e-01 2.9948339429e-01 2.7897532236e-01 2.6021681600e-01 2.4038461846e-01 2.2124691797e-01 2.0322196178e-01 1.8550419619e-01 1.7065060666e-01 1.5519577939e-01 1.3951226894e-01 1.2428423092e-01 1.0943997978e-01 9.6403245564e-02 8.3806759101e-02 7.1232277187e-02 6.0049592262e-02 4.9720698775e-02 3.9919219636e-02 3.0488860158e-02 2.2435563338e-02 1.5704637725e-02 1.0090751967e-02 5.9365574431e-03 3.0291011435e-03 1.1816437302e-03 2.4986682498e-04 1.2281978459e-05 0.0000000000e+00 7.7368634247e-01 2.0526320508e+00 8.7242910733e+00 1.0887167188e+00 1.2600000000e+00 6.4034443692e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 3 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +4.0641178848e-01 1.2766672111e+01 1.2766672111e+00 1.5826793366e+01 1.5826793366e+00 1.5650056161e+00 1.5488274189e+00 1.5304065669e+00 1.5130283871e+00 1.4957748616e+00 1.4779624394e+00 1.4600324590e+00 1.4421151361e+00 1.4251777414e+00 1.4079431424e+00 1.3898216123e+00 1.3715573250e+00 1.3518251578e+00 1.3344435716e+00 1.3161846065e+00 1.2980929177e+00 1.2809595966e+00 1.2635138340e+00 1.2455427685e+00 1.2282051825e+00 1.2091696954e+00 1.1908222134e+00 1.1714712915e+00 1.1534517186e+00 1.1348253916e+00 1.1173695235e+00 1.0998296103e+00 1.0815088444e+00 1.0623952162e+00 1.0437091657e+00 1.0252667868e+00 1.0057422918e+00 9.8701319714e-01 9.6887728894e-01 9.4953226260e-01 9.3230348423e-01 9.1334383557e-01 8.9491437829e-01 8.7710702325e-01 8.5871774950e-01 8.3924965725e-01 8.2003757111e-01 8.0036677733e-01 7.8092209311e-01 7.6157493130e-01 7.4303960624e-01 7.2343992433e-01 7.0413529837e-01 6.8626499241e-01 6.6821580954e-01 6.5036787193e-01 6.3107565877e-01 6.1098766480e-01 5.9339765742e-01 5.7371580262e-01 5.5422140104e-01 5.3627424624e-01 5.1713908343e-01 4.9778181484e-01 4.8075395470e-01 4.6240668798e-01 4.4392908794e-01 4.2683906015e-01 4.0945484898e-01 3.9197867456e-01 3.7460679505e-01 3.5771621949e-01 3.4088492112e-01 3.2390493567e-01 3.0739522357e-01 2.9045052055e-01 2.7421763194e-01 2.5825346421e-01 2.4221728032e-01 2.2740772684e-01 2.1230791465e-01 1.9657437732e-01 1.8267146070e-01 1.6774029885e-01 1.5411711601e-01 1.4097614370e-01 1.2793665763e-01 1.1600084902e-01 1.0397172861e-01 9.2501605761e-02 8.2010673750e-02 7.1783509311e-02 6.2682734130e-02 5.3830029767e-02 4.5454962847e-02 3.7485214601e-02 2.9918043579e-02 2.3327300987e-02 1.7187033356e-02 1.1701515262e-02 6.8900839722e-03 3.4200150915e-03 1.1700928779e-03 1.1979638522e-04 0.0000000000e+00 6.0311224186e-01 1.4250754052e+00 4.5108747946e+00 1.0093397665e+00 9.6000000000e-01 5.0665262965e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +4.0641178848e-01 1.2506092965e+01 1.2506092965e+00 1.5763221506e+01 1.5763221506e+00 1.5600633710e+00 1.5437807073e+00 1.5271114649e+00 1.5088200539e+00 1.4902212345e+00 1.4720452541e+00 1.4549072540e+00 1.4373156871e+00 1.4172226195e+00 1.3986545612e+00 1.3815383163e+00 1.3627977611e+00 1.3444186416e+00 1.3265859318e+00 1.3079511075e+00 1.2899354669e+00 1.2714698219e+00 1.2530184216e+00 1.2344060720e+00 1.2169605666e+00 1.1987320793e+00 1.1803838939e+00 1.1610811335e+00 1.1428248290e+00 1.1240881234e+00 1.1050374305e+00 1.0878255256e+00 1.0691250824e+00 1.0504093190e+00 1.0315496093e+00 1.0131659864e+00 9.9518626190e-01 9.7640258699e-01 9.5778953972e-01 9.3780092705e-01 9.2073525315e-01 9.0194116927e-01 8.8222662885e-01 8.6311911685e-01 8.4439183130e-01 8.2569886943e-01 8.0489600854e-01 7.8628110351e-01 7.6677852787e-01 7.4808349107e-01 7.2963326629e-01 7.1180441836e-01 6.9284501074e-01 6.7350164284e-01 6.5506582763e-01 6.3667551151e-01 6.1748474568e-01 5.9935349517e-01 5.7946827002e-01 5.6042522381e-01 5.4240631179e-01 5.2363817878e-01 5.0489070083e-01 4.8701936915e-01 4.6909890208e-01 4.5177020577e-01 4.3541650990e-01 4.1752698363e-01 4.0090076519e-01 3.8377551827e-01 3.6638263914e-01 3.4983964613e-01 3.3282722780e-01 3.1703739060e-01 3.0129819653e-01 2.8484441174e-01 2.6933009138e-01 2.5396881951e-01 2.3885823451e-01 2.2311126759e-01 2.0832492110e-01 1.9428583844e-01 1.8038513553e-01 1.6686193468e-01 1.5367064676e-01 1.4127083950e-01 1.2878143645e-01 1.1659849757e-01 1.0521018204e-01 9.3222828782e-02 8.2089480289e-02 7.2388298944e-02 6.2390718684e-02 5.3099270938e-02 4.4472129722e-02 3.6471794366e-02 2.9404119285e-02 2.2699043663e-02 1.6447371554e-02 1.1266608066e-02 7.0938684685e-03 3.5414573209e-03 1.2535361310e-03 1.2901237045e-04 0.0000000000e+00 5.9993705696e-01 1.4153675718e+00 4.4621505095e+00 1.0082445403e+00 9.5000000000e-01 4.9935744159e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sasd.mpi b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sasd.mpi new file mode 100644 index 00000000..6fb4daf1 --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sasd.mpi @@ -0,0 +1,31 @@ +======iDiffSys= 0 nPDFA= 1 ====== +1 1.0000000000e+00 1.0000000000e+00 1.0000000000e+00 +1.7416473265e+00 1.6184432744e+03 5.6806663696e+01 1.4363420798e+02 5.0414989994e+00 5.0216426106e+00 5.0020976029e+00 4.9820327743e+00 4.9634479726e+00 4.9446005531e+00 4.9260003712e+00 4.9079263679e+00 4.8907151105e+00 4.8741623599e+00 4.8585186740e+00 4.8425270965e+00 4.8269803292e+00 4.8115157645e+00 4.7968058159e+00 4.7813932332e+00 4.7667566620e+00 4.7523901680e+00 4.7379910020e+00 4.7237192191e+00 4.7098642697e+00 4.6955578401e+00 4.6821237295e+00 4.6686623715e+00 4.6545862509e+00 4.6400582001e+00 4.6262223980e+00 4.6118742977e+00 4.5982354947e+00 4.5835474297e+00 4.5697968842e+00 4.5559460012e+00 4.5421334822e+00 4.5283328465e+00 4.5150099235e+00 4.5009885063e+00 4.4874873159e+00 4.4734325845e+00 4.4590571641e+00 4.4442245014e+00 4.4283005769e+00 4.4120674179e+00 4.3947017202e+00 4.3776348909e+00 4.3589977622e+00 4.3398038417e+00 4.3196006288e+00 4.2981004835e+00 4.2769962104e+00 4.2551182923e+00 4.2321482955e+00 4.2083414066e+00 4.1834129181e+00 4.1569989701e+00 4.1309529657e+00 4.1034879074e+00 4.0744926556e+00 4.0432324016e+00 4.0104420140e+00 3.9744580875e+00 3.9365172969e+00 3.8940352402e+00 3.8518973828e+00 3.8078619347e+00 3.7593194645e+00 3.7069958647e+00 3.6538596089e+00 3.5990832023e+00 3.5378167959e+00 3.4745769338e+00 3.4063494157e+00 3.3354445781e+00 3.2590889165e+00 3.1858315354e+00 3.1036212946e+00 3.0197597554e+00 2.9313057701e+00 2.8354967927e+00 2.7391463166e+00 2.6285692062e+00 2.5145977542e+00 2.3989260033e+00 2.2812669535e+00 2.1582270379e+00 2.0351729560e+00 1.9056927964e+00 1.7727608571e+00 1.6278142363e+00 1.4767134901e+00 1.3277302173e+00 1.1776461063e+00 1.0215943549e+00 8.7358541166e-01 7.3390363783e-01 5.9406357790e-01 4.5309091058e-01 3.1404584248e-01 1.9929191737e-01 1.0236364811e-01 2.9239580031e-02 0.0000000000e+00 9.3980330443e-01 3.7869678475e+00 3.8183990112e+01 1.3950787650e+00 1.8357537917e+00 7.5989932120e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 3.0764984649e+00 3.0764984649e+00 +======iDiffSys= 1 nPDFA= 1 ====== +12 1.0000000000e+01 2.0000000000e+03 4.8166521514e-01 +1.2696609010e+00 2.5223335311e+02 8.8532823423e+00 3.6047015963e+01 1.2652347756e+00 1.2292179318e+00 1.1974734219e+00 1.1646466235e+00 1.1349116658e+00 1.1061794502e+00 1.0806829505e+00 1.0560137522e+00 1.0311835434e+00 1.0078985106e+00 9.8498632061e-01 9.6019943853e-01 9.3801890592e-01 9.1681872710e-01 8.9630058634e-01 8.7636629829e-01 8.5729844446e-01 8.3850928602e-01 8.2022450511e-01 8.0239608139e-01 7.8442085280e-01 7.6629409416e-01 7.4871559855e-01 7.3275239708e-01 7.1605884329e-01 6.9932510286e-01 6.8373081475e-01 6.6861755509e-01 6.5284713536e-01 6.3738784408e-01 6.2181870893e-01 6.0623545910e-01 5.9153381166e-01 5.7636872883e-01 5.6195268550e-01 5.4800255559e-01 5.3376130509e-01 5.2046290092e-01 5.0731151884e-01 4.9400492727e-01 4.8114965738e-01 4.6758627256e-01 4.5504586613e-01 4.4292165590e-01 4.3045519889e-01 4.1855705608e-01 4.0705285526e-01 3.9536571863e-01 3.8394761424e-01 3.7250991333e-01 3.6125673447e-01 3.5026048305e-01 3.3986499013e-01 3.2865821069e-01 3.1781928635e-01 3.0749810210e-01 2.9729213135e-01 2.8694451662e-01 2.7685914666e-01 2.6682396048e-01 2.5746679290e-01 2.4792756570e-01 2.3908766930e-01 2.3029973374e-01 2.2117818235e-01 2.1278693708e-01 2.0457779989e-01 1.9655217205e-01 1.8853918131e-01 1.8075962417e-01 1.7326553488e-01 1.6561883484e-01 1.5808845047e-01 1.5097144814e-01 1.4381998693e-01 1.3716703001e-01 1.3012867952e-01 1.2318705226e-01 1.1607683466e-01 1.0907821170e-01 1.0196796033e-01 9.5196014560e-02 8.8525409848e-02 8.1459658772e-02 7.4332162916e-02 6.6922446040e-02 5.9804950024e-02 5.2696366105e-02 4.5790955571e-02 3.9225084920e-02 3.2936113154e-02 2.6843391719e-02 2.0901529227e-02 1.5792095952e-02 1.1032193968e-02 7.1021489505e-03 4.0159160099e-03 1.9098406409e-03 5.5675549211e-04 6.0646628233e-05 0.0000000000e+00 3.7786500651e-01 8.2056621440e-01 2.0764178180e+00 9.4858192252e-01 3.6000000000e-01 1.2442262157e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.2696609010e+00 3.1600724382e+02 1.1091718511e+01 4.5377419939e+01 1.5927279471e+00 1.5542508485e+00 1.5180962019e+00 1.4834343109e+00 1.4520538525e+00 1.4212576374e+00 1.3908968924e+00 1.3616061920e+00 1.3340284661e+00 1.3081320651e+00 1.2820506948e+00 1.2583823194e+00 1.2359173476e+00 1.2128484429e+00 1.1907206229e+00 1.1690139390e+00 1.1468209269e+00 1.1261413583e+00 1.1060571901e+00 1.0863570496e+00 1.0666803841e+00 1.0471704702e+00 1.0277079179e+00 1.0091724098e+00 9.9044150212e-01 9.7190259153e-01 9.5417063992e-01 9.3658959866e-01 9.1856533632e-01 9.0131243271e-01 8.8422549653e-01 8.6770093267e-01 8.5131447082e-01 8.3427355071e-01 8.1799527523e-01 8.0274986588e-01 7.8756466318e-01 7.7073510662e-01 7.5630036133e-01 7.4155876204e-01 7.2651779953e-01 7.1126510243e-01 6.9615290044e-01 6.8190205936e-01 6.6781204008e-01 6.5389647707e-01 6.4033392588e-01 6.2711204409e-01 6.1409238814e-01 6.0052737340e-01 5.8665184532e-01 5.7334284655e-01 5.6053295303e-01 5.4742429195e-01 5.3440213711e-01 5.2138622812e-01 5.0857270351e-01 4.9606618089e-01 4.8368980454e-01 4.7183768661e-01 4.5956862088e-01 4.4733200221e-01 4.3598635910e-01 4.2507859968e-01 4.1400658326e-01 4.0264712166e-01 3.9211252048e-01 3.8206442239e-01 3.7143688418e-01 3.6132014194e-01 3.5132009582e-01 3.4102841212e-01 3.3056074469e-01 3.2038088734e-01 3.0979585223e-01 2.9889514922e-01 2.8810124446e-01 2.7680737514e-01 2.6519994400e-01 2.5319477464e-01 2.4092216344e-01 2.2780715157e-01 2.1488089363e-01 2.0097805006e-01 1.8745924274e-01 1.7337257086e-01 1.5777860306e-01 1.4251092289e-01 1.2649725493e-01 1.1102766957e-01 9.5562850706e-02 7.9860723216e-02 6.4908270159e-02 5.0373208462e-02 3.6610224304e-02 2.5361416164e-02 1.5114314706e-02 7.7102206907e-03 2.6802890771e-03 3.5631076848e-04 0.0000000000e+00 6.0804957465e-01 1.4402667097e+00 4.5879060809e+00 1.0110618545e+00 9.7000000000e-01 5.1242370156e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.4107343345e+00 3.3852267362e+02 1.1882000425e+01 3.9478123632e+01 1.3856651809e+00 1.3583615804e+00 1.3323706939e+00 1.3087091348e+00 1.2858209039e+00 1.2633017130e+00 1.2424660376e+00 1.2226419061e+00 1.2044770715e+00 1.1868260620e+00 1.1688835513e+00 1.1510441398e+00 1.1344337371e+00 1.1183294101e+00 1.1028759235e+00 1.0886299906e+00 1.0738594954e+00 1.0592152434e+00 1.0460886530e+00 1.0325904494e+00 1.0197738011e+00 1.0062886922e+00 9.9200419525e-01 9.7945444224e-01 9.6560443722e-01 9.5276061896e-01 9.3943395211e-01 9.2737872746e-01 9.1417038867e-01 9.0245421459e-01 8.9011508506e-01 8.7816807197e-01 8.6655734891e-01 8.5501035029e-01 8.4402496640e-01 8.3303896338e-01 8.2223460042e-01 8.1114200351e-01 8.0073133927e-01 7.9012678547e-01 7.7907310092e-01 7.6785715460e-01 7.5759679212e-01 7.4756355336e-01 7.3723002271e-01 7.2687058185e-01 7.1739650185e-01 7.0793185337e-01 6.9889152228e-01 6.8922002728e-01 6.7953897619e-01 6.6986377400e-01 6.6004499350e-01 6.5016002219e-01 6.4073594125e-01 6.3144583304e-01 6.2201108199e-01 6.1294075706e-01 6.0327435869e-01 5.9457951369e-01 5.8536975671e-01 5.7626518073e-01 5.6747533764e-01 5.5868492320e-01 5.4982124192e-01 5.4089741411e-01 5.3201945288e-01 5.2272470168e-01 5.1320666875e-01 5.0338928773e-01 4.9354117503e-01 4.8262397139e-01 4.7135591384e-01 4.5940732576e-01 4.4706486135e-01 4.3480523074e-01 4.2127205899e-01 4.0698901215e-01 3.9225272782e-01 3.7631737217e-01 3.5977132616e-01 3.4180745250e-01 3.2328214129e-01 3.0398300881e-01 2.8398243246e-01 2.6272880432e-01 2.4106405827e-01 2.1939091927e-01 1.9688057110e-01 1.7396487707e-01 1.5046346723e-01 1.2769477179e-01 1.0516599538e-01 8.2967172937e-02 6.3328458463e-02 4.4205006299e-02 2.7550982720e-02 1.4638108666e-02 5.6135484547e-03 8.9461154946e-04 0.0000000000e+00 4.8228045206e-01 1.0832002287e+00 3.0019056812e+00 9.7318181629e-01 7.1000000000e-01 3.5732790960e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.5674825939e+00 3.4282969995e+02 1.2033175199e+01 3.7530278444e+01 1.3172966515e+00 1.2950826387e+00 1.2770969638e+00 1.2594715362e+00 1.2424661358e+00 1.2270522730e+00 1.2126167314e+00 1.1978925476e+00 1.1849147523e+00 1.1720781003e+00 1.1601356359e+00 1.1476311723e+00 1.1363726795e+00 1.1252551648e+00 1.1147141356e+00 1.1034739760e+00 1.0927179072e+00 1.0823896745e+00 1.0725825283e+00 1.0624177825e+00 1.0525297982e+00 1.0425415534e+00 1.0329609021e+00 1.0232827378e+00 1.0143902505e+00 1.0055055301e+00 9.9610474493e-01 9.8690538174e-01 9.7844422310e-01 9.6977325784e-01 9.6142142399e-01 9.5339781885e-01 9.4473918912e-01 9.3718891976e-01 9.2937590727e-01 9.2158444278e-01 9.1331210447e-01 9.0586094586e-01 8.9849057926e-01 8.9152144458e-01 8.8419611459e-01 8.7605863580e-01 8.6865137599e-01 8.6140342195e-01 8.5420567623e-01 8.4653303758e-01 8.3910518386e-01 8.3123956203e-01 8.2410227166e-01 8.1689570298e-01 8.0936821174e-01 8.0206564608e-01 7.9446399692e-01 7.8704434261e-01 7.7976680693e-01 7.7201130364e-01 7.6438282559e-01 7.5686086060e-01 7.4926559928e-01 7.4119837010e-01 7.3394780499e-01 7.2628552631e-01 7.1828760088e-01 7.0996708594e-01 7.0137634685e-01 6.9231582560e-01 6.8260584344e-01 6.7211378575e-01 6.6159280823e-01 6.4991078488e-01 6.3772078095e-01 6.2460818751e-01 6.1111795555e-01 5.9703763060e-01 5.8137846832e-01 5.6438329982e-01 5.4740652360e-01 5.2842068787e-01 5.0887751208e-01 4.8802114978e-01 4.6605973505e-01 4.4392977883e-01 4.2029044371e-01 3.9559885301e-01 3.7069388583e-01 3.4344691579e-01 3.1540777814e-01 2.8590032186e-01 2.5691166517e-01 2.2828598981e-01 1.9889575095e-01 1.6998959932e-01 1.4082184101e-01 1.1204133475e-01 8.5596907053e-02 6.1861230690e-02 4.0318272145e-02 2.2202650106e-02 9.4664928482e-03 1.6707691060e-03 0.0000000000e+00 4.2660533418e-01 9.4024933176e-01 2.4771745892e+00 9.5946987260e-01 5.6000000000e-01 2.5730784140e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 3.4653837134e+02 1.2163347972e+01 3.8320806946e+01 1.3450438623e+00 1.3283697027e+00 1.3146411020e+00 1.3012305126e+00 1.2900854051e+00 1.2787946040e+00 1.2683619331e+00 1.2582433846e+00 1.2487694151e+00 1.2395570214e+00 1.2302013861e+00 1.2213865881e+00 1.2131753129e+00 1.2048064642e+00 1.1971000160e+00 1.1894616180e+00 1.1815777444e+00 1.1741049323e+00 1.1668064673e+00 1.1597402802e+00 1.1524344630e+00 1.1457534232e+00 1.1389428525e+00 1.1323943098e+00 1.1258757003e+00 1.1196989693e+00 1.1134611348e+00 1.1072620155e+00 1.1011370548e+00 1.0949948455e+00 1.0887631932e+00 1.0824092324e+00 1.0767693888e+00 1.0709895448e+00 1.0647576012e+00 1.0588317115e+00 1.0528859664e+00 1.0472198359e+00 1.0417353724e+00 1.0360440573e+00 1.0304198250e+00 1.0244701327e+00 1.0186805883e+00 1.0131830842e+00 1.0074120407e+00 1.0015240723e+00 9.9565873098e-01 9.8973180200e-01 9.8394677922e-01 9.7784356789e-01 9.7161019450e-01 9.6560564432e-01 9.5918119227e-01 9.5302036635e-01 9.4721269177e-01 9.4070781657e-01 9.3410779749e-01 9.2717259347e-01 9.2000576452e-01 9.1225067571e-01 9.0388241535e-01 8.9510979818e-01 8.8568482797e-01 8.7562468136e-01 8.6501779276e-01 8.5384893740e-01 8.4179679832e-01 8.2876071508e-01 8.1552264505e-01 8.0147021661e-01 7.8620430823e-01 7.6933832614e-01 7.5202272123e-01 7.3364887014e-01 7.1403693227e-01 6.9381167021e-01 6.7166071234e-01 6.4794821385e-01 6.2284396562e-01 5.9642248531e-01 5.6936700249e-01 5.4027937384e-01 5.1157156383e-01 4.8179178647e-01 4.5097510526e-01 4.1823019440e-01 3.8438458854e-01 3.4840168652e-01 3.1501947568e-01 2.7895080196e-01 2.4329682750e-01 2.1002523083e-01 1.7494562120e-01 1.4150377493e-01 1.1201053390e-01 8.0342275330e-02 5.2973652144e-02 3.1411212938e-02 1.4276418745e-02 3.0416265696e-03 0.0000000000e+00 4.5025445815e-01 1.0000811338e+00 2.6903059798e+00 9.6511293197e-01 6.3000000000e-01 3.0498333818e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 4.0440779596e+02 1.4194539917e+01 5.1947725571e+01 1.8233428524e+00 1.8084396299e+00 1.7929859254e+00 1.7790425078e+00 1.7659955205e+00 1.7528833621e+00 1.7410766425e+00 1.7302001478e+00 1.7191200796e+00 1.7095369415e+00 1.6997037962e+00 1.6901638885e+00 1.6802978653e+00 1.6714618118e+00 1.6630085309e+00 1.6546211986e+00 1.6461498581e+00 1.6378117410e+00 1.6296980200e+00 1.6214158660e+00 1.6137357035e+00 1.6063724146e+00 1.5991994967e+00 1.5919779535e+00 1.5847336457e+00 1.5773396562e+00 1.5699876004e+00 1.5625529622e+00 1.5553412583e+00 1.5484851699e+00 1.5415206374e+00 1.5345690404e+00 1.5280550298e+00 1.5211754989e+00 1.5146564112e+00 1.5081384647e+00 1.5019182735e+00 1.4955251297e+00 1.4891474827e+00 1.4827952542e+00 1.4761210106e+00 1.4693755640e+00 1.4624224063e+00 1.4553798270e+00 1.4481654928e+00 1.4411567299e+00 1.4335819641e+00 1.4261290266e+00 1.4186062079e+00 1.4111183725e+00 1.4037432083e+00 1.3957146849e+00 1.3881385385e+00 1.3801682126e+00 1.3722536284e+00 1.3640341257e+00 1.3554463942e+00 1.3463000633e+00 1.3366697873e+00 1.3261429457e+00 1.3150424727e+00 1.3025808759e+00 1.2892713037e+00 1.2756668799e+00 1.2613081711e+00 1.2456353992e+00 1.2283017276e+00 1.2098017805e+00 1.1910032704e+00 1.1711244631e+00 1.1495002344e+00 1.1259201135e+00 1.1010132518e+00 1.0740987124e+00 1.0479937509e+00 1.0182125118e+00 9.8818877566e-01 9.5560810649e-01 9.2037772892e-01 8.8568634108e-01 8.4800050471e-01 8.0777711966e-01 7.6606178260e-01 7.2424495955e-01 6.7803840829e-01 6.3113845439e-01 5.8218752837e-01 5.3353402692e-01 4.8228986511e-01 4.3102557342e-01 3.7873404826e-01 3.2751088811e-01 2.7600116267e-01 2.2569783109e-01 1.7434882933e-01 1.3134250085e-01 9.0838198713e-02 5.4144580763e-02 2.5297798846e-02 5.9114957250e-03 0.0000000000e+00 6.9876742817e-01 1.7450405713e+00 6.3636147832e+00 1.0477397401e+00 1.1300000000e+00 5.8998076658e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 6.0632798700e+02 2.1281851884e+01 6.8477687571e+01 2.4035374178e+00 2.3855103855e+00 2.3693368082e+00 2.3548998537e+00 2.3403446631e+00 2.3272758509e+00 2.3141828226e+00 2.3027679774e+00 2.2912237712e+00 2.2802128844e+00 2.2689535487e+00 2.2582320719e+00 2.2486921006e+00 2.2387568516e+00 2.2293714271e+00 2.2193931246e+00 2.2099655738e+00 2.2005974995e+00 2.1921490465e+00 2.1833429805e+00 2.1741864252e+00 2.1656365667e+00 2.1569494762e+00 2.1483228567e+00 2.1401766624e+00 2.1319259606e+00 2.1235990874e+00 2.1157560658e+00 2.1076223400e+00 2.0998291856e+00 2.0915385267e+00 2.0836504573e+00 2.0757206261e+00 2.0680707347e+00 2.0600054710e+00 2.0523910848e+00 2.0447050887e+00 2.0373767350e+00 2.0299783948e+00 2.0220544200e+00 2.0143112315e+00 2.0062330241e+00 1.9978678313e+00 1.9895514350e+00 1.9810496830e+00 1.9724176729e+00 1.9640153200e+00 1.9550094052e+00 1.9459203261e+00 1.9362197718e+00 1.9269916887e+00 1.9170599727e+00 1.9068050143e+00 1.8969454198e+00 1.8866032125e+00 1.8757103118e+00 1.8640546128e+00 1.8518228225e+00 1.8392104099e+00 1.8249545529e+00 1.8100120726e+00 1.7941534800e+00 1.7769182310e+00 1.7576829565e+00 1.7384194272e+00 1.7174837673e+00 1.6947990612e+00 1.6695237154e+00 1.6444755318e+00 1.6164376703e+00 1.5871080865e+00 1.5561940094e+00 1.5225019461e+00 1.4873463976e+00 1.4502098020e+00 1.4106525794e+00 1.3696256887e+00 1.3263554289e+00 1.2808530875e+00 1.2320641227e+00 1.1847347096e+00 1.1317561399e+00 1.0778897860e+00 1.0182621220e+00 9.5707525666e-01 8.9316380179e-01 8.2654617787e-01 7.5733208245e-01 6.8835793912e-01 6.1637351569e-01 5.4627370039e-01 4.7262887222e-01 4.0487023898e-01 3.3140744820e-01 2.6688537674e-01 1.9727159150e-01 1.3749208295e-01 8.5385225329e-02 3.9795855647e-02 1.0480712050e-02 0.0000000000e+00 8.1815066163e-01 2.2782185175e+00 1.0951567061e+01 1.1209313788e+00 1.3500000000e+00 6.7312953162e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 7.6921915367e+02 2.6999261861e+01 8.6851119261e+01 3.0484369775e+00 3.0287379260e+00 3.0111476491e+00 2.9957326458e+00 2.9802546983e+00 2.9648713160e+00 2.9510138030e+00 2.9379848900e+00 2.9241567543e+00 2.9124766530e+00 2.9008514121e+00 2.8892834110e+00 2.8785635087e+00 2.8680885407e+00 2.8577730865e+00 2.8469980522e+00 2.8366438388e+00 2.8268968110e+00 2.8166897709e+00 2.8064563237e+00 2.7962986627e+00 2.7864704774e+00 2.7773777032e+00 2.7681976168e+00 2.7588018540e+00 2.7486485555e+00 2.7391990547e+00 2.7299110588e+00 2.7203783035e+00 2.7111437256e+00 2.7012877958e+00 2.6922746657e+00 2.6832179298e+00 2.6741078486e+00 2.6653521741e+00 2.6561722483e+00 2.6473496631e+00 2.6383644816e+00 2.6294245326e+00 2.6203954339e+00 2.6108045364e+00 2.6012600185e+00 2.5911793914e+00 2.5807028335e+00 2.5701569084e+00 2.5592236956e+00 2.5475995788e+00 2.5359677852e+00 2.5244331843e+00 2.5122576245e+00 2.5002358259e+00 2.4877365709e+00 2.4750222293e+00 2.4618293396e+00 2.4482169054e+00 2.4341049410e+00 2.4200517912e+00 2.4041491084e+00 2.3867273990e+00 2.3680452152e+00 2.3486325227e+00 2.3279794634e+00 2.3045357322e+00 2.2800081045e+00 2.2536741078e+00 2.2251231581e+00 2.1952096620e+00 2.1634096795e+00 2.1289758274e+00 2.0932531026e+00 2.0551893422e+00 2.0155516365e+00 1.9734138661e+00 1.9294380087e+00 1.8822558883e+00 1.8317313011e+00 1.7772057212e+00 1.7192921190e+00 1.6595305292e+00 1.5990500564e+00 1.5348549633e+00 1.4622142211e+00 1.3917342268e+00 1.3206711678e+00 1.2432953106e+00 1.1621615009e+00 1.0751272734e+00 9.8428747733e-01 8.9440831253e-01 8.0369764561e-01 7.1424133128e-01 6.2353731381e-01 5.3112832649e-01 4.3849293816e-01 3.5087441913e-01 2.6601399586e-01 1.8582435200e-01 1.1624721491e-01 5.5174782914e-02 1.4649468298e-02 0.0000000000e+00 8.7747379344e-01 2.6763316202e+00 1.6317256577e+01 1.1807571118e+00 1.4900000000e+00 7.1475190517e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 8.1350421941e+02 2.8553648645e+01 1.0511689151e+02 3.6895577370e+00 3.6715615470e+00 3.6531872637e+00 3.6356124733e+00 3.6191585033e+00 3.6038668289e+00 3.5889290846e+00 3.5742430560e+00 3.5617157097e+00 3.5497037440e+00 3.5370703364e+00 3.5242362551e+00 3.5112833561e+00 3.4989133366e+00 3.4873355460e+00 3.4757312726e+00 3.4646362986e+00 3.4533426914e+00 3.4420194221e+00 3.4306775011e+00 3.4197853033e+00 3.4083615915e+00 3.3976471128e+00 3.3866167991e+00 3.3765983743e+00 3.3657931750e+00 3.3549936516e+00 3.3444489825e+00 3.3337758177e+00 3.3231870631e+00 3.3119603108e+00 3.3018956148e+00 3.2905923734e+00 3.2798109795e+00 3.2695557166e+00 3.2588531922e+00 3.2488333502e+00 3.2385469904e+00 3.2280551631e+00 3.2175484876e+00 3.2061944241e+00 3.1941685604e+00 3.1811212925e+00 3.1683189658e+00 3.1550272743e+00 3.1415990670e+00 3.1284404563e+00 3.1150087835e+00 3.1006563219e+00 3.0857857526e+00 3.0702510939e+00 3.0543850405e+00 3.0386781436e+00 3.0219443151e+00 3.0046889288e+00 2.9868319795e+00 2.9677537788e+00 2.9470828126e+00 2.9248487288e+00 2.9008945483e+00 2.8752641340e+00 2.8493651306e+00 2.8211667615e+00 2.7906071072e+00 2.7592178122e+00 2.7248286267e+00 2.6885304592e+00 2.6504894390e+00 2.6082593743e+00 2.5645464140e+00 2.5163266496e+00 2.4644887822e+00 2.4118939054e+00 2.3542134445e+00 2.2982879410e+00 2.2375891344e+00 2.1711039699e+00 2.1027589602e+00 2.0288987103e+00 1.9526788150e+00 1.8733926383e+00 1.7918260101e+00 1.7098646967e+00 1.6180209700e+00 1.5270482649e+00 1.4298942500e+00 1.3299007203e+00 1.2260673066e+00 1.1164433403e+00 1.0003531413e+00 8.8990408893e-01 7.7710503696e-01 6.6235832426e-01 5.4680124158e-01 4.4213709112e-01 3.3882664733e-01 2.4129554880e-01 1.5059794118e-01 7.1682481244e-02 1.9718547029e-02 0.0000000000e+00 9.0881217514e-01 2.9719506646e+00 2.1930369137e+01 1.2263301181e+00 1.5900000000e+00 7.4285157601e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 1.0522085842e+03 3.6932069307e+01 1.1939140351e+02 4.1905869763e+00 4.1698315280e+00 4.1503273789e+00 4.1323828143e+00 4.1133342342e+00 4.0967343945e+00 4.0811808824e+00 4.0661279450e+00 4.0511915749e+00 4.0370925305e+00 4.0235468404e+00 4.0099536090e+00 3.9957630127e+00 3.9827838822e+00 3.9702064580e+00 3.9578508125e+00 3.9448824473e+00 3.9321452277e+00 3.9198304500e+00 3.9081619445e+00 3.8962267939e+00 3.8840846113e+00 3.8711456033e+00 3.8590726464e+00 3.8471906636e+00 3.8353815077e+00 3.8232610332e+00 3.8107432052e+00 3.7995856032e+00 3.7876155530e+00 3.7752333722e+00 3.7638272370e+00 3.7523282822e+00 3.7413549110e+00 3.7298466286e+00 3.7180599782e+00 3.7071261933e+00 3.6956222292e+00 3.6836030806e+00 3.6710985128e+00 3.6580915506e+00 3.6450490932e+00 3.6314531894e+00 3.6172348382e+00 3.6026986582e+00 3.5868412780e+00 3.5708179112e+00 3.5542413300e+00 3.5378888983e+00 3.5210924269e+00 3.5030585656e+00 3.4846402694e+00 3.4653284969e+00 3.4454888011e+00 3.4254539004e+00 3.4057284171e+00 3.3837067856e+00 3.3613671277e+00 3.3357705213e+00 3.3079989049e+00 3.2796684233e+00 3.2489147062e+00 3.2169358797e+00 3.1805579663e+00 3.1422502918e+00 3.1029247693e+00 3.0585603387e+00 3.0136133156e+00 2.9675414368e+00 2.9153206715e+00 2.8615037965e+00 2.8016809674e+00 2.7415417240e+00 2.6761961989e+00 2.6113435263e+00 2.5391314667e+00 2.4646480881e+00 2.3862922607e+00 2.3026452252e+00 2.2194946517e+00 2.1308386710e+00 2.0314758174e+00 1.9340753994e+00 1.8340374867e+00 1.7261362177e+00 1.6207146567e+00 1.4985679774e+00 1.3814834015e+00 1.2564300454e+00 1.1421531336e+00 1.0184268955e+00 8.8574556639e-01 7.5351160087e-01 6.2423603164e-01 5.0039632392e-01 3.8398082683e-01 2.7084902165e-01 1.6867088514e-01 8.4249827250e-02 2.3233910477e-02 0.0000000000e+00 9.2451488867e-01 3.1609318042e+00 2.6492319582e+01 1.2555375186e+00 1.6400000000e+00 7.4937557708e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 1.3191702432e+03 4.6302308860e+01 1.2816084786e+02 4.4983907060e+00 4.4759385427e+00 4.4560510567e+00 4.4367746331e+00 4.4186622789e+00 4.4015983610e+00 4.3861749676e+00 4.3702466900e+00 4.3542936012e+00 4.3411809157e+00 4.3262333152e+00 4.3105326369e+00 4.2970222507e+00 4.2836522462e+00 4.2700767034e+00 4.2562654657e+00 4.2427156145e+00 4.2295631704e+00 4.2170321194e+00 4.2041742902e+00 4.1917134761e+00 4.1788352515e+00 4.1657094229e+00 4.1534812462e+00 4.1413382418e+00 4.1288194620e+00 4.1160338614e+00 4.1039311477e+00 4.0909557414e+00 4.0790161119e+00 4.0671194471e+00 4.0550374556e+00 4.0428442551e+00 4.0303232593e+00 4.0179788025e+00 4.0054299312e+00 3.9930513274e+00 3.9805359372e+00 3.9671477955e+00 3.9537682943e+00 3.9396783157e+00 3.9253576325e+00 3.9106754154e+00 3.8950303720e+00 3.8780811303e+00 3.8608994765e+00 3.8444019361e+00 3.8272558085e+00 3.8086234133e+00 3.7903110343e+00 3.7713960464e+00 3.7509797520e+00 3.7292538730e+00 3.7068476873e+00 3.6845885078e+00 3.6597741351e+00 3.6351141925e+00 3.6089390129e+00 3.5804638995e+00 3.5503896669e+00 3.5196470529e+00 3.4861771983e+00 3.4511062990e+00 3.4113935747e+00 3.3711605898e+00 3.3251964058e+00 3.2791077361e+00 3.2302360069e+00 3.1776413182e+00 3.1216075440e+00 3.0610371115e+00 3.0010031933e+00 2.9364202842e+00 2.8683065904e+00 2.7976704352e+00 2.7228024469e+00 2.6419274430e+00 2.5572245956e+00 2.4733415000e+00 2.3832610755e+00 2.2850636220e+00 2.1813825836e+00 2.0763294031e+00 1.9614484774e+00 1.8516020570e+00 1.7297964087e+00 1.6073379338e+00 1.4806509440e+00 1.3501897777e+00 1.2184895593e+00 1.0803245429e+00 9.4124836024e-01 8.0220455471e-01 6.6315319805e-01 5.3684835875e-01 4.1107288549e-01 2.8982151887e-01 1.8201844706e-01 9.3273331823e-02 2.5017848999e-02 0.0000000000e+00 9.3189812451e-01 3.2638517685e+00 2.9364161256e+01 1.2714043516e+00 1.6800000000e+00 7.6375178585e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 1.6075200489e+03 5.6423263176e+01 1.2939831474e+02 4.5418252617e+00 4.5217675116e+00 4.5026157595e+00 4.4825858689e+00 4.4643370139e+00 4.4480154117e+00 4.4313949784e+00 4.4171619348e+00 4.4025462146e+00 4.3869399069e+00 4.3727059062e+00 4.3590653944e+00 4.3452726494e+00 4.3302020419e+00 4.3174397826e+00 4.3040800439e+00 4.2900565079e+00 4.2769163866e+00 4.2635670067e+00 4.2512946639e+00 4.2375058720e+00 4.2246371119e+00 4.2118155723e+00 4.1983243356e+00 4.1860613042e+00 4.1736553082e+00 4.1614213666e+00 4.1492131223e+00 4.1368328476e+00 4.1246749695e+00 4.1117769216e+00 4.0992009005e+00 4.0862601734e+00 4.0730465854e+00 4.0610415634e+00 4.0489216377e+00 4.0362320297e+00 4.0234804498e+00 4.0104993446e+00 3.9965975866e+00 3.9823521504e+00 3.9679703274e+00 3.9522487622e+00 3.9362429144e+00 3.9202485683e+00 3.9024819556e+00 3.8845309408e+00 3.8666239959e+00 3.8471715817e+00 3.8273948209e+00 3.8069688986e+00 3.7859204774e+00 3.7642596884e+00 3.7421365138e+00 3.7191746130e+00 3.6952544994e+00 3.6701609647e+00 3.6426011309e+00 3.6124009666e+00 3.5818376722e+00 3.5479303387e+00 3.5118761504e+00 3.4736612763e+00 3.4337315459e+00 3.3900011673e+00 3.3454742963e+00 3.2978231496e+00 3.2500918196e+00 3.1958266943e+00 3.1400250109e+00 3.0784541474e+00 3.0130406784e+00 2.9451177855e+00 2.8716322608e+00 2.8014708159e+00 2.7216170856e+00 2.6422306534e+00 2.5576358778e+00 2.4723850447e+00 2.3712133603e+00 2.2746357584e+00 2.1756232984e+00 2.0673366074e+00 1.9495581772e+00 1.8337468976e+00 1.7169330818e+00 1.5982886772e+00 1.4789255933e+00 1.3486152070e+00 1.2168013927e+00 1.0819643087e+00 9.4595902091e-01 8.0531965405e-01 6.6965831263e-01 5.4309612628e-01 4.1153345417e-01 2.9837016912e-01 1.8524171679e-01 9.6365741205e-02 2.7181753104e-02 0.0000000000e+00 9.3283433724e-01 3.2776927424e+00 2.9773415709e+01 1.2735347247e+00 1.6800000000e+00 7.6124527863e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 2 nPDFA= 1 ====== +12 1.0000000000e+01 2.0000000000e+03 4.8166521514e-01 +1.2696609010e+00 2.7076427567e+02 9.5037097641e+00 4.0591866812e+01 1.4247570881e+00 1.3845995648e+00 1.3431463930e+00 1.3059135320e+00 1.2681838939e+00 1.2333480175e+00 1.1997255535e+00 1.1686435536e+00 1.1381588089e+00 1.1080788221e+00 1.0807789689e+00 1.0542091199e+00 1.0276904556e+00 1.0012640118e+00 9.7790871170e-01 9.5412117774e-01 9.3049960304e-01 9.0759788035e-01 8.8500012715e-01 8.6303292940e-01 8.4159832572e-01 8.2049775833e-01 7.9969500246e-01 7.7993637318e-01 7.6073205977e-01 7.4177388166e-01 7.2307869755e-01 7.0462676146e-01 6.8669762734e-01 6.6999843125e-01 6.5204750108e-01 6.3457519323e-01 6.1712917370e-01 6.0161232446e-01 5.8509782139e-01 5.6899210142e-01 5.5334160996e-01 5.3880367748e-01 5.2338514234e-01 5.0843306373e-01 4.9361882242e-01 4.7899116099e-01 4.6489151988e-01 4.5080175915e-01 4.3699729906e-01 4.2374649205e-01 4.1041853846e-01 3.9815875722e-01 3.8608272209e-01 3.7354258965e-01 3.6108704518e-01 3.4875681423e-01 3.3677703659e-01 3.2493735010e-01 3.1340843648e-01 3.0251393800e-01 2.9148071425e-01 2.8095255591e-01 2.7014128979e-01 2.5957592787e-01 2.4971712257e-01 2.3968595499e-01 2.3046385081e-01 2.2139379429e-01 2.1184754338e-01 2.0280480782e-01 1.9449246226e-01 1.8632820882e-01 1.7841957501e-01 1.7002328933e-01 1.6234572015e-01 1.5500503454e-01 1.4745863568e-01 1.4029453196e-01 1.3341044710e-01 1.2624657880e-01 1.1948086715e-01 1.1268281349e-01 1.0550576289e-01 9.8497920180e-02 9.2002316639e-02 8.4814544601e-02 7.7752006375e-02 7.0551648376e-02 6.3629943028e-02 5.6233680892e-02 4.9759106379e-02 4.3050572208e-02 3.6802873244e-02 3.0923742013e-02 2.5042088415e-02 1.9550521468e-02 1.4264451245e-02 1.0080290049e-02 6.2724256284e-03 3.3856665072e-03 1.6427623735e-03 5.8529507687e-04 1.3115694496e-04 4.8414550585e-06 0.0000000000e+00 5.1047008722e-01 1.1585984558e+00 3.3014425776e+00 9.8073857303e-01 7.8000000000e-01 4.0378108227e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.4107343345e+00 2.9185580289e+02 1.0244013309e+01 3.3870999443e+01 1.1888575305e+00 1.1545125457e+00 1.1249859682e+00 1.0981564270e+00 1.0711022431e+00 1.0453635996e+00 1.0219847756e+00 1.0006516774e+00 9.8026723459e-01 9.5964579232e-01 9.4047705908e-01 9.2133988126e-01 9.0222154331e-01 8.8352082085e-01 8.6614075761e-01 8.4817740883e-01 8.3034726714e-01 8.1343233732e-01 7.9760310110e-01 7.8231924677e-01 7.6741607479e-01 7.5169410136e-01 7.3679027360e-01 7.2208079405e-01 7.0770678934e-01 6.9315478124e-01 6.7979982017e-01 6.6666644685e-01 6.5327850120e-01 6.4072050941e-01 6.2784560788e-01 6.1540841211e-01 6.0317378009e-01 5.9049370214e-01 5.7816968731e-01 5.6630685943e-01 5.5494292461e-01 5.4390695971e-01 5.3288400928e-01 5.2217937769e-01 5.1226014217e-01 5.0155342105e-01 4.9110971487e-01 4.8044840806e-01 4.7015954504e-01 4.5987078297e-01 4.4961577692e-01 4.4013612070e-01 4.3056760719e-01 4.2138362237e-01 4.1260578097e-01 4.0358207684e-01 3.9457886706e-01 3.8638172087e-01 3.7793439885e-01 3.6946891604e-01 3.6105682819e-01 3.5289323310e-01 3.4500314770e-01 3.3702215390e-01 3.2964929355e-01 3.2180542755e-01 3.1416524993e-01 3.0645356046e-01 2.9894112796e-01 2.9167849734e-01 2.8434563562e-01 2.7702125315e-01 2.6951496769e-01 2.6189016155e-01 2.5428248314e-01 2.4628847500e-01 2.3798946864e-01 2.3049144746e-01 2.2264262987e-01 2.1416469392e-01 2.0501353636e-01 1.9570660857e-01 1.8572287803e-01 1.7597342704e-01 1.6648168169e-01 1.5633505489e-01 1.4546893827e-01 1.3421099961e-01 1.2270001938e-01 1.1142319658e-01 1.0024719590e-01 8.8176396494e-02 7.6836286596e-02 6.5892526015e-02 5.5458300824e-02 4.4900801287e-02 3.4627781761e-02 2.5250771712e-02 1.7712101542e-02 1.1332834399e-02 6.1915499105e-03 2.7581793927e-03 6.8407055149e-04 4.1279490179e-05 0.0000000000e+00 2.9427819021e-01 6.2482614348e-01 1.4856585291e+00 9.3186102081e-01 1.0000000000e-02 1.3461577558e-04 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.4107343345e+00 3.6810538372e+02 1.2920340842e+01 4.5204201121e+01 1.5866480410e+00 1.5514128239e+00 1.5193175066e+00 1.4890378234e+00 1.4609722980e+00 1.4348766761e+00 1.4096032241e+00 1.3845827107e+00 1.3611919737e+00 1.3367018884e+00 1.3147418345e+00 1.2931653446e+00 1.2731360735e+00 1.2521983551e+00 1.2330240398e+00 1.2147231765e+00 1.1973785477e+00 1.1791007345e+00 1.1608541419e+00 1.1444737570e+00 1.1286107721e+00 1.1120224318e+00 1.0949455128e+00 1.0790791266e+00 1.0636836347e+00 1.0477266959e+00 1.0320362359e+00 1.0160402163e+00 1.0011208449e+00 9.8682468785e-01 9.7267785501e-01 9.5896455798e-01 9.4623603033e-01 9.3260850453e-01 9.1935671395e-01 9.0553704999e-01 8.9192053205e-01 8.7900090434e-01 8.6711648875e-01 8.5537094538e-01 8.4353762596e-01 8.3112643892e-01 8.1887747502e-01 8.0652475721e-01 7.9382791367e-01 7.8248216351e-01 7.7091253402e-01 7.5995565433e-01 7.4848003036e-01 7.3705455061e-01 7.2624386446e-01 7.1564533233e-01 7.0491766510e-01 6.9454603659e-01 6.8452253962e-01 6.7405814609e-01 6.6365449841e-01 6.5338402057e-01 6.4309233152e-01 6.3317032395e-01 6.2305011500e-01 6.1316454426e-01 6.0307875355e-01 5.9355861070e-01 5.8428936251e-01 5.7513436002e-01 5.6549737322e-01 5.5580710856e-01 5.4533541882e-01 5.3498632122e-01 5.2386117123e-01 5.1241393528e-01 5.0019128293e-01 4.8732965097e-01 4.7392103611e-01 4.5972673039e-01 4.4542921113e-01 4.2977738302e-01 4.1339524362e-01 3.9560172389e-01 3.7710277806e-01 3.5876802226e-01 3.3865209065e-01 3.1735427103e-01 2.9552892356e-01 2.7276369173e-01 2.4818332194e-01 2.2309785435e-01 1.9797682661e-01 1.7299580625e-01 1.4984579982e-01 1.2500739615e-01 1.0229690862e-01 7.9722429868e-02 5.9184445318e-02 4.0206611469e-02 2.4416020250e-02 1.2273130787e-02 4.3371408764e-03 4.0519972734e-04 0.0000000000e+00 6.0507408101e-01 1.4310975311e+00 4.5412961892e+00 1.0100212340e+00 9.6000000000e-01 5.0497251505e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.5674825939e+00 3.6269627930e+02 1.2730483600e+01 4.2924935650e+01 1.5066468021e+00 1.4807585601e+00 1.4576074883e+00 1.4348037982e+00 1.4146124601e+00 1.3956490228e+00 1.3769960791e+00 1.3597095340e+00 1.3433963289e+00 1.3277202043e+00 1.3110904970e+00 1.2967531900e+00 1.2816665035e+00 1.2676501760e+00 1.2548425166e+00 1.2414298193e+00 1.2284872917e+00 1.2158057675e+00 1.2031440034e+00 1.1908391406e+00 1.1790059820e+00 1.1682369991e+00 1.1568503222e+00 1.1457208115e+00 1.1339744411e+00 1.1235041995e+00 1.1128863134e+00 1.1019578453e+00 1.0908487628e+00 1.0804926435e+00 1.0702903967e+00 1.0597919796e+00 1.0499291729e+00 1.0403101998e+00 1.0309497668e+00 1.0211189562e+00 1.0117390591e+00 1.0024659855e+00 9.9345965002e-01 9.8446594018e-01 9.7524594929e-01 9.6649744710e-01 9.5686368688e-01 9.4774427476e-01 9.3889809725e-01 9.3018483386e-01 9.2144172629e-01 9.1300836611e-01 9.0459250114e-01 8.9627747879e-01 8.8761504033e-01 8.7955944268e-01 8.7101579288e-01 8.6305397078e-01 8.5500592409e-01 8.4663756672e-01 8.3905421492e-01 8.3131966542e-01 8.2352013191e-01 8.1577127333e-01 8.0797217701e-01 7.9998219669e-01 7.9159673615e-01 7.8279668103e-01 7.7315833472e-01 7.6359144584e-01 7.5335500897e-01 7.4224847304e-01 7.3003765561e-01 7.1685974509e-01 7.0364052954e-01 6.8953516168e-01 6.7381831247e-01 6.5745091570e-01 6.3994557785e-01 6.2161960818e-01 6.0162376373e-01 5.8098963872e-01 5.5904470104e-01 5.3617874398e-01 5.1210523812e-01 4.8756911087e-01 4.6072154968e-01 4.3398163154e-01 4.0539574292e-01 3.7443488867e-01 3.4336010601e-01 3.1105669720e-01 2.7716839469e-01 2.4495438005e-01 2.1123053419e-01 1.7961171756e-01 1.4831789555e-01 1.1690805934e-01 8.8370933027e-02 6.2536735286e-02 3.9277950958e-02 2.0674168227e-02 8.2692736020e-03 1.2676491947e-03 0.0000000000e+00 5.6231136151e-01 1.3037117289e+00 3.9284662159e+00 9.9594025285e-01 8.8000000000e-01 4.6098730066e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 3.9303838727e+02 1.3795478556e+01 4.3005810089e+01 1.5094854601e+00 1.4912005063e+00 1.4743751717e+00 1.4585382809e+00 1.4442234399e+00 1.4308419405e+00 1.4180579915e+00 1.4060754626e+00 1.3940791579e+00 1.3822362578e+00 1.3712228508e+00 1.3602312757e+00 1.3499223034e+00 1.3401965603e+00 1.3311670678e+00 1.3212141102e+00 1.3120476841e+00 1.3027830828e+00 1.2938002493e+00 1.2856334148e+00 1.2773900174e+00 1.2689270128e+00 1.2603682051e+00 1.2522133928e+00 1.2444356717e+00 1.2363505038e+00 1.2284984612e+00 1.2204905895e+00 1.2127003241e+00 1.2052644010e+00 1.1980365041e+00 1.1905850180e+00 1.1829815880e+00 1.1759443328e+00 1.1690475076e+00 1.1620006912e+00 1.1552179315e+00 1.1477668522e+00 1.1411258421e+00 1.1341945590e+00 1.1275741945e+00 1.1210138964e+00 1.1143656949e+00 1.1072103312e+00 1.1006651779e+00 1.0937499493e+00 1.0874814943e+00 1.0812635447e+00 1.0751826081e+00 1.0686508435e+00 1.0621792167e+00 1.0559576226e+00 1.0494458813e+00 1.0434247998e+00 1.0370819884e+00 1.0306674920e+00 1.0239537862e+00 1.0170374660e+00 1.0095372709e+00 1.0015109245e+00 9.9260047251e-01 9.8337179051e-01 9.7343488147e-01 9.6286119830e-01 9.5174120851e-01 9.3985033013e-01 9.2686419994e-01 9.1351352055e-01 8.9818855116e-01 8.8205747072e-01 8.6452946310e-01 8.4704635224e-01 8.2664336349e-01 8.0604314995e-01 7.8430591596e-01 7.6133665928e-01 7.3786796991e-01 7.1148744447e-01 6.8436202939e-01 6.5601065733e-01 6.2584648652e-01 5.9434493471e-01 5.6026969823e-01 5.2683140302e-01 4.9206745693e-01 4.5646046787e-01 4.1889992265e-01 3.7923779534e-01 3.4209760805e-01 3.0437693486e-01 2.6520134234e-01 2.2512752594e-01 1.8605485941e-01 1.5132328916e-01 1.1515832136e-01 8.3307775253e-02 5.4505688310e-02 3.1045013147e-02 1.2724647095e-02 2.3345774061e-03 0.0000000000e+00 5.6395207721e-01 1.3084594095e+00 3.9502009086e+00 9.9645255739e-01 8.9000000000e-01 4.6964066877e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 4.9352950681e+02 1.7322673684e+01 5.7265702704e+01 2.0100015653e+00 1.9912719493e+00 1.9731826459e+00 1.9571300996e+00 1.9423762502e+00 1.9279868863e+00 1.9157457112e+00 1.9032421558e+00 1.8902281271e+00 1.8778909193e+00 1.8652154546e+00 1.8539476653e+00 1.8425430766e+00 1.8311568302e+00 1.8210917354e+00 1.8108762514e+00 1.8005157558e+00 1.7908655208e+00 1.7811016701e+00 1.7716719252e+00 1.7625636615e+00 1.7532480056e+00 1.7441531298e+00 1.7353713505e+00 1.7268451827e+00 1.7184446405e+00 1.7102624291e+00 1.7016450834e+00 1.6928565223e+00 1.6845126052e+00 1.6766958774e+00 1.6685008303e+00 1.6594828930e+00 1.6510573555e+00 1.6428219193e+00 1.6348019455e+00 1.6266561682e+00 1.6194409095e+00 1.6112812630e+00 1.6034426519e+00 1.5954560200e+00 1.5876302438e+00 1.5796994585e+00 1.5726240945e+00 1.5648831698e+00 1.5572799120e+00 1.5497957942e+00 1.5422274448e+00 1.5344220391e+00 1.5265762066e+00 1.5189486548e+00 1.5117066277e+00 1.5040559196e+00 1.4963338838e+00 1.4883802134e+00 1.4807751609e+00 1.4727160174e+00 1.4640853526e+00 1.4546723343e+00 1.4446408171e+00 1.4338347918e+00 1.4219438285e+00 1.4094090967e+00 1.3957268254e+00 1.3807623206e+00 1.3647362768e+00 1.3477783544e+00 1.3283750079e+00 1.3087483442e+00 1.2876042805e+00 1.2649353529e+00 1.2402717587e+00 1.2142756302e+00 1.1860015713e+00 1.1564749812e+00 1.1247194512e+00 1.0916144447e+00 1.0553401356e+00 1.0165426762e+00 9.7761538807e-01 9.3526244193e-01 8.9167863457e-01 8.4449878002e-01 7.9623216975e-01 7.4778078086e-01 6.9625828755e-01 6.4648409126e-01 5.9163577124e-01 5.3692100144e-01 4.7925356958e-01 4.2205884307e-01 3.6277329093e-01 3.0586395103e-01 2.4855097853e-01 1.9277210469e-01 1.4091186326e-01 9.2977587241e-02 5.5371782416e-02 2.3996194592e-02 5.0480811994e-03 0.0000000000e+00 7.4930857570e-01 1.9446769259e+00 7.8176075985e+00 1.0739112635e+00 1.2100000000e+00 6.1824583746e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 5.4447158165e+02 1.9110718627e+01 7.4049097666e+01 2.5990915188e+00 2.5790821771e+00 2.5614996543e+00 2.5446701160e+00 2.5297948814e+00 2.5143061142e+00 2.5001916527e+00 2.4863426720e+00 2.4729744553e+00 2.4596874856e+00 2.4476082309e+00 2.4363661149e+00 2.4237013931e+00 2.4123217472e+00 2.4006523710e+00 2.3892751729e+00 2.3788566841e+00 2.3679314844e+00 2.3571233039e+00 2.3452648565e+00 2.3341875294e+00 2.3243613596e+00 2.3141012740e+00 2.3033977492e+00 2.2934362871e+00 2.2840615835e+00 2.2745296799e+00 2.2645943147e+00 2.2549134613e+00 2.2451616260e+00 2.2356060715e+00 2.2264748028e+00 2.2171487579e+00 2.2074474247e+00 2.1986836639e+00 2.1893118686e+00 2.1804772195e+00 2.1719142437e+00 2.1626132710e+00 2.1531379701e+00 2.1440859632e+00 2.1351939283e+00 2.1263525740e+00 2.1174573423e+00 2.1081564758e+00 2.0988640606e+00 2.0894287360e+00 2.0807851058e+00 2.0715574320e+00 2.0628190516e+00 2.0538216748e+00 2.0447945423e+00 2.0356983542e+00 2.0264526911e+00 2.0181526948e+00 2.0093063257e+00 1.9994596914e+00 1.9892178606e+00 1.9782458652e+00 1.9660925348e+00 1.9523802255e+00 1.9372012434e+00 1.9211512202e+00 1.9038286855e+00 1.8852293169e+00 1.8648948475e+00 1.8431444999e+00 1.8201468651e+00 1.7940170371e+00 1.7665149910e+00 1.7375755686e+00 1.7070661321e+00 1.6741737710e+00 1.6376755159e+00 1.5991156051e+00 1.5568971808e+00 1.5145720983e+00 1.4675550317e+00 1.4163689431e+00 1.3656587133e+00 1.3120042155e+00 1.2523891378e+00 1.1928497055e+00 1.1321328284e+00 1.0633738327e+00 9.9218072606e-01 9.2212328922e-01 8.4639182641e-01 7.7056363892e-01 6.9220999938e-01 6.1380185686e-01 5.3336865423e-01 4.5048505382e-01 3.7056367877e-01 2.9034219071e-01 2.1627200247e-01 1.4872777048e-01 9.0372688500e-02 4.1754011196e-02 1.0378506262e-02 0.0000000000e+00 8.4091865115e-01 2.4138878536e+00 1.2547831517e+01 1.1409860521e+00 1.4000000000e+00 6.8923467943e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 7.4438344653e+02 2.6127539209e+01 9.1070113396e+01 3.1965218592e+00 3.1730729723e+00 3.1513220636e+00 3.1312484079e+00 3.1137423054e+00 3.0965491325e+00 3.0810224544e+00 3.0645105292e+00 3.0492331758e+00 3.0353309135e+00 3.0207255576e+00 3.0066126641e+00 2.9934261880e+00 2.9794613439e+00 2.9668397516e+00 2.9544819408e+00 2.9424233717e+00 2.9301846161e+00 2.9181264204e+00 2.9059944444e+00 2.8948184222e+00 2.8833413259e+00 2.8719683200e+00 2.8610523957e+00 2.8495951933e+00 2.8384718385e+00 2.8270084038e+00 2.8154959265e+00 2.8047075065e+00 2.7941381652e+00 2.7829547714e+00 2.7721463340e+00 2.7613928910e+00 2.7508733576e+00 2.7400502713e+00 2.7295459787e+00 2.7182347045e+00 2.7080847038e+00 2.6967518207e+00 2.6857276704e+00 2.6749888647e+00 2.6644121236e+00 2.6539077465e+00 2.6432816110e+00 2.6327232264e+00 2.6216757121e+00 2.6111833525e+00 2.6006453768e+00 2.5896542580e+00 2.5790616475e+00 2.5681111648e+00 2.5573382977e+00 2.5467190914e+00 2.5361462236e+00 2.5258037777e+00 2.5150531153e+00 2.5030423647e+00 2.4905748270e+00 2.4771092996e+00 2.4616870509e+00 2.4454167892e+00 2.4280955964e+00 2.4091346512e+00 2.3881216478e+00 2.3657748693e+00 2.3399944500e+00 2.3126564770e+00 2.2834189778e+00 2.2518537970e+00 2.2170822297e+00 2.1819068969e+00 2.1445370138e+00 2.1035593244e+00 2.0577315114e+00 2.0108294651e+00 1.9604477974e+00 1.9081730725e+00 1.8536742577e+00 1.7935744303e+00 1.7338216946e+00 1.6675280489e+00 1.5960470547e+00 1.5223947743e+00 1.4475833259e+00 1.3630073729e+00 1.2770613780e+00 1.1884930659e+00 1.0994813109e+00 1.0055698012e+00 9.0557408087e-01 8.0668790984e-01 7.0173771789e-01 6.0049832988e-01 4.9720540677e-01 3.9338032304e-01 2.9921621037e-01 2.0431385752e-01 1.2463754966e-01 6.1002415500e-02 1.6426709665e-02 0.0000000000e+00 8.8632425971e-01 2.7514200676e+00 1.7589948802e+01 1.1922886113e+00 1.5100000000e+00 7.1710345108e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 9.7140360951e+02 3.4095849408e+01 1.0750990346e+02 3.7735514283e+00 3.7470100237e+00 3.7217252600e+00 3.7000140523e+00 3.6793833449e+00 3.6609063162e+00 3.6418079352e+00 3.6243625237e+00 3.6086463461e+00 3.5915034344e+00 3.5757121652e+00 3.5603781520e+00 3.5453859483e+00 3.5303617279e+00 3.5150373897e+00 3.5000250131e+00 3.4853261717e+00 3.4711523223e+00 3.4565317957e+00 3.4431821336e+00 3.4299338786e+00 3.4171164949e+00 3.4040392067e+00 3.3907867768e+00 3.3776916765e+00 3.3643962097e+00 3.3519944822e+00 3.3390465125e+00 3.3263967782e+00 3.3140626456e+00 3.3014644571e+00 3.2894204169e+00 3.2771194283e+00 3.2646922787e+00 3.2521132124e+00 3.2400843974e+00 3.2278953941e+00 3.2157049473e+00 3.2034574363e+00 3.1912260172e+00 3.1794813398e+00 3.1667699444e+00 3.1549002024e+00 3.1429503107e+00 3.1312351055e+00 3.1191200292e+00 3.1068695175e+00 3.0945565164e+00 3.0817458576e+00 3.0690939482e+00 3.0562024244e+00 3.0437261249e+00 3.0313903375e+00 3.0185635724e+00 3.0059602916e+00 2.9927548581e+00 2.9790418563e+00 2.9643609558e+00 2.9482909741e+00 2.9307409711e+00 2.9116416637e+00 2.8910474667e+00 2.8676760845e+00 2.8425845961e+00 2.8164788753e+00 2.7884388351e+00 2.7567751117e+00 2.7231473776e+00 2.6866094761e+00 2.6477377838e+00 2.6062608489e+00 2.5608628395e+00 2.5117076077e+00 2.4595134791e+00 2.4045661657e+00 2.3462674017e+00 2.2856155558e+00 2.2180324099e+00 2.1478563684e+00 2.0753188441e+00 1.9977200550e+00 1.9157166115e+00 1.8264536218e+00 1.7329719244e+00 1.6360020692e+00 1.5342191966e+00 1.4364764008e+00 1.3264909425e+00 1.2165978223e+00 1.0983278727e+00 9.7736907572e-01 8.5717500312e-01 7.3444260955e-01 6.1272294525e-01 4.8945380698e-01 3.7196207385e-01 2.6106805882e-01 1.6331905940e-01 8.1388081234e-02 2.0991523486e-02 0.0000000000e+00 9.1184506593e-01 3.0057779754e+00 2.2684915619e+01 1.2315609914e+00 1.6000000000e+00 7.4487337475e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 1.2183120977e+03 4.2762231280e+01 1.2056968141e+02 4.2319440246e+00 4.2018855283e+00 4.1748781968e+00 4.1507682880e+00 4.1268581944e+00 4.1054020734e+00 4.0844277495e+00 4.0640791940e+00 4.0450940721e+00 4.0263292665e+00 4.0078260811e+00 3.9900718139e+00 3.9715432219e+00 3.9547100703e+00 3.9379698780e+00 3.9205764817e+00 3.9047743837e+00 3.8879119857e+00 3.8734177290e+00 3.8580885125e+00 3.8430588174e+00 3.8286846092e+00 3.8136962446e+00 3.7986647916e+00 3.7840551889e+00 3.7699919032e+00 3.7558791228e+00 3.7415549262e+00 3.7266576503e+00 3.7127841797e+00 3.6983921111e+00 3.6843820982e+00 3.6701401218e+00 3.6559516944e+00 3.6419786345e+00 3.6278429798e+00 3.6137366454e+00 3.5999287615e+00 3.5863960518e+00 3.5729332231e+00 3.5599377106e+00 3.5463545569e+00 3.5323945742e+00 3.5186831244e+00 3.5053007857e+00 3.4913138682e+00 3.4775976881e+00 3.4634286939e+00 3.4495608853e+00 3.4355909459e+00 3.4210689828e+00 3.4074034250e+00 3.3935895013e+00 3.3791704842e+00 3.3648580461e+00 3.3505345074e+00 3.3347015996e+00 3.3178167556e+00 3.2993951297e+00 3.2794783568e+00 3.2572607961e+00 3.2346352619e+00 3.2098351434e+00 3.1828806629e+00 3.1531819690e+00 3.1214071684e+00 3.0869095081e+00 3.0498966540e+00 3.0096735981e+00 2.9667237532e+00 2.9177944145e+00 2.8690506149e+00 2.8149465027e+00 2.7591250311e+00 2.6961186024e+00 2.6335926851e+00 2.5612014288e+00 2.4855610470e+00 2.4076369033e+00 2.3281653027e+00 2.2441907702e+00 2.1511880171e+00 2.0525598103e+00 1.9451420233e+00 1.8394443793e+00 1.7257015558e+00 1.6108956823e+00 1.4918272627e+00 1.3683412612e+00 1.2425053912e+00 1.1071948412e+00 9.7470061582e-01 8.3799117252e-01 6.9810531267e-01 5.5903571987e-01 4.2693484226e-01 3.0091127061e-01 1.8742518409e-01 9.2828136167e-02 2.5141660318e-02 0.0000000000e+00 9.2559047973e-01 3.1752820349e+00 2.6875231966e+01 1.2577522460e+00 1.6500000000e+00 7.5509859676e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 1.4846962933e+03 5.2112202114e+01 1.2736527501e+02 4.4704664407e+00 4.4412311738e+00 4.4101710103e+00 4.3826379561e+00 4.3588427419e+00 4.3347747097e+00 4.3121391020e+00 4.2897880744e+00 4.2686642561e+00 4.2483895772e+00 4.2305099604e+00 4.2112570345e+00 4.1915886939e+00 4.1728972607e+00 4.1523185823e+00 4.1343795108e+00 4.1154815013e+00 4.0984046441e+00 4.0819003477e+00 4.0654235767e+00 4.0475217765e+00 4.0305710922e+00 4.0138956805e+00 3.9974194457e+00 3.9815345144e+00 3.9661348996e+00 3.9501161464e+00 3.9340640023e+00 3.9186921543e+00 3.9031736531e+00 3.8877467556e+00 3.8721976262e+00 3.8569666367e+00 3.8415906644e+00 3.8258483062e+00 3.8111823113e+00 3.7957196183e+00 3.7803530383e+00 3.7649084641e+00 3.7489934001e+00 3.7336134717e+00 3.7183195040e+00 3.7027452926e+00 3.6875660141e+00 3.6725426280e+00 3.6572129103e+00 3.6414224691e+00 3.6259290959e+00 3.6105508562e+00 3.5953371135e+00 3.5791799915e+00 3.5632856510e+00 3.5474077030e+00 3.5315331581e+00 3.5156485867e+00 3.4999275876e+00 3.4833687230e+00 3.4650563538e+00 3.4447137585e+00 3.4235038135e+00 3.4007972672e+00 3.3752510660e+00 3.3483905401e+00 3.3186300079e+00 3.2872829478e+00 3.2545903994e+00 3.2180750773e+00 3.1778240914e+00 3.1342228117e+00 3.0885160768e+00 3.0391704122e+00 2.9865229042e+00 2.9293941886e+00 2.8700739890e+00 2.8056100734e+00 2.7395137302e+00 2.6642831305e+00 2.5864541986e+00 2.5042510335e+00 2.4152980063e+00 2.3200728823e+00 2.2240267470e+00 2.1238824560e+00 2.0190600345e+00 1.9138251191e+00 1.7977688396e+00 1.6715744653e+00 1.5502930106e+00 1.4161703235e+00 1.2803390116e+00 1.1454785194e+00 1.0104276938e+00 8.6064216229e-01 7.1789496567e-01 5.7337886762e-01 4.4888170951e-01 3.1812585724e-01 1.9704729835e-01 1.0240028619e-01 2.9342525271e-02 0.0000000000e+00 9.3128353607e-01 3.2548687407e+00 2.9101563289e+01 1.2700212223e+00 1.6700000000e+00 7.5711048770e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +1.7416473265e+00 1.7399691784e+03 6.1072170724e+01 1.3072164172e+02 4.5882734704e+00 4.5534220433e+00 4.5208575617e+00 4.4933046546e+00 4.4676588660e+00 4.4429879942e+00 4.4186699903e+00 4.3950891851e+00 4.3726198188e+00 4.3501928166e+00 4.3272340532e+00 4.3058724931e+00 4.2872157859e+00 4.2665446046e+00 4.2464221396e+00 4.2278127388e+00 4.2090631452e+00 4.1925506702e+00 4.1747091751e+00 4.1573545621e+00 4.1395836462e+00 4.1211917577e+00 4.1038688257e+00 4.0876786145e+00 4.0708527595e+00 4.0533452592e+00 4.0367497645e+00 4.0192394074e+00 4.0028151278e+00 3.9868649936e+00 3.9705314966e+00 3.9551907182e+00 3.9389392632e+00 3.9238874385e+00 3.9078441540e+00 3.8925536664e+00 3.8769600451e+00 3.8612787092e+00 3.8460832374e+00 3.8305570670e+00 3.8153871847e+00 3.8000752699e+00 3.7843934456e+00 3.7681199479e+00 3.7523232682e+00 3.7371609941e+00 3.7210623609e+00 3.7051125839e+00 3.6885025593e+00 3.6723815463e+00 3.6560578126e+00 3.6403003984e+00 3.6244638613e+00 3.6080610218e+00 3.5913782953e+00 3.5751169121e+00 3.5571998368e+00 3.5378729568e+00 3.5174207264e+00 3.4952129427e+00 3.4711172529e+00 3.4465598263e+00 3.4192494793e+00 3.3890414235e+00 3.3554994794e+00 3.3201619989e+00 3.2823011681e+00 3.2434043924e+00 3.2015628967e+00 3.1553726468e+00 3.1041981207e+00 3.0487965570e+00 2.9863494358e+00 2.9246543894e+00 2.8581414237e+00 2.7864913286e+00 2.7136018609e+00 2.6361317489e+00 2.5527092983e+00 2.4676986646e+00 2.3755206544e+00 2.2797732778e+00 2.1794900879e+00 2.0682594640e+00 1.9538224759e+00 1.8371807196e+00 1.7209410481e+00 1.5933672502e+00 1.4529211568e+00 1.3070683923e+00 1.1820281981e+00 1.0299438267e+00 8.8559065030e-01 7.3924920712e-01 5.9278567571e-01 4.4938553190e-01 3.1456309923e-01 1.9892131218e-01 9.6334374769e-02 2.6812721957e-02 0.0000000000e+00 9.3380978257e-01 3.2923204441e+00 3.0212133382e+01 1.2757851794e+00 1.6800000000e+00 7.5857652896e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sigfit b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sigfit new file mode 100644 index 00000000..9ca27f97 --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCGTKal6AIRHYypRAAAA.sigfit @@ -0,0 +1,4 @@ +1 2000 2000 +50.08 +1.19432 +8.90446 diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCHDKal6ALa3vR1RAAAA.mpi b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCHDKal6ALa3vR1RAAAA.mpi new file mode 100644 index 00000000..50cb1e91 --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerGAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBF-eGiYCHDKal6ALa3vR1RAAAA.mpi @@ -0,0 +1,15 @@ +======iDiffSys= 0 nPDFA= 1 ====== +1 1.0000000000e+00 1.0000000000e+00 1.0000000000e+00 +5.5749216527e-01 4.3382347042e+01 1.7107651314e+00 7.1910476201e+01 2.8357602494e+00 2.7953239606e+00 2.7514257839e+00 2.7079396029e+00 2.6662677600e+00 2.6239502335e+00 2.5798126879e+00 2.5387458797e+00 2.4965061891e+00 2.4535165246e+00 2.4139872313e+00 2.3717484140e+00 2.3311427710e+00 2.2920330733e+00 2.2527213501e+00 2.2152449495e+00 2.1743358345e+00 2.1340314302e+00 2.0942558706e+00 2.0539877549e+00 2.0160105587e+00 1.9750679712e+00 1.9388046948e+00 1.9000437181e+00 1.8601119822e+00 1.8214563738e+00 1.7816263605e+00 1.7442028423e+00 1.7073736495e+00 1.6712911632e+00 1.6351831976e+00 1.5976488278e+00 1.5619693393e+00 1.5258967268e+00 1.4880517157e+00 1.4519534515e+00 1.4144325224e+00 1.3769142721e+00 1.3420489710e+00 1.3077943016e+00 1.2729558100e+00 1.2375691986e+00 1.2024762576e+00 1.1662006318e+00 1.1321294960e+00 1.0973028101e+00 1.0628317909e+00 1.0293891023e+00 9.9519000631e-01 9.6113828678e-01 9.2676778695e-01 8.9305383530e-01 8.6084265869e-01 8.2826291545e-01 7.9629744147e-01 7.6527324742e-01 7.3368164268e-01 7.0283108709e-01 6.7169564090e-01 6.4260706572e-01 6.1377294382e-01 5.8409105700e-01 5.5654749593e-01 5.2826547351e-01 5.0168787272e-01 4.7304364836e-01 4.4544923854e-01 4.1786461207e-01 3.9242261963e-01 3.6881786645e-01 3.4497591295e-01 3.2143072019e-01 2.9892940388e-01 2.7734353678e-01 2.5515599428e-01 2.3498355910e-01 2.1469522210e-01 1.9610045765e-01 1.7801960564e-01 1.5986324850e-01 1.4325077079e-01 1.2640986964e-01 1.1086531991e-01 9.6408209241e-02 8.3094159472e-02 7.0562829249e-02 5.8706168369e-02 4.8002949473e-02 3.8760983480e-02 3.0474597935e-02 2.2898776447e-02 1.6295004265e-02 1.1197538505e-02 7.3868784922e-03 4.2872236253e-03 2.2957103465e-03 1.0159958462e-03 3.0895067966e-04 4.4646130358e-05 7.1792348322e-07 0.0000000000e+00 8.5853099402e-01 2.7858050767e+00 1.5799750970e+01 1.2447070554e+00 1.5228412136e+00 6.8629893671e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.1772637928e+00 2.1772637928e+00 +======iDiffSys= 1 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6179290324e+01 1.6179290324e+00 2.1292149170e+01 2.1292149170e+00 2.1034010706e+00 2.0771869009e+00 2.0515464576e+00 2.0255786039e+00 1.9985809590e+00 1.9731806127e+00 1.9467967477e+00 1.9206307581e+00 1.8947655268e+00 1.8710074902e+00 1.8437581944e+00 1.8197739446e+00 1.7947144996e+00 1.7688462467e+00 1.7442849008e+00 1.7180778284e+00 1.6917298175e+00 1.6665263115e+00 1.6414091348e+00 1.6145729932e+00 1.5889829666e+00 1.5640690557e+00 1.5391078662e+00 1.5138194040e+00 1.4889792894e+00 1.4636882616e+00 1.4374853469e+00 1.4115192978e+00 1.3848479620e+00 1.3593787004e+00 1.3321114504e+00 1.3055043499e+00 1.2806720817e+00 1.2546904684e+00 1.2277528906e+00 1.2016422460e+00 1.1747062789e+00 1.1483308343e+00 1.1229832103e+00 1.0973096369e+00 1.0715960393e+00 1.0446481346e+00 1.0178314872e+00 9.9127756947e-01 9.6698200413e-01 9.4112241936e-01 9.1505995052e-01 8.8954633769e-01 8.6435720320e-01 8.3926298784e-01 8.1395620514e-01 7.9068311442e-01 7.6544670227e-01 7.3983382240e-01 7.1402548763e-01 6.8840872474e-01 6.6254650553e-01 6.3825270389e-01 6.1643742054e-01 5.9302977022e-01 5.6813279327e-01 5.4411678387e-01 5.2016138420e-01 4.9706600176e-01 4.7390245547e-01 4.5339670384e-01 4.3094842171e-01 4.0895011293e-01 3.8787166900e-01 3.6621513583e-01 3.4560609695e-01 3.2390438689e-01 3.0470590563e-01 2.8455214358e-01 2.6484341482e-01 2.4538441009e-01 2.2581006314e-01 2.0632235613e-01 1.8895435175e-01 1.7224138771e-01 1.5584326000e-01 1.4015243826e-01 1.2404039210e-01 1.0881473707e-01 9.5487943377e-02 8.2430798562e-02 6.9684224556e-02 5.8178667217e-02 4.7883350969e-02 3.8652340531e-02 2.9587942065e-02 2.2092759871e-02 1.5598327193e-02 1.0361785466e-02 5.9685169113e-03 2.9897754280e-03 1.1320063049e-03 2.4624311654e-04 1.0908026315e-05 0.0000000000e+00 7.7447154120e-01 2.0562670150e+00 8.7564690107e+00 1.0892226460e+00 1.2600000000e+00 6.3949613049e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6178092450e+01 1.6178092450e+00 2.1192666382e+01 2.1192666382e+00 2.0942600093e+00 2.0685988965e+00 2.0424472219e+00 2.0174505268e+00 1.9918671786e+00 1.9659184899e+00 1.9401908172e+00 1.9158782523e+00 1.8912891926e+00 1.8662132574e+00 1.8394413260e+00 1.8130973506e+00 1.7883561432e+00 1.7644004064e+00 1.7380075189e+00 1.7125204167e+00 1.6869992220e+00 1.6611912888e+00 1.6350150842e+00 1.6109428431e+00 1.5850971651e+00 1.5599859245e+00 1.5334270274e+00 1.5067366489e+00 1.4795267083e+00 1.4553759262e+00 1.4298682562e+00 1.4043665075e+00 1.3788771905e+00 1.3533543635e+00 1.3276054966e+00 1.3013257191e+00 1.2745166633e+00 1.2493059823e+00 1.2246823062e+00 1.1999530621e+00 1.1729287961e+00 1.1455932577e+00 1.1190006397e+00 1.0931175461e+00 1.0676615620e+00 1.0409952254e+00 1.0147766772e+00 9.8973717012e-01 9.6239532756e-01 9.3645157426e-01 9.1105157962e-01 8.8664119759e-01 8.6185704422e-01 8.3752904610e-01 8.1330532639e-01 7.8915223425e-01 7.6456434413e-01 7.3919035155e-01 7.1613393646e-01 6.9098115547e-01 6.6484967892e-01 6.4006967251e-01 6.1640265495e-01 5.9053343300e-01 5.6672494758e-01 5.4331803477e-01 5.1944777574e-01 4.9772638655e-01 4.7497009282e-01 4.5140533040e-01 4.3015508856e-01 4.0727510394e-01 3.8621398713e-01 3.6416127386e-01 3.4327239494e-01 3.2345830257e-01 3.0271620463e-01 2.8279721843e-01 2.6244357819e-01 2.4326375297e-01 2.2429059286e-01 2.0644846825e-01 1.8842151190e-01 1.7063955124e-01 1.5438446854e-01 1.3867161393e-01 1.2449764932e-01 1.1048558447e-01 9.6403054780e-02 8.2757399820e-02 7.0674818228e-02 5.9094164509e-02 4.8414751467e-02 3.8995715411e-02 3.0277436654e-02 2.2348058896e-02 1.5665167856e-02 9.8796712855e-03 5.8987755648e-03 3.0935576438e-03 1.1767820307e-03 2.0604686201e-04 1.0181725066e-05 0.0000000000e+00 7.7254266991e-01 2.0473565623e+00 8.6777890672e+00 1.0879832908e+00 1.2600000000e+00 6.4157435254e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 2 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6177661142e+01 1.6177661142e+00 2.1214998726e+01 2.1214998726e+00 2.0969290372e+00 2.0707974598e+00 2.0461033679e+00 2.0188947616e+00 1.9941161346e+00 1.9693247724e+00 1.9434246198e+00 1.9171521671e+00 1.8918383383e+00 1.8658287032e+00 1.8404533781e+00 1.8139855774e+00 1.7871374692e+00 1.7610936416e+00 1.7355829655e+00 1.7092539565e+00 1.6819716494e+00 1.6574410883e+00 1.6325086010e+00 1.6077841688e+00 1.5827082018e+00 1.5562193823e+00 1.5305530476e+00 1.5033804439e+00 1.4795506477e+00 1.4526438233e+00 1.4265182158e+00 1.4012274063e+00 1.3778030614e+00 1.3510205210e+00 1.3263885076e+00 1.3001272865e+00 1.2731826955e+00 1.2491198897e+00 1.2231035716e+00 1.1979756375e+00 1.1733346983e+00 1.1475214432e+00 1.1209907240e+00 1.0941631874e+00 1.0704990190e+00 1.0428014500e+00 1.0179439915e+00 9.9152575304e-01 9.6684536247e-01 9.4179354964e-01 9.1593757727e-01 8.9008157353e-01 8.6533040265e-01 8.4054874166e-01 8.1524433562e-01 7.8999833494e-01 7.6416790544e-01 7.4036159679e-01 7.1554126484e-01 6.9189355922e-01 6.6747098771e-01 6.4458445051e-01 6.2029478504e-01 5.9593221141e-01 5.7195909597e-01 5.4928132432e-01 5.2769765790e-01 5.0407092391e-01 4.8048996611e-01 4.5757997211e-01 4.3555922777e-01 4.1177525150e-01 3.8945751000e-01 3.6679386640e-01 3.4459930053e-01 3.2391396876e-01 3.0298343616e-01 2.8370403644e-01 2.6292272933e-01 2.4402645440e-01 2.2562399116e-01 2.0896540905e-01 1.9160954326e-01 1.7363086190e-01 1.5616655326e-01 1.3972184039e-01 1.2448741817e-01 1.0973027983e-01 9.6090421456e-02 8.3323091867e-02 7.0987475894e-02 5.9281655945e-02 4.9010770619e-02 3.8498445216e-02 2.9680316110e-02 2.2216235550e-02 1.5822023525e-02 1.0298712792e-02 5.7565620231e-03 2.9566242404e-03 1.1273302464e-03 2.2080738722e-04 9.0365019012e-06 0.0000000000e+00 7.7297817916e-01 2.0493628225e+00 8.6954460947e+00 1.0882620959e+00 1.2600000000e+00 6.4110679189e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6249744825e+01 1.6249744825e+00 2.1195967761e+01 2.1195967761e+00 2.0951964673e+00 2.0692254801e+00 2.0439000900e+00 2.0186620905e+00 1.9919856941e+00 1.9656629645e+00 1.9401450519e+00 1.9148840095e+00 1.8895088502e+00 1.8642887654e+00 1.8389852466e+00 1.8126527465e+00 1.7886718429e+00 1.7624373231e+00 1.7365451886e+00 1.7111343194e+00 1.6846820306e+00 1.6582165842e+00 1.6324471040e+00 1.6081723500e+00 1.5819339672e+00 1.5553888542e+00 1.5289872506e+00 1.5018471197e+00 1.4767132097e+00 1.4505472387e+00 1.4243790733e+00 1.3975000378e+00 1.3726659969e+00 1.3478108744e+00 1.3240543636e+00 1.2977192448e+00 1.2714543621e+00 1.2462816594e+00 1.2205742104e+00 1.1924299516e+00 1.1678031983e+00 1.1426498233e+00 1.1160838986e+00 1.0901124859e+00 1.0636212799e+00 1.0393372735e+00 1.0131207782e+00 9.8762895544e-01 9.6032070586e-01 9.3533715757e-01 9.1230771903e-01 8.8473825582e-01 8.5798453936e-01 8.3299434590e-01 8.0916832333e-01 7.8429246665e-01 7.6148939721e-01 7.3727634251e-01 7.1264186177e-01 6.8829298398e-01 6.6490720364e-01 6.4080448148e-01 6.1677569122e-01 5.9249887627e-01 5.7016977722e-01 5.4714578440e-01 5.2289169576e-01 4.9930079124e-01 4.7581269511e-01 4.5423647297e-01 4.2976264363e-01 4.0779343034e-01 3.8616254539e-01 3.6528747031e-01 3.4496929230e-01 3.2467321574e-01 3.0473572347e-01 2.8366083445e-01 2.6303672649e-01 2.4415294151e-01 2.2453793659e-01 2.0709011184e-01 1.8986060503e-01 1.7283280145e-01 1.5539480070e-01 1.3922196976e-01 1.2371809930e-01 1.0839571191e-01 9.4405253456e-02 8.1778101405e-02 6.9401864262e-02 5.7794620259e-02 4.7264575280e-02 3.7890465872e-02 2.9030301621e-02 2.1697359773e-02 1.5183266878e-02 9.6548548248e-03 5.7824728816e-03 2.8160189220e-03 1.1285939696e-03 2.7460817153e-04 8.0821596745e-06 0.0000000000e+00 7.7260714306e-01 2.0476533667e+00 8.6803991004e+00 1.0880245280e+00 1.2600000000e+00 6.4150519554e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 3 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +4.0641178848e-01 1.2406550551e+01 1.2406550551e+00 1.5791740472e+01 1.5791740472e+00 1.5620284607e+00 1.5450252237e+00 1.5272362832e+00 1.5092758028e+00 1.4929265455e+00 1.4756670531e+00 1.4583190331e+00 1.4407825995e+00 1.4230474118e+00 1.4057309782e+00 1.3874637033e+00 1.3692649387e+00 1.3515492626e+00 1.3323999415e+00 1.3150730877e+00 1.2983721003e+00 1.2806960393e+00 1.2631545353e+00 1.2462820346e+00 1.2280503997e+00 1.2094420163e+00 1.1908902184e+00 1.1726033488e+00 1.1540835437e+00 1.1345626457e+00 1.1165766431e+00 1.0973107597e+00 1.0781550703e+00 1.0591296937e+00 1.0397707754e+00 1.0207906115e+00 1.0019428660e+00 9.8330552735e-01 9.6445619411e-01 9.4521036835e-01 9.2646539065e-01 9.0678502136e-01 8.8815214364e-01 8.6965335057e-01 8.5045037022e-01 8.3387242110e-01 8.1360469548e-01 7.9465412025e-01 7.7655157373e-01 7.5797775648e-01 7.3918752479e-01 7.1980028804e-01 7.0120049473e-01 6.8202860085e-01 6.6216985711e-01 6.4388254268e-01 6.2596441969e-01 6.0529196138e-01 5.8705240040e-01 5.6716561681e-01 5.4965712744e-01 5.3255193804e-01 5.1330399616e-01 4.9525071561e-01 4.7785306732e-01 4.5949273734e-01 4.4197684690e-01 4.2391719520e-01 4.0657599534e-01 3.8904602021e-01 3.7183387965e-01 3.5451658505e-01 3.3870262187e-01 3.2249977561e-01 3.0553848071e-01 2.8927166501e-01 2.7346192371e-01 2.5759116403e-01 2.4238433510e-01 2.2657359282e-01 2.1126422931e-01 1.9727104138e-01 1.8283501205e-01 1.6897449019e-01 1.5533946144e-01 1.4229488289e-01 1.2931700193e-01 1.1685950933e-01 1.0487958885e-01 9.2877191080e-02 8.2364491436e-02 7.1435300355e-02 6.1879153107e-02 5.2848811980e-02 4.4739153190e-02 3.6378080897e-02 2.9099864779e-02 2.2788154163e-02 1.6873259102e-02 1.1442848612e-02 6.7403731376e-03 3.4635506878e-03 1.1811253768e-03 1.4648592512e-04 0.0000000000e+00 6.0136648075e-01 1.4197320050e+00 4.4840078730e+00 1.0087364236e+00 9.6000000000e-01 5.0814576185e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +4.0641178848e-01 1.2858666498e+01 1.2858666498e+00 1.5803735389e+01 1.5803735389e+00 1.5632490962e+00 1.5459161391e+00 1.5275938708e+00 1.5105565358e+00 1.4940839669e+00 1.4771061855e+00 1.4582645596e+00 1.4403046385e+00 1.4232644148e+00 1.4064612288e+00 1.3882966319e+00 1.3698326724e+00 1.3532273659e+00 1.3351607191e+00 1.3165516033e+00 1.2983617531e+00 1.2795453723e+00 1.2625499417e+00 1.2446576199e+00 1.2267193584e+00 1.2080188240e+00 1.1897790177e+00 1.1715553949e+00 1.1524805147e+00 1.1337641445e+00 1.1154605091e+00 1.0966580798e+00 1.0781941370e+00 1.0609970790e+00 1.0425128895e+00 1.0231666846e+00 1.0040920481e+00 9.8580205876e-01 9.6630137242e-01 9.4716592351e-01 9.2745572222e-01 9.0863485396e-01 8.9036917173e-01 8.7162514064e-01 8.5256250002e-01 8.3271752856e-01 8.1384996971e-01 7.9447225354e-01 7.7436177736e-01 7.5583070022e-01 7.3722306116e-01 7.1762464162e-01 6.9948838563e-01 6.8063523012e-01 6.6247186819e-01 6.4376722381e-01 6.2543020177e-01 6.0727138349e-01 5.8853203358e-01 5.7023414776e-01 5.5148803314e-01 5.3316370650e-01 5.1456055067e-01 4.9652074419e-01 4.7765769861e-01 4.5925433475e-01 4.4198202557e-01 4.2366157804e-01 4.0638452384e-01 3.8900668604e-01 3.7131695201e-01 3.5487318592e-01 3.3779345798e-01 3.2072491885e-01 3.0423997836e-01 2.8864659555e-01 2.7361347139e-01 2.5788742388e-01 2.4253130049e-01 2.2763783265e-01 2.1323032514e-01 1.9851513817e-01 1.8343957570e-01 1.6939378072e-01 1.5652456921e-01 1.4324967737e-01 1.2996628351e-01 1.1787058557e-01 1.0621038690e-01 9.5052619522e-02 8.3396158676e-02 7.2961766290e-02 6.2946753449e-02 5.3793371487e-02 4.4935651877e-02 3.7044113577e-02 2.9711216112e-02 2.3227145719e-02 1.7028223316e-02 1.1458413461e-02 6.7286354703e-03 3.3451766502e-03 1.1787843291e-03 1.2273487544e-04 0.0000000000e+00 6.0196525085e-01 1.4215630825e+00 4.4932013594e+00 1.0089430374e+00 9.6000000000e-01 5.0763384331e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCETM2NzA2NzE7MpqXoA1095A1kAAAA b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCETM2NzA2NzE7MpqXoA1095A1kAAAA new file mode 100644 index 00000000..7101a149 --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCETM2NzA2NzE7MpqXoA1095A1kAAAA @@ -0,0 +1,15 @@ +======iDiffSys= 0 nPDFA= 1 ====== +1 1.0000000000e+00 1.0000000000e+00 1.0000000000e+00 +5.5749216527e-01 4.3382347042e+01 1.7107651314e+00 7.1793563255e+01 2.8311498351e+00 2.7862554064e+00 2.7452003138e+00 2.7020112059e+00 2.6599901210e+00 2.6179656532e+00 2.5777749225e+00 2.5353731951e+00 2.4943806297e+00 2.4509533291e+00 2.4099720157e+00 2.3682094522e+00 2.3263387394e+00 2.2859341742e+00 2.2468675047e+00 2.2066696013e+00 2.1669989663e+00 2.1274037740e+00 2.0880536252e+00 2.0462746578e+00 2.0077265340e+00 1.9692659292e+00 1.9275988275e+00 1.8877486411e+00 1.8491836560e+00 1.8102176287e+00 1.7714339330e+00 1.7341095071e+00 1.6969001090e+00 1.6594570060e+00 1.6217030405e+00 1.5864266292e+00 1.5486375135e+00 1.5109983424e+00 1.4745873059e+00 1.4397996560e+00 1.4036142360e+00 1.3670374545e+00 1.3292490584e+00 1.2922192824e+00 1.2565988317e+00 1.2205723714e+00 1.1855632035e+00 1.1495892932e+00 1.1147531415e+00 1.0820529624e+00 1.0481212583e+00 1.0159904399e+00 9.8230951240e-01 9.4758966879e-01 9.1516195806e-01 8.8285998765e-01 8.5102126768e-01 8.1829155044e-01 7.8727809856e-01 7.5578136318e-01 7.2432170631e-01 6.9451590348e-01 6.6542904884e-01 6.3624558381e-01 6.0691068328e-01 5.7893600165e-01 5.5084792919e-01 5.2240164098e-01 4.9543115626e-01 4.6872153239e-01 4.4210576656e-01 4.1705043568e-01 3.9246123091e-01 3.6660211397e-01 3.4328362911e-01 3.2003288240e-01 2.9596360998e-01 2.7405688403e-01 2.5324080621e-01 2.3180276630e-01 2.1222220340e-01 1.9347612841e-01 1.7529977942e-01 1.5757473274e-01 1.4095331612e-01 1.2364168226e-01 1.0825470797e-01 9.4577464990e-02 8.1388667945e-02 6.8618944475e-02 5.7709041452e-02 4.7562255148e-02 3.8973105297e-02 3.0587822721e-02 2.3510228425e-02 1.7362694942e-02 1.2100610546e-02 7.8349075120e-03 4.4399198455e-03 2.2093561021e-03 9.2556304885e-04 2.9753731089e-04 4.1909329809e-05 8.0849731371e-07 0.0000000000e+00 8.5816194571e-01 2.7827675511e+00 1.5756864230e+01 1.2442524333e+00 1.5228412136e+00 6.8688382385e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.1772637928e+00 2.1772637928e+00 +======iDiffSys= 1 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6259695806e+01 1.6259695806e+00 2.1246796407e+01 2.1246796407e+00 2.0990095545e+00 2.0727550700e+00 2.0468508324e+00 2.0216229253e+00 1.9978888593e+00 1.9715325282e+00 1.9460284066e+00 1.9202487371e+00 1.8959698882e+00 1.8706384905e+00 1.8447875995e+00 1.8197586439e+00 1.7942001673e+00 1.7684041456e+00 1.7423651288e+00 1.7172913768e+00 1.6898437491e+00 1.6652098129e+00 1.6401813926e+00 1.6156429892e+00 1.5898324901e+00 1.5634114387e+00 1.5364131294e+00 1.5097057332e+00 1.4843149474e+00 1.4580821075e+00 1.4311815414e+00 1.4050640777e+00 1.3782174545e+00 1.3513538183e+00 1.3252710661e+00 1.2994844276e+00 1.2728052175e+00 1.2442844170e+00 1.2194429448e+00 1.1927356403e+00 1.1672408799e+00 1.1407455101e+00 1.1146878516e+00 1.0888166330e+00 1.0629578459e+00 1.0383564615e+00 1.0120822241e+00 9.8663538948e-01 9.6007575733e-01 9.3428529058e-01 9.0859516718e-01 8.8323980779e-01 8.5803515858e-01 8.3297290701e-01 8.0784568588e-01 7.8348489914e-01 7.5856471612e-01 7.3392283026e-01 7.0921526997e-01 6.8441048353e-01 6.6099134449e-01 6.3721422641e-01 6.1197800683e-01 5.8791990795e-01 5.6430731011e-01 5.4114135850e-01 5.1752304370e-01 4.9454180312e-01 4.7335918858e-01 4.4978320815e-01 4.2864565093e-01 4.0673158910e-01 3.8488038491e-01 3.6333068260e-01 3.4138390084e-01 3.2242318176e-01 3.0059510423e-01 2.7950878470e-01 2.5965370653e-01 2.4114789150e-01 2.2242587275e-01 2.0462769016e-01 1.8762385623e-01 1.7137312261e-01 1.5532526816e-01 1.3971639492e-01 1.2412063635e-01 1.0971326140e-01 9.5630211875e-02 8.2663069483e-02 7.0338418874e-02 5.8084712287e-02 4.6795102218e-02 3.7203803564e-02 2.8488824172e-02 2.0965581075e-02 1.4861963132e-02 9.7874793409e-03 5.9328162777e-03 3.0875171576e-03 1.1566039828e-03 2.2519483766e-04 1.1502877867e-05 0.0000000000e+00 7.7359576192e-01 2.0522134061e+00 8.7205922642e+00 1.0886584804e+00 1.2600000000e+00 6.4044209281e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6231934463e+01 1.6231934463e+00 2.1233234924e+01 2.1233234924e+00 2.0979800577e+00 2.0705661428e+00 2.0445203621e+00 2.0196712914e+00 1.9945249505e+00 1.9685417319e+00 1.9413289390e+00 1.9161285745e+00 1.8927432569e+00 1.8661165782e+00 1.8406629985e+00 1.8160257243e+00 1.7896913937e+00 1.7647167347e+00 1.7394238857e+00 1.7135207304e+00 1.6888548012e+00 1.6628591472e+00 1.6378819537e+00 1.6111225637e+00 1.5862987753e+00 1.5599939817e+00 1.5355558205e+00 1.5110452227e+00 1.4848706573e+00 1.4595076023e+00 1.4343213201e+00 1.4082143253e+00 1.3829776986e+00 1.3571057855e+00 1.3319481108e+00 1.3067324613e+00 1.2801412865e+00 1.2534244308e+00 1.2276439023e+00 1.2003014549e+00 1.1748210051e+00 1.1501564632e+00 1.1249971962e+00 1.0977059348e+00 1.0709741288e+00 1.0448352556e+00 1.0201080615e+00 9.9581079119e-01 9.6992542348e-01 9.4414386766e-01 9.2075681645e-01 8.9412638941e-01 8.6755673341e-01 8.4189619164e-01 8.1658641982e-01 7.8997001337e-01 7.6501809538e-01 7.3869147215e-01 7.1245085489e-01 6.8995380205e-01 6.6492593617e-01 6.4030885431e-01 6.1593795496e-01 5.9132260308e-01 5.6750028668e-01 5.4434264525e-01 5.2181750526e-01 4.9934880936e-01 4.7607860149e-01 4.5393733965e-01 4.3140342869e-01 4.1037440422e-01 3.8742534750e-01 3.6424327297e-01 3.4205645051e-01 3.2264172324e-01 3.0240935883e-01 2.8292904082e-01 2.6303191795e-01 2.4328116990e-01 2.2444013475e-01 2.0644484803e-01 1.8851206229e-01 1.7146788831e-01 1.5458360219e-01 1.3907089698e-01 1.2441120623e-01 1.0965875177e-01 9.5616074911e-02 8.2047567929e-02 6.9105198094e-02 5.8234065487e-02 4.7375528481e-02 3.8331956519e-02 2.9628987345e-02 2.2175341297e-02 1.5540873172e-02 1.0352469293e-02 6.0353418214e-03 2.9896776935e-03 1.1284190071e-03 2.6817839482e-04 1.1450579845e-05 0.0000000000e+00 7.7333272735e-01 2.0509985143e+00 8.7098668284e+00 1.0884895098e+00 1.2600000000e+00 6.4072543404e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 2 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6195464978e+01 1.6195464978e+00 2.1283747932e+01 2.1283747932e+00 2.1022212459e+00 2.0770186515e+00 2.0511559276e+00 2.0270492612e+00 2.0026256786e+00 1.9778689357e+00 1.9515580173e+00 1.9252711397e+00 1.8985491847e+00 1.8730512193e+00 1.8464859310e+00 1.8194696498e+00 1.7935819926e+00 1.7673651574e+00 1.7417703639e+00 1.7158037468e+00 1.6902167439e+00 1.6646851523e+00 1.6383654247e+00 1.6135542975e+00 1.5899237229e+00 1.5647421318e+00 1.5393231230e+00 1.5138189048e+00 1.4887926632e+00 1.4620077840e+00 1.4359038564e+00 1.4109390940e+00 1.3826713929e+00 1.3563975746e+00 1.3311313071e+00 1.3040969511e+00 1.2772318921e+00 1.2505795583e+00 1.2256687715e+00 1.2009524269e+00 1.1758246026e+00 1.1481654869e+00 1.1228355592e+00 1.0952568341e+00 1.0680408220e+00 1.0425804750e+00 1.0168280319e+00 9.8907804659e-01 9.6304858746e-01 9.3731398458e-01 9.1205105796e-01 8.8487596121e-01 8.6084095057e-01 8.3597748826e-01 8.1117162545e-01 7.8679747134e-01 7.6294478274e-01 7.3859200445e-01 7.1349273795e-01 6.8835591339e-01 6.6416785511e-01 6.3846435668e-01 6.1372591169e-01 5.8870179284e-01 5.6374664971e-01 5.4054374873e-01 5.1909991714e-01 4.9677949866e-01 4.7481030677e-01 4.5254508230e-01 4.2973742558e-01 4.0658648820e-01 3.8421817427e-01 3.6483825406e-01 3.4146047938e-01 3.1964089506e-01 3.0019566976e-01 2.8030684617e-01 2.6143847790e-01 2.4297799052e-01 2.2370889809e-01 2.0552578619e-01 1.8917814355e-01 1.7177858364e-01 1.5541324319e-01 1.3922764623e-01 1.2414432783e-01 1.0936166723e-01 9.5196045361e-02 8.2778643838e-02 7.0738548839e-02 5.8963087157e-02 4.8671678726e-02 3.9045420370e-02 2.9675881133e-02 2.2149190886e-02 1.5525311775e-02 1.0142675574e-02 6.0543324821e-03 3.1283550979e-03 1.1394012867e-03 2.4117530339e-04 1.1822107739e-05 0.0000000000e+00 7.7430975813e-01 2.0555171907e+00 8.7498221534e+00 1.0891182446e+00 1.2600000000e+00 6.3967117724e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6068707571e+01 1.6068707571e+00 2.1259760984e+01 2.1259760984e+00 2.1000339656e+00 2.0744956112e+00 2.0470719467e+00 2.0207517639e+00 1.9951981323e+00 1.9697302510e+00 1.9457971748e+00 1.9204347425e+00 1.8957331882e+00 1.8702181440e+00 1.8437342315e+00 1.8181148212e+00 1.7917211326e+00 1.7657234088e+00 1.7399791405e+00 1.7164565652e+00 1.6914624082e+00 1.6665457169e+00 1.6411408038e+00 1.6167141590e+00 1.5896097540e+00 1.5628044084e+00 1.5371367312e+00 1.5102341386e+00 1.4840943860e+00 1.4594259186e+00 1.4343975481e+00 1.4095514602e+00 1.3843562460e+00 1.3588271168e+00 1.3341472613e+00 1.3066873688e+00 1.2793628604e+00 1.2529957439e+00 1.2279682317e+00 1.2025342214e+00 1.1765403285e+00 1.1493824150e+00 1.1238217395e+00 1.0982610814e+00 1.0721539770e+00 1.0467227923e+00 1.0214211335e+00 9.9429256144e-01 9.6923951091e-01 9.4288820770e-01 9.1795598808e-01 8.9364890915e-01 8.6816252830e-01 8.4369730408e-01 8.1937684872e-01 7.9302977077e-01 7.6749418955e-01 7.4384395020e-01 7.2030803145e-01 6.9528290805e-01 6.7172108058e-01 6.4686121216e-01 6.2206252189e-01 5.9639935278e-01 5.7295410622e-01 5.4889252599e-01 5.2396833653e-01 4.9988076362e-01 4.7673689443e-01 4.5432427814e-01 4.3139540775e-01 4.0904090869e-01 3.8760684192e-01 3.6790623972e-01 3.4737127021e-01 3.2667619934e-01 3.0604679798e-01 2.8555904095e-01 2.6472549968e-01 2.4479367751e-01 2.2634281613e-01 2.0641910703e-01 1.8918858142e-01 1.7116467018e-01 1.5410459732e-01 1.3889497612e-01 1.2446765080e-01 1.0998536482e-01 9.6364822641e-02 8.3731821052e-02 7.1506634900e-02 6.0254355826e-02 4.8842117608e-02 3.9344256662e-02 3.0580416032e-02 2.2776993606e-02 1.5640385281e-02 1.0566199569e-02 6.0203844931e-03 3.0425719202e-03 1.2044864449e-03 2.5367141689e-04 1.3522524246e-05 0.0000000000e+00 7.7384671994e-01 2.0533736293e+00 8.7308467011e+00 1.0888198964e+00 1.2600000000e+00 6.4017142851e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 3 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +4.0641178848e-01 1.2748460404e+01 1.2748460404e+00 1.5869532530e+01 1.5869532530e+00 1.5693337535e+00 1.5518107486e+00 1.5347324563e+00 1.5164811715e+00 1.4967813022e+00 1.4793983519e+00 1.4617655266e+00 1.4433098500e+00 1.4268660639e+00 1.4083916218e+00 1.3908135272e+00 1.3729270382e+00 1.3542732533e+00 1.3357449451e+00 1.3193420468e+00 1.3027445485e+00 1.2834146545e+00 1.2643741954e+00 1.2472348616e+00 1.2286303453e+00 1.2107329005e+00 1.1926628934e+00 1.1740410910e+00 1.1563331788e+00 1.1373360159e+00 1.1186057142e+00 1.1002313935e+00 1.0799744171e+00 1.0621739103e+00 1.0430702338e+00 1.0240071289e+00 1.0054631177e+00 9.8630718151e-01 9.6863834079e-01 9.4973731118e-01 9.3070369872e-01 9.1005743255e-01 8.9104760419e-01 8.7114640029e-01 8.5265986658e-01 8.3379113410e-01 8.1475703460e-01 7.9568455451e-01 7.7663655142e-01 7.5824780287e-01 7.3975058589e-01 7.2106695592e-01 7.0230255486e-01 6.8452625406e-01 6.6558344424e-01 6.4530197136e-01 6.2526120993e-01 6.0679793755e-01 5.8868992038e-01 5.7048333614e-01 5.5229990294e-01 5.3379071342e-01 5.1484236173e-01 4.9631680342e-01 4.7845821861e-01 4.6026863839e-01 4.4270584517e-01 4.2421745181e-01 4.0572751194e-01 3.8852311401e-01 3.7132445296e-01 3.5377579533e-01 3.3530428990e-01 3.1884891468e-01 3.0271776653e-01 2.8671413649e-01 2.7175274217e-01 2.5598597951e-01 2.4154113909e-01 2.2612027084e-01 2.1156293091e-01 1.9815572454e-01 1.8420992934e-01 1.6998173676e-01 1.5623771029e-01 1.4241753528e-01 1.2956742664e-01 1.1707735677e-01 1.0514696881e-01 9.3399260068e-02 8.2477122796e-02 7.2654431063e-02 6.2994340701e-02 5.3670802475e-02 4.4868800330e-02 3.6959807305e-02 2.9702585424e-02 2.3080009034e-02 1.6515339312e-02 1.1204891368e-02 6.7275411437e-03 3.3911775350e-03 1.1640314201e-03 1.2695066108e-04 0.0000000000e+00 6.0522431261e-01 1.4315594497e+00 4.5436358519e+00 1.0100735702e+00 9.6000000000e-01 5.0484376135e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +4.0641178848e-01 1.2416555660e+01 1.2416555660e+00 1.5828900740e+01 1.5828900740e+00 1.5649292990e+00 1.5469880034e+00 1.5298286052e+00 1.5125333837e+00 1.4960626925e+00 1.4781158301e+00 1.4589781752e+00 1.4406435031e+00 1.4228758147e+00 1.4048649205e+00 1.3876298866e+00 1.3690639889e+00 1.3517662183e+00 1.3344935730e+00 1.3154559082e+00 1.2984324582e+00 1.2810856860e+00 1.2631690436e+00 1.2453940081e+00 1.2257841231e+00 1.2064024320e+00 1.1868953866e+00 1.1672574251e+00 1.1482079099e+00 1.1305556581e+00 1.1121491366e+00 1.0929155924e+00 1.0732683886e+00 1.0537728911e+00 1.0348419368e+00 1.0169148798e+00 9.9936046773e-01 9.8136156840e-01 9.6262637226e-01 9.4298173692e-01 9.2382768436e-01 9.0499930059e-01 8.8490231552e-01 8.6644318615e-01 8.4621045336e-01 8.2840864283e-01 8.0943649740e-01 7.9172339029e-01 7.7338376424e-01 7.5415491687e-01 7.3654630158e-01 7.1813090652e-01 6.9971940214e-01 6.8024274062e-01 6.6115134663e-01 6.4284746155e-01 6.2358715796e-01 6.0535972581e-01 5.8638500547e-01 5.6739166515e-01 5.4875009825e-01 5.3013985735e-01 5.1132577744e-01 4.9389280901e-01 4.7630344692e-01 4.5811794052e-01 4.4045151727e-01 4.2262902165e-01 4.0470759928e-01 3.8635393599e-01 3.6952349992e-01 3.5219901066e-01 3.3504256895e-01 3.1963502242e-01 3.0343150955e-01 2.8766634126e-01 2.7082952201e-01 2.5461857622e-01 2.3996498193e-01 2.2520423809e-01 2.1095820128e-01 1.9706268529e-01 1.8185880586e-01 1.6859275184e-01 1.5540041131e-01 1.4203260260e-01 1.2868003667e-01 1.1614956739e-01 1.0487732549e-01 9.3613135800e-02 8.1887330861e-02 7.1800460125e-02 6.2028632701e-02 5.2908849958e-02 4.4561976823e-02 3.6746615147e-02 2.9403990022e-02 2.2845516965e-02 1.6851762870e-02 1.1379785640e-02 7.0531882225e-03 3.5275382553e-03 1.2439060358e-03 1.4662590712e-04 0.0000000000e+00 6.0321680684e-01 1.4253959162e+00 4.5124900951e+00 1.0093759960e+00 9.6000000000e-01 5.0656313873e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCFDAyiYkqoHAHf3PwBZAAAA.mpi b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCFDAyiYkqoHAHf3PwBZAAAA.mpi new file mode 100644 index 00000000..8996e699 --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCFDAyiYkqoHAHf3PwBZAAAA.mpi @@ -0,0 +1,15 @@ +======iDiffSys= 0 nPDFA= 1 ====== +1 1.0000000000e+00 1.0000000000e+00 1.0000000000e+00 +5.5749216527e-01 4.3382347042e+01 1.7107651314e+00 7.1847269778e+01 2.8332677300e+00 2.7902697739e+00 2.7475417241e+00 2.7046607321e+00 2.6628557911e+00 2.6202215594e+00 2.5789202889e+00 2.5370171519e+00 2.4970180236e+00 2.4559868498e+00 2.4155769360e+00 2.3733113709e+00 2.3330266334e+00 2.2927784211e+00 2.2527465191e+00 2.2126379849e+00 2.1720333986e+00 2.1325169520e+00 2.0940085366e+00 2.0562283567e+00 2.0175302115e+00 1.9764819726e+00 1.9372934357e+00 1.8966463470e+00 1.8588650981e+00 1.8205001444e+00 1.7810225547e+00 1.7422956605e+00 1.7041140735e+00 1.6684245008e+00 1.6311104725e+00 1.5953488078e+00 1.5575006134e+00 1.5212769562e+00 1.4833212089e+00 1.4472982357e+00 1.4101141642e+00 1.3734281104e+00 1.3350727583e+00 1.2993209026e+00 1.2630894344e+00 1.2289990879e+00 1.1929422896e+00 1.1572175430e+00 1.1211433346e+00 1.0875900447e+00 1.0546419409e+00 1.0186590118e+00 9.8587350992e-01 9.5198132787e-01 9.1847259557e-01 8.8507538760e-01 8.5054968386e-01 8.1887305049e-01 7.8659400474e-01 7.5444074825e-01 7.2371675548e-01 6.9325158298e-01 6.6271795108e-01 6.3499376990e-01 6.0649571633e-01 5.7717824931e-01 5.4998370106e-01 5.2248106787e-01 4.9793808081e-01 4.7107190594e-01 4.4485414235e-01 4.1916951286e-01 3.9414790568e-01 3.6812443261e-01 3.4370541303e-01 3.2094840481e-01 2.9821649054e-01 2.7602680258e-01 2.5440928604e-01 2.3349562235e-01 2.1367385023e-01 1.9464246423e-01 1.7555965937e-01 1.5814517437e-01 1.4148065363e-01 1.2548289162e-01 1.1057127602e-01 9.7110365081e-02 8.3800577329e-02 7.2009744743e-02 6.0019382993e-02 4.9436522097e-02 3.9378923448e-02 3.1272336198e-02 2.3983133239e-02 1.7531644629e-02 1.1877815533e-02 7.5600744144e-03 4.4337346785e-03 2.2990668757e-03 1.0963221660e-03 3.2322178539e-04 4.6145010390e-05 8.3755410710e-07 0.0000000000e+00 8.5833169484e-01 2.7841637237e+00 1.5776562877e+01 1.2444613871e+00 1.5228412136e+00 6.8661505098e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.1772637928e+00 2.1772637928e+00 +======iDiffSys= 1 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6221846695e+01 1.6221846695e+00 2.1261737242e+01 2.1261737242e+00 2.0998922193e+00 2.0738508787e+00 2.0501233759e+00 2.0242897476e+00 1.9992205902e+00 1.9754748449e+00 1.9512612979e+00 1.9257569238e+00 1.9001032639e+00 1.8731300862e+00 1.8477118466e+00 1.8232790788e+00 1.7979153099e+00 1.7716801518e+00 1.7453018896e+00 1.7188875491e+00 1.6929132504e+00 1.6663983150e+00 1.6397550556e+00 1.6159850787e+00 1.5897370577e+00 1.5643940564e+00 1.5371965984e+00 1.5108103576e+00 1.4839322554e+00 1.4589038636e+00 1.4329949892e+00 1.4072368724e+00 1.3828239321e+00 1.3575389467e+00 1.3314477496e+00 1.3066165258e+00 1.2795055529e+00 1.2523454553e+00 1.2268169593e+00 1.2006123243e+00 1.1747911970e+00 1.1492882927e+00 1.1231048292e+00 1.0969808325e+00 1.0701378046e+00 1.0445050545e+00 1.0186927422e+00 9.9437391584e-01 9.6809185563e-01 9.4240856974e-01 9.1748391549e-01 8.9139030981e-01 8.6593968629e-01 8.3997437357e-01 8.1536477959e-01 7.9059005547e-01 7.6479048307e-01 7.4113574068e-01 7.1719725317e-01 6.9234175517e-01 6.6774275350e-01 6.4324130224e-01 6.1920271379e-01 5.9553610660e-01 5.7269407851e-01 5.4853422629e-01 5.2403452565e-01 5.0101293506e-01 4.7767912275e-01 4.5539061115e-01 4.3392089359e-01 4.1064991993e-01 3.8842728022e-01 3.6668353263e-01 3.4439073395e-01 3.2317124744e-01 3.0279141133e-01 2.8239723667e-01 2.6246850696e-01 2.4290333819e-01 2.2413690741e-01 2.0651238402e-01 1.8868497035e-01 1.7210479539e-01 1.5554698265e-01 1.3971772601e-01 1.2499854044e-01 1.1051843409e-01 9.6946398826e-02 8.3365782465e-02 7.0210141804e-02 5.8807285248e-02 4.8285173107e-02 3.8641885691e-02 2.9310848498e-02 2.1895527305e-02 1.5620269568e-02 1.0305078476e-02 6.2404257524e-03 3.0571704268e-03 1.1545575264e-03 2.6309782669e-04 8.5270631244e-06 0.0000000000e+00 7.7388493199e-01 2.0535503856e+00 8.7324099308e+00 1.0888444918e+00 1.2600000000e+00 6.4013018740e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6149371314e+01 1.6149371314e+00 2.1228969790e+01 2.1228969790e+00 2.0968533610e+00 2.0729943051e+00 2.0487240800e+00 2.0225834352e+00 1.9968480445e+00 1.9716161132e+00 1.9465997370e+00 1.9186946913e+00 1.8928480402e+00 1.8677187182e+00 1.8434869235e+00 1.8198666077e+00 1.7955463298e+00 1.7694752252e+00 1.7441999617e+00 1.7186847654e+00 1.6916327415e+00 1.6651832634e+00 1.6398170443e+00 1.6131354755e+00 1.5876002471e+00 1.5608327583e+00 1.5363820837e+00 1.5099715146e+00 1.4838639192e+00 1.4579364633e+00 1.4323486506e+00 1.4059850547e+00 1.3812128610e+00 1.3555486410e+00 1.3301200422e+00 1.3035711020e+00 1.2782263351e+00 1.2533481401e+00 1.2273852874e+00 1.2010137423e+00 1.1752700858e+00 1.1484435511e+00 1.1229546272e+00 1.0961034149e+00 1.0703111280e+00 1.0452220476e+00 1.0197519297e+00 9.9415541892e-01 9.6833810538e-01 9.4164871091e-01 9.1488886240e-01 8.8771686370e-01 8.6415708803e-01 8.3883843771e-01 8.1306221873e-01 7.8793594079e-01 7.6320275577e-01 7.3829094060e-01 7.1369359233e-01 6.8878100499e-01 6.6281288743e-01 6.3884829359e-01 6.1497633307e-01 5.9099324659e-01 5.6759193838e-01 5.4514130431e-01 5.2340261552e-01 4.9967643591e-01 4.7727948363e-01 4.5583911754e-01 4.3401473962e-01 4.1201209538e-01 3.8895067431e-01 3.6619089612e-01 3.4411232614e-01 3.2213415705e-01 3.0307022963e-01 2.8281830000e-01 2.6240067065e-01 2.4355738564e-01 2.2501092583e-01 2.0693196078e-01 1.8906665892e-01 1.7242800459e-01 1.5469537420e-01 1.3900021429e-01 1.2370377394e-01 1.0941314063e-01 9.5453580764e-02 8.2218290489e-02 6.9652138903e-02 5.8514106605e-02 4.7849915630e-02 3.8631140447e-02 3.0125154080e-02 2.2187902042e-02 1.5799680781e-02 1.0538246166e-02 6.1043693611e-03 3.0680848431e-03 1.2530573413e-03 2.4774371659e-04 1.0302946316e-05 0.0000000000e+00 7.7324989146e-01 2.0506161619e+00 8.7064938792e+00 1.0884363420e+00 1.2600000000e+00 6.4081459138e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 2 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6189165323e+01 1.6189165323e+00 2.1340081953e+01 2.1340081953e+00 2.1080081174e+00 2.0827685234e+00 2.0581022075e+00 2.0319186034e+00 2.0045550599e+00 1.9789499255e+00 1.9539687057e+00 1.9288905768e+00 1.9034849986e+00 1.8795352331e+00 1.8534752322e+00 1.8273507830e+00 1.8003081261e+00 1.7757674880e+00 1.7491551367e+00 1.7231002956e+00 1.6963206043e+00 1.6710403228e+00 1.6461334967e+00 1.6185515485e+00 1.5938637868e+00 1.5689170370e+00 1.5414887129e+00 1.5158289800e+00 1.4901677848e+00 1.4631823719e+00 1.4391380549e+00 1.4116997400e+00 1.3855105008e+00 1.3605766393e+00 1.3355460587e+00 1.3084607135e+00 1.2833527625e+00 1.2577194445e+00 1.2312092830e+00 1.2052508744e+00 1.1790570183e+00 1.1542141382e+00 1.1291851915e+00 1.1016306199e+00 1.0757136880e+00 1.0504546541e+00 1.0246697976e+00 9.9775057411e-01 9.7279936869e-01 9.4549739930e-01 9.2046226789e-01 8.9272886254e-01 8.6599169591e-01 8.4020256113e-01 8.1506168867e-01 7.8916061791e-01 7.6471065694e-01 7.3972132700e-01 7.1603075553e-01 6.9177422995e-01 6.6690074777e-01 6.4265077476e-01 6.1914233138e-01 5.9557724531e-01 5.7061834760e-01 5.4785377555e-01 5.2477624067e-01 5.0058879759e-01 4.7798449024e-01 4.5330142082e-01 4.2910353409e-01 4.0654543141e-01 3.8382072000e-01 3.6198103140e-01 3.4173009546e-01 3.2128779283e-01 3.0183706793e-01 2.8238418887e-01 2.6319278928e-01 2.4371428164e-01 2.2523278406e-01 2.0566443423e-01 1.8728827015e-01 1.7018016077e-01 1.5414038972e-01 1.3824657344e-01 1.2352722872e-01 1.0901704500e-01 9.5227076885e-02 8.2068420585e-02 7.1027752426e-02 5.9046153800e-02 4.8539938188e-02 3.9101799620e-02 2.9964502387e-02 2.2554864274e-02 1.5861269133e-02 1.0531434943e-02 6.1513205163e-03 3.1716456014e-03 1.1599996776e-03 2.6259434564e-04 9.6397596569e-06 0.0000000000e+00 7.7539071212e-01 2.0605357913e+00 8.7944007711e+00 1.0898173850e+00 1.2600000000e+00 6.3849901802e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6165564413e+01 1.6165564413e+00 2.1288511687e+01 2.1288511687e+00 2.1028923691e+00 2.0798007978e+00 2.0529961540e+00 2.0279672193e+00 2.0022900649e+00 1.9782630436e+00 1.9528430676e+00 1.9269401557e+00 1.9020338346e+00 1.8771032462e+00 1.8510663024e+00 1.8259445228e+00 1.8013123455e+00 1.7759548286e+00 1.7506646434e+00 1.7245785587e+00 1.6979867342e+00 1.6718441307e+00 1.6456126153e+00 1.6184835394e+00 1.5932609877e+00 1.5698725263e+00 1.5440815490e+00 1.5183689149e+00 1.4918530080e+00 1.4673072525e+00 1.4394874556e+00 1.4128208272e+00 1.3877099285e+00 1.3616254605e+00 1.3362242460e+00 1.3104672556e+00 1.2837945053e+00 1.2576513311e+00 1.2313214150e+00 1.2062858579e+00 1.1796130155e+00 1.1525643542e+00 1.1279109773e+00 1.1037975976e+00 1.0786277318e+00 1.0524045331e+00 1.0269277325e+00 1.0009615280e+00 9.7438757973e-01 9.4901247018e-01 9.2297688645e-01 8.9708595761e-01 8.7238768558e-01 8.4624836138e-01 8.1954732309e-01 7.9436301409e-01 7.6921641105e-01 7.4463540935e-01 7.1923212574e-01 6.9312137826e-01 6.6799251676e-01 6.4388159528e-01 6.1989918561e-01 5.9575242585e-01 5.7310353459e-01 5.4973355854e-01 5.2757682426e-01 5.0601076355e-01 4.8211334860e-01 4.5877255380e-01 4.3456966208e-01 4.1160694713e-01 3.8943209972e-01 3.6782574435e-01 3.4653954450e-01 3.2625696187e-01 3.0573056963e-01 2.8531073196e-01 2.6542515440e-01 2.4507445235e-01 2.2645372375e-01 2.0755746886e-01 1.8921600154e-01 1.7129516121e-01 1.5499527129e-01 1.3849197466e-01 1.2365994072e-01 1.0927566813e-01 9.5226130365e-02 8.1207967459e-02 6.8564160552e-02 5.7215001035e-02 4.6616266786e-02 3.7498279885e-02 2.9361281925e-02 2.2424719415e-02 1.5798788613e-02 1.0535092428e-02 5.9640338582e-03 2.9744723093e-03 1.1155612942e-03 2.3993836068e-04 9.2576146414e-06 0.0000000000e+00 7.7440151895e-01 2.0559424235e+00 8.7535910674e+00 1.0891774493e+00 1.2600000000e+00 6.3957191013e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 3 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +4.0641178848e-01 1.2590089197e+01 1.2590089197e+00 1.5691357457e+01 1.5691357457e+00 1.5515676513e+00 1.5340206522e+00 1.5178029174e+00 1.5002680963e+00 1.4834596371e+00 1.4649340200e+00 1.4483215771e+00 1.4303313845e+00 1.4127726857e+00 1.3959749912e+00 1.3779379122e+00 1.3600832156e+00 1.3414289766e+00 1.3230356153e+00 1.3048216707e+00 1.2859735039e+00 1.2677968246e+00 1.2498910648e+00 1.2329161697e+00 1.2157317160e+00 1.1971811295e+00 1.1790619086e+00 1.1593708598e+00 1.1411390227e+00 1.1222671711e+00 1.1031189544e+00 1.0856167012e+00 1.0678050982e+00 1.0497298596e+00 1.0315142308e+00 1.0126683200e+00 9.9296116427e-01 9.7437291844e-01 9.5501802671e-01 9.3665228614e-01 9.1882653165e-01 9.0114524288e-01 8.8268555847e-01 8.6341186513e-01 8.4272167833e-01 8.2375392961e-01 8.0509869554e-01 7.8775849523e-01 7.6906771606e-01 7.5009706089e-01 7.3100715860e-01 7.1299449186e-01 6.9453891649e-01 6.7558369957e-01 6.5653988334e-01 6.3782478658e-01 6.1923531420e-01 6.0057461554e-01 5.8220221827e-01 5.6397134969e-01 5.4664721348e-01 5.2888765173e-01 5.1082807274e-01 4.9353918569e-01 4.7492374512e-01 4.5783758428e-01 4.4077135301e-01 4.2296568270e-01 4.0526168468e-01 3.8826622232e-01 3.7124563808e-01 3.5420687158e-01 3.3697594673e-01 3.2113901367e-01 3.0577613803e-01 2.9034687731e-01 2.7518820832e-01 2.5871745566e-01 2.4300670185e-01 2.2746452017e-01 2.1312851583e-01 1.9891266470e-01 1.8577513921e-01 1.7151236209e-01 1.5792251271e-01 1.4475022600e-01 1.3183318569e-01 1.1880315121e-01 1.0677746958e-01 9.4951976473e-02 8.3885551579e-02 7.3297987698e-02 6.3338333866e-02 5.4268788693e-02 4.4972859570e-02 3.7185142208e-02 2.9465464486e-02 2.3071749422e-02 1.7160988745e-02 1.1345341741e-02 6.8324303147e-03 3.3782394613e-03 1.1004402924e-03 1.1175965865e-04 0.0000000000e+00 5.9629856323e-01 1.4043012503e+00 4.4070785794e+00 1.0070010421e+00 9.5000000000e-01 5.0246212397e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +4.0641178848e-01 1.2737687524e+01 1.2737687524e+00 1.5896352045e+01 1.5896352045e+00 1.5718689054e+00 1.5542283393e+00 1.5375505324e+00 1.5200229028e+00 1.5019532140e+00 1.4855176839e+00 1.4678575612e+00 1.4498340881e+00 1.4322615498e+00 1.4145207335e+00 1.3973485286e+00 1.3789576532e+00 1.3601765033e+00 1.3418928854e+00 1.3234380481e+00 1.3042933794e+00 1.2859523600e+00 1.2680354942e+00 1.2492140443e+00 1.2309354715e+00 1.2119506482e+00 1.1942506921e+00 1.1766337874e+00 1.1589917727e+00 1.1416528784e+00 1.1222373533e+00 1.1037076333e+00 1.0863432852e+00 1.0669210757e+00 1.0483132773e+00 1.0289934747e+00 1.0093317415e+00 9.9012488759e-01 9.7152912067e-01 9.5188983533e-01 9.3262202095e-01 9.1335193805e-01 8.9396449970e-01 8.7437105454e-01 8.5420310519e-01 8.3560539097e-01 8.1664267437e-01 7.9792508799e-01 7.7841019406e-01 7.5859314102e-01 7.3881838306e-01 7.1912012375e-01 7.0143998025e-01 6.8185450720e-01 6.6257108419e-01 6.4338406892e-01 6.2478343923e-01 6.0601577467e-01 5.8815574654e-01 5.6964927812e-01 5.5103340362e-01 5.3250545205e-01 5.1435135564e-01 4.9649561905e-01 4.7904773900e-01 4.6069935713e-01 4.4268848378e-01 4.2428799675e-01 4.0716046122e-01 3.8974622798e-01 3.7304464803e-01 3.5524579871e-01 3.3846639229e-01 3.2177995249e-01 3.0481170819e-01 2.8806034091e-01 2.7218353639e-01 2.5611001505e-01 2.4093454529e-01 2.2673870372e-01 2.1099811344e-01 1.9704468813e-01 1.8254961903e-01 1.6885534595e-01 1.5543103244e-01 1.4237827964e-01 1.3013501193e-01 1.1810194815e-01 1.0599972050e-01 9.4410340026e-02 8.3621086069e-02 7.3086394674e-02 6.3186798020e-02 5.4033617620e-02 4.4780167770e-02 3.7199624280e-02 3.0044919011e-02 2.3295547776e-02 1.7074886907e-02 1.1792407996e-02 7.2816485749e-03 3.5860786983e-03 1.1524148978e-03 1.3594326694e-04 0.0000000000e+00 6.0654049806e-01 1.4356110080e+00 4.5641955977e+00 1.0105330163e+00 9.7000000000e-01 5.1371817577e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 diff --git a/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCFTc1NjMwszU9MpqXoAtfVBKVkAAAA b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCFTc1NjMwszU9MpqXoAtfVBKVkAAAA new file mode 100644 index 00000000..963f5eb0 --- /dev/null +++ b/tests/data/test_pythia8/H4sIAAAAAAAC_2tgmerHAAGxUzR6xILz00oCnV2sMvNScxKLSzKTFWwV8vOm9AgHJeal5OdaFaeWBKempkBFxeGiYCFTc1NjMwszU9MpqXoAtfVBKVkAAAA @@ -0,0 +1,15 @@ +======iDiffSys= 0 nPDFA= 1 ====== +1 1.0000000000e+00 1.0000000000e+00 1.0000000000e+00 +5.5749216527e-01 4.3382347042e+01 1.7107651314e+00 7.1507493368e+01 2.8198687860e+00 2.7752145558e+00 2.7320567323e+00 2.6914524443e+00 2.6488526481e+00 2.6079271739e+00 2.5660626549e+00 2.5250060663e+00 2.4831320021e+00 2.4428172296e+00 2.4007133351e+00 2.3607865249e+00 2.3216039295e+00 2.2796851582e+00 2.2411914805e+00 2.2024548111e+00 2.1602308212e+00 2.1219143200e+00 2.0812437392e+00 2.0406012839e+00 2.0013729766e+00 1.9614960792e+00 1.9231862414e+00 1.8840954634e+00 1.8467889613e+00 1.8069321498e+00 1.7675186050e+00 1.7280536921e+00 1.6902487360e+00 1.6543837992e+00 1.6154690132e+00 1.5762959239e+00 1.5374942870e+00 1.5006882970e+00 1.4644807469e+00 1.4269389403e+00 1.3902442172e+00 1.3528387611e+00 1.3147270234e+00 1.2789519860e+00 1.2439666167e+00 1.2115149087e+00 1.1754187448e+00 1.1424928608e+00 1.1080789737e+00 1.0723999730e+00 1.0375062171e+00 1.0039866571e+00 9.7281296798e-01 9.3722166177e-01 9.0402972196e-01 8.7156655740e-01 8.4121344711e-01 8.1058222952e-01 7.7869757228e-01 7.4789367736e-01 7.1615451636e-01 6.8806282145e-01 6.5823326536e-01 6.2805552089e-01 6.0062465643e-01 5.7278510954e-01 5.4527735098e-01 5.1725846256e-01 4.8899321288e-01 4.6219966574e-01 4.3547135288e-01 4.1036104461e-01 3.8652746035e-01 3.6252237763e-01 3.3848242683e-01 3.1547116580e-01 2.9474842781e-01 2.7244300626e-01 2.5243309467e-01 2.3220296467e-01 2.1214351639e-01 1.9279307903e-01 1.7421546619e-01 1.5722850407e-01 1.3971108929e-01 1.2427214385e-01 1.0910113668e-01 9.4517270013e-02 8.1386680188e-02 6.9509954888e-02 5.8959013166e-02 4.8526430984e-02 3.9431084775e-02 3.0835841226e-02 2.2916763987e-02 1.6822682709e-02 1.2004340077e-02 7.5608415288e-03 4.6251874045e-03 2.2271676526e-03 9.9708147601e-04 3.0895627792e-04 4.1203446316e-05 7.1069327670e-07 0.0000000000e+00 8.5725145834e-01 2.7753072193e+00 1.5652005002e+01 1.2431361770e+00 1.5228412136e+00 6.8831809596e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.1772637928e+00 2.1772637928e+00 +======iDiffSys= 1 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6115987286e+01 1.6115987286e+00 2.1208766171e+01 2.1208766171e+00 2.0960129759e+00 2.0719260443e+00 2.0459910513e+00 2.0204571224e+00 1.9949486657e+00 1.9701211793e+00 1.9457136315e+00 1.9195277339e+00 1.8930172671e+00 1.8680413423e+00 1.8443976475e+00 1.8184861886e+00 1.7933098867e+00 1.7678823061e+00 1.7417832741e+00 1.7160452969e+00 1.6913731869e+00 1.6659235707e+00 1.6397261142e+00 1.6133567785e+00 1.5864226473e+00 1.5609086382e+00 1.5345044574e+00 1.5105846799e+00 1.4828691618e+00 1.4577815724e+00 1.4323909346e+00 1.4061415930e+00 1.3799394663e+00 1.3523136227e+00 1.3245958209e+00 1.2990065123e+00 1.2728517670e+00 1.2468283781e+00 1.2205281737e+00 1.1948093507e+00 1.1675371666e+00 1.1406809326e+00 1.1151178192e+00 1.0889023872e+00 1.0637818924e+00 1.0359228725e+00 1.0096235558e+00 9.8356959617e-01 9.5647226661e-01 9.3088191938e-01 9.0486424346e-01 8.7919252578e-01 8.5277199736e-01 8.2892471495e-01 8.0430650987e-01 7.7993248334e-01 7.5586805866e-01 7.3106182075e-01 7.0579797868e-01 6.8100395780e-01 6.5714357068e-01 6.3369445385e-01 6.0962787427e-01 5.8663815771e-01 5.6202871948e-01 5.3821598527e-01 5.1558559661e-01 4.9172723483e-01 4.6932690063e-01 4.4760801628e-01 4.2622436363e-01 4.0380138145e-01 3.8218150285e-01 3.6148768507e-01 3.3919057597e-01 3.1870291221e-01 2.9808861224e-01 2.7962312906e-01 2.6057583207e-01 2.4179910537e-01 2.2294551336e-01 2.0518617076e-01 1.8789784256e-01 1.7036869929e-01 1.5457032022e-01 1.3925763777e-01 1.2377867997e-01 1.0921796418e-01 9.5253263674e-02 8.1690505200e-02 6.8896015330e-02 5.7899934619e-02 4.7520206521e-02 3.7886816928e-02 2.9015208934e-02 2.1250956850e-02 1.5153971065e-02 9.8516179640e-03 5.7403263192e-03 2.7007490591e-03 1.0774130259e-03 2.6209982412e-04 7.4909902992e-06 0.0000000000e+00 7.7285678324e-01 2.0488032625e+00 8.6905180229e+00 1.0881843208e+00 1.2600000000e+00 6.4123721937e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6194232665e+01 1.6194232665e+00 2.1440016948e+01 2.1440016948e+00 2.1193477178e+00 2.0918091223e+00 2.0661545497e+00 2.0399478176e+00 2.0175278247e+00 1.9912118815e+00 1.9645599706e+00 1.9406808263e+00 1.9141761221e+00 1.8891284052e+00 1.8614866772e+00 1.8345587567e+00 1.8098359638e+00 1.7852254721e+00 1.7598533543e+00 1.7343376956e+00 1.7094365219e+00 1.6820069935e+00 1.6555708588e+00 1.6282650447e+00 1.6019631154e+00 1.5767645206e+00 1.5491993122e+00 1.5225432249e+00 1.4964918560e+00 1.4697254650e+00 1.4425549686e+00 1.4159433819e+00 1.3889948199e+00 1.3634883063e+00 1.3359718398e+00 1.3095023790e+00 1.2851300016e+00 1.2595303058e+00 1.2339219839e+00 1.2087021660e+00 1.1827530287e+00 1.1559571114e+00 1.1293722761e+00 1.1027379964e+00 1.0776081285e+00 1.0520358548e+00 1.0266136783e+00 1.0000242492e+00 9.7622917134e-01 9.4944170486e-01 9.2470082298e-01 8.9805781751e-01 8.7310714901e-01 8.4665374072e-01 8.2046969913e-01 7.9432134068e-01 7.6933274898e-01 7.4368231044e-01 7.1786459375e-01 6.9292816887e-01 6.6889299972e-01 6.4274418498e-01 6.1882311867e-01 5.9392274087e-01 5.6912518800e-01 5.4437424427e-01 5.2027038260e-01 4.9689690329e-01 4.7428089508e-01 4.5142816806e-01 4.2815381153e-01 4.0576137625e-01 3.8390207803e-01 3.6142655114e-01 3.4115145286e-01 3.1944249789e-01 2.9856752175e-01 2.7983252072e-01 2.6062807717e-01 2.4159560862e-01 2.2187165519e-01 2.0421467931e-01 1.8776686759e-01 1.7101646023e-01 1.5542693576e-01 1.3979890503e-01 1.2345158547e-01 1.0886372256e-01 9.4741264352e-02 8.2557092958e-02 6.9832540259e-02 5.8225785432e-02 4.7544897165e-02 3.8076987033e-02 2.9907313890e-02 2.2411232347e-02 1.5611661930e-02 9.9572574022e-03 6.0865870731e-03 3.0334010136e-03 1.1560029528e-03 2.4866885255e-04 9.8103162352e-06 0.0000000000e+00 7.7728611567e-01 2.0693852525e+00 8.8735312957e+00 1.0910523572e+00 1.2700000000e+00 6.4588692063e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 2 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +5.5749216527e-01 1.6169821483e+01 1.6169821483e+00 2.1269733477e+01 2.1269733477e+00 2.1019448528e+00 2.0756971128e+00 2.0486905815e+00 2.0229253765e+00 1.9978479329e+00 1.9729320587e+00 1.9471004227e+00 1.9222912614e+00 1.8961906612e+00 1.8694590434e+00 1.8437604345e+00 1.8170144581e+00 1.7904628936e+00 1.7639818291e+00 1.7375263696e+00 1.7114728527e+00 1.6866862288e+00 1.6612796779e+00 1.6339032797e+00 1.6092536835e+00 1.5849474028e+00 1.5598619934e+00 1.5339923529e+00 1.5078032974e+00 1.4819132440e+00 1.4562608656e+00 1.4291763921e+00 1.4036353537e+00 1.3784534235e+00 1.3534255544e+00 1.3269294051e+00 1.3002500112e+00 1.2751572686e+00 1.2506624387e+00 1.2249555073e+00 1.1978354684e+00 1.1734274212e+00 1.1472842132e+00 1.1221504514e+00 1.0967572761e+00 1.0717155142e+00 1.0467920347e+00 1.0222008710e+00 9.9564834315e-01 9.6994130748e-01 9.4686071604e-01 9.2092126305e-01 8.9598640417e-01 8.7057703160e-01 8.4294965484e-01 8.2030635639e-01 7.9492751342e-01 7.6944210354e-01 7.4439283775e-01 7.1842224084e-01 6.9250886875e-01 6.6755842995e-01 6.4351608194e-01 6.1939249499e-01 5.9544984425e-01 5.6973212173e-01 5.4447397310e-01 5.2025140283e-01 4.9923560723e-01 4.7601764964e-01 4.5307227226e-01 4.3050797048e-01 4.0820156958e-01 3.8541805062e-01 3.6320371213e-01 3.4232703917e-01 3.2067968422e-01 3.0061337517e-01 2.8120883751e-01 2.6184281854e-01 2.4223254278e-01 2.2296039393e-01 2.0513339898e-01 1.8748756451e-01 1.6950609690e-01 1.5202552051e-01 1.3632331163e-01 1.2161703331e-01 1.0690107171e-01 9.2882023807e-02 8.0423755889e-02 6.7892501711e-02 5.6763313930e-02 4.6496291953e-02 3.7288899148e-02 2.8744661465e-02 2.1607401743e-02 1.5291623334e-02 9.9760222293e-03 5.9203826400e-03 2.9373991507e-03 1.1756644626e-03 2.3132709330e-04 9.6056427590e-06 0.0000000000e+00 7.7403942836e-01 2.0542652918e+00 8.7387352427e+00 1.0889439813e+00 1.2600000000e+00 6.3996336730e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +5.5749216527e-01 1.6185627127e+01 1.6185627127e+00 2.1092879359e+01 2.1092879359e+00 2.0840901888e+00 2.0602670669e+00 2.0357321013e+00 2.0098749416e+00 1.9859058677e+00 1.9600565641e+00 1.9346871940e+00 1.9111914128e+00 1.8861604419e+00 1.8598197926e+00 1.8358595358e+00 1.8084357334e+00 1.7820934053e+00 1.7563365522e+00 1.7312681888e+00 1.7066446411e+00 1.6809098617e+00 1.6548713506e+00 1.6290813959e+00 1.6028581251e+00 1.5776087513e+00 1.5507618958e+00 1.5270302177e+00 1.5006856562e+00 1.4764559238e+00 1.4499455679e+00 1.4243031953e+00 1.3986015621e+00 1.3735139808e+00 1.3468845391e+00 1.3217583288e+00 1.2970831257e+00 1.2718129245e+00 1.2468546999e+00 1.2210968254e+00 1.1958558939e+00 1.1701331832e+00 1.1435151775e+00 1.1180997720e+00 1.0917289987e+00 1.0666529617e+00 1.0412907179e+00 1.0153295433e+00 9.8727454483e-01 9.6156059730e-01 9.3626757030e-01 9.1033189006e-01 8.8535841762e-01 8.5975514147e-01 8.3495324951e-01 8.0862125259e-01 7.8457203512e-01 7.5893330076e-01 7.3536195021e-01 7.1142068494e-01 6.8665198732e-01 6.6287565540e-01 6.3797449953e-01 6.1437950099e-01 5.9139923817e-01 5.6734956923e-01 5.4245622445e-01 5.1810515062e-01 4.9566329464e-01 4.7327709134e-01 4.5172274567e-01 4.2867304273e-01 4.0654029097e-01 3.8486740060e-01 3.6380145490e-01 3.4176902783e-01 3.2194197357e-01 3.0169568381e-01 2.8140045703e-01 2.6123290456e-01 2.4274154439e-01 2.2423540429e-01 2.0545520168e-01 1.8823620004e-01 1.7076063818e-01 1.5355333449e-01 1.3788021244e-01 1.2401005052e-01 1.0890097928e-01 9.4870772897e-02 8.2024343828e-02 6.9708425061e-02 5.8924890840e-02 4.7915841031e-02 3.8646550225e-02 3.0402339505e-02 2.2664476281e-02 1.5650238092e-02 1.0356299986e-02 5.9567779028e-03 3.0708443044e-03 1.1135261857e-03 2.3523524919e-04 8.3697500555e-06 0.0000000000e+00 7.7057872007e-01 2.0383491583e+00 8.5989306804e+00 1.0867333244e+00 1.2500000000e+00 6.3420436164e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +======iDiffSys= 3 nPDFA= 1 ====== +2 1.0000000000e+01 1.0000000000e+01 0.0000000000e+00 +4.0641178848e-01 1.2569071415e+01 1.2569071415e+00 1.5746206863e+01 1.5746206863e+00 1.5573001846e+00 1.5399918454e+00 1.5220192208e+00 1.5036994703e+00 1.4857765485e+00 1.4690662320e+00 1.4512076819e+00 1.4336428145e+00 1.4169781514e+00 1.3992062278e+00 1.3814845862e+00 1.3633115091e+00 1.3447846874e+00 1.3258880175e+00 1.3077369236e+00 1.2897783970e+00 1.2715563501e+00 1.2536861120e+00 1.2341317333e+00 1.2171136704e+00 1.2000905026e+00 1.1821764249e+00 1.1655929291e+00 1.1463176660e+00 1.1276896096e+00 1.1091598999e+00 1.0907516492e+00 1.0719257965e+00 1.0529493013e+00 1.0336052933e+00 1.0160893476e+00 9.9760763530e-01 9.7941632125e-01 9.6019025556e-01 9.4173467923e-01 9.2242079506e-01 9.0378972941e-01 8.8492883527e-01 8.6614366375e-01 8.4775716457e-01 8.2859476890e-01 8.1017227452e-01 7.9138350689e-01 7.7211374431e-01 7.5333363584e-01 7.3432371500e-01 7.1477389931e-01 6.9745610651e-01 6.7811107195e-01 6.5917307037e-01 6.4005252787e-01 6.2122117338e-01 6.0302196361e-01 5.8409403380e-01 5.6641839481e-01 5.4720969195e-01 5.2847444160e-01 5.0977266112e-01 4.9270544265e-01 4.7496670226e-01 4.5678645703e-01 4.3933939134e-01 4.2166395118e-01 4.0362226676e-01 3.8746034651e-01 3.7070546257e-01 3.5375728336e-01 3.3605450231e-01 3.1953471272e-01 3.0220857950e-01 2.8660487398e-01 2.7137559225e-01 2.5565936856e-01 2.4008207027e-01 2.2536435871e-01 2.1066419712e-01 1.9673354326e-01 1.8262581897e-01 1.6884973909e-01 1.5512722689e-01 1.4166054687e-01 1.2921979594e-01 1.1720994294e-01 1.0589196234e-01 9.4508899473e-02 8.3336843353e-02 7.2578095972e-02 6.2603152129e-02 5.3816175633e-02 4.5407542218e-02 3.7714352086e-02 3.0395371301e-02 2.3311198060e-02 1.6971729676e-02 1.1593519045e-02 6.8938154019e-03 3.3912764085e-03 1.1504883112e-03 1.3189466223e-04 0.0000000000e+00 5.9908034620e-01 1.4127563862e+00 4.4491108614e+00 1.0079506481e+00 9.5000000000e-01 5.0008908050e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 +4.0641178848e-01 1.2036123273e+01 1.2036123273e+00 1.5715949948e+01 1.5715949948e+00 1.5550296562e+00 1.5372717963e+00 1.5186984866e+00 1.5010495180e+00 1.4835235931e+00 1.4661778473e+00 1.4481979564e+00 1.4294161140e+00 1.4123366423e+00 1.3945243982e+00 1.3763902288e+00 1.3601206451e+00 1.3416443608e+00 1.3234324909e+00 1.3045262682e+00 1.2867588578e+00 1.2690842775e+00 1.2509834025e+00 1.2332422025e+00 1.2151445093e+00 1.1970866868e+00 1.1781788626e+00 1.1598906053e+00 1.1418042217e+00 1.1229024506e+00 1.1052852782e+00 1.0866969865e+00 1.0684259858e+00 1.0500761734e+00 1.0323142196e+00 1.0142403972e+00 9.9570666447e-01 9.7705174736e-01 9.5831156147e-01 9.4066276329e-01 9.2178128305e-01 9.0345312643e-01 8.8335932507e-01 8.6339765891e-01 8.4541732445e-01 8.2567714094e-01 8.0579724965e-01 7.8700139924e-01 7.6898400975e-01 7.5064985394e-01 7.3117454356e-01 7.1263563866e-01 6.9347476299e-01 6.7445486204e-01 6.5508348566e-01 6.3634044007e-01 6.1802486314e-01 5.9892559569e-01 5.7983760158e-01 5.6165302805e-01 5.4330857872e-01 5.2493571884e-01 5.0647698703e-01 4.8970350221e-01 4.7132377360e-01 4.5220871028e-01 4.3603906236e-01 4.1835074922e-01 4.0070723073e-01 3.8330541653e-01 3.6589033219e-01 3.5000545407e-01 3.3403812955e-01 3.1699816442e-01 3.0094566855e-01 2.8541398911e-01 2.7003139232e-01 2.5445607840e-01 2.3955170397e-01 2.2475034985e-01 2.0999395637e-01 1.9528492970e-01 1.8066836913e-01 1.6578567717e-01 1.5305802153e-01 1.4015605216e-01 1.2683458353e-01 1.1444313436e-01 1.0275215029e-01 9.2046713273e-02 8.1831598058e-02 7.1721307833e-02 6.2047271814e-02 5.3131376751e-02 4.4188701157e-02 3.6292071702e-02 2.9246248078e-02 2.2785365095e-02 1.6982942766e-02 1.1403000616e-02 7.0098357703e-03 3.4538501083e-03 1.2241129042e-03 1.4301537086e-04 0.0000000000e+00 5.9754961241e-01 1.4080993430e+00 4.4259237595e+00 1.0074272266e+00 9.5000000000e-01 5.0139539035e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index 4ec8927b..08635ff9 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -1,24 +1,27 @@ from chromo.kinematics import CenterOfMass from chromo.models import Pythia8 from chromo.constants import GeV, long_lived -from chromo.util import _cache_base_dir, name2pdg +from chromo.util import name2pdg import numpy as np from numpy.testing import assert_allclose, assert_equal from .util import reference_charge import pytest from functools import lru_cache import sys -import os - +from pathlib import Path +import tempfile pytestmark = pytest.mark.skipif( sys.platform == "win32", reason="Pythia8 does not run on windows" ) +THIS_TEST = Path(__file__).stem +CACHE_PATH = Path(__file__).parent / "data" / THIS_TEST + def run_collision(energy, p1, p2): evt_kin = CenterOfMass(energy, p1, p2) - m = Pythia8(evt_kin, seed=4) + m = Pythia8(evt_kin, seed=4, cache=CACHE_PATH) for event in m(1): pass return event @@ -26,7 +29,7 @@ def run_collision(energy, p1, p2): def run_cross_section(energy, p1, p2): evt_kin = CenterOfMass(energy, p1, p2) - m = Pythia8(evt_kin, seed=1) + m = Pythia8(evt_kin, seed=1, cache=CACHE_PATH) return m.cross_section() @@ -134,7 +137,7 @@ def test_photo_hadron_collision(): def test_changing_beams_proton(): evt_kin = CenterOfMass(10 * GeV, "p", "p") - m = Pythia8(evt_kin, seed=1) + m = Pythia8(evt_kin, seed=1, cache=CACHE_PATH) for event in m(1): assert_allclose(event.en[:2], 5 * GeV) m.kinematics = CenterOfMass(100 * GeV, "p", "p") @@ -148,7 +151,7 @@ def test_event(event): def test_elastic(): evt_kin = CenterOfMass(10 * GeV, "p", "p") - m = Pythia8(evt_kin, seed=1, config=["SoftQCD:elastic=on"]) + m = Pythia8(evt_kin, seed=1, config=["SoftQCD:elastic=on"], cache=CACHE_PATH) for event in m(10): assert len(event) == 4 assert_equal(event.pid, [2212] * 4) @@ -156,7 +159,7 @@ def test_elastic(): def test_gamma_p(): evt_kin = CenterOfMass(10 * GeV, "gamma", "p") - m = Pythia8(evt_kin, seed=1) + m = Pythia8(evt_kin, seed=1, cache=CACHE_PATH) for event in m(10): assert len(event) > 2 @@ -164,7 +167,7 @@ def test_gamma_p(): @pytest.mark.parametrize("seed", (None, 0, 1, int(1e10))) def test_seed(seed): evt_kin = CenterOfMass(10 * GeV, "p", "p") - m = Pythia8(evt_kin, seed=seed) + m = Pythia8(evt_kin, seed=seed, cache=CACHE_PATH) if seed is None: assert m.seed >= 0 else: @@ -173,7 +176,7 @@ def test_seed(seed): def test_get_stable(): evt_kin = CenterOfMass(10 * GeV, "p", "p") - m = Pythia8(evt_kin, seed=1) + m = Pythia8(evt_kin, seed=1, cache=CACHE_PATH) assert m._get_stable() == set(long_lived) @@ -188,30 +191,49 @@ def test_gg(): assert len(evt) > 2 -def test_cache_file(): +def test_cache_file(capsys): evt_kin = CenterOfMass(10 * GeV, "p", "p") - m = Pythia8(evt_kin, seed=1, cache=True) - - config_lines = "\n".join(m._config) - assert "MultipartonInteractions:reuseInit = 3" in config_lines - - cache_file_path = os.path.join( - _cache_base_dir(), "Pythia8", "cache_2212_2212_10000.mpi" - ) - assert os.path.exists(cache_file_path) - assert os.path.getsize(cache_file_path) > 0 - - -def test_cache_file_heavy_ion(): - evt_kin = CenterOfMass(2000 * GeV, "p", "He") - m = Pythia8(evt_kin, seed=1, cache=True) - - config_lines = "\n".join(m._config) - assert "HeavyIon:SasdMpiReuseInit = 3" in config_lines - assert "HeavyIon:SigFitReuseInit = 3" in config_lines - - cache_file_path = os.path.join( - _cache_base_dir(), "Pythia8", "cache_2212_1000020040_2000000.mpi" - ) - assert os.path.exists(cache_file_path) - assert os.path.getsize(cache_file_path) > 0 + config = ["Print:quiet = off", "SoftQCD:inelastic = on"] + with tempfile.TemporaryDirectory() as cache_dir: + Pythia8(evt_kin, seed=1, config=config, cache=cache_dir) + out, _ = capsys.readouterr() + assert ( + "MultipartonInteractions::init: wrote initialization data to file" + ) in out + + # we initialize again, now the cache should be used + Pythia8(evt_kin, seed=1, config=config, cache=cache_dir) + out, _ = capsys.readouterr() + assert ( + "MultipartonInteractions::init: wrote initialization data to file" + ) not in out + + +def test_cache_file_heavy_ion(capsys): + evt_kin = CenterOfMass(1000 * GeV, "p", "He") + config = ["Print:quiet = off", "SoftQCD:inelastic = on"] + with tempfile.TemporaryDirectory() as cache_dir: + Pythia8(evt_kin, seed=1, config=config, cache=cache_dir) + out, _ = capsys.readouterr() + assert ( + "SubCollisionModel::init: wrote initialization configuration to file" + ) in out + assert ( + "MultipartonInteractions::init: wrote initialization data to file" + ) in out + # we initialize again, now the cache should be used + Pythia8(evt_kin, seed=1, config=config, cache=cache_dir) + out, _ = capsys.readouterr() + assert ( + "SubCollisionModel::init: wrote initialization configuration to file" + ) not in out + assert ( + "MultipartonInteractions::init: wrote initialization data to file" + ) not in out + + +def test_no_cache_file(): + evt_kin = CenterOfMass(100 * GeV, "p", "p") + m = Pythia8(evt_kin, seed=1, cache=None) + config = "\n".join(m._config) + assert "MultipartonInteractions:reuseInit = 3" not in config diff --git a/tests/test_util.py b/tests/test_util.py index 10984a35..db2e8fac 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -101,7 +101,9 @@ def test_is_real_nucleus(): def test_dump_to_url(): - obj = ["foo", "barian", "bazzer"] - s = util.dump_to_url(obj) + config = ["foo", "barian", "bazzer"] + s = util.dump_to_url(config) assert type(s) is str - assert util.load_from_url(s) == obj + assert ( + s == "H4sIAAAAAAAC_2tgmSrLAAGxUzR6mNPy86f0sCUlFmUm5oEZVVWpRVNS9QCPoG78KAAAAA==" + ) From 8b4d09e79f8616c97cacf4a4c2714534ab5aaee2 Mon Sep 17 00:00:00 2001 From: Hans Dembinski Date: Wed, 31 Jan 2024 09:04:47 +0100 Subject: [PATCH 27/30] include version in the cache key --- src/chromo/models/pythia8.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 46bffb72..84a47bb0 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -168,7 +168,7 @@ def __init__( ] if evt_kin is not None and cache: - cf = str(Path(cache) / dump_to_url(self._config)) + cf = str(Path(cache) / dump_to_url([self.version] + self._config)) # beware: exact suffix seems to matter! self._config += [ "MultipartonInteractions:reuseInit = 3", From 623718e9dbe48260cf0a364cbe3679d73b39fa77 Mon Sep 17 00:00:00 2001 From: Hans Dembinski Date: Wed, 31 Jan 2024 09:09:09 +0100 Subject: [PATCH 28/30] cosmetics --- tests/test_util.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_util.py b/tests/test_util.py index db2e8fac..30dd1e15 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -101,8 +101,8 @@ def test_is_real_nucleus(): def test_dump_to_url(): - config = ["foo", "barian", "bazzer"] - s = util.dump_to_url(config) + d = ["foo", "barian", "bazzer"] + s = util.dump_to_url(d) assert type(s) is str assert ( s == "H4sIAAAAAAAC_2tgmSrLAAGxUzR6mNPy86f0sCUlFmUm5oEZVVWpRVNS9QCPoG78KAAAAA==" From 058e1d651b11952b1b36359badcfc159f956b277 Mon Sep 17 00:00:00 2001 From: afedynitch Date: Sat, 30 Mar 2024 14:25:58 +0800 Subject: [PATCH 29/30] Enforce correct type for cache variable --- src/chromo/models/pythia8.py | 4 +++- tests/test_pythia8.py | 7 +++++++ tests/test_util.py | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 8d9b1776..9b337824 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -169,7 +169,9 @@ def __init__( ] if evt_kin is not None and cache: - cf = str(Path(cache) / dump_to_url([self.version] + self._config)) + if not isinstance(cache, str) or isinstance(cache, Path): + raise ValueError("cache must be a string or a Path object.") + cf = str(Path(cache) / str(dump_to_url([self.version] + self._config))) # beware: exact suffix seems to matter! self._config += [ "MultipartonInteractions:reuseInit = 3", diff --git a/tests/test_pythia8.py b/tests/test_pythia8.py index 15931ca9..557fddbf 100644 --- a/tests/test_pythia8.py +++ b/tests/test_pythia8.py @@ -236,3 +236,10 @@ def test_no_cache_file(): m = Pythia8(evt_kin, seed=1, cache=None) config = "\n".join(m._config) assert "MultipartonInteractions:reuseInit = 3" not in config + + +def test_cache_input_type(): + evt_kin = CenterOfMass(100 * GeV, "p", "p") + # Expect to raise exception if cache is not a string + with pytest.raises(ValueError): + m = Pythia8(evt_kin, seed=1, cache=5) diff --git a/tests/test_util.py b/tests/test_util.py index 30dd1e15..38b7cc63 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -105,5 +105,5 @@ def test_dump_to_url(): s = util.dump_to_url(d) assert type(s) is str assert ( - s == "H4sIAAAAAAAC_2tgmSrLAAGxUzR6mNPy86f0sCUlFmUm5oEZVVWpRVNS9QCPoG78KAAAAA==" + s == "H4sIAAAAAAACA2tgmSrLAAGxUzR6mNPy86f0sCUlFmUm5oEZVVWpRVNS9QCPoG78KAAAAA==" ) From 05b5bd1f6698774542e5493fc38296d3418c94bb Mon Sep 17 00:00:00 2001 From: afedynitch Date: Fri, 12 Apr 2024 17:36:14 +0800 Subject: [PATCH 30/30] Fix cache type check --- src/chromo/models/pythia8.py | 42 ++++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 18 deletions(-) diff --git a/src/chromo/models/pythia8.py b/src/chromo/models/pythia8.py index 9b337824..0a66fcc9 100644 --- a/src/chromo/models/pythia8.py +++ b/src/chromo/models/pythia8.py @@ -7,7 +7,7 @@ from particle import literals as lp import warnings from typing import Collection, List -from pathlib import Path +from pathlib import Path, PurePath class PYTHIA8Event(EventData): @@ -83,21 +83,25 @@ class Pythia8(MCRun): _event_class = PYTHIA8Event _frame = EventFrame.CENTER_OF_MASS # Support for more nuclei can be added with ParticleData.addParticle. - _targets = standard_projectiles | { - name2pdg(x) - for x in ( - "H2", - "He4", - "Li6", - "C12", - "O16", - "Cu63", - "Kr84", - "Xe129", - "Au197", - "Pb208", - ) - } + _targets = ( + standard_projectiles + | { + name2pdg(x) + for x in ( + "H2", + "He4", + "Li6", + "C12", + "O16", + "Cu63", + "Kr84", + "Xe129", + "Au197", + "Pb208", + ) + } + | {lp.photon.pdgid} + ) _projectiles = _targets | {lp.photon.pdgid} _restartable = True _data_url = ( @@ -169,8 +173,10 @@ def __init__( ] if evt_kin is not None and cache: - if not isinstance(cache, str) or isinstance(cache, Path): - raise ValueError("cache must be a string or a Path object.") + if not isinstance(cache, (str, PurePath)): + raise ValueError( + f"cache must be a string or a Path object not {type(cache)}." + ) cf = str(Path(cache) / str(dump_to_url([self.version] + self._config))) # beware: exact suffix seems to matter! self._config += [