xcoll 0.5.3__tar.gz → 0.5.4__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.

Potentially problematic release.


This version of xcoll might be problematic. Click here for more details.

Files changed (413) hide show
  1. {xcoll-0.5.3 → xcoll-0.5.4}/PKG-INFO +1 -1
  2. {xcoll-0.5.3 → xcoll-0.5.4}/pyproject.toml +16 -2
  3. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/__init__.py +2 -2
  4. xcoll-0.5.4/xcoll/_manager.py +22 -0
  5. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/__init__.py +1 -1
  6. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/absorber.py +1 -1
  7. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/base.py +1 -1
  8. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/blowup.py +1 -1
  9. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/elements_src/black_absorber.h +1 -1
  10. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/elements_src/black_crystal.h +1 -1
  11. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/elements_src/blowup.h +1 -1
  12. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/elements_src/emittance_monitor.h +1 -1
  13. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/elements_src/everest_block.h +8 -18
  14. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/elements_src/everest_collimator.h +7 -18
  15. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/elements_src/everest_crystal.h +18 -24
  16. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/everest.py +7 -2
  17. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/beam_elements/monitor.py +1 -1
  18. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/colldb.py +1 -1
  19. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/general.py +2 -2
  20. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/headers/checks.h +1 -1
  21. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/headers/particle_states.h +1 -1
  22. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/initial_distribution.py +32 -20
  23. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/install.py +1 -1
  24. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/interaction_record/interaction_record.py +1 -1
  25. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/interaction_record/interaction_record_src/interaction_record.h +1 -1
  26. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/interaction_record/interaction_types.py +1 -1
  27. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/line_tools.py +6 -1
  28. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/lossmap.py +4 -4
  29. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/rf_sweep.py +1 -1
  30. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/__init__.py +1 -1
  31. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/amorphous.h +11 -9
  32. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/channeling.h +4 -4
  33. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/constants.h +1 -1
  34. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/crystal_parameters.h +36 -16
  35. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/everest.h +10 -2
  36. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/everest.py +1 -1
  37. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/jaw.h +1 -2
  38. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/materials.py +1 -1
  39. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/multiple_coulomb_scattering.h +9 -8
  40. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/nuclear_interaction.h +1 -1
  41. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/everest/properties.h +1 -1
  42. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/__init__.py +1 -1
  43. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/collimator_geometry.h +1 -1
  44. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/crystal_geometry.h +1 -1
  45. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/geometry.py +1 -1
  46. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/get_s.h +1 -1
  47. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/methods.h +1 -1
  48. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/objects.h +1 -1
  49. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/rotation.h +1 -1
  50. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/segments.h +1 -1
  51. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geometry/sort.h +1 -1
  52. xcoll-0.5.4/xcoll/scattering_routines/geometry/temp.c +953 -0
  53. xcoll-0.5.3/xcoll/manager.py +0 -10
  54. {xcoll-0.5.3 → xcoll-0.5.4}/LICENSE +0 -0
  55. {xcoll-0.5.3 → xcoll-0.5.4}/NOTICE +0 -0
  56. {xcoll-0.5.3 → xcoll-0.5.4}/README.md +0 -0
  57. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/interaction_record/__init__.py +0 -0
  58. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/.git +0 -0
  59. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/.gitignore +0 -0
  60. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/CMakeLists.txt +0 -0
  61. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/ComponentMakefile +0 -0
  62. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/Makefile +0 -0
  63. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/README +0 -0
  64. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/Doxyfile +0 -0
  65. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO.asciidoc +0 -0
  66. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO.epub +0 -0
  67. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO.html +0 -0
  68. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO.pdf +0 -0
  69. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO__1.png +0 -0
  70. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO__2.png +0 -0
  71. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO__3.png +0 -0
  72. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO__4.png +0 -0
  73. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO__5.png +0 -0
  74. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO__6.png +0 -0
  75. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/FlukaIO__7.png +0 -0
  76. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/Makefile +0 -0
  77. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/doc/docbook.xsl +0 -0
  78. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/include/Connection.h +0 -0
  79. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/include/FlukaIO.h +0 -0
  80. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/include/FlukaIOServer.h +0 -0
  81. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/include/FortranFlukaIO.h +0 -0
  82. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/include/Message.h +0 -0
  83. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/include/ParticleInfo.h +0 -0
  84. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/lib/libFlukaIO64.a +0 -0
  85. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/lib/libFlukaIO64.so +0 -0
  86. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/samples/ClientTest.c +0 -0
  87. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/samples/ServerTest.c +0 -0
  88. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/samples/fclient.f +0 -0
  89. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/samples/fserver.f +0 -0
  90. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/Connection.c +0 -0
  91. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/Connection.d +0 -0
  92. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/Connection.o +0 -0
  93. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIO.c +0 -0
  94. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIO.d +0 -0
  95. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIO.o +0 -0
  96. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIOHandshake.c +0 -0
  97. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIOHandshake.d +0 -0
  98. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIOHandshake.h +0 -0
  99. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIOHandshake.o +0 -0
  100. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIOServer.c +0 -0
  101. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIOServer.d +0 -0
  102. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIOServer.o +0 -0
  103. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIOServer_private.h +0 -0
  104. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FlukaIO_private.h +0 -0
  105. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FortranFlukaIO.c +0 -0
  106. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FortranFlukaIO.d +0 -0
  107. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/FortranFlukaIO.o +0 -0
  108. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/NetIO.c +0 -0
  109. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/NetIO.d +0 -0
  110. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/NetIO.h +0 -0
  111. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/NetIO.o +0 -0
  112. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/src/tags +0 -0
  113. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/AllTests.cpp +0 -0
  114. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/CommonTest.h +0 -0
  115. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/ConnectionTest.cpp +0 -0
  116. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/FlukaIOServerTest.cpp +0 -0
  117. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/FlukaIOTest.cpp +0 -0
  118. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/FortranFlukaIOTest.cpp +0 -0
  119. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeConnection.c +0 -0
  120. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeConnection.h +0 -0
  121. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeFlukaIO.c +0 -0
  122. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeFlukaIO.h +0 -0
  123. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeFlukaIOHandshake.c +0 -0
  124. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeFlukaIOHandshake.h +0 -0
  125. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeFlukaIOServer.c +0 -0
  126. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeFlukaIOServer.h +0 -0
  127. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeFortranFlukaIO.h +0 -0
  128. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeNetIO.c +0 -0
  129. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/fluka/flukaio/tests/fakes/FakeNetIO.h +0 -0
  130. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/.git +0 -0
  131. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/.gitignore +0 -0
  132. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/.gitmodules +0 -0
  133. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/CMakeLists.txt +0 -0
  134. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/README.md +0 -0
  135. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/docs/Makefile +0 -0
  136. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/docs/make.bat +0 -0
  137. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/docs/source/collimasim.rst +0 -0
  138. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/docs/source/conf.py +0 -0
  139. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/docs/source/index.rst +0 -0
  140. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.appveyor.yml +0 -0
  141. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.clang-format +0 -0
  142. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.clang-tidy +0 -0
  143. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.cmake-format.yaml +0 -0
  144. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.git +0 -0
  145. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/CODEOWNERS +0 -0
  146. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/CONTRIBUTING.md +0 -0
  147. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
  148. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/ISSUE_TEMPLATE/config.yml +0 -0
  149. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/dependabot.yml +0 -0
  150. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/labeler.yml +0 -0
  151. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/labeler_merged.yml +0 -0
  152. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/pull_request_template.md +0 -0
  153. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/workflows/ci.yml +0 -0
  154. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/workflows/configure.yml +0 -0
  155. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/workflows/format.yml +0 -0
  156. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/workflows/labeler.yml +0 -0
  157. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.github/workflows/pip.yml +0 -0
  158. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.gitignore +0 -0
  159. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.pre-commit-config.yaml +0 -0
  160. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/.readthedocs.yml +0 -0
  161. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/CMakeLists.txt +0 -0
  162. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/LICENSE +0 -0
  163. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/MANIFEST.in +0 -0
  164. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/README.rst +0 -0
  165. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/Doxyfile +0 -0
  166. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/Makefile +0 -0
  167. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/_static/theme_overrides.css +0 -0
  168. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/cast/chrono.rst +0 -0
  169. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/cast/custom.rst +0 -0
  170. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/cast/eigen.rst +0 -0
  171. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/cast/functional.rst +0 -0
  172. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/cast/index.rst +0 -0
  173. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/cast/overview.rst +0 -0
  174. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/cast/stl.rst +0 -0
  175. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/cast/strings.rst +0 -0
  176. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/classes.rst +0 -0
  177. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/embedding.rst +0 -0
  178. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/exceptions.rst +0 -0
  179. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/functions.rst +0 -0
  180. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/misc.rst +0 -0
  181. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/pycpp/index.rst +0 -0
  182. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/pycpp/numpy.rst +0 -0
  183. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/pycpp/object.rst +0 -0
  184. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/pycpp/utilities.rst +0 -0
  185. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/advanced/smart_ptrs.rst +0 -0
  186. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/basics.rst +0 -0
  187. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/benchmark.py +0 -0
  188. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/benchmark.rst +0 -0
  189. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/changelog.rst +0 -0
  190. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/classes.rst +0 -0
  191. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/cmake/index.rst +0 -0
  192. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/compiling.rst +0 -0
  193. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/conf.py +0 -0
  194. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/faq.rst +0 -0
  195. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/index.rst +0 -0
  196. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/installing.rst +0 -0
  197. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/limitations.rst +0 -0
  198. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/pybind11-logo.png +0 -0
  199. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/pybind11_vs_boost_python1.png +0 -0
  200. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/pybind11_vs_boost_python1.svg +0 -0
  201. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/pybind11_vs_boost_python2.png +0 -0
  202. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/pybind11_vs_boost_python2.svg +0 -0
  203. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/reference.rst +0 -0
  204. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/release.rst +0 -0
  205. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/requirements.txt +0 -0
  206. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/docs/upgrade.rst +0 -0
  207. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/attr.h +0 -0
  208. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/buffer_info.h +0 -0
  209. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/cast.h +0 -0
  210. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/chrono.h +0 -0
  211. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/common.h +0 -0
  212. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/complex.h +0 -0
  213. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/detail/class.h +0 -0
  214. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/detail/common.h +0 -0
  215. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/detail/descr.h +0 -0
  216. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/detail/init.h +0 -0
  217. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/detail/internals.h +0 -0
  218. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/detail/type_caster_base.h +0 -0
  219. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/detail/typeid.h +0 -0
  220. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/eigen.h +0 -0
  221. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/embed.h +0 -0
  222. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/eval.h +0 -0
  223. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/functional.h +0 -0
  224. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/gil.h +0 -0
  225. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/iostream.h +0 -0
  226. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/numpy.h +0 -0
  227. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/operators.h +0 -0
  228. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/options.h +0 -0
  229. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/pybind11.h +0 -0
  230. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/pytypes.h +0 -0
  231. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/stl/filesystem.h +0 -0
  232. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/stl.h +0 -0
  233. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/include/pybind11/stl_bind.h +0 -0
  234. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/noxfile.py +0 -0
  235. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pybind11/__init__.py +0 -0
  236. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pybind11/__main__.py +0 -0
  237. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pybind11/_version.py +0 -0
  238. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pybind11/_version.pyi +0 -0
  239. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pybind11/commands.py +0 -0
  240. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pybind11/py.typed +0 -0
  241. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pybind11/setup_helpers.py +0 -0
  242. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pybind11/setup_helpers.pyi +0 -0
  243. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/pyproject.toml +0 -0
  244. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/setup.cfg +0 -0
  245. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/setup.py +0 -0
  246. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/CMakeLists.txt +0 -0
  247. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/conftest.py +0 -0
  248. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/constructor_stats.h +0 -0
  249. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/cross_module_gil_utils.cpp +0 -0
  250. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/env.py +0 -0
  251. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/extra_python_package/pytest.ini +0 -0
  252. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/extra_python_package/test_files.py +0 -0
  253. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/extra_setuptools/pytest.ini +0 -0
  254. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/extra_setuptools/test_setuphelper.py +0 -0
  255. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/local_bindings.h +0 -0
  256. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/object.h +0 -0
  257. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/pybind11_cross_module_tests.cpp +0 -0
  258. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/pybind11_tests.cpp +0 -0
  259. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/pybind11_tests.h +0 -0
  260. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/pytest.ini +0 -0
  261. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/requirements.txt +0 -0
  262. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_async.cpp +0 -0
  263. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_async.py +0 -0
  264. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_buffers.cpp +0 -0
  265. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_buffers.py +0 -0
  266. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_builtin_casters.cpp +0 -0
  267. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_builtin_casters.py +0 -0
  268. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_call_policies.cpp +0 -0
  269. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_call_policies.py +0 -0
  270. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_callbacks.cpp +0 -0
  271. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_callbacks.py +0 -0
  272. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_chrono.cpp +0 -0
  273. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_chrono.py +0 -0
  274. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_class.cpp +0 -0
  275. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_class.py +0 -0
  276. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/CMakeLists.txt +0 -0
  277. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/embed.cpp +0 -0
  278. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/installed_embed/CMakeLists.txt +0 -0
  279. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/installed_function/CMakeLists.txt +0 -0
  280. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/installed_target/CMakeLists.txt +0 -0
  281. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/main.cpp +0 -0
  282. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/subdirectory_embed/CMakeLists.txt +0 -0
  283. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/subdirectory_function/CMakeLists.txt +0 -0
  284. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/subdirectory_target/CMakeLists.txt +0 -0
  285. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_cmake_build/test.py +0 -0
  286. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_constants_and_functions.cpp +0 -0
  287. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_constants_and_functions.py +0 -0
  288. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_copy_move.cpp +0 -0
  289. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_copy_move.py +0 -0
  290. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_custom_type_casters.cpp +0 -0
  291. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_custom_type_casters.py +0 -0
  292. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_custom_type_setup.cpp +0 -0
  293. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_custom_type_setup.py +0 -0
  294. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_docstring_options.cpp +0 -0
  295. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_docstring_options.py +0 -0
  296. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_eigen.cpp +0 -0
  297. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_eigen.py +0 -0
  298. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_embed/CMakeLists.txt +0 -0
  299. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_embed/catch.cpp +0 -0
  300. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_embed/external_module.cpp +0 -0
  301. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_embed/test_interpreter.cpp +0 -0
  302. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_embed/test_interpreter.py +0 -0
  303. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_enum.cpp +0 -0
  304. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_enum.py +0 -0
  305. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_eval.cpp +0 -0
  306. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_eval.py +0 -0
  307. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_eval_call.py +0 -0
  308. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_exceptions.cpp +0 -0
  309. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_exceptions.h +0 -0
  310. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_exceptions.py +0 -0
  311. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_factory_constructors.cpp +0 -0
  312. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_factory_constructors.py +0 -0
  313. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_gil_scoped.cpp +0 -0
  314. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_gil_scoped.py +0 -0
  315. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_iostream.cpp +0 -0
  316. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_iostream.py +0 -0
  317. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_kwargs_and_defaults.cpp +0 -0
  318. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_kwargs_and_defaults.py +0 -0
  319. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_local_bindings.cpp +0 -0
  320. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_local_bindings.py +0 -0
  321. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_methods_and_attributes.cpp +0 -0
  322. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_methods_and_attributes.py +0 -0
  323. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_modules.cpp +0 -0
  324. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_modules.py +0 -0
  325. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_multiple_inheritance.cpp +0 -0
  326. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_multiple_inheritance.py +0 -0
  327. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_numpy_array.cpp +0 -0
  328. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_numpy_array.py +0 -0
  329. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_numpy_dtypes.cpp +0 -0
  330. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_numpy_dtypes.py +0 -0
  331. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_numpy_vectorize.cpp +0 -0
  332. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_numpy_vectorize.py +0 -0
  333. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_opaque_types.cpp +0 -0
  334. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_opaque_types.py +0 -0
  335. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_operator_overloading.cpp +0 -0
  336. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_operator_overloading.py +0 -0
  337. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_pickling.cpp +0 -0
  338. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_pickling.py +0 -0
  339. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_pytypes.cpp +0 -0
  340. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_pytypes.py +0 -0
  341. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_sequences_and_iterators.cpp +0 -0
  342. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_sequences_and_iterators.py +0 -0
  343. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_smart_ptr.cpp +0 -0
  344. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_smart_ptr.py +0 -0
  345. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_stl.cpp +0 -0
  346. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_stl.py +0 -0
  347. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_stl_binders.cpp +0 -0
  348. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_stl_binders.py +0 -0
  349. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_tagbased_polymorphic.cpp +0 -0
  350. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_tagbased_polymorphic.py +0 -0
  351. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_thread.cpp +0 -0
  352. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_thread.py +0 -0
  353. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_union.cpp +0 -0
  354. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_union.py +0 -0
  355. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_virtual_functions.cpp +0 -0
  356. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/test_virtual_functions.py +0 -0
  357. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/valgrind-numpy-scipy.supp +0 -0
  358. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tests/valgrind-python.supp +0 -0
  359. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/FindCatch.cmake +0 -0
  360. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/FindEigen3.cmake +0 -0
  361. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/FindPythonLibsNew.cmake +0 -0
  362. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/check-style.sh +0 -0
  363. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/cmake_uninstall.cmake.in +0 -0
  364. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/libsize.py +0 -0
  365. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/make_changelog.py +0 -0
  366. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/pybind11Common.cmake +0 -0
  367. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/pybind11Config.cmake.in +0 -0
  368. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/pybind11NewTools.cmake +0 -0
  369. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/pybind11Tools.cmake +0 -0
  370. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/pyproject.toml +0 -0
  371. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/setup_global.py.in +0 -0
  372. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/lib/pybind11/tools/setup_main.py.in +0 -0
  373. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/pyproject.toml +0 -0
  374. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/setup.py +0 -0
  375. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim/BDSPyATInterface.cpp +0 -0
  376. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim/BDSPyATInterface.hh +0 -0
  377. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim/BDSXtrackInterface.cpp +0 -0
  378. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim/BDSXtrackInterface.hh +0 -0
  379. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim/__init__.py +0 -0
  380. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim/bindings.cpp +0 -0
  381. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim/pyCollimatorPass.py +0 -0
  382. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim/xtrack_collimator.py +0 -0
  383. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim.egg-info/PKG-INFO +0 -0
  384. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim.egg-info/SOURCES.txt +0 -0
  385. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim.egg-info/dependency_links.txt +0 -0
  386. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim.egg-info/not-zip-safe +0 -0
  387. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/src/collimasim.egg-info/top_level.txt +0 -0
  388. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/README.md +0 -0
  389. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/CollDB_forions.dat +0 -0
  390. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/CollDB_new_example.dat +0 -0
  391. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/CollDB_old_example.dat +0 -0
  392. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/CollDB_testing.dat +0 -0
  393. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/CollDB_yaml_example.yaml +0 -0
  394. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/collgaps.dat +0 -0
  395. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/collgaps_pyat_test.dat +0 -0
  396. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/collonly_twiss_file_example.tfs +0 -0
  397. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/settings.gmad +0 -0
  398. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/settings_black_absorber.gmad +0 -0
  399. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/settings_ions.gmad +0 -0
  400. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/resources/twiss_file_testing.tfs +0 -0
  401. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_pyat.py +0 -0
  402. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_pyat_passmethod.py +0 -0
  403. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_pyat_tracking.py +0 -0
  404. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack.py +0 -0
  405. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_angle.py +0 -0
  406. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_colldb_load.py +0 -0
  407. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_interaction.py +0 -0
  408. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_interaction_ion.py +0 -0
  409. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_ions.py +0 -0
  410. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_lost_energy.py +0 -0
  411. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_tilt.py +0 -0
  412. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_tracking.py +0 -0
  413. {xcoll-0.5.3 → xcoll-0.5.4}/xcoll/scattering_routines/geant4/collimasim/tests/test_xtrack_tracking_ions.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xcoll
3
- Version: 0.5.3
3
+ Version: 0.5.4
4
4
  Summary: Xsuite collimation package
5
5
  Home-page: https://github.com/xsuite/xcoll
6
6
  License: Apache 2.0
@@ -1,18 +1,21 @@
1
1
  [tool.poetry]
2
2
  name = "xcoll"
3
- version = "0.5.3"
3
+ version = "0.5.4"
4
4
  description = "Xsuite collimation package"
5
5
  homepage = "https://github.com/xsuite/xcoll"
6
6
  repository = "https://github.com/xsuite/xcoll"
7
7
  authors = [
8
8
  "Frederik F. Van der Veken <frederik@cern.ch>",
9
+ "Simone O. Solstrand <simone.otelie.solstrand@cern.ch>",
10
+ "Bjorn Lindstrom",
11
+ "Andre Donadon Servelle",
9
12
  "Despina Demetriadou <despina.demetriadou@cern.ch>",
10
13
  "Andrey Abramov <andrey.abramov@cern.ch>",
11
14
  "Giovanni Iadorala <giovanni.iadorala@cern.ch>"
12
15
  ]
13
16
  readme = "README.md"
14
17
  license = "Apache 2.0"
15
- include = [ "LICENSE", "NOTICE" ]
18
+ include = ["LICENSE", "NOTICE"]
16
19
 
17
20
 
18
21
  [tool.poetry.dependencies]
@@ -36,3 +39,14 @@ tests = ["pytest", "ruamel-yaml"]
36
39
  # Needed for pip install -e (BTW: need pip version 22)
37
40
  requires = ["poetry-core>=1.0.8"]
38
41
  build-backend = "poetry.core.masonry.api"
42
+
43
+ # pyproject.toml
44
+ [tool.pytest.ini_options]
45
+ addopts = "-ra --durations=10 --durations-min=1 --junitxml=pytest_results.xml"
46
+ junit_suite_name = "Xcoll"
47
+ junit_duration_report = "call"
48
+ python_functions = ["test_"]
49
+ testpaths = [
50
+ "tests",
51
+ ]
52
+
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -17,7 +17,7 @@ from .initial_distribution import *
17
17
  from .lossmap import LossMap
18
18
 
19
19
  # Deprecated
20
- from .manager import CollimatorManager
20
+ from ._manager import CollimatorManager
21
21
 
22
22
  # print("If you use Xcoll in your simulations, please cite us :-)")
23
23
  # print(citation)
@@ -0,0 +1,22 @@
1
+ # copyright ############################### #
2
+ # This file is part of the Xcoll package. #
3
+ # Copyright (c) CERN, 2024. #
4
+ # ######################################### #
5
+
6
+
7
+ class CollimatorManager:
8
+
9
+ def __init__(self, **kwargs):
10
+ raise ValueError("`CollimatorManager` is deprecated. Use `CollimatorDatabase` instead.")
11
+
12
+ @classmethod
13
+ def from_yaml(cls, file, **kwargs):
14
+ raise ValueError("`CollimatorManager` is deprecated. Use `CollimatorDatabase` instead.")
15
+
16
+ @classmethod
17
+ def from_json(cls, file, **kwargs):
18
+ raise ValueError("`CollimatorManager` is deprecated. Use `CollimatorDatabase` instead.")
19
+
20
+ @classmethod
21
+ def from_dict(cls, file, **kwargs):
22
+ raise ValueError("`CollimatorManager` is deprecated. Use `CollimatorDatabase` instead.")
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5
 
@@ -59,7 +59,6 @@ EverestCollData EverestBlock_init(EverestBlockData el, LocalParticle* part0, int
59
59
  coll->record_scatterings = EverestBlockData_get_record_scatterings(el);
60
60
  }
61
61
  }
62
-
63
62
  return coll;
64
63
  }
65
64
 
@@ -69,15 +68,10 @@ EverestData EverestBlock_init_data(LocalParticle* part, EverestCollData coll){
69
68
  EverestData everest = (EverestData) malloc(sizeof(EverestData_));
70
69
  everest->coll = coll;
71
70
  everest->rescale_scattering = 1;
72
- #ifndef XCOLL_REFINE_ENERGY
73
71
  // Preinitialise scattering parameters
74
- double charge_ratio = LocalParticle_get_charge_ratio(part);
75
- double mass_ratio = charge_ratio / LocalParticle_get_chi(part);
76
- double energy = ( LocalParticle_get_ptau(part) + 1 / LocalParticle_get_beta0(part)
77
- ) * mass_ratio * LocalParticle_get_p0c(part) / 1e9; // energy in GeV
72
+ double energy = LocalParticle_get_energy(part) / 1e9; // energy in GeV
78
73
  calculate_scattering(everest, energy);
79
74
  calculate_ionisation_properties(everest, energy);
80
- #endif
81
75
  return everest;
82
76
  }
83
77
 
@@ -107,9 +101,6 @@ void EverestBlock_track_local_particle(EverestBlockData el, LocalParticle* part0
107
101
  LocalParticle_set_s(part, 0);
108
102
 
109
103
  // Store initial coordinates for updating later
110
- double const e0 = LocalParticle_get_energy0(part);
111
- double const p0 = LocalParticle_get_p0c(part);
112
- double const ptau_in = LocalParticle_get_ptau(part);
113
104
  double const rvv_in = LocalParticle_get_rvv(part);
114
105
  #ifdef XCOLL_USE_EXACT
115
106
  double const xp_in = LocalParticle_get_exact_xp(part);
@@ -119,20 +110,19 @@ void EverestBlock_track_local_particle(EverestBlockData el, LocalParticle* part0
119
110
  double const yp_in = LocalParticle_get_yp(part);
120
111
  #endif
121
112
  double const zeta_in = LocalParticle_get_zeta(part);
122
- double const mass_ratio = LocalParticle_get_charge_ratio(part) / LocalParticle_get_chi(part); // m/m0
123
- double energy = (p0*ptau_in + e0) * mass_ratio;
113
+ double const energy_in = LocalParticle_get_energy(part);
114
+ double energy_out;
124
115
 
125
116
  EverestData everest = EverestBlock_init_data(part, coll);
126
- energy = jaw(everest, part, energy, length, 0);
117
+ energy_out = jaw(everest, part, energy_in, length, 0);
127
118
  free(everest);
128
119
  LocalParticle_add_to_s(part, s_block);
129
120
 
130
121
  LocalParticle_set_zeta(part, zeta_in);
131
122
  // Survived particles need correcting:
132
123
  if (LocalParticle_get_state(part)>0){
133
- // Update energy
134
- double ptau_out = (energy/mass_ratio - e0) / p0;
135
- LocalParticle_update_ptau(part, ptau_out);
124
+ // Update energy; the last flag keeps angles constant (even valid for exact angles!)
125
+ LocalParticle_add_to_energy(part, energy_out - energy_in, 0);
136
126
  // Update zeta
137
127
  #ifdef XCOLL_USE_EXACT
138
128
  double xp = LocalParticle_get_exact_xp(part);
@@ -155,4 +145,4 @@ void EverestBlock_track_local_particle(EverestBlockData el, LocalParticle* part0
155
145
 
156
146
 
157
147
 
158
- #endif /* XCOLL_EVEREST_BLOCK_H */
148
+ #endif /* XCOLL_EVEREST_BLOCK_H */
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5
 
@@ -125,7 +125,6 @@ EverestCollData EverestCollimator_init(EverestCollimatorData el, LocalParticle*
125
125
  coll->record_scatterings = EverestCollimatorData_get_record_scatterings(el);
126
126
  }
127
127
  }
128
-
129
128
  return coll;
130
129
  }
131
130
 
@@ -135,16 +134,10 @@ EverestData EverestCollimator_init_data(LocalParticle* part, EverestCollData col
135
134
  EverestData everest = (EverestData) malloc(sizeof(EverestData_));
136
135
  everest->coll = coll;
137
136
  everest->rescale_scattering = 1;
138
- #ifndef XCOLL_REFINE_ENERGY
139
137
  // Preinitialise scattering parameters
140
- double charge_ratio = LocalParticle_get_charge_ratio(part);
141
- double mass_ratio = charge_ratio / LocalParticle_get_chi(part);
142
- double energy = ( LocalParticle_get_ptau(part) + 1 / LocalParticle_get_beta0(part)
143
- ) * mass_ratio * LocalParticle_get_p0c(part) / 1e9; // energy in GeV
144
- energy = LocalParticle_get_energy0(part) / 1e9;
138
+ double energy = LocalParticle_get_energy(part) / 1e9; // energy in GeV
145
139
  calculate_scattering(everest, energy);
146
140
  calculate_ionisation_properties(everest, energy);
147
- #endif
148
141
  return everest;
149
142
  }
150
143
 
@@ -175,9 +168,6 @@ void EverestCollimator_track_local_particle(EverestCollimatorData el, LocalParti
175
168
  LocalParticle_set_s(part, 0);
176
169
 
177
170
  // Store initial coordinates for updating later
178
- double const e0 = LocalParticle_get_energy0(part);
179
- double const p0 = LocalParticle_get_p0c(part);
180
- double const ptau_in = LocalParticle_get_ptau(part);
181
171
  double const rvv_in = LocalParticle_get_rvv(part);
182
172
  #ifdef XCOLL_USE_EXACT
183
173
  double const xp_in = LocalParticle_get_exact_xp(part);
@@ -187,8 +177,8 @@ void EverestCollimator_track_local_particle(EverestCollimatorData el, LocalParti
187
177
  double const yp_in = LocalParticle_get_yp(part);
188
178
  #endif
189
179
  double const zeta_in = LocalParticle_get_zeta(part);
190
- double const mass_ratio = LocalParticle_get_charge_ratio(part) / LocalParticle_get_chi(part); // m/m0
191
- double energy = (p0*ptau_in + e0) * mass_ratio;
180
+ double const energy_in = LocalParticle_get_energy(part);
181
+ double energy_out;
192
182
 
193
183
  // Check if hit on jaws
194
184
  int8_t is_hit = hit_jaws_check_and_transform(part, cg);
@@ -198,7 +188,7 @@ void EverestCollimator_track_local_particle(EverestCollimatorData el, LocalParti
198
188
  double remaining_length = length - LocalParticle_get_s(part);
199
189
  // Scatter
200
190
  EverestData everest = EverestCollimator_init_data(part, coll);
201
- energy = jaw(everest, part, energy, remaining_length, 1);
191
+ energy_out = jaw(everest, part, energy_in, remaining_length, 1);
202
192
  free(everest);
203
193
  }
204
194
 
@@ -209,9 +199,8 @@ void EverestCollimator_track_local_particle(EverestCollimatorData el, LocalParti
209
199
  LocalParticle_set_zeta(part, zeta_in);
210
200
  // Hit and survived particles need correcting:
211
201
  if (is_hit!=0 && LocalParticle_get_state(part)>0){
212
- // Update energy
213
- double ptau_out = (energy/mass_ratio - e0) / p0;
214
- LocalParticle_update_ptau(part, ptau_out);
202
+ // Update energy; the last flag keeps angles constant (even valid for exact angles!)
203
+ LocalParticle_add_to_energy(part, energy_out - energy_in, 0);
215
204
  // Update zeta
216
205
  #ifdef XCOLL_USE_EXACT
217
206
  double xp = LocalParticle_get_exact_xp(part);
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5
 
@@ -162,17 +162,12 @@ EverestData EverestCrystal_init_data(LocalParticle* part, EverestCollData restri
162
162
  EverestData everest = (EverestData) malloc(sizeof(EverestData_));
163
163
  everest->coll = coll;
164
164
  everest->rescale_scattering = 1;
165
- #ifndef XCOLL_REFINE_ENERGY
166
165
  // Preinitialise scattering parameters
167
- double charge_ratio = LocalParticle_get_charge_ratio(part);
168
- double mass_ratio = charge_ratio / LocalParticle_get_chi(part);
169
- double energy = ( LocalParticle_get_ptau(part) + 1 / LocalParticle_get_beta0(part)
170
- ) * mass_ratio * LocalParticle_get_p0c(part) / 1e9; // energy in GeV
166
+ double energy = LocalParticle_get_energy(part) / 1e9; // energy in GeV
171
167
  calculate_scattering(everest, energy);
172
168
  calculate_ionisation_properties(everest, energy);
173
169
  calculate_critical_angle(everest, part, cg, energy);
174
170
  calculate_VI_parameters(everest, part, energy);
175
- #endif
176
171
  return everest;
177
172
  }
178
173
 
@@ -188,7 +183,13 @@ void EverestCrystal_track_local_particle(EverestCrystalData el, LocalParticle* p
188
183
  EverestCollData coll = EverestCrystal_init(el, part0, active);
189
184
  CrystalGeometry cg = EverestCrystal_init_geometry(el, part0, active);
190
185
 
191
- double t_c = 0;
186
+ // For info
187
+ double const e0 = LocalParticle_get_energy0(part0);
188
+ double t_c0 = _critical_angle0(coll, e0);
189
+ double Rcrit = _critical_radius(coll, e0);
190
+ double t_c = _critical_angle(coll, t_c0, Rcrit / fabs(cg->bending_radius));
191
+ EverestCrystalData_set__critical_radius(el, Rcrit);
192
+ EverestCrystalData_set__critical_angle(el, t_c);
192
193
 
193
194
  //start_per_particle_block (part0->part)
194
195
  if (!active){
@@ -200,13 +201,11 @@ void EverestCrystal_track_local_particle(EverestCrystalData el, LocalParticle* p
200
201
  int8_t is_valid = xcoll_check_particle_init(coll->rng, part);
201
202
 
202
203
  if (is_valid) {
204
+ // Store s-location of start of crystal
203
205
  double const s_coll = LocalParticle_get_s(part);
204
206
  LocalParticle_set_s(part, 0);
205
207
 
206
208
  // Store initial coordinates for updating later
207
- double const e0 = LocalParticle_get_energy0(part);
208
- double const p0 = LocalParticle_get_p0c(part);
209
- double const ptau_in = LocalParticle_get_ptau(part);
210
209
  double const rvv_in = LocalParticle_get_rvv(part);
211
210
  #ifdef XCOLL_USE_EXACT
212
211
  double const xp_in = LocalParticle_get_exact_xp(part);
@@ -216,8 +215,8 @@ void EverestCrystal_track_local_particle(EverestCrystalData el, LocalParticle* p
216
215
  double const yp_in = LocalParticle_get_yp(part);
217
216
  #endif
218
217
  double const zeta_in = LocalParticle_get_zeta(part);
219
- double const mass_ratio = LocalParticle_get_charge_ratio(part) / LocalParticle_get_chi(part); // m/m0
220
- double energy = (p0*ptau_in + e0) * mass_ratio;
218
+ double const energy_in = LocalParticle_get_energy(part);
219
+ double energy_out;
221
220
 
222
221
  // Check if hit on jaws
223
222
  int8_t is_hit = hit_crystal_check_and_transform(part, cg);
@@ -226,7 +225,7 @@ void EverestCrystal_track_local_particle(EverestCrystalData el, LocalParticle* p
226
225
  // Hit one of the jaws, so scatter
227
226
  double remaining_length = length - LocalParticle_get_s(part);
228
227
  // Scatter
229
- EverestData everest = EverestCrystal_init_data(part0, coll, cg);
228
+ EverestData everest = EverestCrystal_init_data(part, coll, cg);
230
229
  calculate_initial_angle(everest, part, cg);
231
230
  #ifdef XCOLL_USE_EXACT
232
231
  double const xp = LocalParticle_get_exact_xp(part);
@@ -234,13 +233,10 @@ void EverestCrystal_track_local_particle(EverestCrystalData el, LocalParticle* p
234
233
  double const xp = LocalParticle_get_xp(part);
235
234
  #endif
236
235
  if (fabs(xp - everest->t_I) < everest->t_c) {
237
- energy = Channel(everest, part, cg, energy/1.e9, remaining_length)*1.e9;
236
+ energy_out = Channel(everest, part, cg, energy_in/1.e9, remaining_length)*1.e9;
238
237
  } else {
239
- energy = Amorphous(everest, part, cg, energy/1.e9, remaining_length)*1.e9;
238
+ energy_out = Amorphous(everest, part, cg, energy_in/1.e9, remaining_length, 1)*1.e9;
240
239
  }
241
- // Temporary workaround to store the critical angle for use later
242
- calculate_critical_angle(everest, part, cg, e0/1.e9);
243
- t_c = everest->t_c;
244
240
  free(everest);
245
241
  }
246
242
 
@@ -251,9 +247,8 @@ void EverestCrystal_track_local_particle(EverestCrystalData el, LocalParticle* p
251
247
  LocalParticle_set_zeta(part, zeta_in);
252
248
  // Hit and survived particles need correcting:
253
249
  if (is_hit!=0 && LocalParticle_get_state(part)>0){
254
- // Update energy
255
- double ptau_out = (energy/mass_ratio - e0) / p0;
256
- LocalParticle_update_ptau(part, ptau_out);
250
+ // Update energy; the last flag keeps angles constant (even valid for exact angles!)
251
+ LocalParticle_add_to_energy(part, energy_out - energy_in, 0);
257
252
  // Update zeta
258
253
  #ifdef XCOLL_USE_EXACT
259
254
  double xp = LocalParticle_get_exact_xp(part);
@@ -271,10 +266,9 @@ void EverestCrystal_track_local_particle(EverestCrystalData el, LocalParticle* p
271
266
  }
272
267
  }
273
268
  //end_per_particle_block
274
- EverestCrystalData_set__critical_angle(el, t_c);
275
269
  EverestCrystal_free(cg, active);
276
270
  free(coll);
277
271
  }
278
272
 
279
273
 
280
- #endif /* XCOLL_EVEREST_CRYSTAL_H */
274
+ #endif /* XCOLL_EVEREST_CRYSTAL_H */
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -154,6 +154,7 @@ class EverestCrystal(BaseCrystal):
154
154
  'miscut': xo.Float64,
155
155
  '_orient': xo.Int8,
156
156
  '_critical_angle': xo.Float64,
157
+ '_critical_radius': xo.Float64,
157
158
  '_material': CrystalMaterial,
158
159
  'rutherford_rng': xt.RandomRutherford,
159
160
  '_tracking': xo.Int8
@@ -215,7 +216,11 @@ class EverestCrystal(BaseCrystal):
215
216
 
216
217
  @property
217
218
  def critical_angle(self):
218
- return self._critical_angle if abs(self._critical_angle) > 1.e-10 else None
219
+ return self._critical_angle if abs(self._critical_angle) > 1.e-12 else None
220
+
221
+ @property
222
+ def critical_radius(self):
223
+ return self._critical_radius if abs(self._critical_radius) > 1.e-10 else None
219
224
 
220
225
  @property
221
226
  def lattice(self):
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -12,5 +12,5 @@ citation = "F.F. Van der Veken, et al.: Recent Developments with the New Tools f
12
12
  # ======================
13
13
  # Do not change
14
14
  # ======================
15
- __version__ = '0.5.3'
15
+ __version__ = '0.5.4'
16
16
  # ======================
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2023. #
4
4
  // ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -13,14 +13,14 @@ from .beam_elements import _all_collimator_classes, EverestCrystal
13
13
 
14
14
 
15
15
  def generate_pencil_on_collimator(line, name, num_particles, *, side='+-', pencil_spread=1e-6,
16
- impact_parameter=0, sigma_z=7.61e-2, tw=None, longitudinal=None,
17
- longitudinal_betatron_cut=None):
16
+ impact_parameter=0, sigma_z=7.61e-2, twiss=None, longitudinal=None,
17
+ longitudinal_betatron_cut=None, tw=None):
18
18
  """
19
19
  Generate a pencil beam on a collimator.
20
20
  """
21
21
 
22
22
  if not line._has_valid_tracker():
23
- raise Exception("Please build tracker before generating pencil distribution!")
23
+ raise ValueError("Please build tracker before generating pencil distribution!")
24
24
 
25
25
  coll = line[name]
26
26
 
@@ -28,7 +28,7 @@ def generate_pencil_on_collimator(line, name, num_particles, *, side='+-', penci
28
28
  raise ValueError("Need to provide a valid collimator!")
29
29
 
30
30
  if coll.optics is None:
31
- raise Exception("Need to assign optics to collimators before generating pencil distribution!")
31
+ raise ValueError("Need to assign optics to collimators before generating pencil distribution!")
32
32
 
33
33
  num_particles = int(num_particles)
34
34
 
@@ -48,26 +48,32 @@ def generate_pencil_on_collimator(line, name, num_particles, *, side='+-', penci
48
48
  else:
49
49
  raise NotImplementedError("Pencil beam on a skew collimator not yet supported!")
50
50
 
51
- if tw is None:
52
- tw = line.twiss() # TODO: can we do this smarter by caching?
51
+ if tw is not None:
52
+ print("The argument tw is deprecated. Please use twiss instead.")
53
+ if twiss is None:
54
+ twiss = tw
55
+
56
+ if twiss is None:
57
+ twiss = line.twiss()
53
58
 
54
59
  # Is it converging or diverging? # TODO: This might change with a tilt!!!!!!
55
- s_front = line.get_s_position(name)
56
- s_back = s_front + coll.length
57
- is_converging = tw[f'alf{plane}', name] > 0
60
+ is_converging = twiss[f'alf{plane}', name] > 0
58
61
  print(f"Collimator {name} is {'con' if is_converging else 'di'}verging.")
59
62
 
60
- beam_sizes = tw.get_beam_covariance(nemitt_x=coll.nemitt_x, nemitt_y=coll.nemitt_y)
63
+ beam_sizes = twiss.get_beam_covariance(nemitt_x=coll.nemitt_x, nemitt_y=coll.nemitt_y)
61
64
  if is_converging:
62
65
  # pencil at front of jaw
63
- match_at_s = s_front
64
66
  sigma = beam_sizes.rows[name:f'{name}>>1'][f'sigma_{plane}'][0]
65
67
  sigma_transv = beam_sizes.rows[name:f'{name}>>1'][f'sigma_{transv_plane}'][0]
68
+ tw_at_s = twiss.rows[name]
69
+ at_element = name
66
70
  else:
67
71
  # pencil at back of jaw
68
- match_at_s = s_back
69
72
  sigma = beam_sizes.rows[name:f'{name}>>1'][f'sigma_{plane}'][1]
70
73
  sigma_transv = beam_sizes.rows[name:f'{name}>>1'][f'sigma_{transv_plane}'][1]
74
+ tw_at_s = twiss.rows[f'{name}>>1']
75
+ at_element = line.element_names[line.element_names.index(name)+1]
76
+
71
77
  dr_sigmas = pencil_spread/sigma
72
78
 
73
79
  # Generate 4D coordinates
@@ -75,11 +81,11 @@ def generate_pencil_on_collimator(line, name, num_particles, *, side='+-', penci
75
81
  if side == '+-':
76
82
  num_plus = int(num_particles/2)
77
83
  num_min = int(num_particles - num_plus)
78
- coords_plus = _generate_4D_pencil_one_jaw(line, name, num_plus, plane, '+', impact_parameter, dr_sigmas, match_at_s, is_converging)
79
- coords_min = _generate_4D_pencil_one_jaw(line, name, num_min, plane, '-', impact_parameter, dr_sigmas, match_at_s, is_converging)
84
+ coords_plus = _generate_4D_pencil_one_jaw(line, name, num_plus, plane, '+', impact_parameter, dr_sigmas, at_element, is_converging, tw_at_s)
85
+ coords_min = _generate_4D_pencil_one_jaw(line, name, num_min, plane, '-', impact_parameter, dr_sigmas, at_element, is_converging, tw_at_s)
80
86
  coords = [ [*c_plus, *c_min] for c_plus, c_min in zip(coords_plus, coords_min)]
81
87
  else:
82
- coords = _generate_4D_pencil_one_jaw(line, name, num_particles, plane, side, impact_parameter, dr_sigmas, match_at_s, is_converging)
88
+ coords = _generate_4D_pencil_one_jaw(line, name, num_particles, plane, side, impact_parameter, dr_sigmas, at_element, is_converging, tw_at_s)
83
89
  pencil = coords[0]
84
90
  p_pencil = coords[1]
85
91
  transverse_norm = coords[2]
@@ -123,19 +129,25 @@ def generate_pencil_on_collimator(line, name, num_particles, *, side='+-', penci
123
129
  part = xp.build_particles(
124
130
  x=pencil, px=p_pencil, y_norm=transverse_norm, py_norm=p_transverse_norm,
125
131
  zeta=zeta, delta=delta, nemitt_x=coll.nemitt_x, nemitt_y=coll.nemitt_y,
126
- line=line, at_element=name, match_at_s=match_at_s,
132
+ line=line, at_element=at_element, #match_at_s=match_at_s,
127
133
  _context=coll._buffer.context
128
134
  )
129
135
  else:
130
136
  part = xp.build_particles(
131
137
  x_norm=transverse_norm, px_norm=p_transverse_norm, y=pencil, py=p_pencil,
132
138
  zeta=zeta, delta=delta, nemitt_x=coll.nemitt_x, nemitt_y=coll.nemitt_y,
133
- line=line, at_element=name, match_at_s=match_at_s,
139
+ line=line, at_element=at_element, #match_at_s=match_at_s,
134
140
  _context=coll._buffer.context
135
141
  )
136
142
 
137
143
  part._init_random_number_generator()
138
144
 
145
+ if not is_converging:
146
+ dri = xt.Drift(length=-coll.length)
147
+ dri.track(part)
148
+ part.start_tracking_at_element -= 1
149
+ part.at_element -= 1
150
+
139
151
  return part
140
152
 
141
153
 
@@ -166,7 +178,7 @@ def generate_delta_from_dispersion(line, at_element, *, plane, position_mm, nemi
166
178
 
167
179
 
168
180
  def _generate_4D_pencil_one_jaw(line, name, num_particles, plane, side, impact_parameter,
169
- dr_sigmas, match_at_s, is_converging):
181
+ dr_sigmas, at_element, is_converging, tw_at_s=None):
170
182
  coll = line[name]
171
183
 
172
184
  if side == '+':
@@ -196,7 +208,7 @@ def _generate_4D_pencil_one_jaw(line, name, num_particles, plane, side, impact_p
196
208
  pencil, p_pencil = xp.generate_2D_pencil_with_absolute_cut(
197
209
  num_particles, plane=plane, absolute_cut=pencil_pos, line=line,
198
210
  dr_sigmas=dr_sigmas, nemitt_x=coll.nemitt_x, nemitt_y=coll.nemitt_y,
199
- at_element=name, side=side,match_at_s=match_at_s
211
+ at_element=at_element, side=side, twiss=tw_at_s
200
212
  )
201
213
 
202
214
  # Other plane: generate gaussian distribution in normalized coordinates
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  # copyright ############################### #
2
- # This file is part of the Xcoll Package. #
2
+ # This file is part of the Xcoll package. #
3
3
  # Copyright (c) CERN, 2024. #
4
4
  # ######################################### #
5
5
 
@@ -1,5 +1,5 @@
1
1
  // copyright ############################### #
2
- // This file is part of the Xcoll Package. #
2
+ // This file is part of the Xcoll package. #
3
3
  // Copyright (c) CERN, 2024. #
4
4
  // ######################################### #
5
5