pdfxtmd 0.3.0__cp36-cp36m-win_amd64.whl → 0.3.9__cp36-cp36m-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,107 @@
1
+ Metadata-Version: 2.1
2
+ Name: pdfxtmd
3
+ Version: 0.3.9
4
+ Summary: PDFxTMD is a library for parton distribution functions (PDFs) that integrates both collinear PDFs (cPDFs) and transverse momentum-dependent PDFs (TMDs).
5
+ Home-page: https://github.com/Raminkord92/PDFxTMD
6
+ Author: Ramin Kord Valeshabadi
7
+ Author-email: raminkord92@gmail.com
8
+ License: GPL-3.0
9
+ Platform: any
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
12
+ Classifier: Operating System :: OS Independent
13
+ Requires-Python: >=3.6
14
+ Description-Content-Type: text/markdown
15
+ License-File: LICENSE
16
+
17
+ # PDFxTMDLib Python API
18
+
19
+ PDFxTMDLib provides Python bindings for fast and unified access to collinear PDFs (CPDFs), TMDs, and QCD coupling calculations. This README covers installation and usage for Python users only.
20
+
21
+ ## Installation
22
+
23
+ Install the package from PyPI:
24
+
25
+ ```bash
26
+ pip install pdfxtmd
27
+ ```
28
+
29
+ ## Quick Start
30
+
31
+ ```python
32
+ import pdfxtmd
33
+
34
+ # Create a CPDF factory and CPDF object
35
+ cpdf_factory = pdfxtmd.GenericCPDFFactory()
36
+ cpdf = cpdf_factory.mkCPDF("CT18NLO", 0)
37
+
38
+ # Evaluate a single flavor
39
+ x = 0.01
40
+ mu2 = 100
41
+ print("Up quark PDF:", cpdf.pdf(pdfxtmd.PartonFlavor.u, x, mu2))
42
+ print("Gluon PDF:", cpdf.pdf(pdfxtmd.PartonFlavor.g, x, mu2))
43
+
44
+ # Evaluate all flavors at once (output is modified in-place)
45
+ all_flavors = [0.0] * 13 # Must be length 13
46
+ cpdf.pdf(x, mu2, all_flavors)
47
+ print("All flavors (CPDF):", all_flavors)
48
+
49
+ # Create a TMD factory and TMD object
50
+ tmd_factory = pdfxtmd.GenericTMDFactory()
51
+ tmd = tmd_factory.mkTMD("PB-LO-HERAI+II-2020-set2", 0)
52
+
53
+ kt2 = 10
54
+ print("Gluon TMD:", tmd.tmd(pdfxtmd.PartonFlavor.g, x, kt2, mu2))
55
+ print("Up quark TMD:", tmd.tmd(pdfxtmd.PartonFlavor.u, x, kt2, mu2))
56
+ ```
57
+
58
+ ## QCD Coupling Example
59
+
60
+ ```python
61
+ coupling_factory = pdfxtmd.CouplingFactory()
62
+ coupling = coupling_factory.mkCoupling("CT18NLO")
63
+ for scale in [10, 100, 1000, 10000]:
64
+ print(f"Alpha_s at mu2={scale}:", coupling.AlphaQCDMu2(scale))
65
+ ```
66
+
67
+ ## Error Handling
68
+
69
+ The Python API raises exceptions for invalid input:
70
+
71
+ ```python
72
+ try:
73
+ cpdf.pdf(pdfxtmd.PartonFlavor.u, -0.1, mu2) # Invalid x
74
+ except Exception as e:
75
+ print("Expected error for invalid x in CPDF:", e)
76
+
77
+ try:
78
+ tmd.tmd(pdfxtmd.PartonFlavor.g, x, -5, mu2) # Invalid kt2
79
+ except Exception as e:
80
+ print("Expected error for invalid kt2 in TMD:", e)
81
+
82
+ try:
83
+ coupling.AlphaQCDMu2(-1) # Invalid mu2
84
+ except Exception as e:
85
+ print("Expected error for invalid mu2 in Coupling:", e)
86
+ ```
87
+
88
+ ## Enumerating Parton Flavors
89
+
90
+ ```python
91
+ print("All PartonFlavor enum values:")
92
+ for name, flavor in pdfxtmd.PartonFlavor.__members__.items():
93
+ print(f" {name}: {flavor.value}")
94
+ ```
95
+
96
+ ## Full Tutorial
97
+
98
+ See [examples/python_tutorial.ipynb](examples/python_tutorial.ipynb) and [examples/python_tutorial.py](examples/python_tutorial.py) for more details and advanced usage.
99
+
100
+ ## License
101
+
102
+ This project is licensed under the GNU General Public License v3.0. See the [LICENSE](LICENSE) file for details.
103
+
104
+ ## Contact
105
+
106
+ For questions or contributions, contact [raminkord92@gmail.com](mailto:raminkord92@gmail.com).
107
+
@@ -0,0 +1,6 @@
1
+ pdfxtmd.cp36-win_amd64.pyd,sha256=SQt8LfXATNpE7cgSvXVGDVIb6JHiUFYxY_qAJB_7xLE,466944
2
+ pdfxtmd-0.3.9.dist-info/LICENSE,sha256=IwGE9guuL-ryRPEKi6wFPI_zOhg7zDZbTYuHbSt_SAk,35823
3
+ pdfxtmd-0.3.9.dist-info/METADATA,sha256=KrWmCgQz5ZammgVS55m1VVLlVmzlLmvyNrJUFUaX7tc,3084
4
+ pdfxtmd-0.3.9.dist-info/WHEEL,sha256=zukbZftcRdNfJ55Q_RYV9JZ3uVyqWKyq-wDJbmszs_U,101
5
+ pdfxtmd-0.3.9.dist-info/top_level.txt,sha256=w0BAo-du9KuBSdf2omVP6cG2wuwZYUfycMtlU9obMus,8
6
+ pdfxtmd-0.3.9.dist-info/RECORD,,
Binary file
@@ -1,11 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: pdfxtmd
3
- Version: 0.3.0
4
- Summary: UNKNOWN
5
- Home-page: UNKNOWN
6
- License: UNKNOWN
7
- Platform: UNKNOWN
8
- License-File: LICENSE
9
-
10
- UNKNOWN
11
-
@@ -1,6 +0,0 @@
1
- pdfxtmd.cp36-win_amd64.pyd,sha256=qvRSPm1riKimdNZx0s7_PEAjbRQImHKBb97yEiEwJks,470528
2
- pdfxtmd-0.3.0.dist-info/LICENSE,sha256=IwGE9guuL-ryRPEKi6wFPI_zOhg7zDZbTYuHbSt_SAk,35823
3
- pdfxtmd-0.3.0.dist-info/METADATA,sha256=xwOjJo9Md_S2e8BRHZkXTiC3f9Y0gg4TAWB_vISnGi0,154
4
- pdfxtmd-0.3.0.dist-info/WHEEL,sha256=zukbZftcRdNfJ55Q_RYV9JZ3uVyqWKyq-wDJbmszs_U,101
5
- pdfxtmd-0.3.0.dist-info/top_level.txt,sha256=w0BAo-du9KuBSdf2omVP6cG2wuwZYUfycMtlU9obMus,8
6
- pdfxtmd-0.3.0.dist-info/RECORD,,