Compare commits

..

No commits in common. "rawhide" and "f34" have entirely different histories.

6 changed files with 135 additions and 324 deletions

View file

@ -1,50 +0,0 @@
From d49e808ed6c027db3a682a731d74ec3ffa7c6076 Mon Sep 17 00:00:00 2001
From: Andy Buckley <andy.buckley@cern.ch>
Date: Mon, 9 Mar 2026 19:33:39 +0000
Subject: [PATCH] Correct the lhapdf-config help message to use --includedir
rather than --incdir, but also add a backward-compatibility handling for
--incdir if given. Thanks to Mark Sutton.
---
ChangeLog | 6 ++++++
bin/lhapdf-config.in | 3 ++-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/ChangeLog b/ChangeLog
index cd35d70..7eabc3f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2026-03-09 Andy Buckley <andy.buckley@cern.ch>
+
+ * Correct the lhapdf-config help message to use --includedir
+ rather than --incdir, but also add a backward-compatibility
+ handling for --incdir if given. Thanks to Mark Sutton.
+
2026-02-19 Andy Buckley <andy.buckley@cern.ch>
* Version 6.5.6 release.
diff --git a/bin/lhapdf-config.in b/bin/lhapdf-config.in
index b62a217..d13b6f1 100644
--- a/bin/lhapdf-config.in
+++ b/bin/lhapdf-config.in
@@ -13,7 +13,7 @@ Options:
--help | -h : show this help message
--prefix : show the installation prefix (cf. autoconf)
- --incdir : show the path to the LHAPDF C++ header directory
+ --includedir : show the path to the LHAPDF C++ header directory
--libdir : show the path to the LHAPDF library directory
--datadir : show the path to the LHAPDF data directory
--pythonpath|--pydir : show the path(s) to the directory containing LHAPDF's Python package
@@ -48,6 +48,7 @@ for opt in "$@"; do
--version) echo "@PACKAGE_VERSION@" && exit 0 ;;
--prefix) show_prefix=1 ;;
--includedir) show_incdir=1 ;;
+ --incdir) show_incdir=1 ;; #< TODO: for backward compatibility from 6.5.7, remove eventually
--libdir) show_libdir=1 ;;
--datadir) show_datdir=1 ;;
--pythonpath) show_pypath=1 ;;
--
2.53.0

View file

@ -1,76 +0,0 @@
From d4dd6202016754052f7f7f0cfedd3913a08afbbf Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Fri, 3 Apr 2026 07:45:56 +0200
Subject: [PATCH] Fix double -I in lhapdf-config --cflags output Don't put
-L/usr/lib and -L/usr/lib64 in build flags Fix pkg-config --define-variable
libdir=/path --libs lhapdf
---
ChangeLog | 6 ++++++
bin/lhapdf-config.in | 2 +-
configure | 9 +++++++--
lhapdf.pc.in | 4 ++--
4 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 7eabc3f..74f4c7e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2026-04-03 Mattias Ellert <mattias.ellert@physics.uu.se>
+
+ * Fix double -I in lhapdf-config --cflags output
+ * Don't put -L/usr/lib and -L/usr/lib64 in build flags
+ * Fix pkg-config --define-variable libdir=/path --libs lhapdf
+
2026-03-09 Andy Buckley <andy.buckley@cern.ch>
* Correct the lhapdf-config help message to use --includedir
diff --git a/bin/lhapdf-config.in b/bin/lhapdf-config.in
index d13b6f1..4b5afcd 100644
--- a/bin/lhapdf-config.in
+++ b/bin/lhapdf-config.in
@@ -102,7 +102,7 @@ if [ "$show_iflags" -eq 1 ]; then
ilhapdf="@includedir@"
test -n "$ilhapdf" && OUT="$OUT -I${ilhapdf}"
iyamlcpp="@YAML_CPP_CPPFLAGS@"
- test -n "$iyamlcpp" && OUT="$OUT -I${iyamlcpp}"
+ test -n "$iyamlcpp" && OUT="$OUT ${iyamlcpp}"
fi
if [ "$show_Lflags" -eq 1 ]; then
llhapdf="@libdir@"
diff --git a/configure b/configure
index 7fafae6..d530cd7 100644
--- a/configure
+++ b/configure
@@ -19972,8 +19972,13 @@
YAML_CPP_CPPFLAGS=""
YAML_CPP_LDFLAGS=""
if test "x$yaml_cpp_prefix" != "xno"; then
- YAML_CPP_CPPFLAGS="-I$yaml_cpp_prefix/include"
- YAML_CPP_LDFLAGS="-L$yaml_cpp_prefix/lib -L$yaml_cpp_prefix/lib64 -lyaml-cpp"
+ if test "x$yaml_cpp_prefix" = "x/usr"; then
+ YAML_CPP_CPPFLAGS=""
+ YAML_CPP_LDFLAGS="-lyaml-cpp"
+ else
+ YAML_CPP_CPPFLAGS="-I$yaml_cpp_prefix/include"
+ YAML_CPP_LDFLAGS="-L$yaml_cpp_prefix/lib -L$yaml_cpp_prefix/lib64 -lyaml-cpp"
+ fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for main in -lyaml-cpp" >&5
printf %s "checking for main in -lyaml-cpp... " >&6; }
if test ${ac_cv_lib_yaml_cpp_main+y}
diff --git a/lhapdf.pc.in b/lhapdf.pc.in
index 964d0ae..1a7d80a 100644
--- a/lhapdf.pc.in
+++ b/lhapdf.pc.in
@@ -8,5 +8,5 @@ Name: lhapdf
Description: LHAPDF parton density library
URL: https://lhapdf.hepforge.org
Version: @VERSION@
-Libs: -L@libdir@ @YAML_CPP_LDFLAGS@ -lLHAPDF
-Cflags: -I@includedir@ @YAML_CPP_CPPFLAGS@
+Libs: -L${libdir} @YAML_CPP_LDFLAGS@ -lLHAPDF
+Cflags: -I${includedir} @YAML_CPP_CPPFLAGS@
--
2.53.0

42
lhapdf-soname.patch Normal file
View file

@ -0,0 +1,42 @@
diff -ur LHAPDF-6.3.0.orig/src/Makefile.am LHAPDF-6.3.0/src/Makefile.am
--- LHAPDF-6.3.0.orig/src/Makefile.am 2020-07-01 16:34:05.000000000 +0200
+++ LHAPDF-6.3.0/src/Makefile.am 2020-07-17 14:22:47.194614043 +0200
@@ -26,6 +26,7 @@
libLHAPDFPaths_la_CPPFLAGS = $(AM_CPPFLAGS) -DLHAPDF_INSTALL_PREFIX=\"$(prefix)\" -DLHAPDF_DATA_PREFIX=\"$(datadir)\"
libLHAPDF_la_LIBADD = libLHAPDFInfo.la libLHAPDFPaths.la
+libLHAPDF_la_LDFLAGS = -release ${PACKAGE_VERSION}
if ENABLE_LHAGLUE
noinst_LTLIBRARIES += libLHAPDFGlue.la
Endast i LHAPDF-6.3.0/src/: Makefile.am~
diff -ur LHAPDF-6.3.0.orig/src/Makefile.in LHAPDF-6.3.0/src/Makefile.in
--- LHAPDF-6.3.0.orig/src/Makefile.in 2020-07-17 14:26:10.714078898 +0200
+++ LHAPDF-6.3.0/src/Makefile.in 2020-07-17 14:23:06.041656793 +0200
@@ -150,6 +150,9 @@
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 =
+libLHAPDF_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+ $(CXXFLAGS) $(libLHAPDF_la_LDFLAGS) $(LDFLAGS) -o $@
libLHAPDFGlue_la_LIBADD =
am__libLHAPDFGlue_la_SOURCES_DIST = LHAGlue.cc
@ENABLE_LHAGLUE_TRUE@am_libLHAPDFGlue_la_OBJECTS = \
@@ -448,6 +451,7 @@
libLHAPDFPaths_la_CPPFLAGS = $(AM_CPPFLAGS) -DLHAPDF_INSTALL_PREFIX=\"$(prefix)\" -DLHAPDF_DATA_PREFIX=\"$(datadir)\"
libLHAPDF_la_LIBADD = libLHAPDFInfo.la libLHAPDFPaths.la \
$(am__append_3)
+libLHAPDF_la_LDFLAGS = -release ${PACKAGE_VERSION}
@ENABLE_LHAGLUE_TRUE@libLHAPDFGlue_la_SOURCES = LHAGlue.cc
@ENABLE_LHAGLUE_TRUE@libLHAPDFGlue_la_CPPFLAGS = $(AM_CPPFLAGS) -DENABLE_LHAGLUE_CXX
all: all-recursive
@@ -531,7 +535,7 @@
}
libLHAPDF.la: $(libLHAPDF_la_OBJECTS) $(libLHAPDF_la_DEPENDENCIES) $(EXTRA_libLHAPDF_la_DEPENDENCIES)
- $(AM_V_CXXLD)$(CXXLINK) -rpath $(libdir) $(libLHAPDF_la_OBJECTS) $(libLHAPDF_la_LIBADD) $(LIBS)
+ $(AM_V_CXXLD)$(libLHAPDF_la_LINK) -rpath $(libdir) $(libLHAPDF_la_OBJECTS) $(libLHAPDF_la_LIBADD) $(LIBS)
libLHAPDFGlue.la: $(libLHAPDFGlue_la_OBJECTS) $(libLHAPDFGlue_la_DEPENDENCIES) $(EXTRA_libLHAPDFGlue_la_DEPENDENCIES)
$(AM_V_CXXLD)$(CXXLINK) $(am_libLHAPDFGlue_la_rpath) $(libLHAPDFGlue_la_OBJECTS) $(libLHAPDFGlue_la_LIBADD) $(LIBS)

View file

@ -1,33 +1,32 @@
Name: lhapdf
Version: 6.5.6
Release: 6%{?dist}
Version: 6.4.0
Release: 1%{?dist}
Summary: Les Houches Accord PDF Interface
License: GPL-3.0-only
License: GPLv3+
URL: https://lhapdf.hepforge.org/
Source0: https://www.hepforge.org/archive/lhapdf/LHAPDF-%{version}.tar.gz
# PDFs used during testing
Source1: https://lhapdfsets.web.cern.ch/current/CT10nlo.tar.gz
Source2: https://lhapdfsets.web.cern.ch/current/MSTW2008nlo68cl.tar.gz
Source3: https://lhapdfsets.web.cern.ch/current/NNPDF31_lo_as_0130.tar.gz
# Missing file in source tarfile
# See: https://gitlab.com/hepcedar/lhapdf/-/merge_requests/120
Source4: testunc.py
# https://gitlab.com/hepcedar/lhapdf/-/merge_requests/123
Patch0: 0001-Correct-the-lhapdf-config-help-message-to-use-includ.patch
# https://gitlab.com/hepcedar/lhapdf/-/merge_requests/124
Patch1: 0001-Fix-double-I-in-lhapdf-config-cflags-output.patch
# Add soname to the shared library, cf. SuSE's spec file.
Patch0: %{name}-soname.patch
BuildRequires: make
BuildRequires: gcc-c++
BuildRequires: yaml-cpp-devel
BuildRequires: python3-Cython
BuildRequires: python3-devel
BuildRequires: python%{python3_pkgversion}-Cython
%if %{?rhel}%{!?rhel:0} == 7
BuildRequires: python2-devel
%endif
BuildRequires: python%{python3_pkgversion}-devel
%if %{?rhel}%{!?rhel:0} == 7
BuildRequires: python%{python3_other_pkgversion}-devel
%endif
BuildRequires: doxygen
# Obsolete LHAPDF5 packages not provided by LHAPDF6
Obsoletes: octave-lhapdf < 6
Obsoletes: lhapdf-pdfsets-minimal < 6
%if %{?rhel}%{!?rhel:0} != 7
Obsoletes: python2-lhapdf < %{version}-%{release}
%endif
%description
LHAPDF is a general purpose C++ interpolator, used for evaluating PDFs
@ -57,22 +56,48 @@ LHAPDF6 is documented in more detail in http://arxiv.org/abs/1412.7420
%package devel
Summary: Les Houches Accord PDF Interface - development files
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: yaml-cpp-devel
%description devel
This package provides development files of LHAPDF, including C++ bindings.
%package -n python3-%{name}
Summary: Les Houches Accord PDF Interface - Python 3 module
%py_provides python3-%{name}
%if %{?rhel}%{!?rhel:0} == 7
%package -n python2-%{name}
Summary: Les Houches Accord PDF Interface - Python 2 module
%{?python_provide:%python_provide python2-%{name}}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description -n python3-%{name}
This package provides Python 3 bindings for LHAPDF.
%description -n python2-%{name}
This package provides Python 2 bindings for LHAPDF.
This package also provides a script called "lhapdf" which can be used
to query the catalog of PDF sets and to install and update them from
the command line. It accepts commands "list", "update", "install" and
"upgrade". Please run "lhapdf help" for full usage instructions.
%endif
%package -n python%{python3_pkgversion}-%{name}
Summary: Les Houches Accord PDF Interface - Python 3 module
%{?python_provide:%python_provide python%{python3_pkgversion}-%{name}}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description -n python%{python3_pkgversion}-%{name}
This package provides Python 3 bindings for LHAPDF.
%if %{?rhel}%{!?rhel:0} != 7
This package also provides a script called "lhapdf" which can be used
to query the catalog of PDF sets and to install and update them from
the command line. It accepts commands "list", "update", "install" and
"upgrade". Please run "lhapdf help" for full usage instructions.
%endif
%if %{?rhel}%{!?rhel:0} == 7
%package -n python%{python3_other_pkgversion}-%{name}
Summary: Les Houches Accord PDF Interface - Python 3 module
%{?python_provide:%python_provide python%{?python3_other_pkgversion}-%{name}}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description -n python%{python3_other_pkgversion}-%{name}
This package provides Python 3 bindings for LHAPDF.
%endif
%package doc
Summary: Les Houches Accord PDF Interface - documentation
@ -83,67 +108,53 @@ This package provides API documentation and examples for LHAPDF.
%prep
%setup -q -n LHAPDF-%{version}
%patch -P0 -p1
%patch -P1 -p1
%patch0 -p1
mkdir tests/SETS
tar -z -x -f %{SOURCE1} -C tests/SETS
tar -z -x -f %{SOURCE2} -C tests/SETS
tar -z -x -f %{SOURCE3} -C tests/SETS
# Remove cython generated file
rm wrappers/python/lhapdf.cpp
cp -p %{SOURCE4} tests
# Remove bundled yaml-cpp
rm -rf src/yamlcpp/
%if %{?rhel}%{!?rhel:0} == 7
sed 's!cython!cython%{python3_version}!' \
-i wrappers/python/Makefile.am wrappers/python/Makefile.in
%endif
# Fix shebangs
sed 's!/usr/bin/env python3!%{__python3}!' -i bin/lhapdf
sed 's!/usr/bin/env python!%{__python3}!' -i examples/*.py
%if %{?rhel}%{!?rhel:0} != 7
sed 's!/usr/bin/env python!%{__python3}!' -i bin/lhapdf examples/*.py
%else
sed 's!/usr/bin/env python!%{__python2}!' -i bin/lhapdf examples/*.py
%endif
sed 's!/usr/bin/env bash!/bin/bash!' -i bin/lhapdf-config.in
%build
%configure \
--disable-static \
--with-yaml-cpp \
--enable-librelease \
--docdir=%{_pkgdocdir} \
PYTHON=%{__python3}
%if %{?rhel}%{!?rhel:0} == 8
# cython version on RHEL 8 is too old and generates broken code.
# touch the pregenerated bundled source file to prevent regeneration.
# See: https://gitlab.com/hepcedar/lhapdf/-/merge_requests/122
touch wrappers/python/lhapdf.cpp
%else
rm wrappers/python/lhapdf.cpp
%endif
%configure --disable-static --disable-silent-rules PYTHON=%{__python3}
%make_build
%if %{?rhel}%{!?rhel:0} == 7
( cd wrappers/python ; %make_build PYTHON=%{__python2} )
( cd wrappers/python ; %make_build PYTHON=%{__python3_other} )
%endif
# Build doxygen documentation
%make_build doxy
%install
%make_install
mkdir %{buildroot}%{python3_sitearch}/%{name}-%{version}.dist-info
cat << EOF > %{buildroot}%{python3_sitearch}/%{name}-%{version}.dist-info/METADATA
Name: %{name}
Version: %{version}
EOF
%if %{?rhel}%{!?rhel:0} == 7
( cd wrappers/python ; %make_install PYTHON=%{__python2} )
( cd wrappers/python ; %make_install PYTHON=%{__python3_other} )
%endif
rm %{buildroot}%{_libdir}/libLHAPDF.la
find %{buildroot}%{_pkgdocdir}/examples -type f -a '!' -name '*.*' -delete
rm examples/Makefile*
%check
# Workaround incomplete test environment
# See: https://gitlab.com/hepcedar/lhapdf/-/merge_requests/121
cp -p pdfsets.index tests/SETS
cp -p lhapdf.conf tests/SETS
export PYTHONPATH=$PWD/wrappers/python/build
export LD_LIBRARY_PATH=$PWD/src/.libs
%make_build check
%ldconfig_scriptlets
%files
%{_libdir}/libLHAPDF-%{version}.so
%{_datadir}/LHAPDF
@ -156,100 +167,32 @@ export LD_LIBRARY_PATH=$PWD/src/.libs
%{_libdir}/libLHAPDF.so
%{_libdir}/pkgconfig/%{name}.pc
%files -n python3-%{name}
%if %{?rhel}%{!?rhel:0} == 7
%files -n python2-%{name}
%{_bindir}/%{name}
%{python3_sitearch}/%{name}-%{version}.dist-info
%{python3_sitearch}/%{name}
%{python2_sitearch}/LHAPDF-*.egg-info
%{python2_sitearch}/%{name}.so
%endif
%files -n python%{python3_pkgversion}-%{name}
%if %{?rhel}%{!?rhel:0} != 7
%{_bindir}/%{name}
%endif
%{python3_sitearch}/LHAPDF-*.egg-info
%{python3_sitearch}/%{name}.*.so
%if %{?rhel}%{!?rhel:0} == 7
%files -n python%{python3_other_pkgversion}-%{name}
%{python3_other_sitearch}/LHAPDF-*.egg-info
%{python3_other_sitearch}/%{name}.*.so
%endif
%files doc
%doc %{_pkgdocdir}/doxygen
%doc %{_pkgdocdir}/examples
%doc doc/doxygen
%doc examples
%license COPYING
%changelog
* Wed Jul 22 2026 Python Maint <python-maint@redhat.com> - 6.5.6-6
- Rebuilt for Python 3.15.0b4 ABI change
* Thu Jul 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Wed Jun 03 2026 Python Maint <python-maint@redhat.com> - 6.5.6-4
- Rebuilt for Python 3.15
* Fri Apr 03 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.5.6-3
- More fixes to lhapdf-config and lhapdf.pc
* Sat Mar 28 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.5.6-2
- Correct the lhapdf-config output (backport from upstream git)
* Thu Mar 05 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.5.6-1
- Update to version 6.5.6
- Add PDFs used by new tests to the source RPM
- Add test file missing from the source tarfile to the source RPM
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.5-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Fri Dec 05 2025 Orion Poplawski <orion@nwra.com> - 6.5.5-2
- Rebuild for yaml-cpp 0.8 (epel10)
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 6.5.5-6
- Rebuilt for Python 3.14.0rc3 bytecode
* Fri Aug 15 2025 Python Maint <python-maint@redhat.com> - 6.5.5-5
- Rebuilt for Python 3.14.0rc2 bytecode
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.5-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jun 02 2025 Python Maint <python-maint@redhat.com> - 6.5.5-3
- Rebuilt for Python 3.14
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Jan 01 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.5.5-1
- Update to version 6.5.5
- Drop soname patch, use new configure option --enable-librelease instead
- Unbundle yaml-cpp, using new configure option --with-yaml-cpp
- EPEL 7 EOL specfile cleanup
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.4-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 6.5.4-7
- Rebuilt for Python 3.13
* Mon Jun 03 2024 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.5.4-6
- Eliminate use of obsolete patchN syntax
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Jun 13 2023 Python Maint <python-maint@redhat.com> - 6.5.4-2
- Rebuilt for Python 3.12
* Mon Mar 13 2023 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.5.4-1
- Update to version 6.5.4
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.4.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.4.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 6.4.0-3
- Rebuilt for Python 3.11
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.4.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Sun Dec 19 2021 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.4.0-1
- Update to version 6.4.0

View file

@ -1,4 +1 @@
SHA512 (LHAPDF-6.5.6.tar.gz) = 03cf1c848b127d76ab6f13b852743827c00ae9312721dcd1fd17a9d9d88fa50e5f004fcf2fa1b23d15a0b2c30515d5f2a5e2bee85e67be5c675864bdc364ca78
SHA512 (CT10nlo.tar.gz) = 64c1ae32380a8e8ae647bdd79a63bdb252540777f802bebf003d20ec3e7532370601619a85f6fd872f7d0e39e1a1f66ea96fcd4b9179e1f23e27d533906af493
SHA512 (MSTW2008nlo68cl.tar.gz) = 4bf44b96363c91cb85f298d139b356ed4111c842476f02b44efac18710e4ca168691d0cbb5222839b0d219ccb264e387fc8ac93a689f5d0981fed9478f45749b
SHA512 (NNPDF31_lo_as_0130.tar.gz) = 7f2ef921e8ddd938438978383778c5e7538105c78defe34abfe6212a480da9ccdfedbec30174f0aed18576a3c3fc03866bc22b329667b41f2896dfb3814d9d1a
SHA512 (LHAPDF-6.4.0.tar.gz) = 6b3df9d4e8a827f9188d361e62da02339a9b4d60124c63ef50343c38f91487dfe631e4e0a0c28cace3aa6458fe62f8172361d9127d27d58f1c0aacc91c9e9b86

View file

@ -1,45 +0,0 @@
#! /usr/bin/env python3
import lhapdf
print("Version:", lhapdf.version())
print()
#pdfset = lhapdf.getPDFSet("CT10nlo")
pdfset = lhapdf.getPDFSet("NNPDF31_lo_as_0130")
print(pdfset)
print("m_t =", pdfset.get_entry("MTop", 123.4))
print()
pdfs = pdfset.mkPDFs()
print()
xfs_g = [pdfs[k].xfxQ(21, 1e-4, 100.) for k in range(pdfset.size)]
print("Gluon PDFs at x = 0.001, Q = 100 GeV:", xfs_g)
print()
for alt_ci_method in [True,False]:
print(f"Using alt (asymm) CI calculation = {alt_ci_method}")
u = pdfset.uncertainty(xfs_g, 95., alt_ci_method)
print(u)
print(u.central)
print(" + ", u.errplus)
print(" - ", u.errminus)
print(" +-", u.errsymm)
print()
#import numpy as np
#for cl in np.linspace(0.0, 1.0, 20):
xfmin, xfmax = min(xfs_g), max(xfs_g)
print("Range =", xfmax - xfmin)
for i in range(11):
cl = i/10
print(f"CL = {cl:0.2f} -> CI = {pdfset.uncertainty(xfs_g, 100*cl, True).errsymm:0.2f}")
print(f" ... last interval should equal half-range = {(xfmax - xfmin)/2:0.2f}")
print()
e = pdfset.errorInfo
print(e)
print()
# pdf = lhapdf.mkPDF("CT10/0")
# print(pdf)