FlowCyPy 0.7.0__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.
Files changed (148) hide show
  1. flowcypy-0.7.0/.flake8 +12 -0
  2. flowcypy-0.7.0/.github/dependabot.yml +11 -0
  3. flowcypy-0.7.0/.github/workflows/deploy_PyPi.yml +20 -0
  4. flowcypy-0.7.0/.github/workflows/deploy_anaconda.yml +21 -0
  5. flowcypy-0.7.0/.github/workflows/deploy_coverage.yml +25 -0
  6. flowcypy-0.7.0/.github/workflows/deploy_documentation.yml +24 -0
  7. flowcypy-0.7.0/.gitignore +28 -0
  8. flowcypy-0.7.0/FlowCyPy/__init__.py +13 -0
  9. flowcypy-0.7.0/FlowCyPy/_version.py +16 -0
  10. flowcypy-0.7.0/FlowCyPy/acquisition.py +652 -0
  11. flowcypy-0.7.0/FlowCyPy/classifier.py +208 -0
  12. flowcypy-0.7.0/FlowCyPy/coupling_mechanism/__init__.py +4 -0
  13. flowcypy-0.7.0/FlowCyPy/coupling_mechanism/empirical.py +47 -0
  14. flowcypy-0.7.0/FlowCyPy/coupling_mechanism/mie.py +207 -0
  15. flowcypy-0.7.0/FlowCyPy/coupling_mechanism/rayleigh.py +116 -0
  16. flowcypy-0.7.0/FlowCyPy/coupling_mechanism/uniform.py +40 -0
  17. flowcypy-0.7.0/FlowCyPy/coupling_mechanism.py +205 -0
  18. flowcypy-0.7.0/FlowCyPy/cytometer.py +314 -0
  19. flowcypy-0.7.0/FlowCyPy/detector.py +439 -0
  20. flowcypy-0.7.0/FlowCyPy/directories.py +36 -0
  21. flowcypy-0.7.0/FlowCyPy/distribution/__init__.py +16 -0
  22. flowcypy-0.7.0/FlowCyPy/distribution/base_class.py +79 -0
  23. flowcypy-0.7.0/FlowCyPy/distribution/delta.py +104 -0
  24. flowcypy-0.7.0/FlowCyPy/distribution/lognormal.py +124 -0
  25. flowcypy-0.7.0/FlowCyPy/distribution/normal.py +128 -0
  26. flowcypy-0.7.0/FlowCyPy/distribution/particle_size_distribution.py +132 -0
  27. flowcypy-0.7.0/FlowCyPy/distribution/uniform.py +117 -0
  28. flowcypy-0.7.0/FlowCyPy/distribution/weibull.py +115 -0
  29. flowcypy-0.7.0/FlowCyPy/flow_cell.py +198 -0
  30. flowcypy-0.7.0/FlowCyPy/helper.py +81 -0
  31. flowcypy-0.7.0/FlowCyPy/logger.py +136 -0
  32. flowcypy-0.7.0/FlowCyPy/noises.py +34 -0
  33. flowcypy-0.7.0/FlowCyPy/particle_count.py +127 -0
  34. flowcypy-0.7.0/FlowCyPy/peak_locator/__init__.py +4 -0
  35. flowcypy-0.7.0/FlowCyPy/peak_locator/base_class.py +163 -0
  36. flowcypy-0.7.0/FlowCyPy/peak_locator/basic.py +108 -0
  37. flowcypy-0.7.0/FlowCyPy/peak_locator/derivative.py +143 -0
  38. flowcypy-0.7.0/FlowCyPy/peak_locator/moving_average.py +166 -0
  39. flowcypy-0.7.0/FlowCyPy/physical_constant.py +19 -0
  40. flowcypy-0.7.0/FlowCyPy/plottings.py +269 -0
  41. flowcypy-0.7.0/FlowCyPy/population.py +136 -0
  42. flowcypy-0.7.0/FlowCyPy/populations_instances.py +65 -0
  43. flowcypy-0.7.0/FlowCyPy/scatterer_collection.py +306 -0
  44. flowcypy-0.7.0/FlowCyPy/signal_digitizer.py +90 -0
  45. flowcypy-0.7.0/FlowCyPy/source.py +249 -0
  46. flowcypy-0.7.0/FlowCyPy/units.py +30 -0
  47. flowcypy-0.7.0/FlowCyPy/utils.py +191 -0
  48. flowcypy-0.7.0/FlowCyPy.egg-info/PKG-INFO +252 -0
  49. flowcypy-0.7.0/FlowCyPy.egg-info/SOURCES.txt +146 -0
  50. flowcypy-0.7.0/FlowCyPy.egg-info/dependency_links.txt +1 -0
  51. flowcypy-0.7.0/FlowCyPy.egg-info/requires.txt +27 -0
  52. flowcypy-0.7.0/FlowCyPy.egg-info/top_level.txt +1 -0
  53. flowcypy-0.7.0/LICENSE +21 -0
  54. flowcypy-0.7.0/PKG-INFO +252 -0
  55. flowcypy-0.7.0/README.rst +186 -0
  56. flowcypy-0.7.0/developments/doc/canto_spec.md +61 -0
  57. flowcypy-0.7.0/developments/doc/internship.pdf +0 -0
  58. flowcypy-0.7.0/developments/get_started.md +23 -0
  59. flowcypy-0.7.0/developments/image.png +0 -0
  60. flowcypy-0.7.0/developments/output_file.prof +0 -0
  61. flowcypy-0.7.0/developments/scripts/concentration_comparison.py +109 -0
  62. flowcypy-0.7.0/developments/scripts/create_images.py +42 -0
  63. flowcypy-0.7.0/developments/scripts/data_analysis.py +34 -0
  64. flowcypy-0.7.0/developments/scripts/dev_beads_analysis.py +154 -0
  65. flowcypy-0.7.0/developments/scripts/dev_canto.py +146 -0
  66. flowcypy-0.7.0/developments/scripts/dev_classifier.py +149 -0
  67. flowcypy-0.7.0/developments/scripts/dev_shot_noise_check.py +138 -0
  68. flowcypy-0.7.0/developments/scripts/dev_stats_0.py +91 -0
  69. flowcypy-0.7.0/developments/scripts/dev_stats_1.py +70 -0
  70. flowcypy-0.7.0/developments/scripts/dev_stats_2.py +17 -0
  71. flowcypy-0.7.0/developments/scripts/dev_study_on_ri.py +156 -0
  72. flowcypy-0.7.0/developments/scripts/dev_study_on_size.py +161 -0
  73. flowcypy-0.7.0/developments/scripts/mat2csv.py +65 -0
  74. flowcypy-0.7.0/developments/scripts/profiler.py +68 -0
  75. flowcypy-0.7.0/developments/scripts/temp.py +127 -0
  76. flowcypy-0.7.0/developments/test.pdf +0 -0
  77. flowcypy-0.7.0/docs/Makefile +19 -0
  78. flowcypy-0.7.0/docs/examples/extras/README.rst +2 -0
  79. flowcypy-0.7.0/docs/examples/extras/distributions.py +89 -0
  80. flowcypy-0.7.0/docs/examples/extras/flow_cytometer_signal.py +108 -0
  81. flowcypy-0.7.0/docs/examples/extras/scatterer_distribution.py +58 -0
  82. flowcypy-0.7.0/docs/examples/extras/signal_acquisition.py +120 -0
  83. flowcypy-0.7.0/docs/examples/noise_sources/README.rst +2 -0
  84. flowcypy-0.7.0/docs/examples/noise_sources/dark_current.py +79 -0
  85. flowcypy-0.7.0/docs/examples/noise_sources/shot_noise.py +80 -0
  86. flowcypy-0.7.0/docs/examples/noise_sources/thermal.py +72 -0
  87. flowcypy-0.7.0/docs/examples/tutorials/README.rst +2 -0
  88. flowcypy-0.7.0/docs/examples/tutorials/limit_of_detection.py +100 -0
  89. flowcypy-0.7.0/docs/examples/tutorials/workflow.py +212 -0
  90. flowcypy-0.7.0/docs/images/distributions/Delta.png +0 -0
  91. flowcypy-0.7.0/docs/images/distributions/LogNormal.png +0 -0
  92. flowcypy-0.7.0/docs/images/distributions/Normal.png +0 -0
  93. flowcypy-0.7.0/docs/images/distributions/RosinRammler.png +0 -0
  94. flowcypy-0.7.0/docs/images/distributions/Uniform.png +0 -0
  95. flowcypy-0.7.0/docs/images/distributions/Weibull.png +0 -0
  96. flowcypy-0.7.0/docs/images/example_0.png +0 -0
  97. flowcypy-0.7.0/docs/images/example_1.png +0 -0
  98. flowcypy-0.7.0/docs/images/example_2.png +0 -0
  99. flowcypy-0.7.0/docs/images/example_3.png +0 -0
  100. flowcypy-0.7.0/docs/images/flow_cytometer.png +0 -0
  101. flowcypy-0.7.0/docs/images/logo.png +0 -0
  102. flowcypy-0.7.0/docs/make.bat +35 -0
  103. flowcypy-0.7.0/docs/source/_static/default.css +19 -0
  104. flowcypy-0.7.0/docs/source/_static/logo.png +0 -0
  105. flowcypy-0.7.0/docs/source/_static/thumbnail.png +0 -0
  106. flowcypy-0.7.0/docs/source/code/base.rst +17 -0
  107. flowcypy-0.7.0/docs/source/code/detector.rst +11 -0
  108. flowcypy-0.7.0/docs/source/code/distributions.rst +89 -0
  109. flowcypy-0.7.0/docs/source/code/flow_cell.rst +9 -0
  110. flowcypy-0.7.0/docs/source/code/flow_cytometer.rst +9 -0
  111. flowcypy-0.7.0/docs/source/code/peak_locator.rst +19 -0
  112. flowcypy-0.7.0/docs/source/code/scatterer.rst +15 -0
  113. flowcypy-0.7.0/docs/source/code/source.rst +15 -0
  114. flowcypy-0.7.0/docs/source/code.rst +18 -0
  115. flowcypy-0.7.0/docs/source/conf.py +201 -0
  116. flowcypy-0.7.0/docs/source/examples.rst +15 -0
  117. flowcypy-0.7.0/docs/source/index.rst +14 -0
  118. flowcypy-0.7.0/docs/source/internal/core_components.rst +95 -0
  119. flowcypy-0.7.0/docs/source/internal/getting_started.rst +102 -0
  120. flowcypy-0.7.0/docs/source/internal/objectives/main.rst +111 -0
  121. flowcypy-0.7.0/docs/source/internal/objectives/pre.rst +31 -0
  122. flowcypy-0.7.0/docs/source/internal/objectives/stretch.rst +9 -0
  123. flowcypy-0.7.0/docs/source/internal/prerequisites/index.rst +12 -0
  124. flowcypy-0.7.0/docs/source/internal/prerequisites/mathematics.rst +120 -0
  125. flowcypy-0.7.0/docs/source/internal/prerequisites/optics.rst +16 -0
  126. flowcypy-0.7.0/docs/source/internal/prerequisites/programming.rst +91 -0
  127. flowcypy-0.7.0/docs/source/internal/ressources.rst +6 -0
  128. flowcypy-0.7.0/docs/source/internal/tasks.rst +15 -0
  129. flowcypy-0.7.0/docs/source/internal.rst +79 -0
  130. flowcypy-0.7.0/docs/source/references.rst +4 -0
  131. flowcypy-0.7.0/docs/source/sg_execution_times.rst +61 -0
  132. flowcypy-0.7.0/docs/source/theory.rst +154 -0
  133. flowcypy-0.7.0/meta.yaml +63 -0
  134. flowcypy-0.7.0/notebook.ipynb +417 -0
  135. flowcypy-0.7.0/pyproject.toml +103 -0
  136. flowcypy-0.7.0/setup.cfg +4 -0
  137. flowcypy-0.7.0/tests/__init__.py +0 -0
  138. flowcypy-0.7.0/tests/test_coupling_mechanism.py +149 -0
  139. flowcypy-0.7.0/tests/test_detector_noise.py +129 -0
  140. flowcypy-0.7.0/tests/test_distribution.py +100 -0
  141. flowcypy-0.7.0/tests/test_extra.py +55 -0
  142. flowcypy-0.7.0/tests/test_flow_cytometer.py +131 -0
  143. flowcypy-0.7.0/tests/test_noises.py +159 -0
  144. flowcypy-0.7.0/tests/test_peak_algorithm.py +48 -0
  145. flowcypy-0.7.0/tests/test_peak_analyzer.py +117 -0
  146. flowcypy-0.7.0/tests/test_population.py +103 -0
  147. flowcypy-0.7.0/tests/test_scatterer_distribution.py +185 -0
  148. flowcypy-0.7.0/tests/test_source.py +132 -0
flowcypy-0.7.0/.flake8 ADDED
@@ -0,0 +1,12 @@
1
+ [flake8]
2
+ max-line-length = 300
3
+ exclude =
4
+ .git
5
+ docs/build
6
+ docs/source/gallery
7
+ development
8
+
9
+ count = true
10
+ per-file-ignores =
11
+ __init__.py: F403, F401
12
+ FlowCyPy/units.py: F401
@@ -0,0 +1,11 @@
1
+ # Specify reviewers for pull requests
2
+
3
+ version: 2
4
+ updates:
5
+ - package-ecosystem: "pip"
6
+ directory: "/"
7
+ target-branch: "master"
8
+ schedule:
9
+ interval: "weekly"
10
+ day: "sunday"
11
+ time: "09:00"
@@ -0,0 +1,20 @@
1
+ name: Deploy to PyPi
2
+
3
+ on:
4
+ push:
5
+ branches: [ "master" ]
6
+ tags:
7
+ - '*'
8
+ pull_request:
9
+ branches: [ "master" ]
10
+
11
+ permissions:
12
+ contents: write
13
+
14
+ jobs:
15
+ pure_package:
16
+ uses: MartinPdeS/MPSActions/.github/workflows/publish_pure_package_to_PyPi.yml@master
17
+ with:
18
+ python-version: "3.11"
19
+ secrets:
20
+ PYPI_API_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
@@ -0,0 +1,21 @@
1
+ name: Deploy Conda Packages
2
+
3
+ on:
4
+ push:
5
+ branches: [ "master" ]
6
+ tags:
7
+ - '*'
8
+ pull_request:
9
+ branches: [ "master" ]
10
+
11
+ permissions:
12
+ contents: write
13
+
14
+ jobs:
15
+ ManyLinux_x86_64:
16
+ uses: MartinPdeS/MPSActions/.github/workflows/publish_compiled_package_to_anaconda.yml@master
17
+ with:
18
+ python-versions: '["3.11", "3.12"]'
19
+ secrets:
20
+ ANACONDA_API_TOKEN: ${{ secrets.ANACONDA_API_TOKEN }}
21
+
@@ -0,0 +1,25 @@
1
+ # Simple workflow for deploying static content to GitHub Pages
2
+ name: Deploy coverage
3
+
4
+ on:
5
+ push:
6
+ branches: [ "master" ]
7
+ tags:
8
+ - '*'
9
+ pull_request:
10
+ branches: [ "master" ]
11
+
12
+
13
+ # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
14
+ permissions:
15
+ contents: write
16
+ pages: write
17
+ id-token: write
18
+
19
+ jobs:
20
+ ManyLinux_x86_64:
21
+ uses: MartinPdeS/MPSActions/.github/workflows/publish_coverage.yml@master
22
+ with:
23
+ python-version: "3.11"
24
+ secrets:
25
+ _GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,24 @@
1
+ # Simple workflow for deploying static content to GitHub Pages
2
+ name: Deploy documentation to github page
3
+
4
+ on:
5
+ push:
6
+ branches: [ "master" ]
7
+ tags:
8
+ - '*'
9
+ pull_request:
10
+ branches: [ "master" ]
11
+
12
+
13
+ # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
14
+ permissions:
15
+ contents: write
16
+ pages: write
17
+ id-token: write
18
+
19
+ jobs:
20
+ ManyLinux_x86_64:
21
+ uses: MartinPdeS/MPSActions/.github/workflows/publish_documentation.yml@master
22
+ with:
23
+ python-version: "3.11"
24
+ package-name: "FlowCyPy"
@@ -0,0 +1,28 @@
1
+ # General patterns
2
+ *.DS_store
3
+ *.ipynb_checkpoints*
4
+ *__pycache__*
5
+ *.so
6
+ *.a
7
+ .coverage*
8
+ *.pytest_cache
9
+ htmlcov
10
+ dist
11
+ build
12
+ *.egg*
13
+ *.whl
14
+ CMakeCache.txt
15
+ CMakeFiles
16
+ install_manifest.txt
17
+ cmake_install.cmake
18
+ wheelhouse
19
+
20
+ # Docs-specific patterns
21
+ docs/source/gallery/*
22
+ !docs/source/gallery/index.rst
23
+ PyOptik/data/**/test*
24
+ PyOptik/data/**/example*
25
+
26
+ # Override for documentation_build
27
+ !documentation_build
28
+ !documentation_build/**
@@ -0,0 +1,13 @@
1
+ try:
2
+ from ._version import version as __version__ # noqa: F401
3
+
4
+ except ImportError:
5
+ __version__ = "0.0.0"
6
+
7
+ from .cytometer import FlowCytometer
8
+ from .scatterer_collection import ScattererCollection, CouplingModel
9
+ from .population import Population
10
+ from .detector import Detector
11
+ from .flow_cell import FlowCell
12
+ from .source import GaussianBeam
13
+ from .noises import NoiseSetting
@@ -0,0 +1,16 @@
1
+ # file generated by setuptools_scm
2
+ # don't change, don't track in version control
3
+ TYPE_CHECKING = False
4
+ if TYPE_CHECKING:
5
+ from typing import Tuple, Union
6
+ VERSION_TUPLE = Tuple[Union[int, str], ...]
7
+ else:
8
+ VERSION_TUPLE = object
9
+
10
+ version: str
11
+ __version__: str
12
+ __version_tuple__: VERSION_TUPLE
13
+ version_tuple: VERSION_TUPLE
14
+
15
+ __version__ = version = '0.7.0'
16
+ __version_tuple__ = version_tuple = (0, 7, 0)