xtrack 0.74.2__tar.gz → 0.75.1__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 (806) hide show
  1. {xtrack-0.74.2 → xtrack-0.75.1}/PKG-INFO +1 -1
  2. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/elements.py +8 -1
  3. xtrack-0.75.1/examples/relative_errors/000_basic_error_definition.py +48 -0
  4. xtrack-0.75.1/examples/relative_errors/001_random_errors_on_quad_family.py +55 -0
  5. xtrack-0.75.1/examples/relative_errors/003_check_all_elems_kick.py +58 -0
  6. xtrack-0.75.1/examples/transfer_matrix/004_multiple_buckets.py +117 -0
  7. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_elements.py +100 -1
  8. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_elements_thick.py +56 -0
  9. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_environment.py +65 -2
  10. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_lhc_env.py +2 -1
  11. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_line.py +2 -0
  12. xtrack-0.75.1/tests/test_multi_bunch_gauss.py +136 -0
  13. xtrack-0.75.1/xtrack/_version.py +1 -0
  14. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements.py +13 -1
  15. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/linesegmentmap.h +14 -4
  16. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/environment.py +131 -4
  17. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/line.py +61 -15
  18. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/mad_writer.py +9 -2
  19. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/multisetter/multisetter.py +1 -1
  20. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack.egg-info/PKG-INFO +1 -1
  21. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack.egg-info/SOURCES.txt +5 -0
  22. xtrack-0.74.2/xtrack/_version.py +0 -1
  23. {xtrack-0.74.2 → xtrack-0.75.1}/.gitattributes +0 -0
  24. {xtrack-0.74.2 → xtrack-0.75.1}/.gitignore +0 -0
  25. {xtrack-0.74.2 → xtrack-0.75.1}/LICENSE +0 -0
  26. {xtrack-0.74.2 → xtrack-0.75.1}/MANIFEST.in +0 -0
  27. {xtrack-0.74.2 → xtrack-0.75.1}/README.md +0 -0
  28. {xtrack-0.74.2 → xtrack-0.75.1}/contributors.txt +0 -0
  29. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/__init__.py +0 -0
  30. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/base_classes.py +0 -0
  31. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/BB6D.py +0 -0
  32. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/BB6Ddata.py +0 -0
  33. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/__init__.py +0 -0
  34. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/beambeam.py +0 -0
  35. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/boost.py +0 -0
  36. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/gaussian_fields.py +0 -0
  37. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/propagate_sigma_matrix.py +0 -0
  38. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/qgauss.py +0 -0
  39. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/slicing.py +0 -0
  40. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/be_beamfields/spacecharge.py +0 -0
  41. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/line.py +0 -0
  42. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/mathlibs.py +0 -0
  43. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/particles.py +0 -0
  44. {xtrack-0.74.2 → xtrack-0.75.1}/ducktrack/temp_pyparticles.py +0 -0
  45. {xtrack-0.74.2 → xtrack-0.75.1}/examples/acceleration/000_acceleration.py +0 -0
  46. {xtrack-0.74.2 → xtrack-0.75.1}/examples/acceleration/001_energy_ramp.py +0 -0
  47. {xtrack-0.74.2 → xtrack-0.75.1}/examples/acceleration/002_energy_ramp_transverse.py +0 -0
  48. {xtrack-0.74.2 → xtrack-0.75.1}/examples/amplitude_detuning/000_detuning.py +0 -0
  49. {xtrack-0.74.2 → xtrack-0.75.1}/examples/apertures/000_rect_aperture_standalone.py +0 -0
  50. {xtrack-0.74.2 → xtrack-0.75.1}/examples/apertures/000a_rect_aperture_with_tilt_shifts.py +0 -0
  51. {xtrack-0.74.2 → xtrack-0.75.1}/examples/apertures/001_rect_aperture_withinline.py +0 -0
  52. {xtrack-0.74.2 → xtrack-0.75.1}/examples/apertures/002_global_aperture.py +0 -0
  53. {xtrack-0.74.2 → xtrack-0.75.1}/examples/apertures/003_polygon.py +0 -0
  54. {xtrack-0.74.2 → xtrack-0.75.1}/examples/apertures/004_racetrack.py +0 -0
  55. {xtrack-0.74.2 → xtrack-0.75.1}/examples/apertures/005_import_polygon_from_madx.py +0 -0
  56. {xtrack-0.74.2 → xtrack-0.75.1}/examples/cavity_absolute_time/000_cavity_absolute_time.py +0 -0
  57. {xtrack-0.74.2 → xtrack-0.75.1}/examples/cavity_absolute_time/001_with_functions.py +0 -0
  58. {xtrack-0.74.2 → xtrack-0.75.1}/examples/coasting/001_frev_meas.py +0 -0
  59. {xtrack-0.74.2 → xtrack-0.75.1}/examples/coasting/e000_illustration.py +0 -0
  60. {xtrack-0.74.2 → xtrack-0.75.1}/examples/collimation/000_secondary_production.py +0 -0
  61. {xtrack-0.74.2 → xtrack-0.75.1}/examples/collimation/001_loss_location_refinement.py +0 -0
  62. {xtrack-0.74.2 → xtrack-0.75.1}/examples/collimation/002_loss_refinement_check_cone.py +0 -0
  63. {xtrack-0.74.2 → xtrack-0.75.1}/examples/collimation/003_all_together.py +0 -0
  64. {xtrack-0.74.2 → xtrack-0.75.1}/examples/collimation/004_check_skip_refinement_for_collimator.py +0 -0
  65. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/000_convert.py +0 -0
  66. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/001_doit +0 -0
  67. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/002_new_madloader.py +0 -0
  68. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/003_riccardo.py +0 -0
  69. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/004_load_optics_file.py +0 -0
  70. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/lhc.py +0 -0
  71. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/lhc.seq +0 -0
  72. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/optics.madx +0 -0
  73. {xtrack-0.74.2 → xtrack-0.75.1}/examples/convert_lhc/squeeze_0.madx +0 -0
  74. {xtrack-0.74.2 → xtrack-0.75.1}/examples/coupling_knobs/000_generate_coupling_konbs.py +0 -0
  75. {xtrack-0.74.2 → xtrack-0.75.1}/examples/coupling_knobs/001_check_against_legacy.py +0 -0
  76. {xtrack-0.74.2 → xtrack-0.75.1}/examples/coupling_knobs/002_check_twiss_complex_cmin.py +0 -0
  77. {xtrack-0.74.2 → xtrack-0.75.1}/examples/crab_dispersion/000_crab_dispersion.py +0 -0
  78. {xtrack-0.74.2 → xtrack-0.75.1}/examples/crab_dispersion/001_crab_dispersion_freeze_vars.py +0 -0
  79. {xtrack-0.74.2 → xtrack-0.75.1}/examples/crab_dispersion/002_crab_dispersion_open.py +0 -0
  80. {xtrack-0.74.2 → xtrack-0.75.1}/examples/crab_trim_with_knob/000_investigate.py +0 -0
  81. {xtrack-0.74.2 → xtrack-0.75.1}/examples/dynamic_aperture/000_tracking_for_da.py +0 -0
  82. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_internal_record/000_internal_record.py +0 -0
  83. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_internal_record/001_multirecord.py +0 -0
  84. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_internal_record/002_record_in_individual_element.py +0 -0
  85. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/000_element_transform.py +0 -0
  86. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/000a_multipolar_components.py +0 -0
  87. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/001_sliced_element_transform.py +0 -0
  88. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/001a_sliced_multipolar_components.py +0 -0
  89. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/002_multipoles_in_quad.py +0 -0
  90. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/010_replica_loops.py +0 -0
  91. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t000_check_tilt_shifts_against_mad.py +0 -0
  92. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t000a_test_shift_x.py +0 -0
  93. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t000b_test_shift_y.py +0 -0
  94. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t000c_test_rot_s.py +0 -0
  95. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t001_edges_in_bend.py +0 -0
  96. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t001a_edges_in_bend_exit.py +0 -0
  97. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t002b_quad_slice_ref_thin.py +0 -0
  98. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t002c_bend_slice_ref_thin.py +0 -0
  99. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t002d_sext_slice_ref_thin.py +0 -0
  100. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t002e_oct_slice_ref_thin.py +0 -0
  101. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t002g_drift_slice_ref_thin.py +0 -0
  102. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t004b_quad_slice_ref_thick.py +0 -0
  103. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t004c_bend_slice_ref_thick.py +0 -0
  104. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t004d_sext_slice_ref_thick.py +0 -0
  105. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t004e_oct_slice_ref_thick.py +0 -0
  106. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t005a_check_attr.py +0 -0
  107. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t009_check_is_drift.py +0 -0
  108. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t011_check_flags.py +0 -0
  109. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t012_check_traansformations_against_sandwitch.py +0 -0
  110. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t014_check_survey.py +0 -0
  111. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t015_insert_in_replicas.py +0 -0
  112. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t015a_insert_in_replicas_thin.py +0 -0
  113. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/t016_insert_thick_change_s.py +0 -0
  114. {xtrack-0.74.2 → xtrack-0.75.1}/examples/element_transformations/ttt.json +0 -0
  115. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee/000_build_xsuite_model.py +0 -0
  116. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee/001_match_emittance.py +0 -0
  117. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee/002_vertical_ring_check.py +0 -0
  118. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee/install_wigglers.madx +0 -0
  119. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/004a_prepare_fcc_lattice_with_solenoid.py +0 -0
  120. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/004b_correction.py +0 -0
  121. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/004c_radiation.py +0 -0
  122. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/t000_compare_against_boris.py +0 -0
  123. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/t000_investigate_tilt.py +0 -0
  124. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/t000a_plot_benchmark.py +0 -0
  125. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/t000b_simplified_illustration.py +0 -0
  126. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/t001_dispersion_boris.py +0 -0
  127. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fcc_ee_solenoid/t002_check_tilted_drift.py +0 -0
  128. {xtrack-0.74.2 → xtrack-0.75.1}/examples/fodo/000_fodo.py +0 -0
  129. {xtrack-0.74.2 → xtrack-0.75.1}/examples/footprint/000_footprint.py +0 -0
  130. {xtrack-0.74.2 → xtrack-0.75.1}/examples/footprint/001_footprint_frozen_longitudinal.py +0 -0
  131. {xtrack-0.74.2 → xtrack-0.75.1}/examples/footprint/002_footprint_checks.py +0 -0
  132. {xtrack-0.74.2 → xtrack-0.75.1}/examples/footprint/003_stability_diagram.py +0 -0
  133. {xtrack-0.74.2 → xtrack-0.75.1}/examples/freeze_longitudinal/000_freeze_unfreeze_explicit.py +0 -0
  134. {xtrack-0.74.2 → xtrack-0.75.1}/examples/freeze_longitudinal/001_freeze_context_manager.py +0 -0
  135. {xtrack-0.74.2 → xtrack-0.75.1}/examples/freeze_longitudinal/002_freeze_individual_methods.py +0 -0
  136. {xtrack-0.74.2 → xtrack-0.75.1}/examples/full_ring/000_tracking_example.py +0 -0
  137. {xtrack-0.74.2 → xtrack-0.75.1}/examples/full_ring/005_one_turn_check.py +0 -0
  138. {xtrack-0.74.2 → xtrack-0.75.1}/examples/full_ring/006_timing.py +0 -0
  139. {xtrack-0.74.2 → xtrack-0.75.1}/examples/full_ring/007_test_freeze_vars.py +0 -0
  140. {xtrack-0.74.2 → xtrack-0.75.1}/examples/full_ring/make_short_line.py +0 -0
  141. {xtrack-0.74.2 → xtrack-0.75.1}/examples/functions_in_knobs/000_define_function.py +0 -0
  142. {xtrack-0.74.2 → xtrack-0.75.1}/examples/functions_in_knobs/001_track_with_function.py +0 -0
  143. {xtrack-0.74.2 → xtrack-0.75.1}/examples/insert_elements/000_multiple_thick_insertions.py +0 -0
  144. {xtrack-0.74.2 → xtrack-0.75.1}/examples/ion_fragments/000_dev.py +0 -0
  145. {xtrack-0.74.2 → xtrack-0.75.1}/examples/knobs/000_fodo.py +0 -0
  146. {xtrack-0.74.2 → xtrack-0.75.1}/examples/knobs/001_lhc.py +0 -0
  147. {xtrack-0.74.2 → xtrack-0.75.1}/examples/knobs/002_from_json.py +0 -0
  148. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_and_optics_files/000_example.py +0 -0
  149. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_and_optics_files/pimm_lattice.py +0 -0
  150. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_and_optics_files/pimm_optics.py +0 -0
  151. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/000_environemnt.py +0 -0
  152. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/000a_subline.py +0 -0
  153. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/000b_builder.py +0 -0
  154. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/000c_repeated_elements.py +0 -0
  155. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/000d_env_to_json.py +0 -0
  156. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/003_view.py +0 -0
  157. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/006_select_in_multiline.py +0 -0
  158. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/007a_element_creation_and_placing.py +0 -0
  159. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/007b_insert_elements.py +0 -0
  160. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/007c_insert_individual.py +0 -0
  161. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/007d_insert_line.py +0 -0
  162. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/007e_append_elements.py +0 -0
  163. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/007f_remove_elements.py +0 -0
  164. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/007g_replace_elements.py +0 -0
  165. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/007h_insert_element_instantiated_by_user.py +0 -0
  166. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/008a_line_composition.py +0 -0
  167. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/008b_composition_with_replicas.py +0 -0
  168. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/008c_place_line_at_s.py +0 -0
  169. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/008d_environment.py +0 -0
  170. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/009a_insert_repeated_elements.py +0 -0
  171. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/009b_insert_with_anchors.py +0 -0
  172. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/009c_insert_anchor_in_new_and_old.py +0 -0
  173. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/009d_insert_object.py +0 -0
  174. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/009e_individual_insertions.py +0 -0
  175. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/009f_individual_insertions_anchor.py +0 -0
  176. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/009g_insert_line.py +0 -0
  177. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/010_anchors.py +0 -0
  178. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/010b_anchors_compact.py +0 -0
  179. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/010c_check_timing_on_large_line.py +0 -0
  180. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/010d_anchor_lines.py +0 -0
  181. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/011_remove_element_env.py +0 -0
  182. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/011a_remove_element_from_line.py +0 -0
  183. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/012_replace_element.py +0 -0
  184. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/013_slice_repeated_elements.py +0 -0
  185. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/014_append.py +0 -0
  186. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/015_twin_lines.py +0 -0
  187. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/016_extend_multipoles.py +0 -0
  188. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/ring.json +0 -0
  189. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/ring.json.gz +0 -0
  190. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/t000_test_env.py +0 -0
  191. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/t001_check_with_subline.py +0 -0
  192. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/t002_issue_rep_elems.py +0 -0
  193. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/t003_issue_ref.py +0 -0
  194. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/t005_env_methods.py +0 -0
  195. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lattice_design/t006_get_eval_etc.py +0 -0
  196. {xtrack-0.74.2 → xtrack-0.75.1}/examples/legacy_multiline_to_environment/000_convert.py +0 -0
  197. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lep/000_lep.py +0 -0
  198. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lep/001_check_against_madx.py +0 -0
  199. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lep/lep.opt9 +0 -0
  200. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lep/lep.seq9 +0 -0
  201. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_against_sixtrack/001_check.py +0 -0
  202. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_against_sixtrack/sixtrack_lhc_no_bb/000_runsix.sh +0 -0
  203. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_against_sixtrack/sixtrack_lhc_no_bb/fort.16 +0 -0
  204. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_against_sixtrack/sixtrack_lhc_no_bb/fort.2 +0 -0
  205. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_against_sixtrack/sixtrack_lhc_no_bb/fort.3.offmom +0 -0
  206. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_against_sixtrack/sixtrack_lhc_no_bb/fort.3.onmom +0 -0
  207. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_against_sixtrack/sixtrack_lhc_no_bb/fort.8 +0 -0
  208. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_thick/000_makethin.py +0 -0
  209. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_thick/001_insert_thin_elements_after_makethin.py +0 -0
  210. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_thick/002_compare_thick_twiss_vs_madx.py +0 -0
  211. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_thick/003_makethin_convergence_speed_vs_madx.py +0 -0
  212. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_thick/004_slice_every_x_meters.py +0 -0
  213. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_thick/t000_thick_sextupole.py +0 -0
  214. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_with_env/000_make_env.py +0 -0
  215. {xtrack-0.74.2 → xtrack-0.75.1}/examples/lhc_with_env/001_check_env.py +0 -0
  216. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_loader/000_collider_from_mad.py +0 -0
  217. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_loader/001_check_b2.py +0 -0
  218. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_loader/003_load_thick_with_errors.py +0 -0
  219. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_loader/convert_multipole.py +0 -0
  220. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_loader/job.madx +0 -0
  221. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_loader/multipole.madx +0 -0
  222. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/000_to_madx.py +0 -0
  223. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/001_to_madng.py +0 -0
  224. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/001a_madng_rdt.py +0 -0
  225. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/001c_dev_madng_interface.py +0 -0
  226. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/001d_madng_tilt_shift.py +0 -0
  227. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/002_madng_checks.py +0 -0
  228. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/003_example_pymadng_from_madx.py +0 -0
  229. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/005_skew_quad.py +0 -0
  230. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/006_check_skew_quad.py +0 -0
  231. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/007_check_octupole.py +0 -0
  232. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/008_check_to_madx.py +0 -0
  233. {xtrack-0.74.2 → xtrack-0.75.1}/examples/mad_writer/t000_investigate_sympl.py +0 -0
  234. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/000_match_basic.py +0 -0
  235. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/001_match_interactive.py +0 -0
  236. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/002_match_bump_basic.py +0 -0
  237. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/002a_match_bump_init_end.py +0 -0
  238. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/002b_match_bump_init_middle.py +0 -0
  239. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/003_match_bump_from_table.py +0 -0
  240. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/004_match_bump_common_elements.py +0 -0
  241. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/005_match_bump_common_ele_callable_ineq.py +0 -0
  242. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/005a_match_bump_common_targets_from_table.py +0 -0
  243. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/006_match_action.py +0 -0
  244. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/007_match_knob.py +0 -0
  245. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match/t003_match_bump_from_table_collider.py +0 -0
  246. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_octupole_phase_knob/.gitignore +0 -0
  247. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_octupole_phase_knob/000_dev.py +0 -0
  248. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/000_build_xsuite_model.py +0 -0
  249. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/001_change_ip15_phase.py +0 -0
  250. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/001a_change_beta_star.py +0 -0
  251. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/001b_match_on_disp.py +0 -0
  252. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/002_check_optics_and_orbit_knobs_xsuite_and_madx.py +0 -0
  253. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/010_check_phase_advances.py +0 -0
  254. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/011_match_all_arcs.py +0 -0
  255. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/012_match_ir2.py +0 -0
  256. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/020_match_ir7.py +0 -0
  257. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/020t_time_vs_madx.py +0 -0
  258. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/030_FODO_with_knobs.py +0 -0
  259. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/make_one_crossing_knob.madx +0 -0
  260. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/notes.txt +0 -0
  261. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/t000b_match_arc.py +0 -0
  262. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/t000c_match_arc_nested_optim.py +0 -0
  263. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/t000d_match_all_arcs.py +0 -0
  264. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/t004_time_madx_ip15_phase.py +0 -0
  265. {xtrack-0.74.2 → xtrack-0.75.1}/examples/match_optics/t005_match_options.py +0 -0
  266. {xtrack-0.74.2 → xtrack-0.75.1}/examples/monitor/000_example_quick_monitor.py +0 -0
  267. {xtrack-0.74.2 → xtrack-0.75.1}/examples/monitor/001_example_custom_monitor.py +0 -0
  268. {xtrack-0.74.2 → xtrack-0.75.1}/examples/monitor/002_example_custom_monitor_multiframe.py +0 -0
  269. {xtrack-0.74.2 → xtrack-0.75.1}/examples/monitor/003_monitors_as_beam_elements.py +0 -0
  270. {xtrack-0.74.2 → xtrack-0.75.1}/examples/monitor/004_monitor_standalone.py +0 -0
  271. {xtrack-0.74.2 → xtrack-0.75.1}/examples/multisetter/000_sps_50hz_ripple.py +0 -0
  272. {xtrack-0.74.2 → xtrack-0.75.1}/examples/multispecies_check/000_multipole.py +0 -0
  273. {xtrack-0.74.2 → xtrack-0.75.1}/examples/multispecies_check/001_bend.py +0 -0
  274. {xtrack-0.74.2 → xtrack-0.75.1}/examples/multispecies_check/002_dipole_edge.py +0 -0
  275. {xtrack-0.74.2 → xtrack-0.75.1}/examples/multispecies_check/003_quadrupole.py +0 -0
  276. {xtrack-0.74.2 → xtrack-0.75.1}/examples/multispecies_check/004_sextupole.py +0 -0
  277. {xtrack-0.74.2 → xtrack-0.75.1}/examples/multispecies_check/005_octupole.py +0 -0
  278. {xtrack-0.74.2 → xtrack-0.75.1}/examples/multispecies_check/006_cavity.py +0 -0
  279. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/001_fcc.py +0 -0
  280. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/002_ps.py +0 -0
  281. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/003_write_lhc.py +0 -0
  282. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/004_write_fcc.py +0 -0
  283. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/APERTURE_EYETS 2023-2024.seq +0 -0
  284. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/EYETS 2023-2024.seq +0 -0
  285. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/INJECTION_EYETS 2023-2024.madx +0 -0
  286. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/STANDARD_PR_YETS 2022-2023_20-MAR-2023.seq +0 -0
  287. {xtrack-0.74.2 → xtrack-0.75.1}/examples/new_madloader/plot_aperture_xsuite.py +0 -0
  288. {xtrack-0.74.2 → xtrack-0.75.1}/examples/nonlinear_lens/000_compare_against_madx.py +0 -0
  289. {xtrack-0.74.2 → xtrack-0.75.1}/examples/nonlinear_tunes/detuning.py +0 -0
  290. {xtrack-0.74.2 → xtrack-0.75.1}/examples/nonlinear_tunes/nonlinear_tunes.py +0 -0
  291. {xtrack-0.74.2 → xtrack-0.75.1}/examples/optics_correction/000_dev.py +0 -0
  292. {xtrack-0.74.2 → xtrack-0.75.1}/examples/optics_correction/001_md.py +0 -0
  293. {xtrack-0.74.2 → xtrack-0.75.1}/examples/optimize_function/000_dev.py +0 -0
  294. {xtrack-0.74.2 → xtrack-0.75.1}/examples/optimized_tracker/000_optimized_tracker.py +0 -0
  295. {xtrack-0.74.2 → xtrack-0.75.1}/examples/optimized_tracker/001_time_tracking_on_gpu.py +0 -0
  296. {xtrack-0.74.2 → xtrack-0.75.1}/examples/optimized_tracker/002_time_tracking_on_cpu.py +0 -0
  297. {xtrack-0.74.2 → xtrack-0.75.1}/examples/orbit_and_tracjectory_correction/000_closed_orbit_correction_basic.py +0 -0
  298. {xtrack-0.74.2 → xtrack-0.75.1}/examples/orbit_and_tracjectory_correction/001_closed_orbit_correction_micado.py +0 -0
  299. {xtrack-0.74.2 → xtrack-0.75.1}/examples/orbit_and_tracjectory_correction/002_closed_orbit_correction_customize.py +0 -0
  300. {xtrack-0.74.2 → xtrack-0.75.1}/examples/orbit_and_tracjectory_correction/003_closed_orbit_correction_thread.py +0 -0
  301. {xtrack-0.74.2 → xtrack-0.75.1}/examples/orbit_and_tracjectory_correction/004_thread_before_co_corr.py +0 -0
  302. {xtrack-0.74.2 → xtrack-0.75.1}/examples/orbit_and_tracjectory_correction/005_transfer_line_correction.py +0 -0
  303. {xtrack-0.74.2 → xtrack-0.75.1}/examples/orbit_and_tracjectory_correction/006_fcc.py +0 -0
  304. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pipeline/000_multitracker.py +0 -0
  305. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pipeline/001_tracker_only.py +0 -0
  306. {xtrack-0.74.2 → xtrack-0.75.1}/examples/print_package_paths.py +0 -0
  307. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/000a_all_xsuite_import_model.py +0 -0
  308. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/000b_setup_chicane.py +0 -0
  309. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/000c_chicane_time_functions.py +0 -0
  310. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/000d_correct_beta_beating.py +0 -0
  311. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/000e_makethin.py +0 -0
  312. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/000f_track.py +0 -0
  313. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/000g_multiturn_inj.py +0 -0
  314. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/001_compare_against_ptc.py +0 -0
  315. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/001b_compare_against_ptc_from_json.py +0 -0
  316. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/002_compare_fringe_implem.py +0 -0
  317. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/003_backtrack_thick_elements.py +0 -0
  318. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/004_dev_acceleration.py +0 -0
  319. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/005_double_harmonic.py +0 -0
  320. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/102_vs_ptc_approaching_half_integer.py +0 -0
  321. {xtrack-0.74.2 → xtrack-0.75.1}/examples/psb/ptc_ref.json +0 -0
  322. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/000_tracking_example_with_pyht.py +0 -0
  323. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/001_pyht_synchrotron.py +0 -0
  324. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/002_headtailInstability.py +0 -0
  325. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/003_headtailInstability_cpu_gpu.py +0 -0
  326. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/004_imped_spacech_cpu_gpu.py +0 -0
  327. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/LHC.py +0 -0
  328. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/madx_sps/lhc_q20.str +0 -0
  329. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/madx_sps/macro.madx +0 -0
  330. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/madx_sps/sps.seq +0 -0
  331. {xtrack-0.74.2 → xtrack-0.75.1}/examples/pyheadtail_interface/wakes/wakeforhdtl_PyZbase_Allthemachine_7000GeV_B1_2021_TeleIndex1_wake.dat +0 -0
  332. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radial_steering/000_radial_steering.py +0 -0
  333. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radial_steering/001_radial_steering_psb.py +0 -0
  334. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/.gitignore +0 -0
  335. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/002_single_dipole.py +0 -0
  336. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/003_kick_histogram.py +0 -0
  337. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/004_damping_against_madx.py +0 -0
  338. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/005_radiation_example.py +0 -0
  339. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/006_make_gaussian_bunch.py +0 -0
  340. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/007_record_photons.py +0 -0
  341. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/008_convergence_bend.py +0 -0
  342. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/009a_sps_with_vertical_bump.py +0 -0
  343. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/009b_sps_illustrate_dumping_and_excitation.py +0 -0
  344. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/009c_sps_single_kicker.py +0 -0
  345. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/009d_sps_wiggler.py +0 -0
  346. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/n_photons.py +0 -0
  347. {xtrack-0.74.2 → xtrack-0.75.1}/examples/radiation/t005_mad_only.py +0 -0
  348. {xtrack-0.74.2 → xtrack-0.75.1}/examples/random_number_generator/000_zero_occurrence_and_min.py +0 -0
  349. {xtrack-0.74.2 → xtrack-0.75.1}/examples/random_number_generator/001_usage_in_beam_element.py +0 -0
  350. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rbendrbarc/000_dev.py +0 -0
  351. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/000_toy_ring_xt.py +0 -0
  352. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/001_toy_ring_rft_volume.py +0 -0
  353. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/002_toy_ring_rft_element.py +0 -0
  354. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/003_analysis.py +0 -0
  355. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/100_particle_losses.py +0 -0
  356. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/200_fodo_cell.py +0 -0
  357. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/300_solenoid.py +0 -0
  358. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/400_Ez_on-axis_TD26__vg1p8_r05_CC_EDMS.txt +0 -0
  359. {xtrack-0.74.2 → xtrack-0.75.1}/examples/rf_track/400_rf_fieldmap_1d.py +0 -0
  360. {xtrack-0.74.2 → xtrack-0.75.1}/examples/sequence/000_sequence.py +0 -0
  361. {xtrack-0.74.2 → xtrack-0.75.1}/examples/slipstacking/000_slip_stacking.py +0 -0
  362. {xtrack-0.74.2 → xtrack-0.75.1}/examples/slipstacking/dev.py +0 -0
  363. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/000_elena_chromatic_functions.py +0 -0
  364. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/001_check_against_ptc.py +0 -0
  365. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/002_compare_contributions.py +0 -0
  366. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/003_pimms.py +0 -0
  367. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/004_pimms_extract.py +0 -0
  368. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/005_pimms_extract_spiral_step.py +0 -0
  369. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/006_pimms_survey.py +0 -0
  370. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/007_clean_up_extraction.py +0 -0
  371. {xtrack-0.74.2 → xtrack-0.75.1}/examples/small_rings/t001_check_ps.py +0 -0
  372. {xtrack-0.74.2 → xtrack-0.75.1}/examples/solenoid/001_multipole_shifts.py +0 -0
  373. {xtrack-0.74.2 → xtrack-0.75.1}/examples/solenoid/002_multipole_rotations.py +0 -0
  374. {xtrack-0.74.2 → xtrack-0.75.1}/examples/spacecharge/000_spacecharge_example.py +0 -0
  375. {xtrack-0.74.2 → xtrack-0.75.1}/examples/spacecharge/001_spacecharge_footprint.py +0 -0
  376. {xtrack-0.74.2 → xtrack-0.75.1}/examples/spacecharge/footprint.py +0 -0
  377. {xtrack-0.74.2 → xtrack-0.75.1}/examples/symm_twiss_and_match/000_symm_twiss_and_match.py +0 -0
  378. {xtrack-0.74.2 → xtrack-0.75.1}/examples/symm_twiss_and_match/t000_test_twiss_symm.py +0 -0
  379. {xtrack-0.74.2 → xtrack-0.75.1}/examples/t007_vars_features.py +0 -0
  380. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tapering/000_taper.py +0 -0
  381. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tapering/001_taper_and_compare_twiss_methods.py +0 -0
  382. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tapering/002_taper_coupling_check.py +0 -0
  383. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tapering/003_track_no_taper.py +0 -0
  384. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tapering/100_generate_fcc_line_no_rad.py +0 -0
  385. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tapering/101_fccee_madx_radiation_thick.py +0 -0
  386. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tapering/fccee_t.seq +0 -0
  387. {xtrack-0.74.2 → xtrack-0.75.1}/examples/taylor_map/000_line_with_maps.py +0 -0
  388. {xtrack-0.74.2 → xtrack-0.75.1}/examples/taylor_map/001_check_against_madx.py +0 -0
  389. {xtrack-0.74.2 → xtrack-0.75.1}/examples/to_json/000_lattice_to_json.py +0 -0
  390. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/000_toy_ring.py +0 -0
  391. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/000a_toy_ring_specify_s.py +0 -0
  392. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/001_analysis.py +0 -0
  393. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/002_expressions.py +0 -0
  394. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/003_slicing.py +0 -0
  395. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/004_inspect.py +0 -0
  396. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/005_insert_element.py +0 -0
  397. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/006a_dynamic_bump_sin.py +0 -0
  398. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/006b_dynamic_bump_piece_wise_linear.py +0 -0
  399. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/006c_dynamic_bump_sin_env.py +0 -0
  400. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/007_cut_at_s.py +0 -0
  401. {xtrack-0.74.2 → xtrack-0.75.1}/examples/toy_ring/008_repeated_elements_clones_replicas.py +0 -0
  402. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tracker/000_track.py +0 -0
  403. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tracker/001_tracker_start_stop.py +0 -0
  404. {xtrack-0.74.2 → xtrack-0.75.1}/examples/tracker/002_backtrack.py +0 -0
  405. {xtrack-0.74.2 → xtrack-0.75.1}/examples/transfer_matrix/000_basics.py +0 -0
  406. {xtrack-0.74.2 → xtrack-0.75.1}/examples/transfer_matrix/001_MuonCollider_example.py +0 -0
  407. {xtrack-0.74.2 → xtrack-0.75.1}/examples/transfer_matrix/002_check_with_twiss.py +0 -0
  408. {xtrack-0.74.2 → xtrack-0.75.1}/examples/transfer_matrix/003_check_longitudinal.py +0 -0
  409. {xtrack-0.74.2 → xtrack-0.75.1}/examples/transfer_matrix/005_radiation.py +0 -0
  410. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/000_twiss.py +0 -0
  411. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/000a_twiss_range.py +0 -0
  412. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/000b_twiss_range_periodic.py +0 -0
  413. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/000c_twiss_range_init_middle.py +0 -0
  414. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/000d_twiss_ele_co_search.py +0 -0
  415. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/000e_twiss_reverse.py +0 -0
  416. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/000f_twiss_default.py +0 -0
  417. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/001_check_against_mad.py +0 -0
  418. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/002_twiss_on_fodo.py +0 -0
  419. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/003_match_tune_chroma.py +0 -0
  420. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/003a_match_coupling.py +0 -0
  421. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/003b_match_4c_bump.py +0 -0
  422. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/003c_match_bump_with_weights.py +0 -0
  423. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/003d_match_bump_inequalities.py +0 -0
  424. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/003e_match_phase_ineq.py +0 -0
  425. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/003f_match_clone.py +0 -0
  426. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/004_twiss_b4_vs_b2.py +0 -0
  427. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/005_survey.py +0 -0
  428. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/006_survey_b4_vs_b2.py +0 -0
  429. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/007_survey_element0.py +0 -0
  430. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/008_4d_twiss_and_particle_match.py +0 -0
  431. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/009_twiss_zeta0_delta0.py +0 -0
  432. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/010_coupled_beta.py +0 -0
  433. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/011_tune_vs_delta.py +0 -0
  434. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/012_compute_norm_coordinates.py +0 -0
  435. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/013_R_matrix_between_two_points.py +0 -0
  436. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/014_check_W_propagation.py +0 -0
  437. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/015_remove_thin_groups.py +0 -0
  438. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/016_local_twiss.py +0 -0
  439. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/017_table_slicing.py +0 -0
  440. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/018_compute_beam_sizes.py +0 -0
  441. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/021_time_small_twiss.py +0 -0
  442. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/022_custom_twiss_init.py +0 -0
  443. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/023_build_chroma_knob.py +0 -0
  444. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/026a_chromatic_functions.py +0 -0
  445. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/026b_chromatic_functions_vs_madx.py +0 -0
  446. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/026c_measure_triplet_chromaticity.py +0 -0
  447. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/026d_match_w_chrom.py +0 -0
  448. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/027_optics_from_sigma_mat.py +0 -0
  449. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/028_ddx_ddqx.py +0 -0
  450. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/029_strengths_in_twiss.py +0 -0
  451. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/030_one_turn_arbitrary_start.py +0 -0
  452. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/031_twiss_plot.py +0 -0
  453. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/032_twiss_with_collective.py +0 -0
  454. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/t000_mem_issue.py +0 -0
  455. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss/t003f_match_clone_checks.py +0 -0
  456. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss_multiturn/000_sps.py +0 -0
  457. {xtrack-0.74.2 → xtrack-0.75.1}/examples/twiss_multiturn/001_ps.py +0 -0
  458. {xtrack-0.74.2 → xtrack-0.75.1}/pyproject.toml +0 -0
  459. {xtrack-0.74.2 → xtrack-0.75.1}/release.sh +0 -0
  460. {xtrack-0.74.2 → xtrack-0.75.1}/setup.cfg +0 -0
  461. {xtrack-0.74.2 → xtrack-0.75.1}/setup.py +0 -0
  462. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/clic_dr/000_make_lines.py +0 -0
  463. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/clic_dr/line.json +0 -0
  464. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/clic_dr/line_for_taper.json +0 -0
  465. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/clic_dr/sequence.madx +0 -0
  466. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/elena/elena.seq +0 -0
  467. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/elena/highenergy.beam +0 -0
  468. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/elena/highenergy.str +0 -0
  469. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fcc_ee/000_build_xsuite_model.py +0 -0
  470. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fcc_ee/Bz_closed_before_quads.dat +0 -0
  471. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fcc_ee/fccee_h.seq +0 -0
  472. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fcc_ee/fccee_h_thin.json +0 -0
  473. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fcc_ee/fccee_t.seq +0 -0
  474. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fcc_ee/fccee_w.seq +0 -0
  475. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fcc_ee/fccee_z.seq +0 -0
  476. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fcc_ee/install_wigglers.madx +0 -0
  477. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fringe_vs_madng/.gitignore +0 -0
  478. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fringe_vs_madng/fringe.lua +0 -0
  479. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fringe_vs_madng/fringe_vs_madng.py +0 -0
  480. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fringe_vs_madng/initial_particles.json +0 -0
  481. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fringe_vs_madng/octupole_fringe.json +0 -0
  482. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fringe_vs_madng/quadrupole_fringe.json +0 -0
  483. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/fringe_vs_madng/sextupole_fringe.json +0 -0
  484. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/h6_experimental_line/h6-fm.str +0 -0
  485. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/h6_experimental_line/h6fm04.seq +0 -0
  486. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_input_mad/.gitignore +0 -0
  487. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_input_mad/final_errors.tfs +0 -0
  488. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_input_mad/final_seq.madx +0 -0
  489. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_input_mad/from_pymask/000_pymask.py +0 -0
  490. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_input_mad/from_pymask/config.yaml +0 -0
  491. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_input_mad/from_pymask/optics_specific_tools.py +0 -0
  492. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_no_errors_with_coupling_knobs/000_generate_line_jsons.py +0 -0
  493. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_no_errors_with_coupling_knobs/lhcb1_seq.madx +0 -0
  494. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_no_errors_with_coupling_knobs/lhcb4_seq.madx +0 -0
  495. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_no_errors_with_coupling_knobs/line_b1.json +0 -0
  496. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc14_no_errors_with_coupling_knobs/line_b4.json +0 -0
  497. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_collider/collider_00_from_mad.json +0 -0
  498. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_collider/get_from_xmask.sh +0 -0
  499. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_noerrors_nobb/000_sequence_from_optics_repo.py +0 -0
  500. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_noerrors_nobb/001_xtline_from_madseq.py +0 -0
  501. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_noerrors_nobb/002_thick_sequence_from_optics_repo.py +0 -0
  502. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_noerrors_nobb/line_and_particle.json +0 -0
  503. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_noerrors_nobb/line_w_knobs_and_particle.json +0 -0
  504. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_noerrors_nobb/sequence.madx +0 -0
  505. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_noerrors_nobb/sequence_b4.madx +0 -0
  506. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_noerrors_nobb/sequence_with_crabs.madx +0 -0
  507. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/000_build_thick_line.py +0 -0
  508. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/001_build_thick_collider.py +0 -0
  509. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/hllhc15_collider_thick.json +0 -0
  510. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/hllhc15_collider_thick_legacy_multiline.json +0 -0
  511. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/hllhc_sequence.madx +0 -0
  512. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/lhc.seq +0 -0
  513. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/lhc_thick_with_knobs.json +0 -0
  514. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/lhcb4.seq +0 -0
  515. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/opt_round_150_1500.madx +0 -0
  516. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc15_thick/opt_round_300_1500.madx +0 -0
  517. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc_14/000_test_against_sixtrack_and_save_line.py +0 -0
  518. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc_14/fort.2 +0 -0
  519. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc_14/fort.3 +0 -0
  520. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc_14/line_and_particle.json +0 -0
  521. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/hllhc_14/runsix +0 -0
  522. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/leir/leir.seq +0 -0
  523. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/leir/leir_inj_nominal.beam +0 -0
  524. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/leir/leir_inj_nominal.str +0 -0
  525. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/000_make_line.py +0 -0
  526. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/fort.16 +0 -0
  527. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/fort.2 +0 -0
  528. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/fort.3 +0 -0
  529. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/fort.8 +0 -0
  530. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/line_and_particle.json +0 -0
  531. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/runsix +0 -0
  532. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/sixtrack_timing/fort.16 +0 -0
  533. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/sixtrack_timing/fort.2 +0 -0
  534. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/sixtrack_timing/fort.3 +0 -0
  535. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/sixtrack_timing/fort.8 +0 -0
  536. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_no_bb/sixtrack_timing/sim_time.dat +0 -0
  537. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_with_bb/000_generate_line.py +0 -0
  538. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_with_bb/fort.16 +0 -0
  539. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_with_bb/fort.2 +0 -0
  540. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_with_bb/fort.3 +0 -0
  541. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_with_bb/fort.8 +0 -0
  542. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_with_bb/line_and_particle.json +0 -0
  543. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/lhc_with_bb/runsix +0 -0
  544. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/pimms/PIMM.seq +0 -0
  545. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/pimms/PIMMS.seq +0 -0
  546. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/pimms/betatron.str +0 -0
  547. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/ps_sftpro/ps.seq +0 -0
  548. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/ps_sftpro/ps_hs_sftpro.str +0 -0
  549. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_chicane/README +0 -0
  550. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_chicane/Ramp_and_RF_functions.dat +0 -0
  551. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_chicane/chicane_collapse.csv +0 -0
  552. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_chicane/inj_distrib.dat +0 -0
  553. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_chicane/psb.seq +0 -0
  554. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_chicane/psb_fb_lhc.str +0 -0
  555. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_chicane/ptc_ref.json +0 -0
  556. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_injection/000_generate_xsuite_line.py +0 -0
  557. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_injection/line_and_particle.json +0 -0
  558. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/psb_injection/psb_injection.seq +0 -0
  559. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_ions/000_make_line.py +0 -0
  560. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_ions/SPS_2021_Pb_ions_thin_test.seq +0 -0
  561. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_ions/line_and_particle.json +0 -0
  562. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_thick/aperturedb_classes.madx +0 -0
  563. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_thick/aperturedb_elements.madx +0 -0
  564. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_thick/lhc_q20.str +0 -0
  565. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_thick/sps.seq +0 -0
  566. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_to_lhc_ti2/ti2.seq +0 -0
  567. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_to_lhc_ti2/ti2_liu.str +0 -0
  568. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_w_spacecharge/000_prepare_line.py +0 -0
  569. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_w_spacecharge/line_no_spacecharge_and_particle.json +0 -0
  570. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_w_spacecharge/line_with_spacecharge_and_particle.json +0 -0
  571. {xtrack-0.74.2 → xtrack-0.75.1}/test_data/sps_w_spacecharge/sps_thin.seq +0 -0
  572. {xtrack-0.74.2 → xtrack-0.75.1}/tests/conftest.py +0 -0
  573. {xtrack-0.74.2 → xtrack-0.75.1}/tests/pytest_onebyone.sh +0 -0
  574. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_acceleration.py +0 -0
  575. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_amplitude_detuning.py +0 -0
  576. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_aperture_turn_ele_and_monitor.py +0 -0
  577. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_apertures.py +0 -0
  578. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_attr_replicas_and_slices.py +0 -0
  579. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_cavity_absolute_time.py +0 -0
  580. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_chromatic_functions_vs_madx.py +0 -0
  581. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_coasting.py +0 -0
  582. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_collective_tracker.py +0 -0
  583. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_collimation.py +0 -0
  584. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_element_characterization_functions.py +0 -0
  585. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_element_internal_record.py +0 -0
  586. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_elements_classflags.py +0 -0
  587. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_fcc_ee_solenoid_correction.py +0 -0
  588. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_fcc_ee_solenoid_correction_new_optimize_api.py +0 -0
  589. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_footprint.py +0 -0
  590. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_freeze_longitudinal.py +0 -0
  591. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_full_rings.py +0 -0
  592. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_h6_sps_beamline.py +0 -0
  593. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_hvkick.py +0 -0
  594. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_ions.py +0 -0
  595. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_legacy_multiline_to_env.py +0 -0
  596. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_lhc_match_phase_15.py +0 -0
  597. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_lumi.py +0 -0
  598. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_mad_writer.py +0 -0
  599. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_madloader.py +0 -0
  600. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_madnginterface.py +0 -0
  601. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_match_and_track_from_element.py +0 -0
  602. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_match_coupling_knob.py +0 -0
  603. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_match_nested.py +0 -0
  604. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_match_optics_and_ip_knob.py +0 -0
  605. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_match_optics_and_ip_knob_new_optimize_api.py +0 -0
  606. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_match_orbit_bump.py +0 -0
  607. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_match_tune_chroma_cminus.py +0 -0
  608. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_monitor.py +0 -0
  609. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_multiline.py +0 -0
  610. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_multisetter.py +0 -0
  611. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_multispecies.py +0 -0
  612. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_new_madloader.py +0 -0
  613. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_particles_api.py +0 -0
  614. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_periodic_symmetric_twiss_and_match.py +0 -0
  615. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_pipeline.py +0 -0
  616. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_prebuild_kernels.py +0 -0
  617. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_ps_against_ptc.py +0 -0
  618. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_ps_multiturn_twiss.py +0 -0
  619. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_psb_chicane.py +0 -0
  620. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_pyht_interface.py +0 -0
  621. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_radial_steering.py +0 -0
  622. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_radiation.py +0 -0
  623. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_radiation_equilibrium_emittances.py +0 -0
  624. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_random_gen.py +0 -0
  625. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_random_gen_exp.py +0 -0
  626. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_random_gen_gauss.py +0 -0
  627. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_random_gen_ruth.py +0 -0
  628. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_rbend_rbarc.py +0 -0
  629. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_rf_track.py +0 -0
  630. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_rotation_signs.py +0 -0
  631. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_second_order_taylor_map.py +0 -0
  632. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_seeds.py +0 -0
  633. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_slice_and_insert_with_replicas.py +0 -0
  634. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_slice_elements.py +0 -0
  635. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_slicing.py +0 -0
  636. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_solenoid_bz_map_vs_boris.py +0 -0
  637. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_spacecharge_in_ring.py +0 -0
  638. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_sps_thick.py +0 -0
  639. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_survey.py +0 -0
  640. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_tapering.py +0 -0
  641. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_thick_lhc.py +0 -0
  642. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_tilt_shifts.py +0 -0
  643. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_tracker.py +0 -0
  644. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_trajectory_correcton.py +0 -0
  645. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_twiss.py +0 -0
  646. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_twiss_vs_madx_psb.py +0 -0
  647. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_vs_madx.py +0 -0
  648. {xtrack-0.74.2 → xtrack-0.75.1}/tests/test_xmask_orbit_correction.py +0 -0
  649. {xtrack-0.74.2 → xtrack-0.75.1}/update_cprght_statement.py +0 -0
  650. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/__init__.py +0 -0
  651. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/_temp/__init__.py +0 -0
  652. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/_temp/boris_and_solenoid_map/__init__.py +0 -0
  653. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/_temp/boris_and_solenoid_map/boris.h +0 -0
  654. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/_temp/boris_and_solenoid_map/solenoid_field.py +0 -0
  655. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/_temp/lhc_match/__init__.py +0 -0
  656. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/_temp/lhc_match/gen_madx_optics_file.py +0 -0
  657. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/_temp/lhc_match/lhc_match.py +0 -0
  658. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/_temp/lhc_match/var_limits.py +0 -0
  659. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/base_element.py +0 -0
  660. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/__init__.py +0 -0
  661. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/apertures.py +0 -0
  662. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/apertures_src/limitellipse.h +0 -0
  663. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/apertures_src/limitpolygon.h +0 -0
  664. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/apertures_src/limitracetrack.h +0 -0
  665. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/apertures_src/limitrect.h +0 -0
  666. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/apertures_src/limitrectellipse.h +0 -0
  667. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/apertures_src/longitudinallimitrect.h +0 -0
  668. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/beam_interaction.py +0 -0
  669. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/bend.h +0 -0
  670. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/cavity.h +0 -0
  671. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/dipole_fringe.h +0 -0
  672. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/dipoleedge.h +0 -0
  673. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/drift.h +0 -0
  674. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/drift_elem.h +0 -0
  675. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/drift_slice.h +0 -0
  676. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/drift_slice_bend.h +0 -0
  677. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/drift_slice_octupole.h +0 -0
  678. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/drift_slice_quadrupole.h +0 -0
  679. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/drift_slice_rbend.h +0 -0
  680. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/drift_slice_sextupole.h +0 -0
  681. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/elens.h +0 -0
  682. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/exciter.h +0 -0
  683. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/firstordertaylormap.h +0 -0
  684. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/multipole.h +0 -0
  685. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/nonlinearlens.h +0 -0
  686. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/octupole.h +0 -0
  687. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/quadrupole.h +0 -0
  688. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/rbend.h +0 -0
  689. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/referenceenergyincrease.h +0 -0
  690. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/rfmultipole.h +0 -0
  691. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/second_order_taylor_map.h +0 -0
  692. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/sextupole.h +0 -0
  693. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/simplethinbend.h +0 -0
  694. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/simplethinquadrupole.h +0 -0
  695. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/solenoid.h +0 -0
  696. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/srotation.h +0 -0
  697. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thick_slice_bend.h +0 -0
  698. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thick_slice_drift.h +0 -0
  699. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thick_slice_octupole.h +0 -0
  700. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thick_slice_quadrupole.h +0 -0
  701. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thick_slice_rbend.h +0 -0
  702. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thick_slice_sextupole.h +0 -0
  703. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thick_slice_solenoid.h +0 -0
  704. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_bend.h +0 -0
  705. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_bend_entry.h +0 -0
  706. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_bend_exit.h +0 -0
  707. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_octupole.h +0 -0
  708. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_quadrupole.h +0 -0
  709. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_rbend.h +0 -0
  710. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_rbend_entry.h +0 -0
  711. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_rbend_exit.h +0 -0
  712. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/thin_slice_sextupole.h +0 -0
  713. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_bend.h +0 -0
  714. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_dipole_edge_linear.h +0 -0
  715. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_dipole_edge_nonlinear.h +0 -0
  716. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_dipole_fringe.h +0 -0
  717. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_mult_fringe.h +0 -0
  718. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_multipolar_components.h +0 -0
  719. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_multipole.h +0 -0
  720. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_quadrupole.h +0 -0
  721. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_solenoid.h +0 -0
  722. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_srotation.h +0 -0
  723. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_thick_bend.h +0 -0
  724. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_thick_cfd.h +0 -0
  725. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_wedge.h +0 -0
  726. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_xrotation.h +0 -0
  727. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/track_yrotation.h +0 -0
  728. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/wedge.h +0 -0
  729. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/wire.h +0 -0
  730. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/xrotation.h +0 -0
  731. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/xyshift.h +0 -0
  732. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/yrotation.h +0 -0
  733. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/elements_src/zetashift.h +0 -0
  734. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/exciter.py +0 -0
  735. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/rft_element.py +0 -0
  736. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/slice_elements.py +0 -0
  737. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/beam_elements/slice_elements_thick.py +0 -0
  738. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/footprint.py +0 -0
  739. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/general.py +0 -0
  740. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/headers/atomicadd.h +0 -0
  741. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/headers/checks.h +0 -0
  742. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/headers/constants.h +0 -0
  743. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/headers/particle_states.h +0 -0
  744. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/headers/synrad_spectrum.h +0 -0
  745. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/internal_record.py +0 -0
  746. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/json.py +0 -0
  747. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/linear_normal_form.py +0 -0
  748. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/loss_location_refinement/__init__.py +0 -0
  749. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/loss_location_refinement/loss_location_refinement.py +0 -0
  750. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/lumi.py +0 -0
  751. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/mad_loader.py +0 -0
  752. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/mad_parser/__init__.py +0 -0
  753. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/mad_parser/env_writer.py +0 -0
  754. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/mad_parser/loader.py +0 -0
  755. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/mad_parser/madx.lark +0 -0
  756. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/mad_parser/parse.py +0 -0
  757. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/madng_interface.py +0 -0
  758. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/match.py +0 -0
  759. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/__init__.py +0 -0
  760. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/beam_position_monitor.h +0 -0
  761. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/beam_position_monitor.py +0 -0
  762. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/beam_profile_monitor.h +0 -0
  763. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/beam_profile_monitor.py +0 -0
  764. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/beam_size_monitor.h +0 -0
  765. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/beam_size_monitor.py +0 -0
  766. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/last_turns_monitor.h +0 -0
  767. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/last_turns_monitor.py +0 -0
  768. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/particles_monitor.h +0 -0
  769. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/monitors/particles_monitor.py +0 -0
  770. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/multiline.py +0 -0
  771. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/multiline_legacy/__init__.py +0 -0
  772. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/multiline_legacy/multiline_legacy.py +0 -0
  773. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/multiline_legacy/shared_knobs.py +0 -0
  774. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/multisetter/__init__.py +0 -0
  775. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/particles/__init__.py +0 -0
  776. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/particles/constants.py +0 -0
  777. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/particles/particles.py +0 -0
  778. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/particles/rng_src/base_rng.h +0 -0
  779. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/particles/rng_src/particles_rng.h +0 -0
  780. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/pipeline/__init__.py +0 -0
  781. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/pipeline/core.py +0 -0
  782. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/pipeline/manager.py +0 -0
  783. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/pipeline/multitracker.py +0 -0
  784. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/progress_indicator.py +0 -0
  785. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/random/__init__.py +0 -0
  786. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/random/random_generators.py +0 -0
  787. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/random/random_src/exponential.h +0 -0
  788. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/random/random_src/exponential_integral_Ei.h +0 -0
  789. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/random/random_src/normal.h +0 -0
  790. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/random/random_src/rutherford.h +0 -0
  791. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/random/random_src/uniform.h +0 -0
  792. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/random/random_src/uniform_accurate.h +0 -0
  793. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/slicing.py +0 -0
  794. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/survey.py +0 -0
  795. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/synctime.py +0 -0
  796. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/tapering.py +0 -0
  797. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/targets.py +0 -0
  798. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/tracker.py +0 -0
  799. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/tracker_data.py +0 -0
  800. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/tracker_src/tracker.h +0 -0
  801. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/trajectory_correction.py +0 -0
  802. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/twiss.py +0 -0
  803. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack/twissplot.py +0 -0
  804. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack.egg-info/dependency_links.txt +0 -0
  805. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack.egg-info/requires.txt +0 -0
  806. {xtrack-0.74.2 → xtrack-0.75.1}/xtrack.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xtrack
3
- Version: 0.74.2
3
+ Version: 0.75.1
4
4
  Summary: Tracking library for particle accelerators
5
5
  Home-page: https://xsuite.readthedocs.io/
6
6
  Download-URL: https://pypi.python.org/pypi/xtrack
@@ -634,6 +634,7 @@ class LinearTransferMatrix(Element):
634
634
  ("Q_y","","",0.0),
635
635
  ("beta_s","","",0.0),
636
636
  ("Q_s","","",0.0),
637
+ ("bucket_length","","",0.0),
637
638
  ("chroma_x","","",0.0),
638
639
  ("chroma_y","","",0.0),
639
640
  ("det_xx","","",0.0),
@@ -721,10 +722,16 @@ class LinearTransferMatrix(Element):
721
722
  p.x,p.px = M00_x*p.x + M01_x*p.px, M10_x*p.x + M11_x*p.px
722
723
  p.y,p.py = M00_y*p.y + M01_y*p.py, M10_y*p.y + M11_y*p.py
723
724
 
725
+ shift = 0.0
726
+ if self.bucket_length > 0:
727
+ bucket_length_zeta = self.bucket_length*p.beta0*clight
728
+ shift = bucket_length_zeta*np.floor(p.zeta/bucket_length_zeta+0.5);
729
+ p.zeta -= shift
730
+
724
731
  pzeta_new = sin_s*p.zeta/self.beta_s+cos_s*p.pzeta
725
732
  zeta_new = cos_s*p.zeta-self.beta_s*sin_s*p.pzeta
726
733
 
727
- p.zeta = zeta_new
734
+ p.zeta = zeta_new + shift
728
735
  p.pzeta = pzeta_new
729
736
 
730
737
  if self.energy_increment !=0:
@@ -0,0 +1,48 @@
1
+ import xtrack as xt
2
+
3
+ env = xt.Environment()
4
+ env.vars.default_to_zero = True
5
+ line = env.new_line(components=[
6
+ env.new('mq', 'Quadrupole', length=0.5, k1='kq'),
7
+ env.new('mqs', 'Quadrupole', length=0.5, k1s='kqs'),
8
+ env.new('mb', 'Bend', length=0.5, angle='ang', k0_from_h=True),
9
+ ])
10
+
11
+ env.set_multipolar_errors({
12
+ 'mq': {'rel_knl': [1e-6, 1e-5, 1e-4], 'rel_ksl': [-1e-6, -1e-5, -1e-4]},
13
+ 'mqs': {'rel_knl': [2e-6, 2e-5, 2e-4], 'rel_ksl': [3e-6, 3e-5, 3e-4], 'refer': 'k1s'},
14
+ 'mb': {'rel_knl': [2e-6, 3e-5, 4e-4], 'rel_ksl': [5e-6, 6e-5, 7e-4]},
15
+ })
16
+
17
+ # Errors respond when variables are changed
18
+ env['kq'] = 0.1
19
+ env['kqs'] = 0.2
20
+ env['ang'] = 0.3
21
+
22
+ # inspect
23
+ env.ref['mq'].knl[1]._info()
24
+ # is:
25
+ # # element_refs['mq'].knl[1]._get_value()
26
+ # element_refs['mq'].knl[1] = 5.000000000000001e-07
27
+
28
+ # # element_refs['mq'].knl[1]._expr
29
+ # element_refs['mq'].knl[1] = (0.0 + ((vars['err_mq_knl1'] *
30
+ # element_refs['mq'].k1) * element_refs['mq'].length))
31
+
32
+ # # element_refs['mq'].knl[1]._expr._get_dependencies()
33
+ # element_refs['mq'] = Quadrupole(k1=0.1, k1s=0, ...
34
+ # vars['err_mq_knl1'] = 1e-05
35
+ # element_refs['mq'].k1 = 0.1
36
+ # element_refs['mq'].length = 0.5
37
+
38
+ # element_refs['mq'].knl[1] does not influence any target
39
+
40
+ import xobjects as xo
41
+ import numpy as np
42
+
43
+ xo.assert_allclose(env.get('mq').knl[:3], 0.5 * 0.1 * np.array([1e-6, 1e-5, 1e-4]), rtol=1e-7, atol=0)
44
+ xo.assert_allclose(env.get('mq').ksl[:3], 0.5 * 0.1 * np.array([-1e-6, -1e-5, -1e-4]), rtol=1e-7, atol=0)
45
+ xo.assert_allclose(env.get('mqs').knl[:3], 0.5 * 0.2 * np.array([2e-6, 2e-5, 2e-4]), rtol=1e-7, atol=0)
46
+ xo.assert_allclose(env.get('mqs').ksl[:3], 0.5 * 0.2 * np.array([3e-6, 3e-5, 3e-4]), rtol=1e-7, atol=0)
47
+ xo.assert_allclose(env.get('mb').knl[:3], 0.3 * np.array([2e-6, 3e-5, 4e-4]), rtol=1e-7, atol=0)
48
+ xo.assert_allclose(env.get('mb').ksl[:3], 0.3 * np.array([5e-6, 6e-5, 7e-4]), rtol=1e-7, atol=0)
@@ -0,0 +1,55 @@
1
+ import xtrack as xt
2
+ import numpy as np
3
+
4
+ env = xt.load_madx_lattice('../../test_data/fcc_ee/fccee_z.seq')
5
+ line = env.fccee_p_ring
6
+ line.particle_ref = xt.Particles(p0c=45.6e9, mass0=xt.ELECTRON_MASS_EV)
7
+
8
+ tt = line.get_table()
9
+
10
+ # I want to add a random octupolar error to all quadrupoles whose name starts
11
+ # with 'qf'
12
+
13
+ # Table with all quads
14
+ tt_quad = tt.rows[tt.element_type=='Quadrupole']
15
+ tt_selected = tt_quad.rows['qf.*']
16
+ # is:
17
+ # Table: 752 rows, 11 cols
18
+ # name s element_type isthick isreplica ...
19
+ # qfg2.1 468.213 Quadrupole True False
20
+ # qfg2.2 520.504 Quadrupole True False
21
+ # qfg2.3 572.795 Quadrupole True False
22
+ # qfg2.4 625.085 Quadrupole True False
23
+ # qfg2.5 677.376 Quadrupole True False
24
+ # qfg2.6 729.667 Quadrupole True False
25
+ # qfg2.7 781.957 Quadrupole True False
26
+ # qfg2.8 834.248 Quadrupole True False
27
+ # qfg2.9 886.539 Quadrupole True False
28
+ # qfg2.10 938.83 Quadrupole True False
29
+ # ...
30
+ # qf2.351 88811 Quadrupole True False
31
+ # qf2.352 88915.2 Quadrupole True False
32
+ # qf2.353 89019.4 Quadrupole True False
33
+
34
+ # Generate random octupolar errors
35
+ k3l_rel_rms = 1e-3
36
+ k3l_rel = k3l_rel_rms * (2*np.random.rand(len(tt_selected)))
37
+
38
+ # Generate error dictionary
39
+ errors = {}
40
+ for ii, nn in enumerate(tt_selected.name):
41
+ errors[nn] = {'rel_knl': [0, 0, k3l_rel[ii]]}
42
+
43
+ # Set errors in the line
44
+ env.set_multipolar_errors(errors)
45
+
46
+ # The number of multipolar kicks along the elements is set automatically
47
+ # (one kick upstream by default for quadrupoles). In can be changed as follows
48
+ env.set(tt_selected.name, num_multipole_kicks=4)
49
+
50
+ # Inspect one element:
51
+ env['qfg2.5'].knl
52
+ # is : [0.00000000e+00, 0.00000000e+00, 4.02838126e-05, 0.00000000e+00,
53
+ # 0.00000000e+00, 0.00000000e+00]
54
+ env['qfg2.5'].num_multipole_kicks
55
+ # is: 4
@@ -0,0 +1,58 @@
1
+ import xtrack as xt
2
+ import xobjects as xo
3
+ import numpy as np
4
+
5
+ env = xt.Environment()
6
+ env.particle_ref = xt.Particles(p0c=45.6e9, mass0=xt.ELECTRON_MASS_EV)
7
+
8
+ l1 = env.new_line(components=[
9
+ env.new('b1', 'Bend', length=0.1)])
10
+ p0 = l1.build_particles(x=3e-3)
11
+ p = p0.copy()
12
+ l1.track(p)
13
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
14
+ env['b1'].knl[2] = 0.1
15
+ p = p0.copy()
16
+ l1.track(p)
17
+ assert np.abs(p.px[0]) > 1e-7
18
+
19
+ l2 = env.new_line(components=[
20
+ env.new('q1', 'Quadrupole', length=0.1)])
21
+ p = p0.copy()
22
+ l2.track(p)
23
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
24
+ env['q1'].knl[2] = 0.1
25
+ p = p0.copy()
26
+ l2.track(p)
27
+ assert np.abs(p.px[0]) > 1e-7
28
+
29
+ l3 = env.new_line(components=[
30
+ env.new('s1', 'Sextupole', length=0.1)])
31
+ p = p0.copy()
32
+ l3.track(p)
33
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
34
+ env['s1'].knl[2] = 0.1
35
+ p = p0.copy()
36
+ l3.track(p)
37
+ assert np.abs(p.px[0]) > 1e-7
38
+
39
+ l4 = env.new_line(components=[
40
+ env.new('o1', 'Octupole', length=0.1)])
41
+ p = p0.copy()
42
+ l4.track(p)
43
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
44
+ env['o1'].knl[2] = 0.1
45
+ p = p0.copy()
46
+ l4.track(p)
47
+ assert np.abs(p.px[0]) > 1e-7
48
+
49
+ l5 = env.new_line(components=[
50
+ env.new('rb1', 'RBend', length=0.1)])
51
+ p0 = l5.build_particles(x=3e-3)
52
+ p = p0.copy()
53
+ l5.track(p)
54
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
55
+ env['rb1'].knl[2] = 0.1
56
+ p = p0.copy()
57
+ l5.track(p)
58
+ assert np.abs(p.px[0]) > 1e-7
@@ -0,0 +1,117 @@
1
+ # copyright ############################### #
2
+ # This file is part of the Xtrack Package. #
3
+ # Copyright (c) CERN, 2021. #
4
+ # ######################################### #
5
+
6
+ import time
7
+
8
+ import numpy as np
9
+ from matplotlib import pyplot as plt
10
+ from scipy import constants
11
+
12
+ import xobjects as xo
13
+ context = xo.ContextCpu(omp_num_threads=0)
14
+ import xtrack as xt
15
+ import xfields as xf
16
+ import xpart as xp
17
+
18
+ n_macroparticles = int(1e3)
19
+ nemitt_x = 2E-6
20
+ nemitt_y = 2E-6
21
+ p0c = 7e12
22
+ gamma = p0c/xp.PROTON_MASS_EV
23
+ physemit_x = nemitt_x/gamma
24
+ physemit_y = nemitt_y/gamma
25
+ beta_x = 1.0
26
+ beta_y = 1.0
27
+
28
+ sigma_z = 0.08
29
+ momentumCompaction = 3.483575072011584e-04
30
+ eta = momentumCompaction - 1.0 / gamma ** 2
31
+ circumference = 26658.883199999
32
+ frev = constants.c/circumference
33
+ f_RF = 400.8E6
34
+ h = f_RF / frev
35
+ betar = np.sqrt(1 - 1 / gamma ** 2)
36
+ p0 = constants.m_p * betar * gamma * constants.c
37
+ voltage = 16E6
38
+ Qs = np.sqrt(constants.e * voltage * eta * h / (2 * np.pi * betar * constants.c * p0))
39
+ beta_s = eta * circumference / (2 * np.pi * Qs);
40
+ sigma_delta = sigma_z / beta_s
41
+ Qx = 0.31
42
+ Qy = 0.32
43
+ bucket_length = 2.5E-9
44
+
45
+ linear_fixed_rf = True
46
+
47
+ particles = xp.Particles(_context=context,
48
+ p0c=p0c,
49
+ x=np.zeros(n_macroparticles),
50
+ px=np.zeros(n_macroparticles),
51
+ y=np.zeros(n_macroparticles),
52
+ py=np.zeros(n_macroparticles),
53
+ zeta=bucket_length*constants.c*betar*np.linspace(-5,5,n_macroparticles),
54
+ delta=np.zeros(n_macroparticles),
55
+ )
56
+
57
+ if linear_fixed_rf:
58
+ arc = xt.LineSegmentMap(
59
+ betx=beta_x,qx=Qx,
60
+ bety=beta_y,qy=Qy,
61
+ longitudinal_mode='linear_fixed_rf',
62
+ voltage_rf = voltage*10,
63
+ frequency_rf = f_RF/10,
64
+ lag_rf = 180.0,
65
+ slippage_length = circumference,
66
+ momentum_compaction_factor = momentumCompaction)
67
+ else:
68
+ arc = xt.LineSegmentMap(
69
+ betx=beta_x,qx=Qx,
70
+ bety=beta_y,qy=Qy,
71
+ bets=-beta_s,qs=Qs)
72
+
73
+ line = xt.Line(elements=[arc])
74
+ line.build_tracker()
75
+ line.track(particles,num_turns=int(1/Qs),turn_by_turn_monitor=True)
76
+ mon = line.record_last_track
77
+
78
+ plt.figure()
79
+ plt.plot(mon.zeta/(bucket_length*constants.c*betar),mon.delta/sigma_delta,'.r')
80
+
81
+ particles = xp.Particles(_context=context,
82
+ p0c=p0c,
83
+ x=np.zeros(n_macroparticles),
84
+ px=np.zeros(n_macroparticles),
85
+ y=np.zeros(n_macroparticles),
86
+ py=np.zeros(n_macroparticles),
87
+ zeta=bucket_length*constants.c*betar*np.linspace(-5,5,n_macroparticles),
88
+ delta=np.zeros(n_macroparticles),
89
+ )
90
+
91
+ if linear_fixed_rf:
92
+ arc = xt.LineSegmentMap(
93
+ betx=beta_x,qx=Qx,
94
+ bety=beta_y,qy=Qy,
95
+ longitudinal_mode='linear_fixed_rf',
96
+ voltage_rf = voltage,
97
+ frequency_rf = f_RF,
98
+ lag_rf = 180.0,
99
+ slippage_length = circumference,
100
+ momentum_compaction_factor = momentumCompaction)
101
+ else:
102
+ arc = xt.LineSegmentMap(
103
+ betx=beta_x,qx=Qx,
104
+ bety=beta_y,qy=Qy,
105
+ bets=-beta_s,qs=Qs,bucket_length=bucket_length)
106
+
107
+ line2 = xt.Line(elements=[arc])
108
+ line2.build_tracker()
109
+ line2.track(particles,num_turns=int(1/Qs),turn_by_turn_monitor=True)
110
+ mon = line2.record_last_track
111
+
112
+ plt.plot(mon.zeta/(bucket_length*constants.c*betar),mon.delta/sigma_delta,'.b')
113
+ plt.xlabel(r'$z$ [bucket_lenght$\cdot c\beta_r$]')
114
+ plt.ylabel('$\delta$ [$\sigma_{\delta}$]')
115
+ plt.show()
116
+
117
+
@@ -6,7 +6,8 @@
6
6
  import numpy as np
7
7
  import pytest
8
8
  from cpymad.madx import Madx
9
-
9
+ from scipy.stats import linregress
10
+ from scipy import constants as cst
10
11
  import ducktrack as dtk
11
12
  import xobjects as xo
12
13
  import xpart as xp
@@ -650,6 +651,104 @@ def test_simplified_accelerator_segment(test_context):
650
651
  xo.assert_allclose(test_context.nparray_from_context_array(particles.delta)[0],
651
652
  dtk_particle.delta, rtol=1e-14, atol=1e-14)
652
653
 
654
+ @for_all_test_contexts
655
+ def test_simplified_accelerator_segment_bucket(test_context):
656
+ dtk_particle = dtk.TestParticles(
657
+ p0c=25.92e9,
658
+ x=2e-3,
659
+ px=4e-5,
660
+ y=4e-3,
661
+ py=-8e-5,
662
+ zeta=2.,
663
+ delta=2E-3)
664
+
665
+ particles = xp.Particles.from_dict(dtk_particle.to_dict(),
666
+ _context=test_context)
667
+ Q_x = 0.12
668
+ Q_y = 0.75
669
+ beta_s = 214.3
670
+ Q_s = 0.0042
671
+ bucket_length = 1E-9
672
+
673
+ arc = xt.LineSegmentMap(_context=test_context,
674
+ qx=Q_x, betx = 1.0, qy=Q_y, bety = 1.0,
675
+ bets=beta_s, qs=Q_s,bucket_length=bucket_length)
676
+
677
+ arc.track(particles)
678
+
679
+ dtk_arc = dtk.elements.LinearTransferMatrix(
680
+ Q_x=Q_x, Q_y=Q_y, beta_x_0 = 1.0, beta_x_1 = 1.0,
681
+ beta_y_0 = 1.0, beta_y_1 = 1.0,
682
+ beta_s=beta_s, Q_s=Q_s,bucket_length=bucket_length)
683
+
684
+ dtk_arc.track(dtk_particle)
685
+
686
+ assert np.isclose(test_context.nparray_from_context_array(particles.x)[0],
687
+ dtk_particle.x, rtol=1e-14, atol=1e-14)
688
+ assert np.isclose(test_context.nparray_from_context_array(particles.px)[0],
689
+ dtk_particle.px, rtol=1e-14, atol=1e-14)
690
+ assert np.isclose(test_context.nparray_from_context_array(particles.y)[0],
691
+ dtk_particle.y, rtol=1e-14, atol=1e-14)
692
+ assert np.isclose(test_context.nparray_from_context_array(particles.py)[0],
693
+ dtk_particle.py, rtol=1e-14, atol=1e-14)
694
+ assert np.isclose(test_context.nparray_from_context_array(particles.zeta)[0],
695
+ dtk_particle.zeta, rtol=1e-14, atol=1e-14)
696
+ assert np.isclose(test_context.nparray_from_context_array(particles.delta)[0],
697
+ dtk_particle.delta, rtol=1e-14, atol=1e-14)
698
+
699
+ @for_all_test_contexts
700
+ def test_simplified_accelerator_segment_bucket_fixed_rf(test_context):
701
+ dtk_particle = dtk.TestParticles(
702
+ p0c=25.92e9,
703
+ x=2e-3,
704
+ px=4e-5,
705
+ y=4e-3,
706
+ py=-8e-5,
707
+ zeta=8.,
708
+ delta=2E-3)
709
+
710
+ particles = xp.Particles.from_dict(dtk_particle.to_dict()).copy(_context=test_context)
711
+ Q_x = 0.12
712
+ Q_y = 0.75
713
+ voltage = 10E6
714
+ f_RF = 100E6
715
+ circumference = 2E3
716
+ momentum_compaction = 1E-2
717
+
718
+ arc = xt.LineSegmentMap(_context=test_context,
719
+ qx=Q_x, betx = 1.0, qy=Q_y, bety = 1.0,
720
+ voltage_rf = voltage,
721
+ longitudinal_mode = 'linear_fixed_rf',
722
+ frequency_rf = f_RF,
723
+ lag_rf = 180.0,
724
+ slippage_length = circumference,
725
+ momentum_compaction_factor = momentum_compaction)
726
+
727
+ arc.track(particles)
728
+
729
+ particles.move(_context=xo.ContextCpu())
730
+ eta = (momentum_compaction - 1.0 / particles.gamma0 ** 2)
731
+ h = f_RF * circumference / (particles.beta0*cst.c)
732
+ p0 = particles.mass0 * cst.e * particles.beta0 * particles.gamma0 / cst.c
733
+ Q_s = np.sqrt(cst.e * voltage * eta * h / (2 * np.pi * particles.beta0 * cst.c * p0))
734
+ beta_s = eta * circumference / (2 * np.pi * Q_s)
735
+ Qx = 0.31
736
+ Qy = 0.32
737
+
738
+ dtk_arc = dtk.elements.LinearTransferMatrix(
739
+ Q_x=Q_x, Q_y=Q_y, beta_x_0 = 1.0, beta_x_1 = 1.0,
740
+ beta_y_0 = 1.0, beta_y_1 = 1.0,
741
+ beta_s=beta_s, Q_s=Q_s,bucket_length=1.0/f_RF)
742
+
743
+ dtk_arc.track(dtk_particle)
744
+
745
+ assert np.isclose(particles.x[0], dtk_particle.x, rtol=1e-14, atol=1e-14)
746
+ assert np.isclose(particles.px[0], dtk_particle.px, rtol=1e-14, atol=1e-14)
747
+ assert np.isclose(particles.y[0], dtk_particle.y, rtol=1e-14, atol=1e-14)
748
+ assert np.isclose(particles.py[0], dtk_particle.py, rtol=1e-14, atol=1e-14)
749
+ assert np.isclose(particles.zeta[0], dtk_particle.zeta, rtol=1e-14, atol=1e-14)
750
+ assert np.isclose(particles.delta[0], dtk_particle.delta, rtol=1e-14, atol=1e-14)
751
+
653
752
 
654
753
  @for_all_test_contexts
655
754
  def test_simplified_accelerator_segment_chroma_detuning(test_context):
@@ -1989,3 +1989,59 @@ def test_multipole_fringe(test_context, element, kn_param_name):
1989
1989
  xo.assert_allclose(fringe_effect_madng[3], fringe_effect_xtrack[3], atol=1e-16, rtol=1.01e-2) # py
1990
1990
  xo.assert_allclose(fringe_effect_madng[4], fringe_effect_xtrack[4], atol=1.01e-15, rtol=1.01e-2) # t
1991
1991
  xo.assert_allclose(fringe_effect_madng[5], fringe_effect_xtrack[5], atol=0, rtol=0) # pt
1992
+
1993
+ def test_knl_knl_kick_present_with_default_num_kicks():
1994
+ env = xt.Environment()
1995
+ env.particle_ref = xt.Particles(p0c=45.6e9, mass0=xt.ELECTRON_MASS_EV)
1996
+
1997
+ l1 = env.new_line(components=[
1998
+ env.new('b1', 'Bend', length=0.1)])
1999
+ p0 = l1.build_particles(x=3e-3)
2000
+ p = p0.copy()
2001
+ l1.track(p)
2002
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
2003
+ env['b1'].knl[2] = 0.1
2004
+ p = p0.copy()
2005
+ l1.track(p)
2006
+ assert np.abs(p.px[0]) > 1e-7
2007
+
2008
+ l2 = env.new_line(components=[
2009
+ env.new('q1', 'Quadrupole', length=0.1)])
2010
+ p = p0.copy()
2011
+ l2.track(p)
2012
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
2013
+ env['q1'].knl[2] = 0.1
2014
+ p = p0.copy()
2015
+ l2.track(p)
2016
+ assert np.abs(p.px[0]) > 1e-7
2017
+
2018
+ l3 = env.new_line(components=[
2019
+ env.new('s1', 'Sextupole', length=0.1)])
2020
+ p = p0.copy()
2021
+ l3.track(p)
2022
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
2023
+ env['s1'].knl[2] = 0.1
2024
+ p = p0.copy()
2025
+ l3.track(p)
2026
+ assert np.abs(p.px[0]) > 1e-7
2027
+
2028
+ l4 = env.new_line(components=[
2029
+ env.new('o1', 'Octupole', length=0.1)])
2030
+ p = p0.copy()
2031
+ l4.track(p)
2032
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
2033
+ env['o1'].knl[2] = 0.1
2034
+ p = p0.copy()
2035
+ l4.track(p)
2036
+ assert np.abs(p.px[0]) > 1e-7
2037
+
2038
+ l5 = env.new_line(components=[
2039
+ env.new('rb1', 'RBend', length=0.1)])
2040
+ p0 = l5.build_particles(x=3e-3)
2041
+ p = p0.copy()
2042
+ l5.track(p)
2043
+ xo.assert_allclose(p.px, 0, rtol=0, atol=1e-15)
2044
+ env['rb1'].knl[2] = 0.1
2045
+ p = p0.copy()
2046
+ l5.track(p)
2047
+ assert np.abs(p.px[0]) > 1e-7
@@ -164,6 +164,25 @@ def test_vars_and_element_access_modes(container_type):
164
164
 
165
165
  assert env.elements is env.element_dict
166
166
 
167
+ # Check set with multiple targets
168
+ env['x0'] = 0
169
+ env.set(['x1', 'x2', 'x3'], '3*x0')
170
+ env['x0'] = 3.
171
+ ttv = env.vars.get_table()
172
+ for nn in ['x1', 'x2', 'x3']:
173
+ assert ttv['value', nn] == 3 * 3
174
+ assert ttv['expr', nn] == '(3.0 * x0)'
175
+
176
+ env.new('qx1', xt.Quadrupole, length=1)
177
+ env.new('qx2', xt.Quadrupole, length=1)
178
+ env.new('qx3', xt.Quadrupole, length=1)
179
+
180
+ env.set(['qx1', 'qx2', 'qx3'], k1='3*x0')
181
+ for nn in ['qx1', 'qx2', 'qx3']:
182
+ assert env[nn].k1 == 3 * 3
183
+ assert str(env.ref[nn].k1._expr) == "(3.0 * vars['x0'])"
184
+
185
+
167
186
  def test_element_placing_at_s():
168
187
 
169
188
  env = xt.Environment()
@@ -1952,14 +1971,14 @@ def test_call(tmpdir):
1952
1971
  elements = _trim("""
1953
1972
  env.new('sbend', 'Bend')
1954
1973
  env.new('drift', 'Drift')
1955
-
1974
+
1956
1975
  env.new('mb2', 'sbend', length=2)
1957
1976
  env.new('drx', 'drift', length='var1 + var2')
1958
1977
  """)
1959
1978
 
1960
1979
  lattice = _trim("""
1961
1980
  env.particle_ref = xt.Particles(mass0=xt.ELECTRON_MASS_EV, energy0=45.6e9)
1962
-
1981
+
1963
1982
  env.new_line(
1964
1983
  name='seq',
1965
1984
  components=['mb2', 'drx', 'mb2', 'drx'],
@@ -2675,6 +2694,20 @@ def test_remove_element_from_line():
2675
2694
  [ 4.5, 10. , 15. , 20. , 25. , 30. , 35.5, 41. , 46. , 50. , 50. ]),
2676
2695
  rtol=0., atol=1e-14)
2677
2696
 
2697
+ line6 = line0.copy()
2698
+ tt_remove = line6.get_table().rows['q.*']
2699
+ line6.remove(tt_remove.name)
2700
+ tt6 = line3.get_table()
2701
+ tt6.show(cols=['name', 's_start', 's_end', 's_center'])
2702
+
2703
+ assert np.all(tt6.name == np.array(
2704
+ ['drift_1', 'drift_6', 'drift_2', 'drift_7', 'drift_3', 'drift_8',
2705
+ 'drift_4', 'mk1', 'mk2', 'mk3', 'drift_9', 'drift_5', 'end',
2706
+ '_end_point']))
2707
+ xo.assert_allclose(tt6.s_center, np.array(
2708
+ [ 4.5, 10. , 15. , 20. , 25. , 30. , 35.5, 40. , 40. , 40. , 41. ,
2709
+ 46. , 50. , 50. ]), rtol=0., atol=1e-14)
2710
+
2678
2711
  def test_replace_element():
2679
2712
 
2680
2713
  env = xt.Environment()
@@ -2890,3 +2923,33 @@ def test_nested_lists():
2890
2923
  tt.show(cols=['name', 's_start', 's_end', 's_center'])
2891
2924
  assert np.all(tt.name == np.array(
2892
2925
  ['q1::0', 'q1::1', 'q2', '_end_point']))
2926
+
2927
+
2928
+ def test_relative_error_definition():
2929
+
2930
+ env = xt.Environment()
2931
+ env.vars.default_to_zero = True
2932
+ line = env.new_line(components=[
2933
+ env.new('mq', 'Quadrupole', length=0.5, k1='kq'),
2934
+ env.new('mqs', 'Quadrupole', length=0.5, k1s='kqs'),
2935
+ env.new('mb', 'Bend', length=0.5, angle='ang', k0_from_h=True),
2936
+ ])
2937
+
2938
+ env.set_multipolar_errors({
2939
+ 'mq': {'rel_knl': [1e-6, 1e-5, 1e-4], 'rel_ksl': [-1e-6, -1e-5, -1e-4]},
2940
+ 'mqs': {'rel_knl': [2e-6, 2e-5, 2e-4], 'rel_ksl': [3e-6, 3e-5, 3e-4], 'refer': 'k1s'},
2941
+ 'mb': {'rel_knl': [2e-6, 3e-5, 4e-4], 'rel_ksl': [5e-6, 6e-5, 7e-4]},
2942
+ })
2943
+
2944
+ # Errors respond when variables are changed
2945
+ env['kq'] = 0.1
2946
+ env['kqs'] = 0.2
2947
+ env['ang'] = 0.3
2948
+
2949
+
2950
+ xo.assert_allclose(env.get('mq').knl[:3], 0.5 * 0.1 * np.array([1e-6, 1e-5, 1e-4]), rtol=1e-7, atol=0)
2951
+ xo.assert_allclose(env.get('mq').ksl[:3], 0.5 * 0.1 * np.array([-1e-6, -1e-5, -1e-4]), rtol=1e-7, atol=0)
2952
+ xo.assert_allclose(env.get('mqs').knl[:3], 0.5 * 0.2 * np.array([2e-6, 2e-5, 2e-4]), rtol=1e-7, atol=0)
2953
+ xo.assert_allclose(env.get('mqs').ksl[:3], 0.5 * 0.2 * np.array([3e-6, 3e-5, 3e-4]), rtol=1e-7, atol=0)
2954
+ xo.assert_allclose(env.get('mb').knl[:3], 0.3 * np.array([2e-6, 3e-5, 4e-4]), rtol=1e-7, atol=0)
2955
+ xo.assert_allclose(env.get('mb').ksl[:3], 0.3 * np.array([5e-6, 6e-5, 7e-4]), rtol=1e-7, atol=0)
@@ -40,9 +40,10 @@ def test_lhc_environment():
40
40
  deferred_expressions=True,
41
41
  replace_in_expr={'bv_aux':'bvaux_b2'})
42
42
  line4.particle_ref = xp.Particles(mass0=xp.PROTON_MASS_EV, p0c=7000e9)
43
+ line4.twiss_default['reverse'] = True
43
44
 
44
45
  env = xt.Environment(lines={'lhcb1': line1, 'lhcb2': line4})
45
- env.lhcb2.twiss_default['reverse'] = True
46
+ assert env.lhcb2.twiss_default['reverse'] == True
46
47
 
47
48
  env.to_json('lhc.json')
48
49
 
@@ -1295,3 +1295,5 @@ def test_extend_knl_ksl():
1295
1295
  0., 0., 0., 0., 0., 0., 0., 0.], rtol=0, atol=1e-15)
1296
1296
  xo.assert_allclose(line['o1'].ksl, [4., 5., 200., 0.,
1297
1297
  0., 0., 0., 0., 0., 0., 0., 0.], rtol=0, atol=1e-15)
1298
+
1299
+