xtrack 0.86.1__tar.gz → 0.86.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {xtrack-0.86.1/xtrack.egg-info → xtrack-0.86.2}/PKG-INFO +1 -1
- xtrack-0.86.2/xtrack/_version.py +1 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/__init__.py +3 -2
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/bend.h +7 -1
- xtrack-0.86.2/xtrack/beam_elements/elements_src/default_magnet_config.h +22 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/drift_slice_bend.h +37 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/drift_slice_octupole.h +37 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/drift_slice_quadrupole.h +37 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/drift_slice_rbend.h +37 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/drift_slice_sextupole.h +37 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/drift_slice_uniform_solenoid.h +37 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/magnet.h +66 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/multipole.h +8 -6
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/octupole.h +10 -17
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/quadrupole.h +10 -17
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/rbend.h +14 -17
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/sextupole.h +10 -18
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/slnd.h +12 -15
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thick_slice_bend.h +24 -27
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thick_slice_octupole.h +17 -36
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thick_slice_quadrupole.h +17 -36
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thick_slice_rbend.h +25 -29
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thick_slice_sextupole.h +17 -36
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thick_slice_uniform_solenoid.h +18 -33
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thin_slice_bend.h +25 -30
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_bend_entry.h +69 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_bend_exit.h +69 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thin_slice_octupole.h +16 -24
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_octupole_entry.h +68 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_octupole_exit.h +68 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thin_slice_quadrupole.h +17 -23
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_quadrupole_entry.h +68 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_quadrupole_exit.h +68 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thin_slice_rbend.h +26 -31
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_rbend_entry.h +68 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_rbend_exit.h +68 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/thin_slice_sextupole.h +16 -24
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_sextupole_entry.h +68 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_sextupole_exit.h +68 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_uniform_solenoid_entry.h +68 -0
- xtrack-0.86.2/xtrack/beam_elements/elements_src/thin_slice_uniform_solenoid_exit.h +68 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_magnet.h +109 -70
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/variable_solenoid.h +9 -13
- xtrack-0.86.1/xtrack/beam_elements/slice_elements.py → xtrack-0.86.2/xtrack/beam_elements/slice_elements_edge.py +5 -293
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/slice_elements_thick.py +1 -1
- xtrack-0.86.2/xtrack/beam_elements/slice_elements_thin.py +296 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/line.py +10 -3
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/load.py +1 -1
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/madng_interface.py +6 -4
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/trajectory_correction.py +4 -4
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/twiss.py +6 -3
- {xtrack-0.86.1 → xtrack-0.86.2/xtrack.egg-info}/PKG-INFO +1 -1
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack.egg-info/SOURCES.txt +4 -5
- xtrack-0.86.1/xtrack/_version.py +0 -1
- xtrack-0.86.1/xtrack/beam_elements/elements_src/drift_slice_bend.h +0 -32
- xtrack-0.86.1/xtrack/beam_elements/elements_src/drift_slice_octupole.h +0 -32
- xtrack-0.86.1/xtrack/beam_elements/elements_src/drift_slice_quadrupole.h +0 -32
- xtrack-0.86.1/xtrack/beam_elements/elements_src/drift_slice_rbend.h +0 -32
- xtrack-0.86.1/xtrack/beam_elements/elements_src/drift_slice_sextupole.h +0 -32
- xtrack-0.86.1/xtrack/beam_elements/elements_src/magnet.h +0 -92
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thick_slice_drift.h +0 -31
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_bend_entry.h +0 -60
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_bend_exit.h +0 -60
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_octupole_entry.h +0 -47
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_octupole_exit.h +0 -48
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_quadrupole_entry.h +0 -47
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_quadrupole_exit.h +0 -47
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_rbend_entry.h +0 -60
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_rbend_exit.h +0 -61
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_sextupole_entry.h +0 -48
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_sextupole_exit.h +0 -48
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_uniform_solenoid_entry.h +0 -51
- xtrack-0.86.1/xtrack/beam_elements/elements_src/thin_slice_uniform_solenoid_exit.h +0 -51
- xtrack-0.86.1/xtrack/beam_elements/elements_src/track_bend.h +0 -162
- xtrack-0.86.1/xtrack/beam_elements/elements_src/track_multipole.h +0 -176
- xtrack-0.86.1/xtrack/beam_elements/elements_src/track_quadrupole.h +0 -115
- {xtrack-0.86.1 → xtrack-0.86.2}/LICENSE +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/MANIFEST.in +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/README.md +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/base_classes.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/BB6D.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/BB6Ddata.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/beambeam.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/boost.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/gaussian_fields.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/propagate_sigma_matrix.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/qgauss.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/slicing.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/be_beamfields/spacecharge.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/elements.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/line.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/mathlibs.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/particles.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/ducktrack/temp_pyparticles.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/pyproject.toml +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/setup.cfg +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/setup.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_acceleration.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_amplitude_detuning.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_aperture_table.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_aperture_turn_ele_and_monitor.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_apertures.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_attr_replicas_and_slices.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_bucket_with_ref_energy_change.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_cavity_absolute_time.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_chromatic_functions_vs_madx.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_coasting.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_collective_tracker.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_collimation.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_electron_cooler.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_element_characterization_functions.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_element_internal_record.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_elements.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_elements_classflags.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_elements_thick.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_environment.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_fcc_ee_solenoid_correction.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_fcc_ee_solenoid_correction_new_optimize_api.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_footprint.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_freeze_longitudinal.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_full_rings.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_h6_sps_beamline.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_hvkick.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_ions.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_legacy_multiline_to_env.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_lhc_env.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_lhc_match_phase_15.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_line.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_load.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_lumi.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_mad_writer.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_madloader.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_madnginterface.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_magnet.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_match_and_track_from_element.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_match_coupling_knob.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_match_nested.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_match_optics_and_ip_knob.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_match_optics_and_ip_knob_new_optimize_api.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_match_orbit_bump.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_match_tune_chroma_cminus.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_monitor.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_multi_bunch_gauss.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_multiline.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_multisetter.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_multispecies.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_native_madloader.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_optimize_for_tracking.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_particles.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_particles_basics.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_particles_pdg.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_periodic_symmetric_twiss_and_match.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_pipeline.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_prebuild_kernels.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_ps_against_ptc.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_ps_multiturn_twiss.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_psb_chicane.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_pyht_interface.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_radial_steering.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_radiation.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_radiation_equilibrium_emittances.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_radiation_equilibrium_emittances_thick.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_radiation_integrals.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_random_gen.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_random_gen_exp.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_random_gen_gauss.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_random_gen_ruth.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_rbend_rbarc.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_rf_track.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_rotation_signs.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_second_order_taylor_map.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_seeds.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_slice_and_insert_with_replicas.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_slice_elements.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_slicing.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_solenoid_bz_map_vs_boris.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_solenoid_bz_map_vs_boris_legacy.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_spacecharge_in_ring.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_spin.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_sps_thick.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_survey.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_tapering.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_thick_lhc.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_tilt_shifts.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_tracker.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_trajectory_correcton.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_twiss.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_twiss_vs_madx_psb.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_vs_madx.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/tests/test_xmask_orbit_correction.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/_temp/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/_temp/boris_and_solenoid_map/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/_temp/boris_and_solenoid_map/boris.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/_temp/boris_and_solenoid_map/solenoid_field.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/_temp/lhc_match/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/_temp/lhc_match/gen_madx_optics_file.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/_temp/lhc_match/lhc_match.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/_temp/lhc_match/var_limits.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/aperture_meas.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/base_element.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/apertures.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/apertures_src/limitellipse.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/apertures_src/limitpolygon.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/apertures_src/limitracetrack.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/apertures_src/limitrect.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/apertures_src/limitrectellipse.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/apertures_src/longitudinallimitrect.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/beam_interaction.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/cavity.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/dipole_fringe.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/dipoleedge.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/drift.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/drift_slice.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/electroncooler.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/elens.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/exciter.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/firstordertaylormap.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/legacy_solenoid.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/linesegmentmap.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/magnet_drift.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/magnet_edge.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/magnet_kick.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/marker.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/multipoleedge.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/nonlinearlens.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/referenceenergyincrease.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/rfmultipole.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/second_order_taylor_map.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/simplethinbend.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/simplethinquadrupole.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/srotation.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_cavity.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_dipole_edge_linear.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_dipole_edge_nonlinear.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_dipole_fringe.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_drift.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_legacy_solenoid.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_legacy_solenoid_multipolar_components.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_legacy_solenoid_radiation.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_magnet_drift.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_magnet_edge.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_magnet_kick.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_magnet_radiation.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_mult_fringe.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_srotation.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_thick_bend.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_thick_cfd.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_wedge.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_xrotation.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/track_yrotation.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/wedge.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/wire.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/xrotation.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/xyshift.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/yrotation.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/elements_src/zetashift.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/exciter.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/magnets.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/beam_elements/rft_element.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/environment.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/footprint.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/general.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/headers/atomicadd.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/headers/checks.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/headers/constants.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/headers/particle_states.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/headers/synrad_spectrum.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/headers/track.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/internal_record.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/json.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/linear_normal_form.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/loss_location_refinement/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/loss_location_refinement/loss_location_refinement.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/lumi.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/mad_loader.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/mad_parser/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/mad_parser/loader.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/mad_parser/madx.lark +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/mad_parser/parse.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/mad_writer.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/match.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/beam_position_monitor.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/beam_position_monitor.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/beam_profile_monitor.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/beam_profile_monitor.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/beam_size_monitor.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/beam_size_monitor.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/last_turns_monitor.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/last_turns_monitor.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/particles_monitor.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/monitors/particles_monitor.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/multiline.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/multiline_legacy/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/multiline_legacy/multiline_legacy.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/multiline_legacy/shared_knobs.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/multisetter/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/multisetter/multisetter.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/particles/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/particles/constants.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/particles/masses.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/particles/particles.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/particles/pdg.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/particles/rng_src/base_rng.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/particles/rng_src/particles_rng.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/pipeline/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/pipeline/core.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/pipeline/manager.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/pipeline/multitracker.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/progress_indicator.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/random/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/random/random_generators.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/random/random_src/exponential.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/random/random_src/exponential_integral_Ei.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/random/random_src/normal.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/random/random_src/rutherford.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/random/random_src/uniform.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/random/random_src/uniform_accurate.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/slicing.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/survey.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/svgutils/__init__.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/svgutils/parser.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/svgutils/path.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/svgutils/svgutils.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/synctime.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/tapering.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/targets.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/tracker.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/tracker_data.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/tracker_src/tracker.h +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack/twissplot.py +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack.egg-info/dependency_links.txt +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack.egg-info/requires.txt +0 -0
- {xtrack-0.86.1 → xtrack-0.86.2}/xtrack.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = '0.86.2'
|
|
@@ -8,9 +8,10 @@ from .exciter import Exciter
|
|
|
8
8
|
from .apertures import *
|
|
9
9
|
from .magnets import Magnet
|
|
10
10
|
from .beam_interaction import BeamInteraction, ParticlesInjectionSample
|
|
11
|
-
from .
|
|
11
|
+
from .slice_elements_thin import (ThinSliceQuadrupole, ThinSliceSextupole,
|
|
12
12
|
ThinSliceOctupole, ThinSliceBend,
|
|
13
|
-
ThinSliceRBend
|
|
13
|
+
ThinSliceRBend)
|
|
14
|
+
from .slice_elements_edge import (
|
|
14
15
|
ThinSliceBendEntry, ThinSliceBendExit,
|
|
15
16
|
ThinSliceRBendEntry, ThinSliceRBendExit,
|
|
16
17
|
ThinSliceQuadrupoleEntry, ThinSliceQuadrupoleExit,
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
#include <headers/track.h>
|
|
10
10
|
#include <beam_elements/elements_src/track_magnet.h>
|
|
11
|
+
#include <beam_elements/elements_src/default_magnet_config.h>
|
|
11
12
|
|
|
12
13
|
GPUFUN
|
|
13
14
|
void Bend_track_local_particle(
|
|
@@ -16,17 +17,20 @@ void Bend_track_local_particle(
|
|
|
16
17
|
) {
|
|
17
18
|
|
|
18
19
|
track_magnet_particles(
|
|
20
|
+
/*weight*/ 1.0,
|
|
19
21
|
/*part0*/ part0,
|
|
20
22
|
/*length*/ BendData_get_length(el),
|
|
21
23
|
/*order*/ BendData_get_order(el),
|
|
22
24
|
/*inv_factorial_order*/ BendData_get_inv_factorial_order(el),
|
|
23
25
|
/*knl*/ BendData_getp1_knl(el, 0),
|
|
24
26
|
/*ksl*/ BendData_getp1_ksl(el, 0),
|
|
25
|
-
/*factor_knl_ksl*/ 1.,
|
|
26
27
|
/*num_multipole_kicks*/ BendData_get_num_multipole_kicks(el),
|
|
27
28
|
/*model*/ BendData_get_model(el),
|
|
29
|
+
/*default_model*/ BEND_DEFAULT_MODEL,
|
|
28
30
|
/*integrator*/ BendData_get_integrator(el),
|
|
31
|
+
/*default_integrator*/ BEND_DEFAULT_INTEGRATOR,
|
|
29
32
|
/*radiation_flag*/ BendData_get_radiation_flag(el),
|
|
33
|
+
/*radiation_flag_parent*/ 0, // not used here
|
|
30
34
|
/*radiation_record*/ NULL,
|
|
31
35
|
/*delta_taper*/ BendData_get_delta_taper(el),
|
|
32
36
|
/*h*/ BendData_get_h(el),
|
|
@@ -41,6 +45,8 @@ void Bend_track_local_particle(
|
|
|
41
45
|
/*k3s*/ 0.,
|
|
42
46
|
/*ks*/ 0.,
|
|
43
47
|
/*dks_ds*/ 0.,
|
|
48
|
+
/*rbend_model*/ -1, // not rbend
|
|
49
|
+
/*body_active*/ 1,
|
|
44
50
|
/*edge_entry_active*/ BendData_get_edge_entry_active(el),
|
|
45
51
|
/*edge_exit_active*/ BendData_get_edge_exit_active(el),
|
|
46
52
|
/*edge_entry_model*/ BendData_get_edge_entry_model(el),
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// copyright ############################### //
|
|
2
|
+
// This file is part of the Xtrack Package. //
|
|
3
|
+
// Copyright (c) CERN, 2023. //
|
|
4
|
+
// ######################################### //
|
|
5
|
+
|
|
6
|
+
#ifndef XTRACK_DEFAULT_MAGNET_CONFIG_H
|
|
7
|
+
#define XTRACK_DEFAULT_MAGNET_CONFIG_H
|
|
8
|
+
|
|
9
|
+
#define BEND_DEFAULT_MODEL (3) // rot-kick-rot
|
|
10
|
+
#define RBEND_DEFAULT_MODEL (3) // rot-kick-rot
|
|
11
|
+
#define QUADRUPOLE_DEFAULT_MODEL (4) // mat-kick-mat
|
|
12
|
+
#define SEXTUPOLE_DEFAULT_MODEL (6) // drift-kick-drift-expanded
|
|
13
|
+
#define OCTUPOLE_DEFAULT_MODEL (6) // drift-kick-drift-expanded
|
|
14
|
+
|
|
15
|
+
#define BEND_DEFAULT_INTEGRATOR (2) // Yoshida-4
|
|
16
|
+
#define RBEND_DEFAULT_INTEGRATOR (2) // Yoshida-4
|
|
17
|
+
#define QUADRUPOLE_DEFAULT_INTEGRATOR (3) // uniform
|
|
18
|
+
#define SEXTUPOLE_DEFAULT_INTEGRATOR (3) // uniform
|
|
19
|
+
#define OCTUPOLE_DEFAULT_INTEGRATOR (3) // uniform
|
|
20
|
+
#define SOLENOID_DEFAULT_INTEGRATOR (3) // uniform
|
|
21
|
+
|
|
22
|
+
#endif
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// This file is generated by _generate_slice_elements_c_code.py
|
|
2
|
+
// Do not edit it directly.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
// copyright ############################### //
|
|
6
|
+
// This file is part of the Xtrack Package. //
|
|
7
|
+
// Copyright (c) CERN, 2023. //
|
|
8
|
+
// ######################################### //
|
|
9
|
+
|
|
10
|
+
#ifndef XTRACK_DRIFT_SLICE_BEND_H
|
|
11
|
+
#define XTRACK_DRIFT_SLICE_BEND_H
|
|
12
|
+
|
|
13
|
+
#include <headers/track.h>
|
|
14
|
+
#include <beam_elements/elements_src/track_drift.h>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
GPUFUN
|
|
18
|
+
void DriftSliceBend_track_local_particle(
|
|
19
|
+
DriftSliceBendData el,
|
|
20
|
+
LocalParticle* part0
|
|
21
|
+
) {
|
|
22
|
+
|
|
23
|
+
double weight = DriftSliceBendData_get_weight(el);
|
|
24
|
+
|
|
25
|
+
#ifndef XSUITE_BACKTRACK
|
|
26
|
+
double const length = weight * DriftSliceBendData_get__parent_length(el); // m
|
|
27
|
+
#else
|
|
28
|
+
double const length = -weight * DriftSliceBendData_get__parent_length(el); // m
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
START_PER_PARTICLE_BLOCK(part0, part);
|
|
32
|
+
Drift_single_particle(part, length);
|
|
33
|
+
END_PER_PARTICLE_BLOCK;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
#endif
|
|
37
|
+
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// This file is generated by _generate_slice_elements_c_code.py
|
|
2
|
+
// Do not edit it directly.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
// copyright ############################### //
|
|
6
|
+
// This file is part of the Xtrack Package. //
|
|
7
|
+
// Copyright (c) CERN, 2023. //
|
|
8
|
+
// ######################################### //
|
|
9
|
+
|
|
10
|
+
#ifndef XTRACK_DRIFT_SLICE_OCTUPOLE_H
|
|
11
|
+
#define XTRACK_DRIFT_SLICE_OCTUPOLE_H
|
|
12
|
+
|
|
13
|
+
#include <headers/track.h>
|
|
14
|
+
#include <beam_elements/elements_src/track_drift.h>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
GPUFUN
|
|
18
|
+
void DriftSliceOctupole_track_local_particle(
|
|
19
|
+
DriftSliceOctupoleData el,
|
|
20
|
+
LocalParticle* part0
|
|
21
|
+
) {
|
|
22
|
+
|
|
23
|
+
double weight = DriftSliceOctupoleData_get_weight(el);
|
|
24
|
+
|
|
25
|
+
#ifndef XSUITE_BACKTRACK
|
|
26
|
+
double const length = weight * DriftSliceOctupoleData_get__parent_length(el); // m
|
|
27
|
+
#else
|
|
28
|
+
double const length = -weight * DriftSliceOctupoleData_get__parent_length(el); // m
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
START_PER_PARTICLE_BLOCK(part0, part);
|
|
32
|
+
Drift_single_particle(part, length);
|
|
33
|
+
END_PER_PARTICLE_BLOCK;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
#endif
|
|
37
|
+
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// This file is generated by _generate_slice_elements_c_code.py
|
|
2
|
+
// Do not edit it directly.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
// copyright ############################### //
|
|
6
|
+
// This file is part of the Xtrack Package. //
|
|
7
|
+
// Copyright (c) CERN, 2023. //
|
|
8
|
+
// ######################################### //
|
|
9
|
+
|
|
10
|
+
#ifndef XTRACK_DRIFT_SLICE_QUADRUPOLE_H
|
|
11
|
+
#define XTRACK_DRIFT_SLICE_QUADRUPOLE_H
|
|
12
|
+
|
|
13
|
+
#include <headers/track.h>
|
|
14
|
+
#include <beam_elements/elements_src/track_drift.h>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
GPUFUN
|
|
18
|
+
void DriftSliceQuadrupole_track_local_particle(
|
|
19
|
+
DriftSliceQuadrupoleData el,
|
|
20
|
+
LocalParticle* part0
|
|
21
|
+
) {
|
|
22
|
+
|
|
23
|
+
double weight = DriftSliceQuadrupoleData_get_weight(el);
|
|
24
|
+
|
|
25
|
+
#ifndef XSUITE_BACKTRACK
|
|
26
|
+
double const length = weight * DriftSliceQuadrupoleData_get__parent_length(el); // m
|
|
27
|
+
#else
|
|
28
|
+
double const length = -weight * DriftSliceQuadrupoleData_get__parent_length(el); // m
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
START_PER_PARTICLE_BLOCK(part0, part);
|
|
32
|
+
Drift_single_particle(part, length);
|
|
33
|
+
END_PER_PARTICLE_BLOCK;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
#endif
|
|
37
|
+
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// This file is generated by _generate_slice_elements_c_code.py
|
|
2
|
+
// Do not edit it directly.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
// copyright ############################### //
|
|
6
|
+
// This file is part of the Xtrack Package. //
|
|
7
|
+
// Copyright (c) CERN, 2023. //
|
|
8
|
+
// ######################################### //
|
|
9
|
+
|
|
10
|
+
#ifndef XTRACK_DRIFT_SLICE_RBEND_H
|
|
11
|
+
#define XTRACK_DRIFT_SLICE_RBEND_H
|
|
12
|
+
|
|
13
|
+
#include <headers/track.h>
|
|
14
|
+
#include <beam_elements/elements_src/track_drift.h>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
GPUFUN
|
|
18
|
+
void DriftSliceRBend_track_local_particle(
|
|
19
|
+
DriftSliceRBendData el,
|
|
20
|
+
LocalParticle* part0
|
|
21
|
+
) {
|
|
22
|
+
|
|
23
|
+
double weight = DriftSliceRBendData_get_weight(el);
|
|
24
|
+
|
|
25
|
+
#ifndef XSUITE_BACKTRACK
|
|
26
|
+
double const length = weight * DriftSliceRBendData_get__parent_length(el); // m
|
|
27
|
+
#else
|
|
28
|
+
double const length = -weight * DriftSliceRBendData_get__parent_length(el); // m
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
START_PER_PARTICLE_BLOCK(part0, part);
|
|
32
|
+
Drift_single_particle(part, length);
|
|
33
|
+
END_PER_PARTICLE_BLOCK;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
#endif
|
|
37
|
+
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// This file is generated by _generate_slice_elements_c_code.py
|
|
2
|
+
// Do not edit it directly.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
// copyright ############################### //
|
|
6
|
+
// This file is part of the Xtrack Package. //
|
|
7
|
+
// Copyright (c) CERN, 2023. //
|
|
8
|
+
// ######################################### //
|
|
9
|
+
|
|
10
|
+
#ifndef XTRACK_DRIFT_SLICE_SEXTUPOLE_H
|
|
11
|
+
#define XTRACK_DRIFT_SLICE_SEXTUPOLE_H
|
|
12
|
+
|
|
13
|
+
#include <headers/track.h>
|
|
14
|
+
#include <beam_elements/elements_src/track_drift.h>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
GPUFUN
|
|
18
|
+
void DriftSliceSextupole_track_local_particle(
|
|
19
|
+
DriftSliceSextupoleData el,
|
|
20
|
+
LocalParticle* part0
|
|
21
|
+
) {
|
|
22
|
+
|
|
23
|
+
double weight = DriftSliceSextupoleData_get_weight(el);
|
|
24
|
+
|
|
25
|
+
#ifndef XSUITE_BACKTRACK
|
|
26
|
+
double const length = weight * DriftSliceSextupoleData_get__parent_length(el); // m
|
|
27
|
+
#else
|
|
28
|
+
double const length = -weight * DriftSliceSextupoleData_get__parent_length(el); // m
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
START_PER_PARTICLE_BLOCK(part0, part);
|
|
32
|
+
Drift_single_particle(part, length);
|
|
33
|
+
END_PER_PARTICLE_BLOCK;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
#endif
|
|
37
|
+
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// This file is generated by _generate_slice_elements_c_code.py
|
|
2
|
+
// Do not edit it directly.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
// copyright ############################### //
|
|
6
|
+
// This file is part of the Xtrack Package. //
|
|
7
|
+
// Copyright (c) CERN, 2023. //
|
|
8
|
+
// ######################################### //
|
|
9
|
+
|
|
10
|
+
#ifndef XTRACK_DRIFT_SLICE_UNIFORMSOLENOID_H
|
|
11
|
+
#define XTRACK_DRIFT_SLICE_UNIFORMSOLENOID_H
|
|
12
|
+
|
|
13
|
+
#include <headers/track.h>
|
|
14
|
+
#include <beam_elements/elements_src/track_drift.h>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
GPUFUN
|
|
18
|
+
void DriftSliceUniformSolenoid_track_local_particle(
|
|
19
|
+
DriftSliceUniformSolenoidData el,
|
|
20
|
+
LocalParticle* part0
|
|
21
|
+
) {
|
|
22
|
+
|
|
23
|
+
double weight = DriftSliceUniformSolenoidData_get_weight(el);
|
|
24
|
+
|
|
25
|
+
#ifndef XSUITE_BACKTRACK
|
|
26
|
+
double const length = weight * DriftSliceUniformSolenoidData_get__parent_length(el); // m
|
|
27
|
+
#else
|
|
28
|
+
double const length = -weight * DriftSliceUniformSolenoidData_get__parent_length(el); // m
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
START_PER_PARTICLE_BLOCK(part0, part);
|
|
32
|
+
Drift_single_particle(part, length);
|
|
33
|
+
END_PER_PARTICLE_BLOCK;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
#endif
|
|
37
|
+
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
// copyright ############################### //
|
|
2
|
+
// This file is part of the Xtrack Package. //
|
|
3
|
+
// Copyright (c) CERN, 2023. //
|
|
4
|
+
// ######################################### //
|
|
5
|
+
|
|
6
|
+
#ifndef XTRACK_MAGNET_H
|
|
7
|
+
#define XTRACK_MAGNET_H
|
|
8
|
+
|
|
9
|
+
#include <headers/track.h>
|
|
10
|
+
#include <beam_elements/elements_src/track_magnet.h>
|
|
11
|
+
#include <beam_elements/elements_src/default_magnet_config.h>
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
GPUFUN
|
|
15
|
+
void Magnet_track_local_particle(
|
|
16
|
+
MagnetData el,
|
|
17
|
+
LocalParticle* part0
|
|
18
|
+
) {
|
|
19
|
+
|
|
20
|
+
track_magnet_particles(
|
|
21
|
+
/*weight*/ 1.0,
|
|
22
|
+
/*part0*/ part0,
|
|
23
|
+
/*length*/ MagnetData_get_length(el),
|
|
24
|
+
/*order*/ MagnetData_get_order(el),
|
|
25
|
+
/*inv_factorial_order*/ MagnetData_get_inv_factorial_order(el),
|
|
26
|
+
/*knl*/ MagnetData_getp1_knl(el, 0),
|
|
27
|
+
/*ksl*/ MagnetData_getp1_ksl(el, 0),
|
|
28
|
+
/*num_multipole_kicks*/ MagnetData_get_num_multipole_kicks(el),
|
|
29
|
+
/*model*/ MagnetData_get_model(el),
|
|
30
|
+
/*default_model*/ BEND_DEFAULT_MODEL,
|
|
31
|
+
/*integrator*/ MagnetData_get_integrator(el),
|
|
32
|
+
/*default_integrator*/ BEND_DEFAULT_INTEGRATOR,
|
|
33
|
+
/*radiation_flag*/ MagnetData_get_radiation_flag(el),
|
|
34
|
+
/*radiation_flag_parent*/ 0, // not used here
|
|
35
|
+
/*radiation_record*/ NULL,
|
|
36
|
+
/*delta_taper*/ MagnetData_get_delta_taper(el),
|
|
37
|
+
/*h*/ MagnetData_get_h(el),
|
|
38
|
+
/*hxl*/ 0.,
|
|
39
|
+
/*k0*/ MagnetData_get_k0(el),
|
|
40
|
+
/*k1*/ MagnetData_get_k1(el),
|
|
41
|
+
/*k2*/ MagnetData_get_k2(el),
|
|
42
|
+
/*k3*/ MagnetData_get_k3(el),
|
|
43
|
+
/*k0s*/ MagnetData_get_k0s(el),
|
|
44
|
+
/*k1s*/ MagnetData_get_k1s(el),
|
|
45
|
+
/*k2s*/ MagnetData_get_k2s(el),
|
|
46
|
+
/*k3s*/ MagnetData_get_k3s(el),
|
|
47
|
+
/*ks*/ 0.,
|
|
48
|
+
/*dks_ds*/ 0.,
|
|
49
|
+
/*rbend_model*/ -1, // not rbend
|
|
50
|
+
/*body_active*/ 1,
|
|
51
|
+
/*edge_entry_active*/ MagnetData_get_edge_entry_active(el),
|
|
52
|
+
/*edge_exit_active*/ MagnetData_get_edge_exit_active(el),
|
|
53
|
+
/*edge_entry_model*/ MagnetData_get_edge_entry_model(el),
|
|
54
|
+
/*edge_exit_model*/ MagnetData_get_edge_exit_model(el),
|
|
55
|
+
/*edge_entry_angle*/ MagnetData_get_edge_entry_angle(el),
|
|
56
|
+
/*edge_exit_angle*/ MagnetData_get_edge_exit_angle(el),
|
|
57
|
+
/*edge_entry_angle_fdown*/MagnetData_get_edge_entry_angle_fdown(el),
|
|
58
|
+
/*edge_exit_angle_fdown*/ MagnetData_get_edge_exit_angle_fdown(el),
|
|
59
|
+
/*edge_entry_fint*/ MagnetData_get_edge_entry_fint(el),
|
|
60
|
+
/*edge_exit_fint*/ MagnetData_get_edge_exit_fint(el),
|
|
61
|
+
/*edge_entry_hgap*/ MagnetData_get_edge_entry_hgap(el),
|
|
62
|
+
/*edge_exit_hgap*/ MagnetData_get_edge_exit_hgap(el)
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
#endif
|
|
@@ -8,33 +8,33 @@
|
|
|
8
8
|
|
|
9
9
|
#include <headers/track.h>
|
|
10
10
|
#include <beam_elements/elements_src/track_magnet.h>
|
|
11
|
+
#include <beam_elements/elements_src/default_magnet_config.h>
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
GPUFUN
|
|
14
15
|
void Multipole_track_local_particle(MultipoleData el, LocalParticle* part0){
|
|
15
16
|
|
|
16
|
-
SynchrotronRadiationRecordData record = NULL;
|
|
17
17
|
int64_t radiation_flag = 0;
|
|
18
18
|
#ifndef XTRACK_MULTIPOLE_NO_SYNRAD
|
|
19
19
|
radiation_flag = MultipoleData_get_radiation_flag(el);
|
|
20
|
-
if (radiation_flag==2){
|
|
21
|
-
record = (SynchrotronRadiationRecordData) MultipoleData_getp_internal_record(el, part0);
|
|
22
|
-
}
|
|
23
20
|
#endif
|
|
24
21
|
|
|
25
22
|
track_magnet_particles(
|
|
23
|
+
/*weight*/ 1.,
|
|
26
24
|
/*part0*/ part0,
|
|
27
25
|
/*length*/ MultipoleData_get_length(el),
|
|
28
26
|
/*order*/ MultipoleData_get_order(el),
|
|
29
27
|
/*inv_factorial_order*/ MultipoleData_get_inv_factorial_order(el),
|
|
30
28
|
/*knl*/ MultipoleData_getp1_knl(el, 0),
|
|
31
29
|
/*ksl*/ MultipoleData_getp1_ksl(el, 0),
|
|
32
|
-
/*factor_knl_ksl*/ 1.,
|
|
33
30
|
/*num_multipole_kicks*/ 1,
|
|
34
31
|
/*model*/ -1, // kick only
|
|
32
|
+
/*default_model*/ 0, // unused
|
|
35
33
|
/*integrator*/ 3, // uniform
|
|
34
|
+
/*default_integrator*/ 3, // unused
|
|
36
35
|
/*radiation_flag*/ radiation_flag,
|
|
37
|
-
/*
|
|
36
|
+
/*radiation_flag_parent*/ 0, // not used here
|
|
37
|
+
/*radiation_record*/ (SynchrotronRadiationRecordData) MultipoleData_getp_internal_record(el, part0),
|
|
38
38
|
/*delta_taper*/ MultipoleData_get_delta_taper(el),
|
|
39
39
|
/*h*/ 0.,
|
|
40
40
|
/*hxl*/ MultipoleData_get_hxl(el),
|
|
@@ -48,6 +48,8 @@ void Multipole_track_local_particle(MultipoleData el, LocalParticle* part0){
|
|
|
48
48
|
/*k3s*/ 0.,
|
|
49
49
|
/*ks*/ 0.,
|
|
50
50
|
/*dks_ds*/ 0.,
|
|
51
|
+
/*rbend_model*/ -1, // not rbend
|
|
52
|
+
/*body_active*/ 1,
|
|
51
53
|
/*edge_entry_active*/ 0,
|
|
52
54
|
/*edge_exit_active*/ 0,
|
|
53
55
|
/*edge_entry_model*/ 0,
|
|
@@ -8,38 +8,29 @@
|
|
|
8
8
|
|
|
9
9
|
#include <headers/track.h>
|
|
10
10
|
#include <beam_elements/elements_src/track_magnet.h>
|
|
11
|
+
#include <beam_elements/elements_src/default_magnet_config.h>
|
|
11
12
|
|
|
12
13
|
GPUFUN
|
|
13
14
|
void Octupole_track_local_particle(
|
|
14
15
|
OctupoleData el,
|
|
15
16
|
LocalParticle* part0
|
|
16
17
|
) {
|
|
17
|
-
int64_t model = OctupoleData_get_model(el);
|
|
18
|
-
int64_t integrator = OctupoleData_get_integrator(el);
|
|
19
|
-
int64_t num_multipole_kicks = OctupoleData_get_num_multipole_kicks(el);
|
|
20
|
-
|
|
21
|
-
if (model == 0) { // adaptive
|
|
22
|
-
model = 6; // drift-kick-drift-expanded
|
|
23
|
-
}
|
|
24
|
-
if (integrator == 0) { // adaptive
|
|
25
|
-
integrator = 3; // uniform
|
|
26
|
-
}
|
|
27
|
-
if (num_multipole_kicks == 0) {
|
|
28
|
-
num_multipole_kicks = 1;
|
|
29
|
-
}
|
|
30
18
|
|
|
31
19
|
track_magnet_particles(
|
|
20
|
+
/*weight*/ 1.,
|
|
32
21
|
/*part0*/ part0,
|
|
33
22
|
/*length*/ OctupoleData_get_length(el),
|
|
34
23
|
/*order*/ OctupoleData_get_order(el),
|
|
35
24
|
/*inv_factorial_order*/ OctupoleData_get_inv_factorial_order(el),
|
|
36
25
|
/*knl*/ OctupoleData_getp1_knl(el, 0),
|
|
37
26
|
/*ksl*/ OctupoleData_getp1_ksl(el, 0),
|
|
38
|
-
/*
|
|
39
|
-
/*
|
|
40
|
-
/*
|
|
41
|
-
/*integrator*/
|
|
27
|
+
/*num_multipole_kicks*/ OctupoleData_get_num_multipole_kicks(el),
|
|
28
|
+
/*model*/ OctupoleData_get_model(el),
|
|
29
|
+
/*default_model*/ OCTUPOLE_DEFAULT_MODEL,
|
|
30
|
+
/*integrator*/ OctupoleData_get_integrator(el),
|
|
31
|
+
/*default_integrator*/ OCTUPOLE_DEFAULT_INTEGRATOR,
|
|
42
32
|
/*radiation_flag*/ OctupoleData_get_radiation_flag(el),
|
|
33
|
+
/*radiation_flag_parent*/ 0, // not used here
|
|
43
34
|
/*radiation_record*/ NULL,
|
|
44
35
|
/*delta_taper*/ OctupoleData_get_delta_taper(el),
|
|
45
36
|
/*h*/ 0.,
|
|
@@ -54,6 +45,8 @@ void Octupole_track_local_particle(
|
|
|
54
45
|
/*k3s*/ OctupoleData_get_k3s(el),
|
|
55
46
|
/*ks*/ 0.,
|
|
56
47
|
/*dks_ds*/ 0.,
|
|
48
|
+
/*rbend_model*/ -1, // not rbend
|
|
49
|
+
/*body_active*/ 1,
|
|
57
50
|
/*edge_entry_active*/ OctupoleData_get_edge_entry_active(el),
|
|
58
51
|
/*edge_exit_active*/ OctupoleData_get_edge_exit_active(el),
|
|
59
52
|
/*edge_entry_model*/ 1,
|
|
@@ -8,38 +8,29 @@
|
|
|
8
8
|
|
|
9
9
|
#include <headers/track.h>
|
|
10
10
|
#include <beam_elements/elements_src/track_magnet.h>
|
|
11
|
+
#include <beam_elements/elements_src/default_magnet_config.h>
|
|
11
12
|
|
|
12
13
|
GPUFUN
|
|
13
14
|
void Quadrupole_track_local_particle(
|
|
14
15
|
QuadrupoleData el,
|
|
15
16
|
LocalParticle* part0
|
|
16
17
|
) {
|
|
17
|
-
int64_t model = QuadrupoleData_get_model(el);
|
|
18
|
-
int64_t integrator = QuadrupoleData_get_integrator(el);
|
|
19
|
-
int64_t num_multipole_kicks = QuadrupoleData_get_num_multipole_kicks(el);
|
|
20
|
-
|
|
21
|
-
if (model == 0) { // adaptive
|
|
22
|
-
model = 4; // mat-kick-mat
|
|
23
|
-
}
|
|
24
|
-
if (integrator == 0) { // adaptive
|
|
25
|
-
integrator = 3; // uniform
|
|
26
|
-
}
|
|
27
|
-
if (num_multipole_kicks == 0) {
|
|
28
|
-
num_multipole_kicks = 1;
|
|
29
|
-
}
|
|
30
18
|
|
|
31
19
|
track_magnet_particles(
|
|
20
|
+
/*weight*/ 1.,
|
|
32
21
|
/*part0*/ part0,
|
|
33
22
|
/*length*/ QuadrupoleData_get_length(el),
|
|
34
23
|
/*order*/ QuadrupoleData_get_order(el),
|
|
35
24
|
/*inv_factorial_order*/ QuadrupoleData_get_inv_factorial_order(el),
|
|
36
25
|
/*knl*/ QuadrupoleData_getp1_knl(el, 0),
|
|
37
26
|
/*ksl*/ QuadrupoleData_getp1_ksl(el, 0),
|
|
38
|
-
/*
|
|
39
|
-
/*
|
|
40
|
-
/*
|
|
41
|
-
/*integrator*/
|
|
27
|
+
/*num_multipole_kicks*/ QuadrupoleData_get_num_multipole_kicks(el),
|
|
28
|
+
/*model*/ QuadrupoleData_get_model(el),
|
|
29
|
+
/*default_model*/ QUADRUPOLE_DEFAULT_MODEL,
|
|
30
|
+
/*integrator*/ QuadrupoleData_get_integrator(el),
|
|
31
|
+
/*default_integrator*/ QUADRUPOLE_DEFAULT_INTEGRATOR,
|
|
42
32
|
/*radiation_flag*/ QuadrupoleData_get_radiation_flag(el),
|
|
33
|
+
/*radiation_flag_parent*/ 0, // not used here
|
|
43
34
|
/*radiation_record*/ NULL,
|
|
44
35
|
/*delta_taper*/ QuadrupoleData_get_delta_taper(el),
|
|
45
36
|
/*h*/ 0.,
|
|
@@ -54,6 +45,8 @@ void Quadrupole_track_local_particle(
|
|
|
54
45
|
/*k3s*/ 0.,
|
|
55
46
|
/*ks*/ 0.,
|
|
56
47
|
/*dks_ds*/ 0.,
|
|
48
|
+
/*rbend_model*/ -1, // not rbend
|
|
49
|
+
/*body_active*/ 1,
|
|
57
50
|
/*edge_entry_active*/ QuadrupoleData_get_edge_entry_active(el),
|
|
58
51
|
/*edge_exit_active*/ QuadrupoleData_get_edge_exit_active(el),
|
|
59
52
|
/*edge_entry_model*/ 1,
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
#include <headers/track.h>
|
|
10
10
|
#include <beam_elements/elements_src/track_magnet.h>
|
|
11
|
+
#include <beam_elements/elements_src/default_magnet_config.h>
|
|
11
12
|
|
|
12
13
|
GPUFUN
|
|
13
14
|
void RBend_track_local_particle(
|
|
@@ -15,30 +16,24 @@ void RBend_track_local_particle(
|
|
|
15
16
|
LocalParticle* part0
|
|
16
17
|
) {
|
|
17
18
|
|
|
18
|
-
double length = RBendData_get_length(el);
|
|
19
|
-
const double h = RBendData_get_h(el);
|
|
20
|
-
const double angle = length * h;
|
|
21
|
-
|
|
22
|
-
const double edge_entry_angle = RBendData_get_edge_entry_angle(el) + angle / 2;
|
|
23
|
-
const double edge_entry_angle_fdown = RBendData_get_edge_entry_angle_fdown(el);
|
|
24
|
-
const double edge_exit_angle = RBendData_get_edge_exit_angle(el) + angle / 2;
|
|
25
|
-
const double edge_exit_angle_fdown = RBendData_get_edge_exit_angle_fdown(el);
|
|
26
|
-
|
|
27
19
|
track_magnet_particles(
|
|
20
|
+
/*weight*/ 1.,
|
|
28
21
|
/*part0*/ part0,
|
|
29
|
-
/*length*/
|
|
22
|
+
/*length*/ RBendData_get_length(el),
|
|
30
23
|
/*order*/ RBendData_get_order(el),
|
|
31
24
|
/*inv_factorial_order*/ RBendData_get_inv_factorial_order(el),
|
|
32
25
|
/*knl*/ RBendData_getp1_knl(el, 0),
|
|
33
26
|
/*ksl*/ RBendData_getp1_ksl(el, 0),
|
|
34
|
-
/*factor_knl_ksl*/ 1.,
|
|
35
27
|
/*num_multipole_kicks*/ RBendData_get_num_multipole_kicks(el),
|
|
36
28
|
/*model*/ RBendData_get_model(el),
|
|
29
|
+
/*default_model*/ RBEND_DEFAULT_MODEL,
|
|
37
30
|
/*integrator*/ RBendData_get_integrator(el),
|
|
31
|
+
/*default_integrator*/ RBEND_DEFAULT_INTEGRATOR,
|
|
38
32
|
/*radiation_flag*/ RBendData_get_radiation_flag(el),
|
|
33
|
+
/*radiation_flag_parent*/ 0, // not used here
|
|
39
34
|
/*radiation_record*/ NULL,
|
|
40
35
|
/*delta_taper*/ RBendData_get_delta_taper(el),
|
|
41
|
-
/*h*/
|
|
36
|
+
/*h*/ RBendData_get_h(el),
|
|
42
37
|
/*hxl*/ 0.,
|
|
43
38
|
/*k0*/ RBendData_get_k0(el),
|
|
44
39
|
/*k1*/ RBendData_get_k1(el),
|
|
@@ -50,18 +45,20 @@ void RBend_track_local_particle(
|
|
|
50
45
|
/*k3s*/ 0.,
|
|
51
46
|
/*ks*/ 0.,
|
|
52
47
|
/*dks_ds*/ 0.,
|
|
48
|
+
/*rbend_model*/ 0, // auto mode, curved body
|
|
49
|
+
/*body_active*/ 1,
|
|
53
50
|
/*edge_entry_active*/ RBendData_get_edge_entry_active(el),
|
|
54
51
|
/*edge_exit_active*/ RBendData_get_edge_exit_active(el),
|
|
55
52
|
/*edge_entry_model*/ RBendData_get_edge_entry_model(el),
|
|
56
53
|
/*edge_exit_model*/ RBendData_get_edge_exit_model(el),
|
|
57
|
-
/*edge_entry_angle*/
|
|
58
|
-
/*edge_exit_angle*/
|
|
59
|
-
/*edge_entry_angle_fdown*/
|
|
60
|
-
/*edge_exit_angle_fdown*/
|
|
54
|
+
/*edge_entry_angle*/ RBendData_get_edge_entry_angle(el),
|
|
55
|
+
/*edge_exit_angle*/ RBendData_get_edge_exit_angle(el),
|
|
56
|
+
/*edge_entry_angle_fdown*/RBendData_get_edge_entry_angle_fdown(el),
|
|
57
|
+
/*edge_exit_angle_fdown*/ RBendData_get_edge_exit_angle_fdown(el),
|
|
61
58
|
/*edge_entry_fint*/ RBendData_get_edge_entry_fint(el),
|
|
62
59
|
/*edge_exit_fint*/ RBendData_get_edge_exit_fint(el),
|
|
63
60
|
/*edge_entry_hgap*/ RBendData_get_edge_entry_hgap(el),
|
|
64
|
-
/*
|
|
61
|
+
/*edge_exit_hgap*/ RBendData_get_edge_exit_hgap(el)
|
|
65
62
|
);
|
|
66
63
|
}
|
|
67
64
|
|