xsuite 0.43.1__cp311-cp311-macosx_11_0_arm64.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.
Potentially problematic release.
This version of xsuite might be problematic. Click here for more details.
- xsuite/__init__.py +9 -0
- xsuite/cli.py +77 -0
- xsuite/kernel_definitions.py +43 -0
- xsuite/lib/__init__.py +0 -0
- xsuite/lib/default_base_config.c +104757 -0
- xsuite/lib/default_base_config.cpython-311-darwin.so +0 -0
- xsuite/lib/default_base_config.json +112 -0
- xsuite/lib/default_no_config.c +104753 -0
- xsuite/lib/default_no_config.cpython-311-darwin.so +0 -0
- xsuite/lib/default_no_config.json +107 -0
- xsuite/lib/non_tracking_kernels.c +7267 -0
- xsuite/lib/non_tracking_kernels.cpython-311-darwin.so +0 -0
- xsuite/lib/non_tracking_kernels.json +17 -0
- xsuite/lib/only_xtrack_with_synrad.c +68973 -0
- xsuite/lib/only_xtrack_with_synrad.cpython-311-darwin.so +0 -0
- xsuite/lib/only_xtrack_with_synrad.json +98 -0
- xsuite/prebuild_kernels.py +291 -0
- xsuite-0.43.1.dist-info/METADATA +230 -0
- xsuite-0.43.1.dist-info/RECORD +23 -0
- xsuite-0.43.1.dist-info/WHEEL +6 -0
- xsuite-0.43.1.dist-info/entry_points.txt +2 -0
- xsuite-0.43.1.dist-info/licenses/LICENSE +201 -0
- xsuite-0.43.1.dist-info/top_level.txt +1 -0
xsuite/__init__.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# copyright ################################# #
|
|
2
|
+
# This file is part of the Xsuite Package. #
|
|
3
|
+
# Copyright (c) CERN, 2024. #
|
|
4
|
+
# ########################################### #
|
|
5
|
+
|
|
6
|
+
from importlib.metadata import version
|
|
7
|
+
__version__ = version(__name__)
|
|
8
|
+
|
|
9
|
+
from .prebuild_kernels import get_suitable_kernel, XSK_PREBUILT_KERNELS_LOCATION
|
xsuite/cli.py
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# copyright ############################### #
|
|
2
|
+
# This file is part of the Xsuite project. #
|
|
3
|
+
# Copyright (c) CERN, 2024. #
|
|
4
|
+
# ######################################### #
|
|
5
|
+
import argparse
|
|
6
|
+
from importlib.metadata import version
|
|
7
|
+
|
|
8
|
+
from xsuite.prebuild_kernels import (
|
|
9
|
+
clear_kernels, regenerate_kernels, XSK_PREBUILT_KERNELS_LOCATION,
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def regenerate_command(args):
|
|
14
|
+
n_threads = None if args.threads == 0 else args.threads
|
|
15
|
+
regenerate_kernels(n_threads=n_threads)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def clean_command(args):
|
|
19
|
+
clear_kernels(verbose=args.verbose)
|
|
20
|
+
print('Cleaned kernels.')
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def info_command(args):
|
|
24
|
+
version_str = version("xsuite")
|
|
25
|
+
print(f'Xsuite version {version_str}')
|
|
26
|
+
print(f'Kernels location: {XSK_PREBUILT_KERNELS_LOCATION}')
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def main():
|
|
30
|
+
parser = argparse.ArgumentParser(
|
|
31
|
+
prog='xsuite-prebuild',
|
|
32
|
+
description='Regenerate and clean precompiled kernels for Xsuite.',
|
|
33
|
+
)
|
|
34
|
+
subparsers = parser.add_subparsers(
|
|
35
|
+
title='commands',
|
|
36
|
+
required=True,
|
|
37
|
+
dest='command',
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
# `regenerate` commend
|
|
41
|
+
regenerate_parser = subparsers.add_parser(
|
|
42
|
+
'regenerate',
|
|
43
|
+
aliases=['r'],
|
|
44
|
+
description='Regenerate the kernels.'
|
|
45
|
+
)
|
|
46
|
+
regenerate_parser.add_argument(
|
|
47
|
+
'-n', '--threads',
|
|
48
|
+
type=int,
|
|
49
|
+
help='specify the number of threads for kernel generation '
|
|
50
|
+
'(default or zero: let multiprocessing decide)',
|
|
51
|
+
)
|
|
52
|
+
regenerate_parser.set_defaults(func=regenerate_command)
|
|
53
|
+
|
|
54
|
+
# `clean` command
|
|
55
|
+
clean_parser = subparsers.add_parser(
|
|
56
|
+
'clean',
|
|
57
|
+
aliases=['c'],
|
|
58
|
+
description='Clean the kernel directory.'
|
|
59
|
+
)
|
|
60
|
+
clean_parser.add_argument(
|
|
61
|
+
'-v', '--verbose',
|
|
62
|
+
help='list the files being deleted',
|
|
63
|
+
action='store_true',
|
|
64
|
+
)
|
|
65
|
+
clean_parser.set_defaults(func=clean_command)
|
|
66
|
+
|
|
67
|
+
# `info` command
|
|
68
|
+
info_parser = subparsers.add_parser(
|
|
69
|
+
'info',
|
|
70
|
+
aliases=['i'],
|
|
71
|
+
description='Print additional info.',
|
|
72
|
+
)
|
|
73
|
+
info_parser.set_defaults(func=info_command)
|
|
74
|
+
|
|
75
|
+
# handle the right action
|
|
76
|
+
args = parser.parse_args()
|
|
77
|
+
args.func(args)
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# copyright ############################### #
|
|
2
|
+
# This file is part of the Xsuite project. #
|
|
3
|
+
# Copyright (c) CERN, 2025. #
|
|
4
|
+
# ######################################### #
|
|
5
|
+
import logging
|
|
6
|
+
|
|
7
|
+
from xtrack.prebuilt_kernel_definitions import (ONLY_XTRACK_ELEMENTS,
|
|
8
|
+
NO_SYNRAD_ELEMENTS, NON_TRACKING_ELEMENTS)
|
|
9
|
+
from xcoll.prebuilt_kernel_definitions import DEFAULT_XCOLL_ELEMENTS, EXTRA_XCOLL_ELEMENTS
|
|
10
|
+
from xfields.prebuilt_kernel_definitions import DEFAULT_XFIELDS_ELEMENTS
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
LOGGER = logging.getLogger(__name__)
|
|
14
|
+
|
|
15
|
+
BASE_CONFIG = {
|
|
16
|
+
'XTRACK_MULTIPOLE_NO_SYNRAD': True,
|
|
17
|
+
'XFIELDS_BB3D_NO_BEAMSTR': True,
|
|
18
|
+
'XFIELDS_BB3D_NO_BHABHA': True,
|
|
19
|
+
'XTRACK_GLOBAL_XY_LIMIT': 1.0,
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
# These are enumerated in order specified below: the highest priority at the top
|
|
23
|
+
kernel_definitions = [
|
|
24
|
+
('non_tracking_kernels', {
|
|
25
|
+
'config': {},
|
|
26
|
+
'classes': [],
|
|
27
|
+
'extra_classes': NON_TRACKING_ELEMENTS
|
|
28
|
+
}),
|
|
29
|
+
('default_no_config', {
|
|
30
|
+
'config': {},
|
|
31
|
+
'classes': ONLY_XTRACK_ELEMENTS + NO_SYNRAD_ELEMENTS + DEFAULT_XFIELDS_ELEMENTS + DEFAULT_XCOLL_ELEMENTS,
|
|
32
|
+
'extra_classes': EXTRA_XCOLL_ELEMENTS,
|
|
33
|
+
}),
|
|
34
|
+
('default_base_config', {
|
|
35
|
+
'config': BASE_CONFIG,
|
|
36
|
+
'classes': ONLY_XTRACK_ELEMENTS + NO_SYNRAD_ELEMENTS + DEFAULT_XFIELDS_ELEMENTS + DEFAULT_XCOLL_ELEMENTS,
|
|
37
|
+
'extra_classes': EXTRA_XCOLL_ELEMENTS,
|
|
38
|
+
}),
|
|
39
|
+
('only_xtrack_with_synrad', {
|
|
40
|
+
'config': {**BASE_CONFIG, 'XTRACK_MULTIPOLE_NO_SYNRAD': False},
|
|
41
|
+
'classes': ONLY_XTRACK_ELEMENTS,
|
|
42
|
+
}),
|
|
43
|
+
]
|
xsuite/lib/__init__.py
ADDED
|
File without changes
|