pdfxtmd 0.3.9__cp312-cp312-win32.whl → 1.0.0__cp312-cp312-win32.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.
- pdfxtmd-1.0.0.dist-info/METADATA +266 -0
- pdfxtmd-1.0.0.dist-info/RECORD +6 -0
- {pdfxtmd-0.3.9.dist-info → pdfxtmd-1.0.0.dist-info}/WHEEL +1 -1
- {pdfxtmd-0.3.9.dist-info → pdfxtmd-1.0.0.dist-info}/licenses/LICENSE +674 -674
- {pdfxtmd-0.3.9.dist-info → pdfxtmd-1.0.0.dist-info}/top_level.txt +1 -0
- pdfxtmd.cp312-win32.pyd +0 -0
- pdfxtmd-0.3.9.dist-info/METADATA +0 -112
- pdfxtmd-0.3.9.dist-info/RECORD +0 -6
pdfxtmd.cp312-win32.pyd
CHANGED
Binary file
|
pdfxtmd-0.3.9.dist-info/METADATA
DELETED
@@ -1,112 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.4
|
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: Ramin Kord Valeshabadi <raminkord92@gmail.com>
|
8
|
-
License: GPL-3.0
|
9
|
-
Project-URL: Homepage, https://github.com/Raminkord92/PDFxTMD
|
10
|
-
Platform: any
|
11
|
-
Classifier: Programming Language :: Python :: 3
|
12
|
-
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
13
|
-
Classifier: Operating System :: OS Independent
|
14
|
-
Requires-Python: >=3.6
|
15
|
-
Description-Content-Type: text/markdown
|
16
|
-
License-File: LICENSE
|
17
|
-
Dynamic: author
|
18
|
-
Dynamic: home-page
|
19
|
-
Dynamic: license-file
|
20
|
-
Dynamic: platform
|
21
|
-
Dynamic: requires-python
|
22
|
-
|
23
|
-
# PDFxTMDLib Python API
|
24
|
-
|
25
|
-
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.
|
26
|
-
|
27
|
-
## Installation
|
28
|
-
|
29
|
-
Install the package from PyPI:
|
30
|
-
|
31
|
-
```bash
|
32
|
-
pip install pdfxtmd
|
33
|
-
```
|
34
|
-
|
35
|
-
## Quick Start
|
36
|
-
|
37
|
-
```python
|
38
|
-
import pdfxtmd
|
39
|
-
|
40
|
-
# Create a CPDF factory and CPDF object
|
41
|
-
cpdf_factory = pdfxtmd.GenericCPDFFactory()
|
42
|
-
cpdf = cpdf_factory.mkCPDF("CT18NLO", 0)
|
43
|
-
|
44
|
-
# Evaluate a single flavor
|
45
|
-
x = 0.01
|
46
|
-
mu2 = 100
|
47
|
-
print("Up quark PDF:", cpdf.pdf(pdfxtmd.PartonFlavor.u, x, mu2))
|
48
|
-
print("Gluon PDF:", cpdf.pdf(pdfxtmd.PartonFlavor.g, x, mu2))
|
49
|
-
|
50
|
-
# Evaluate all flavors at once (output is modified in-place)
|
51
|
-
all_flavors = [0.0] * 13 # Must be length 13
|
52
|
-
cpdf.pdf(x, mu2, all_flavors)
|
53
|
-
print("All flavors (CPDF):", all_flavors)
|
54
|
-
|
55
|
-
# Create a TMD factory and TMD object
|
56
|
-
tmd_factory = pdfxtmd.GenericTMDFactory()
|
57
|
-
tmd = tmd_factory.mkTMD("PB-LO-HERAI+II-2020-set2", 0)
|
58
|
-
|
59
|
-
kt2 = 10
|
60
|
-
print("Gluon TMD:", tmd.tmd(pdfxtmd.PartonFlavor.g, x, kt2, mu2))
|
61
|
-
print("Up quark TMD:", tmd.tmd(pdfxtmd.PartonFlavor.u, x, kt2, mu2))
|
62
|
-
```
|
63
|
-
|
64
|
-
## QCD Coupling Example
|
65
|
-
|
66
|
-
```python
|
67
|
-
coupling_factory = pdfxtmd.CouplingFactory()
|
68
|
-
coupling = coupling_factory.mkCoupling("CT18NLO")
|
69
|
-
for scale in [10, 100, 1000, 10000]:
|
70
|
-
print(f"Alpha_s at mu2={scale}:", coupling.AlphaQCDMu2(scale))
|
71
|
-
```
|
72
|
-
|
73
|
-
## Error Handling
|
74
|
-
|
75
|
-
The Python API raises exceptions for invalid input:
|
76
|
-
|
77
|
-
```python
|
78
|
-
try:
|
79
|
-
cpdf.pdf(pdfxtmd.PartonFlavor.u, -0.1, mu2) # Invalid x
|
80
|
-
except Exception as e:
|
81
|
-
print("Expected error for invalid x in CPDF:", e)
|
82
|
-
|
83
|
-
try:
|
84
|
-
tmd.tmd(pdfxtmd.PartonFlavor.g, x, -5, mu2) # Invalid kt2
|
85
|
-
except Exception as e:
|
86
|
-
print("Expected error for invalid kt2 in TMD:", e)
|
87
|
-
|
88
|
-
try:
|
89
|
-
coupling.AlphaQCDMu2(-1) # Invalid mu2
|
90
|
-
except Exception as e:
|
91
|
-
print("Expected error for invalid mu2 in Coupling:", e)
|
92
|
-
```
|
93
|
-
|
94
|
-
## Enumerating Parton Flavors
|
95
|
-
|
96
|
-
```python
|
97
|
-
print("All PartonFlavor enum values:")
|
98
|
-
for name, flavor in pdfxtmd.PartonFlavor.__members__.items():
|
99
|
-
print(f" {name}: {flavor.value}")
|
100
|
-
```
|
101
|
-
|
102
|
-
## Full Tutorial
|
103
|
-
|
104
|
-
See [examples/python_tutorial.ipynb](examples/python_tutorial.ipynb) and [examples/python_tutorial.py](examples/python_tutorial.py) for more details and advanced usage.
|
105
|
-
|
106
|
-
## License
|
107
|
-
|
108
|
-
This project is licensed under the GNU General Public License v3.0. See the [LICENSE](LICENSE) file for details.
|
109
|
-
|
110
|
-
## Contact
|
111
|
-
|
112
|
-
For questions or contributions, contact [raminkord92@gmail.com](mailto:raminkord92@gmail.com).
|
pdfxtmd-0.3.9.dist-info/RECORD
DELETED
@@ -1,6 +0,0 @@
|
|
1
|
-
pdfxtmd.cp312-win32.pyd,sha256=b1f8TGwa5Dd7n6dy9lbt_ofO8Rs1SkcXBu1Fz-7khg0,411136
|
2
|
-
pdfxtmd-0.3.9.dist-info/licenses/LICENSE,sha256=IwGE9guuL-ryRPEKi6wFPI_zOhg7zDZbTYuHbSt_SAk,35823
|
3
|
-
pdfxtmd-0.3.9.dist-info/METADATA,sha256=9UoR0xP-C3uygh_iyVgOm7MMVKKPVP_ZXHBAE-NAXwk,3382
|
4
|
-
pdfxtmd-0.3.9.dist-info/WHEEL,sha256=-BFdT6y_EUacm6TRDiSp3l3cWvIrwjRH5M3en__zRzY,97
|
5
|
-
pdfxtmd-0.3.9.dist-info/top_level.txt,sha256=HKtUjapBqLcRhPp9sUwVtvVyGREY_JHo_7f3JRnmMEQ,30
|
6
|
-
pdfxtmd-0.3.9.dist-info/RECORD,,
|