pynxtools-apm 0.2__tar.gz → 0.2.2__tar.gz
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.
- {pynxtools_apm-0.2/pynxtools_apm.egg-info → pynxtools_apm-0.2.2}/PKG-INFO +32 -27
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2}/README.md +12 -19
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2}/dev-requirements.txt +202 -129
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2}/pyproject.toml +30 -9
- pynxtools_apm-0.2.2/src/pynxtools_apm/concepts/mapping_functors_pint.py +519 -0
- {pynxtools_apm-0.2/pynxtools_apm/config → pynxtools_apm-0.2.2/src/pynxtools_apm/configurations}/eln_cfg.py +104 -57
- {pynxtools_apm-0.2/pynxtools_apm/config → pynxtools_apm-0.2.2/src/pynxtools_apm/configurations}/oasis_cfg.py +5 -2
- pynxtools_apm-0.2.2/src/pynxtools_apm/nomad/entrypoints.py +41 -0
- pynxtools_apm-0.2.2/src/pynxtools_apm/nomad/examples/README.md +55 -0
- pynxtools_apm-0.2.2/src/pynxtools_apm/nomad/examples/apm.archive.json +1 -0
- pynxtools_apm-0.2.2/src/pynxtools_apm/nomad/examples/downloads.archive.yaml +8 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src/pynxtools_apm/nomad}/examples/eln_data.yaml +9 -1
- {pynxtools_apm-0.2/tests/data/nomad_oasis_eln_schema_for_nx_apm → pynxtools_apm-0.2.2/src/pynxtools_apm/nomad/examples}/nxapm.schema.archive.yaml +244 -284
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/reader.py +67 -67
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/create_nx_default_plots.py +4 -4
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/interpret_boolean.py +3 -1
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/io_case_logic.py +29 -33
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/load_ranging.py +3 -3
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/load_reconstruction.py +6 -5
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/oasis_config_reader.py +10 -7
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/oasis_eln_reader.py +69 -108
- pynxtools_apm-0.2.2/src/pynxtools_apm/utils/pint_custom_unit_registry.py +43 -0
- pynxtools_apm-0.2.2/src/pynxtools_apm.egg-info/SOURCES.txt +33 -0
- pynxtools_apm-0.2/.github/workflows/build_docs.yml +0 -27
- pynxtools_apm-0.2/.github/workflows/publish.yml +0 -30
- pynxtools_apm-0.2/.github/workflows/pylint.yml +0 -33
- pynxtools_apm-0.2/.github/workflows/pytest.yml +0 -34
- pynxtools_apm-0.2/.gitignore +0 -209
- pynxtools_apm-0.2/.precommit-config.yaml +0 -9
- pynxtools_apm-0.2/.vscode/settings.json +0 -18
- pynxtools_apm-0.2/PKG-INFO +0 -108
- pynxtools_apm-0.2/build_docs.yml +0 -27
- pynxtools_apm-0.2/docs/explanation/learn.md +0 -11
- pynxtools_apm-0.2/docs/explanation/media/workflow.mermaid +0 -8
- pynxtools_apm-0.2/docs/explanation/media/workflow.png +0 -0
- pynxtools_apm-0.2/docs/explanation/performance.md +0 -41
- pynxtools_apm-0.2/docs/how-tos/howto.md +0 -1
- pynxtools_apm-0.2/docs/index.md +0 -76
- pynxtools_apm-0.2/docs/reference/apt.md +0 -12
- pynxtools_apm-0.2/docs/reference/ato.md +0 -18
- pynxtools_apm-0.2/docs/reference/atomtypes.md +0 -6
- pynxtools_apm-0.2/docs/reference/camecaroot.md +0 -18
- pynxtools_apm-0.2/docs/reference/contextualization.md +0 -10
- pynxtools_apm-0.2/docs/reference/csv.md +0 -24
- pynxtools_apm-0.2/docs/reference/env.md +0 -15
- pynxtools_apm-0.2/docs/reference/epos.md +0 -11
- pynxtools_apm-0.2/docs/reference/faufig.md +0 -19
- pynxtools_apm-0.2/docs/reference/inspico.md +0 -6
- pynxtools_apm-0.2/docs/reference/mqanalysis.md +0 -7
- pynxtools_apm-0.2/docs/reference/pos.md +0 -9
- pynxtools_apm-0.2/docs/reference/pyccapt.md +0 -18
- pynxtools_apm-0.2/docs/reference/rng.md +0 -13
- pynxtools_apm-0.2/docs/reference/rrng.md +0 -16
- pynxtools_apm-0.2/docs/stylesheets/extra.css +0 -69
- pynxtools_apm-0.2/docs/tutorial/media/upload-processing.gif +0 -0
- pynxtools_apm-0.2/docs/tutorial/nexusio.md +0 -3
- pynxtools_apm-0.2/docs/tutorial/oasis.md +0 -7
- pynxtools_apm-0.2/docs/tutorial/standalone.md +0 -23
- pynxtools_apm-0.2/examples/HowToUseNXapmNeXusFileTutorial.ipynb +0 -214
- pynxtools_apm-0.2/examples/HowToUseTutorial.ipynb +0 -277
- pynxtools_apm-0.2/examples/apm.batch.sh +0 -6
- pynxtools_apm-0.2/mkdocs.yaml +0 -63
- pynxtools_apm-0.2/pynxtools_apm/README.md +0 -45
- pynxtools_apm-0.2/pynxtools_apm/concepts/mapping_functors.py +0 -345
- pynxtools_apm-0.2/pynxtools_apm.egg-info/SOURCES.txt +0 -76
- pynxtools_apm-0.2/pynxtools_apm.egg-info/dependency_links.txt +0 -1
- pynxtools_apm-0.2/pynxtools_apm.egg-info/entry_points.txt +0 -2
- pynxtools_apm-0.2/pynxtools_apm.egg-info/requires.txt +0 -18
- pynxtools_apm-0.2/pynxtools_apm.egg-info/top_level.txt +0 -1
- pynxtools_apm-0.2/tests/batch_queue.04.sh +0 -11
- pynxtools_apm-0.2/tests/data/config_file.json +0 -1
- pynxtools_apm-0.2/tests/test_reader.py +0 -59
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2}/LICENSE +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2}/setup.cfg +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/__init__.py +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/concepts/__init__.py +0 -0
- /pynxtools_apm-0.2/docs/macros.py → /pynxtools_apm-0.2.2/src/pynxtools_apm/mkdocs.py +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src/pynxtools_apm/nomad}/examples/apm.oasis.specific.yaml +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/__init__.py +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/generate_synthetic_data.py +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/get_file_checksum.py +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/get_gitrepo_commit.py +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/parse_composition_table.py +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/string_conversions.py +0 -0
- {pynxtools_apm-0.2 → pynxtools_apm-0.2.2/src}/pynxtools_apm/utils/versioning.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pynxtools-apm
|
|
3
|
-
Version: 0.2
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: Make atom probe tomography and field-ion microscopy results interoperable via NeXus
|
|
5
5
|
Author-email: Markus Kühbach <markus.kuehbach@physik.hu-berlin.de>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -16,22 +16,34 @@ Classifier: Operating System :: OS Independent
|
|
|
16
16
|
Requires-Python: >=3.8
|
|
17
17
|
Description-Content-Type: text/markdown
|
|
18
18
|
License-File: LICENSE
|
|
19
|
-
Requires-Dist:
|
|
19
|
+
Requires-Dist: pint==0.17
|
|
20
|
+
Requires-Dist: pynxtools>=0.9.0
|
|
20
21
|
Requires-Dist: ifes_apt_tc_data_modeling>=0.2.2
|
|
21
|
-
|
|
22
|
-
Requires-Dist: mkdocs; extra == "docs"
|
|
23
|
-
Requires-Dist: mkdocs-material; extra == "docs"
|
|
24
|
-
Requires-Dist: mkdocs-material-extensions; extra == "docs"
|
|
25
|
-
Requires-Dist: mkdocs-macros-plugin; extra == "docs"
|
|
22
|
+
Requires-Dist: numpy<=1.26.4
|
|
26
23
|
Provides-Extra: dev
|
|
27
24
|
Requires-Dist: mypy; extra == "dev"
|
|
28
|
-
Requires-Dist: ruff
|
|
25
|
+
Requires-Dist: ruff>=0.6.0; extra == "dev"
|
|
29
26
|
Requires-Dist: pytest; extra == "dev"
|
|
27
|
+
Requires-Dist: pytest-cov; extra == "dev"
|
|
28
|
+
Requires-Dist: pytest-timeout; extra == "dev"
|
|
29
|
+
Requires-Dist: pytest-cov; extra == "dev"
|
|
30
|
+
Requires-Dist: structlog; extra == "dev"
|
|
30
31
|
Requires-Dist: types-pyyaml; extra == "dev"
|
|
32
|
+
Requires-Dist: types-pytz; extra == "dev"
|
|
33
|
+
Requires-Dist: types-requests; extra == "dev"
|
|
31
34
|
Requires-Dist: pip-tools; extra == "dev"
|
|
35
|
+
Requires-Dist: uv; extra == "dev"
|
|
36
|
+
Requires-Dist: pre-commit; extra == "dev"
|
|
32
37
|
Requires-Dist: jupyter; extra == "dev"
|
|
33
38
|
Requires-Dist: jupyterlab; extra == "dev"
|
|
34
39
|
Requires-Dist: jupyterlab-h5web; extra == "dev"
|
|
40
|
+
Provides-Extra: docs
|
|
41
|
+
Requires-Dist: mkdocs; extra == "docs"
|
|
42
|
+
Requires-Dist: mkdocs-material; extra == "docs"
|
|
43
|
+
Requires-Dist: mkdocs-material-extensions; extra == "docs"
|
|
44
|
+
Requires-Dist: mkdocs-macros-plugin; extra == "docs"
|
|
45
|
+
Requires-Dist: mkdocs-click; extra == "docs"
|
|
46
|
+
Requires-Dist: markdown-include; extra == "docs"
|
|
35
47
|
|
|
36
48
|
[](https://github.com/astral-sh/ruff)
|
|
37
49
|

|
|
@@ -42,9 +54,9 @@ Requires-Dist: jupyterlab-h5web; extra == "dev"
|
|
|
42
54
|

|
|
43
55
|

|
|
44
56
|
|
|
45
|
-
#
|
|
57
|
+
# Parse and normalize atom probe tomography and field-ion microscopy data
|
|
46
58
|
|
|
47
|
-
|
|
59
|
+
## Installation
|
|
48
60
|
It is recommended to use python 3.11 with a dedicated virtual environment for this package.
|
|
49
61
|
Learn how to manage [python versions](https://github.com/pyenv/pyenv) and
|
|
50
62
|
[virtual environments](https://realpython.com/python-virtual-environments-a-primer/).
|
|
@@ -54,9 +66,11 @@ This package is a reader plugin for [`pynxtools`](https://github.com/FAIRmat-NFD
|
|
|
54
66
|
pip install pynxtools[apm]
|
|
55
67
|
```
|
|
56
68
|
|
|
57
|
-
for the latest
|
|
69
|
+
for the latest release version from [pypi](https://pypi.org/project/pynxtools-em/).
|
|
70
|
+
|
|
71
|
+
If you are interested in the newest version, we recommend to work with a development installation instead.
|
|
58
72
|
|
|
59
|
-
|
|
73
|
+
## Purpose
|
|
60
74
|
This reader plugin for [`pynxtools`](https://github.com/FAIRmat-NFDI/pynxtools) is used to translate diverse file formats from the scientific community and technology partners
|
|
61
75
|
within the field of atom probe tomography and field-ion microscopy into a standardized representation using the
|
|
62
76
|
[NeXus](https://www.nexusformat.org/) application definition [NXapm](https://fairmat-nfdi.github.io/nexus_definitions/classes/contributed_definitions/NXapm.html#nxapm).
|
|
@@ -65,14 +79,12 @@ within the field of atom probe tomography and field-ion microscopy into a standa
|
|
|
65
79
|
This plugin supports the majority of the file formats that are currently used for atom probe.
|
|
66
80
|
A detailed summary is available in the [reference section of the documentation](https://fairmat-nfdi.github.io/pynxtools-apm).
|
|
67
81
|
|
|
68
|
-
|
|
82
|
+
## Getting started
|
|
69
83
|
[A getting started tutorial](https://github.com/FAIRmat-NFDI/pynxtools-apm/tree/main/examples) is offered that guides you
|
|
70
|
-
how to use the apm reader for converting your data to NeXus using a Jupyter notebook
|
|
71
|
-
Therefore, you may need to provide an ELN file that contains the missing values in order for the
|
|
72
|
-
validation step of the APM reader to pass.
|
|
84
|
+
on how to use the apm reader for converting your data to NeXus using a Jupyter notebook or command line calls. Note that not every combination of input from a supported file format and other input, such as from an electronic lab notebook, allows filling the required and recommended fields and their attributes of the NXapm application definition. Therefore, you may need to provide an ELN file that contains the missing values in order for the validation step of the APM reader to pass.
|
|
73
85
|
|
|
74
|
-
|
|
75
|
-
We are continously working on
|
|
86
|
+
## Contributing
|
|
87
|
+
We are continously working on improving the collection of parsers and their functionalities.
|
|
76
88
|
If you would like to implement a parser for your data, feel free to get in contact.
|
|
77
89
|
|
|
78
90
|
## Development install
|
|
@@ -82,19 +94,12 @@ Install the package with its dependencies:
|
|
|
82
94
|
git clone https://github.com/FAIRmat-NFDI/pynxtools-apm.git --branch main --recursive pynxtools_apm
|
|
83
95
|
cd pynxtools_apm
|
|
84
96
|
python -m pip install --upgrade pip
|
|
85
|
-
python -m pip install -e .
|
|
86
97
|
python -m pip install -e ".[dev,docs]"
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
<!---There is also a [pre-commit hook](https://pre-commit.com/#intro) available
|
|
90
|
-
which formats the code and checks the linting before actually commiting.
|
|
91
|
-
It can be installed with
|
|
92
|
-
```shell
|
|
93
98
|
pre-commit install
|
|
94
99
|
```
|
|
95
|
-
from the root of this repository.
|
|
96
100
|
|
|
97
|
-
|
|
101
|
+
The last line installs a [pre-commit hook](https://pre-commit.com/#intro) which
|
|
102
|
+
automatically formats (linting) and type checks the code before committing.
|
|
98
103
|
|
|
99
104
|
## Test this software
|
|
100
105
|
Especially relevant for developers, there exists a basic test framework written in
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|

|
|
8
8
|

|
|
9
9
|
|
|
10
|
-
#
|
|
10
|
+
# Parse and normalize atom probe tomography and field-ion microscopy data
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
## Installation
|
|
13
13
|
It is recommended to use python 3.11 with a dedicated virtual environment for this package.
|
|
14
14
|
Learn how to manage [python versions](https://github.com/pyenv/pyenv) and
|
|
15
15
|
[virtual environments](https://realpython.com/python-virtual-environments-a-primer/).
|
|
@@ -19,9 +19,11 @@ This package is a reader plugin for [`pynxtools`](https://github.com/FAIRmat-NFD
|
|
|
19
19
|
pip install pynxtools[apm]
|
|
20
20
|
```
|
|
21
21
|
|
|
22
|
-
for the latest
|
|
22
|
+
for the latest release version from [pypi](https://pypi.org/project/pynxtools-em/).
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
If you are interested in the newest version, we recommend to work with a development installation instead.
|
|
25
|
+
|
|
26
|
+
## Purpose
|
|
25
27
|
This reader plugin for [`pynxtools`](https://github.com/FAIRmat-NFDI/pynxtools) is used to translate diverse file formats from the scientific community and technology partners
|
|
26
28
|
within the field of atom probe tomography and field-ion microscopy into a standardized representation using the
|
|
27
29
|
[NeXus](https://www.nexusformat.org/) application definition [NXapm](https://fairmat-nfdi.github.io/nexus_definitions/classes/contributed_definitions/NXapm.html#nxapm).
|
|
@@ -30,14 +32,12 @@ within the field of atom probe tomography and field-ion microscopy into a standa
|
|
|
30
32
|
This plugin supports the majority of the file formats that are currently used for atom probe.
|
|
31
33
|
A detailed summary is available in the [reference section of the documentation](https://fairmat-nfdi.github.io/pynxtools-apm).
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
## Getting started
|
|
34
36
|
[A getting started tutorial](https://github.com/FAIRmat-NFDI/pynxtools-apm/tree/main/examples) is offered that guides you
|
|
35
|
-
how to use the apm reader for converting your data to NeXus using a Jupyter notebook
|
|
36
|
-
Therefore, you may need to provide an ELN file that contains the missing values in order for the
|
|
37
|
-
validation step of the APM reader to pass.
|
|
37
|
+
on how to use the apm reader for converting your data to NeXus using a Jupyter notebook or command line calls. Note that not every combination of input from a supported file format and other input, such as from an electronic lab notebook, allows filling the required and recommended fields and their attributes of the NXapm application definition. Therefore, you may need to provide an ELN file that contains the missing values in order for the validation step of the APM reader to pass.
|
|
38
38
|
|
|
39
|
-
|
|
40
|
-
We are continously working on
|
|
39
|
+
## Contributing
|
|
40
|
+
We are continously working on improving the collection of parsers and their functionalities.
|
|
41
41
|
If you would like to implement a parser for your data, feel free to get in contact.
|
|
42
42
|
|
|
43
43
|
## Development install
|
|
@@ -47,19 +47,12 @@ Install the package with its dependencies:
|
|
|
47
47
|
git clone https://github.com/FAIRmat-NFDI/pynxtools-apm.git --branch main --recursive pynxtools_apm
|
|
48
48
|
cd pynxtools_apm
|
|
49
49
|
python -m pip install --upgrade pip
|
|
50
|
-
python -m pip install -e .
|
|
51
50
|
python -m pip install -e ".[dev,docs]"
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
<!---There is also a [pre-commit hook](https://pre-commit.com/#intro) available
|
|
55
|
-
which formats the code and checks the linting before actually commiting.
|
|
56
|
-
It can be installed with
|
|
57
|
-
```shell
|
|
58
51
|
pre-commit install
|
|
59
52
|
```
|
|
60
|
-
from the root of this repository.
|
|
61
53
|
|
|
62
|
-
|
|
54
|
+
The last line installs a [pre-commit hook](https://pre-commit.com/#intro) which
|
|
55
|
+
automatically formats (linting) and type checks the code before committing.
|
|
63
56
|
|
|
64
57
|
## Test this software
|
|
65
58
|
Especially relevant for developers, there exists a basic test framework written in
|