enbid-ananke 0.3.1__py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.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.
- enbid_ananke/Enbid-2.0/.DS_Store +0 -0
- enbid_ananke/Enbid-2.0/COPYING +341 -0
- enbid_ananke/Enbid-2.0/COPYRIGHT +18 -0
- enbid_ananke/Enbid-2.0/Documentation/enbid.pdf +0 -0
- enbid_ananke/Enbid-2.0/Documentation/users-guide.pdf +0 -0
- enbid_ananke/Enbid-2.0/Documentation/users-guide.tex +679 -0
- enbid_ananke/Enbid-2.0/Documentation/users-guide.tex.flc +4 -0
- enbid_ananke/Enbid-2.0/Enbid +0 -0
- enbid_ananke/Enbid-2.0/Examples/hernquist1_small/snapshot_ici +0 -0
- enbid_ananke/Enbid-2.0/Examples/hernquist1_small/snapshot_ici_typelist +2 -0
- enbid_ananke/Enbid-2.0/Examples/uniform_6d_box_4/snapshot_ici +0 -0
- enbid_ananke/Enbid-2.0/Examples/uniform_6d_box_4/snapshot_ici_3d.ascii +10000 -0
- enbid_ananke/Enbid-2.0/Examples/uniform_6d_box_4/snapshot_ici_6d.ascii +10000 -0
- enbid_ananke/Enbid-2.0/parameterfiles/myparameterfile1 +37 -0
- enbid_ananke/Enbid-2.0/parameterfiles/myparameterfile2 +37 -0
- enbid_ananke/Enbid-2.0/parameterfiles/myparameterfile3 +37 -0
- enbid_ananke/Enbid-2.0/parameterfiles/myparameterfile4 +37 -0
- enbid_ananke/Enbid-2.0/periodic_lengths.txt +5 -0
- enbid_ananke/Enbid-2.0/src/Makefile +43 -0
- enbid_ananke/Enbid-2.0/src/allocate.cpp +47 -0
- enbid_ananke/Enbid-2.0/src/allocate.o +0 -0
- enbid_ananke/Enbid-2.0/src/allvars.cpp +62 -0
- enbid_ananke/Enbid-2.0/src/allvars.h +263 -0
- enbid_ananke/Enbid-2.0/src/allvars.o +0 -0
- enbid_ananke/Enbid-2.0/src/begrun.cpp +361 -0
- enbid_ananke/Enbid-2.0/src/begrun.o +0 -0
- enbid_ananke/Enbid-2.0/src/density_nd.cpp +130 -0
- enbid_ananke/Enbid-2.0/src/density_nd.o +0 -0
- enbid_ananke/Enbid-2.0/src/functions.cpp +256 -0
- enbid_ananke/Enbid-2.0/src/functions.h +20 -0
- enbid_ananke/Enbid-2.0/src/functions.o +0 -0
- enbid_ananke/Enbid-2.0/src/init.cpp +299 -0
- enbid_ananke/Enbid-2.0/src/init.o +0 -0
- enbid_ananke/Enbid-2.0/src/io.cpp +255 -0
- enbid_ananke/Enbid-2.0/src/io.o +0 -0
- enbid_ananke/Enbid-2.0/src/main.cpp +108 -0
- enbid_ananke/Enbid-2.0/src/main.o +0 -0
- enbid_ananke/Enbid-2.0/src/ngb_search.cpp +2315 -0
- enbid_ananke/Enbid-2.0/src/ngb_search.h +35 -0
- enbid_ananke/Enbid-2.0/src/ngb_search.o +0 -0
- enbid_ananke/Enbid-2.0/src/nr.cpp +186 -0
- enbid_ananke/Enbid-2.0/src/nr.h +13 -0
- enbid_ananke/Enbid-2.0/src/nr.o +0 -0
- enbid_ananke/Enbid-2.0/src/proto.h +22 -0
- enbid_ananke/Enbid-2.0/src/read_ic.cpp +434 -0
- enbid_ananke/Enbid-2.0/src/read_ic.o +0 -0
- enbid_ananke/Enbid-2.0/src/tree.cpp +973 -0
- enbid_ananke/Enbid-2.0/src/tree.h +34 -0
- enbid_ananke/Enbid-2.0/src/tree.o +0 -0
- enbid_ananke/Enbid-2.0/src/tree_search.cpp +597 -0
- enbid_ananke/Enbid-2.0/src/tree_search.o +0 -0
- enbid_ananke/__init__.py +318 -0
- enbid_ananke/__license__/LICENSE +339 -0
- enbid_ananke/__license__/__init__.py +9 -0
- enbid_ananke/__metadata__.py +160 -0
- enbid_ananke/_builtin_utils.py +62 -0
- enbid_ananke/_constants.py +56 -0
- enbid_ananke/_defaults.py +36 -0
- enbid_ananke/_name.py +10 -0
- enbid_ananke/_templates.py +71 -0
- enbid_ananke/_version.py +21 -0
- enbid_ananke/utils.py +11 -0
- enbid_ananke-0.3.1.dist-info/LICENSE +339 -0
- enbid_ananke-0.3.1.dist-info/METADATA +33 -0
- enbid_ananke-0.3.1.dist-info/RECORD +67 -0
- enbid_ananke-0.3.1.dist-info/WHEEL +7 -0
- enbid_ananke-0.3.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,160 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
"""
|
3
|
+
Contains the EnBiD module metadata.
|
4
|
+
"""
|
5
|
+
import _sitebuiltins
|
6
|
+
import textwrap
|
7
|
+
from typing import Final
|
8
|
+
from datetime import datetime
|
9
|
+
|
10
|
+
from . import _version
|
11
|
+
|
12
|
+
try:
|
13
|
+
from .__license__ import __license_full__
|
14
|
+
except ImportError:
|
15
|
+
__license_full__ = ""
|
16
|
+
|
17
|
+
__all__ = ['__project__', '__description__', '__url__', '__year__', '__author__', '__contributors__', '__license__',
|
18
|
+
'__version__', '__date__', '__maintainer__', '__email__', '__classifiers__',
|
19
|
+
'__credits__', '__doi__', '__citation__', '__adsurl__', '__bibtex__', '__copyright__', '__readme__',
|
20
|
+
'copyright', 'credits', 'license', 'readme']
|
21
|
+
|
22
|
+
# PROJECT METADATA
|
23
|
+
__project__ = "py-EnBiD-ananke"
|
24
|
+
__description__ = "Python wrapper for EnBiD (Sharma & Steinmetz 2011 <http://ascl.net/1109.012>) for py-ananke <https://github.com/athob/py-ananke>."
|
25
|
+
__url__ = "https://github.com/athob/py-EnBiD-ananke"
|
26
|
+
__year__ = 2022
|
27
|
+
__author__ = "Adrien Thob"
|
28
|
+
__contributors__ = ["Robyn Sanderson", "Andrew Eden"]
|
29
|
+
__supporters__ = ["Sanjib Sharma"]
|
30
|
+
__feedback__ = ["the extended Galaxy Dynamics @ UPenn group", "the participants of the \"anankethon\" workshops"]
|
31
|
+
__license__ = "GNU General Public License v2 or later (GPLv2+)" # TODO change to longer version?
|
32
|
+
__license_classifier__ = "License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)"
|
33
|
+
__license_short__ = "Licensed under the GNU GPL v2 or later"
|
34
|
+
|
35
|
+
# SOFTWARE METADATA
|
36
|
+
__version__: Final[str] = _version.get_versions()['version']
|
37
|
+
__date__: str = _version.get_versions()['date']
|
38
|
+
__date__: datetime = datetime.fromisoformat(f"{__date__[:-2]}:{__date__[-2:]}")
|
39
|
+
__maintainer__ = "Adrien Thob"
|
40
|
+
__email__ = "athob@sas.upenn.edu"
|
41
|
+
__status_classifier__ = "Development Status :: 5 - Production/Stable"
|
42
|
+
__classifiers__ = [
|
43
|
+
__status_classifier__,
|
44
|
+
"Environment :: Console",
|
45
|
+
"Intended Audience :: Science/Research",
|
46
|
+
__license_classifier__,
|
47
|
+
"Natural Language :: English",
|
48
|
+
"Operating System :: Unix",
|
49
|
+
"Programming Language :: Python :: 3",
|
50
|
+
"Topic :: Scientific/Engineering :: Astronomy"
|
51
|
+
]
|
52
|
+
|
53
|
+
# CREDITS METADATA
|
54
|
+
__credits__ = textwrap.fill(f"""
|
55
|
+
Thanks to {', '.join(__contributors__)[::-1].replace(',','& ', 1)[::-1]} for their contributions,
|
56
|
+
to {', '.join(__supporters__)[::-1].replace(',','& ', 1)[::-1]} for their support & guidance,
|
57
|
+
and to the wider community for their suggestions and feedback,
|
58
|
+
including {', '.join(__feedback__)[::-1].replace(',','& ', 1)[::-1]}.
|
59
|
+
""".strip('\n'))
|
60
|
+
|
61
|
+
# CITING METADATA
|
62
|
+
__doi__ = "10.21105/joss.06234"
|
63
|
+
__citation__ = textwrap.fill("""
|
64
|
+
Thob, Adrien C. R. et al. 2024, “Generating synthetic star catalogs
|
65
|
+
from simulated data for next-gen observatories with py-ananke”,
|
66
|
+
The Journal of Open Source Software, 9, 6234, doi:10.21105/joss.06234.
|
67
|
+
""".strip('\n'))
|
68
|
+
__adsurl__ = "https://ui.adsabs.harvard.edu/abs/2024JOSS....9.6234T"
|
69
|
+
__adsexportcitation__ = f"{__adsurl__}/exportcitation"
|
70
|
+
__bibtex__ = """
|
71
|
+
@ARTICLE{2024JOSS....9.6234T,
|
72
|
+
author = {{Thob}, Adrien C.~R. and {Sanderson}, Robyn E. and
|
73
|
+
{Eden}, Andrew P. and {Nikakhtar}, Farnik and
|
74
|
+
{Panithanpaisal}, Nondh and {Garavito-Camargo}, Nicol{\\'a}s
|
75
|
+
and {Sharma}, Sanjib},
|
76
|
+
title = "{Generating synthetic star catalogs from simulated data
|
77
|
+
for next-gen observatories with py-ananke}",
|
78
|
+
journal = {The Journal of Open Source Software},
|
79
|
+
keywords = {C++, astronomy, galaxies, stars, simulations,
|
80
|
+
mock observations, Jupyter Notebook, Python,
|
81
|
+
Astrophysics - Astrophysics of Galaxies,
|
82
|
+
Astrophysics - Instrumentation and Methods for Astrophysics},
|
83
|
+
year = 2024,
|
84
|
+
month = oct,
|
85
|
+
volume = {9},
|
86
|
+
number = {102},
|
87
|
+
eid = {6234},
|
88
|
+
pages = {6234},
|
89
|
+
doi = {10.21105/joss.06234},
|
90
|
+
archivePrefix = {arXiv},
|
91
|
+
eprint = {2312.02268},
|
92
|
+
primaryClass = {astro-ph.GA},
|
93
|
+
adsurl = {https://ui.adsabs.harvard.edu/abs/2024JOSS....9.6234T},
|
94
|
+
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
|
95
|
+
}
|
96
|
+
""".strip('\n')
|
97
|
+
__citing__ = '\n\n'.join(map(textwrap.fill, f"""
|
98
|
+
If {__project__} has played a role in your research project or software
|
99
|
+
development, we kindly request that you acknowledge and cite the
|
100
|
+
project. Citing {__project__} not only gives credit to the dedicated
|
101
|
+
efforts of its creators but also helps others discover and benefit
|
102
|
+
from this software.
|
103
|
+
|
104
|
+
To cite {__project__}, please use DOI {__doi__} as a
|
105
|
+
reference in your publications, or cite as the following:
|
106
|
+
|
107
|
+
{{__citation__}}
|
108
|
+
|
109
|
+
Alternatively, you may use one of the entries associated with
|
110
|
+
{__project__} as listed by The SAO/NASA Astrophysics Data System:
|
111
|
+
<{__adsexportcitation__}>
|
112
|
+
such as the following BibTeX entry:
|
113
|
+
|
114
|
+
{{__bibtex__}}
|
115
|
+
""".strip('\n').split('\n\n'))).format(__citation__=__citation__, __bibtex__=__bibtex__)
|
116
|
+
|
117
|
+
# COPYRIGHT METADATA
|
118
|
+
__copyright_short__ = f"Copyright (C) {__year__}-{__date__.year} {__author__}"
|
119
|
+
__copyright__ = f"""
|
120
|
+
{textwrap.fill(f"{__project__} v{__version__}: {__description__}")}
|
121
|
+
|
122
|
+
{__copyright_short__}
|
123
|
+
|
124
|
+
This program is free software; you can redistribute it and/or modify
|
125
|
+
it under the terms of the GNU General Public License as published by
|
126
|
+
the Free Software Foundation; either version 2 of the License, or
|
127
|
+
(at your option) any later version.
|
128
|
+
|
129
|
+
This program is distributed in the hope that it will be useful,
|
130
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
131
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
132
|
+
GNU General Public License for more details.
|
133
|
+
|
134
|
+
You should have received a copy of the GNU General Public License along
|
135
|
+
with this program; if not, write to the Free Software Foundation, Inc.,
|
136
|
+
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
137
|
+
|
138
|
+
--CITING-------------------------------------------------------------
|
139
|
+
|
140
|
+
{__citing__}
|
141
|
+
""".strip('\n')
|
142
|
+
|
143
|
+
# README
|
144
|
+
__readme__ = f"""
|
145
|
+
{__copyright__}
|
146
|
+
|
147
|
+
--CREDITS------------------------------------------------------------
|
148
|
+
|
149
|
+
{__credits__}
|
150
|
+
""".strip('\n')
|
151
|
+
|
152
|
+
# DEFINING PRINTERS
|
153
|
+
copyright = _sitebuiltins._Printer('copyright', __copyright__)
|
154
|
+
credits = _sitebuiltins._Printer('credits', __credits__)
|
155
|
+
license = _sitebuiltins._Printer('license', __license_full__)
|
156
|
+
readme = _sitebuiltins._Printer('readme', __readme__)
|
157
|
+
|
158
|
+
|
159
|
+
if __name__ == '__main__':
|
160
|
+
raise NotImplementedError()
|
@@ -0,0 +1,62 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
"""
|
3
|
+
Module utilities using built-in implementation
|
4
|
+
"""
|
5
|
+
import sys
|
6
|
+
from types import ModuleType
|
7
|
+
import subprocess
|
8
|
+
import importlib.util
|
9
|
+
import re
|
10
|
+
|
11
|
+
__all__ = ['Singleton', 'execute', 'get_version_of_command', 'import_source_file']
|
12
|
+
|
13
|
+
|
14
|
+
class Singleton(type):
|
15
|
+
"""
|
16
|
+
Singleton metaclass.
|
17
|
+
Credit https://stackoverflow.com/q/6760685
|
18
|
+
"""
|
19
|
+
_instances = {}
|
20
|
+
def __call__(cls, *args, **kwargs):
|
21
|
+
if cls not in cls._instances:
|
22
|
+
cls._instances[cls] = super(Singleton, cls).__call__(*args, **kwargs)
|
23
|
+
return cls._instances[cls]
|
24
|
+
|
25
|
+
|
26
|
+
def _execute_generator(args, **kwargs):
|
27
|
+
popen = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, universal_newlines=True, **kwargs)
|
28
|
+
for stdout_line in iter(popen.stdout.readline, ""):
|
29
|
+
yield stdout_line
|
30
|
+
popen.stdout.close()
|
31
|
+
return_code = popen.wait()
|
32
|
+
if return_code:
|
33
|
+
raise subprocess.CalledProcessError(return_code, args)
|
34
|
+
|
35
|
+
|
36
|
+
def execute(args, verbose=True, **kwargs):
|
37
|
+
"""
|
38
|
+
Run the command described by args, and use
|
39
|
+
verbose kwarg to redirect output/error stream
|
40
|
+
to python output stream.
|
41
|
+
Credit https://stackoverflow.com/a/4417735
|
42
|
+
"""
|
43
|
+
for path in _execute_generator(args, **kwargs):
|
44
|
+
print(path, end="") if verbose else None
|
45
|
+
|
46
|
+
|
47
|
+
def get_version_of_command(cmd):
|
48
|
+
return re.findall("((?:[0-9]+\.)+[0-9]+)",
|
49
|
+
str(subprocess.check_output([cmd, '--version'])))[0]
|
50
|
+
|
51
|
+
|
52
|
+
def import_source_file(module_name, file_path) -> ModuleType:
|
53
|
+
# based on https://docs.python.org/3/library/importlib.html#importing-a-source-file-directly
|
54
|
+
spec = importlib.util.spec_from_file_location(module_name, file_path)
|
55
|
+
module = importlib.util.module_from_spec(spec)
|
56
|
+
sys.modules[module_name] = module
|
57
|
+
spec.loader.exec_module(module)
|
58
|
+
return module
|
59
|
+
|
60
|
+
|
61
|
+
if __name__ == '__main__':
|
62
|
+
raise NotImplementedError()
|
@@ -0,0 +1,56 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
"""
|
3
|
+
Contains the EnBiD module constants.
|
4
|
+
"""
|
5
|
+
import pathlib
|
6
|
+
from dataclasses import dataclass
|
7
|
+
|
8
|
+
from ._name import *
|
9
|
+
from ._builtin_utils import Singleton
|
10
|
+
|
11
|
+
__all__ = ['NAME', 'LOG_DIR', 'SRC_DIR', 'ENBID_URL', 'CONSTANTS', 'SNAPSHOT_FILEBASE', 'ENBID_OUT_EXT', 'HASH_EXT', 'HASH_ENCODING']
|
12
|
+
|
13
|
+
ENBID2 = 'Enbid-2.0'
|
14
|
+
ENBID_URL = 'https://sourceforge.net/projects/enbid/files/latest/download'
|
15
|
+
ENBID_EXEC = 'Enbid'
|
16
|
+
LOG_DIR = 'log'
|
17
|
+
SRC_DIR = 'src'
|
18
|
+
|
19
|
+
ENBID_PARAMFILE = 'enbid_paramfile'
|
20
|
+
USEDVALUES_SUFFIX = '_enbid-usedvalues'
|
21
|
+
SNAPSHOT_FILEBASE = 'SnapshotFileBase'
|
22
|
+
ENBID_OUT_EXT = 'est'
|
23
|
+
HASH_EXT = 'hash'
|
24
|
+
HASH_ENCODING = 'ascii'
|
25
|
+
|
26
|
+
@dataclass()
|
27
|
+
class Constants(metaclass=Singleton):
|
28
|
+
enbid2: str = ENBID2
|
29
|
+
enbid_exec: str = ENBID_EXEC
|
30
|
+
_enbid: pathlib.Path = None
|
31
|
+
enbid_paramfile: str = ENBID_PARAMFILE
|
32
|
+
|
33
|
+
@property
|
34
|
+
def enbid_cpp(self):
|
35
|
+
return pathlib.Path(__file__).resolve().parent / self.enbid2
|
36
|
+
|
37
|
+
@property
|
38
|
+
def enbid(self):
|
39
|
+
if isinstance(self._enbid, pathlib.Path):
|
40
|
+
return self._enbid
|
41
|
+
else:
|
42
|
+
return self.enbid_cpp / self.enbid_exec
|
43
|
+
|
44
|
+
@enbid.setter
|
45
|
+
def enbid(self, path: pathlib.Path):
|
46
|
+
self._enbid = path
|
47
|
+
|
48
|
+
@property
|
49
|
+
def usedvalues(self):
|
50
|
+
return f"{self.enbid_paramfile}{USEDVALUES_SUFFIX}"
|
51
|
+
|
52
|
+
CONSTANTS = Constants()
|
53
|
+
|
54
|
+
|
55
|
+
if __name__ == '__main__':
|
56
|
+
raise NotImplementedError()
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
"""
|
3
|
+
Contains the EnBiD module defaults.
|
4
|
+
"""
|
5
|
+
import tempfile
|
6
|
+
|
7
|
+
from ._templates import *
|
8
|
+
|
9
|
+
__all__ = ['DEFAULT_NGB', 'DEFAULT_FOR_PARAMFILE']
|
10
|
+
|
11
|
+
TO_ENBID_FILENAME = 'to_enbid'
|
12
|
+
DEFAULT_NGB = 64
|
13
|
+
|
14
|
+
DEFAULT_FOR_PARAMFILE = {
|
15
|
+
TTAGS.fname: TO_ENBID_FILENAME,
|
16
|
+
# TTAGS.des_num_ngb: DEFAULT_NGB,
|
17
|
+
TTAGS.spatial_scale: 1.0,
|
18
|
+
TTAGS.part_boundary: 7,
|
19
|
+
TTAGS.node_splitting_criterion: 1,
|
20
|
+
TTAGS.cubic_cells: 0,
|
21
|
+
TTAGS.median_splitting_on: 1,
|
22
|
+
TTAGS.type_of_smoothing: 3,
|
23
|
+
TTAGS.vol_corr: 1,
|
24
|
+
TTAGS.type_of_kernel: 3,
|
25
|
+
TTAGS.kernel_bias_correction: 1,
|
26
|
+
TTAGS.anisotropy_kernel: 0,
|
27
|
+
TTAGS.anisotropy: 0,
|
28
|
+
TTAGS.type_list_on: 0,
|
29
|
+
TTAGS.periodic_boundary_on: 0
|
30
|
+
}
|
31
|
+
|
32
|
+
TEMP_DIR = tempfile.TemporaryDirectory()
|
33
|
+
|
34
|
+
|
35
|
+
if __name__ == '__main__':
|
36
|
+
raise NotImplementedError()
|
enbid_ananke/_name.py
ADDED
@@ -0,0 +1,71 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
"""
|
3
|
+
Contains the EnBiD module templates.
|
4
|
+
"""
|
5
|
+
from string import Template
|
6
|
+
from dataclasses import dataclass
|
7
|
+
|
8
|
+
from ._builtin_utils import Singleton
|
9
|
+
|
10
|
+
__all__ = ['TTAGS', 'ENBID_PARAMFILE_TEMPLATE']
|
11
|
+
|
12
|
+
@dataclass(frozen=True)
|
13
|
+
class TemplateTags(metaclass=Singleton):
|
14
|
+
fname: str = 'fname'
|
15
|
+
des_num_ngb: str = 'des_num_ngb'
|
16
|
+
spatial_scale: str = 'spatial_scale'
|
17
|
+
part_boundary: str = 'part_boundary'
|
18
|
+
node_splitting_criterion: str = 'node_splitting_criterion'
|
19
|
+
cubic_cells: str = 'cubic_cells'
|
20
|
+
median_splitting_on: str = 'median_splitting_on'
|
21
|
+
type_of_smoothing: str = 'type_of_smoothing'
|
22
|
+
vol_corr: str = 'vol_corr'
|
23
|
+
type_of_kernel: str = 'type_of_kernel'
|
24
|
+
kernel_bias_correction: str = 'kernel_bias_correction'
|
25
|
+
anisotropy_kernel: str = 'anisotropy_kernel'
|
26
|
+
anisotropy: str = 'anisotropy'
|
27
|
+
des_num_ngb_a: str = 'des_num_ngb_a'
|
28
|
+
type_list_on: str = 'type_list_on'
|
29
|
+
periodic_boundary_on: str = 'periodic_boundary_on'
|
30
|
+
|
31
|
+
TTAGS = TemplateTags()
|
32
|
+
|
33
|
+
ENBID_PARAMFILE_TEMPLATE = Template(f"""% Input and Output
|
34
|
+
InitCondFile ${{{TTAGS.fname}}}
|
35
|
+
|
36
|
+
%-------------------------------------------------------
|
37
|
+
ICFormat 0 % O)ASCII 1)Gadget 2)User defined
|
38
|
+
SnapshotFileBase _d3n${{{TTAGS.des_num_ngb}}}
|
39
|
+
|
40
|
+
%-------------------------------------------------------
|
41
|
+
% Tree related options
|
42
|
+
SpatialScale ${{{TTAGS.spatial_scale}}} % x->x/SpatialScale and v->v
|
43
|
+
PartBoundary ${{{TTAGS.part_boundary}}} % Min particles in a node to do boundary correction
|
44
|
+
NodeSplittingCriterion ${{{TTAGS.node_splitting_criterion}}} % 0)Alternate 1) Min Entropy
|
45
|
+
CubicCells ${{{TTAGS.cubic_cells}}} % use 1 in spherically symmetric systems
|
46
|
+
MedianSplittingOn ${{{TTAGS.median_splitting_on}}}
|
47
|
+
|
48
|
+
%--------------------------------------------------------
|
49
|
+
% Smoothing options AM=adaptive metric Ker=Kernel Sp=Spherical Pr=Product
|
50
|
+
% 0) None 1)FiEstAS 2)Ker Sp Normal 3)Ker Sp AM 4)KerPr Normal 5)KerPr AM
|
51
|
+
TypeOfSmoothing ${{{TTAGS.type_of_smoothing}}}
|
52
|
+
DesNumNgb ${{{TTAGS.des_num_ngb}}} % 2-10 for Fiestas and 25-100 for Kernel
|
53
|
+
VolCorr ${{{TTAGS.vol_corr}}} % 0) Disbale 1) Enable
|
54
|
+
|
55
|
+
%--------------------------------------------------------
|
56
|
+
% Kernel smoothing related options
|
57
|
+
% 0) B-Spline 1)top hat 2)Bi_weight (1-x^2)^2 3)Epanechikov 4)CIC 5)TSC
|
58
|
+
TypeOfKernel ${{{TTAGS.type_of_kernel}}}
|
59
|
+
KernelBiasCorrection ${{{TTAGS.kernel_bias_correction}}} % 0)none 1)shift central particle
|
60
|
+
AnisotropicKernel ${{{TTAGS.anisotropy_kernel}}} % 0) Isotropic 1) Anisotropic
|
61
|
+
Anisotropy ${{{TTAGS.anisotropy}}} % fix minimum c/a minor/major axis ratio
|
62
|
+
DesNumNgbA ${{{TTAGS.des_num_ngb_a}}} % Neighbors for cal covar metric for Anisotropic Ker
|
63
|
+
%--------------------------------------------------------
|
64
|
+
% other miscellaneous option
|
65
|
+
TypeListOn ${{{TTAGS.type_list_on}}}
|
66
|
+
PeriodicBoundaryOn ${{{TTAGS.periodic_boundary_on}}}
|
67
|
+
%--------------------------------------------------------""")
|
68
|
+
|
69
|
+
|
70
|
+
if __name__ == '__main__':
|
71
|
+
raise NotImplementedError()
|
enbid_ananke/_version.py
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
# This file was generated by 'versioneer.py' (0.29) from
|
3
|
+
# revision-control system data, or from the parent directory name of an
|
4
|
+
# unpacked source archive. Distribution tarballs contain a pre-generated copy
|
5
|
+
# of this file.
|
6
|
+
|
7
|
+
import json
|
8
|
+
|
9
|
+
version_json = '''
|
10
|
+
{
|
11
|
+
"date": "2025-06-27T18:26:14-0400",
|
12
|
+
"dirty": false,
|
13
|
+
"error": null,
|
14
|
+
"full-revisionid": "88fd859a1d0a1491f3b68091c84388493eaa9d47",
|
15
|
+
"version": "0.3.1"
|
16
|
+
}
|
17
|
+
''' # END VERSION_JSON
|
18
|
+
|
19
|
+
|
20
|
+
def get_versions():
|
21
|
+
return json.loads(version_json)
|
enbid_ananke/utils.py
ADDED