Skip to content
Snippets Groups Projects
Commit 11ec12f3 authored by Alexis GAMELIN's avatar Alexis GAMELIN
Browse files

Add test flags

parent 1fd72e16
No related branches found
No related merge requests found
...@@ -548,6 +548,9 @@ class BeamIonElement(Element): ...@@ -548,6 +548,9 @@ class BeamIonElement(Element):
self.beam_ion_interaction = beam_ion_interaction self.beam_ion_interaction = beam_ion_interaction
self.ion_drift = ion_drift self.ion_drift = ion_drift
self.init_asbefore = True
self.switch_new = True
# interfaces for apertures and montiors # interfaces for apertures and montiors
self.apertures = [] self.apertures = []
self.monitors = [] self.monitors = []
...@@ -641,7 +644,7 @@ class BeamIonElement(Element): ...@@ -641,7 +644,7 @@ class BeamIonElement(Element):
raise ValueError( raise ValueError(
f"The implementation for required beam-ion interaction model \ f"The implementation for required beam-ion interaction model \
{field_model} is not implemented") {field_model} is not implemented")
if isinstance(second_beam, IonParticles): if isinstance(second_beam, IonParticles) and self.switch_new:
sb_mx, sb_my, sb_stdx, sb_stdy = second_beam.mean_std_xy sb_mx, sb_my, sb_stdx, sb_stdy = second_beam.mean_std_xy
else: else:
sb_mx, sb_stdx = ( sb_mx, sb_stdx = (
...@@ -664,7 +667,7 @@ class BeamIonElement(Element): ...@@ -664,7 +667,7 @@ class BeamIonElement(Element):
) )
elif field_model == "strong": elif field_model == "strong":
if isinstance(first_beam, IonParticles): if isinstance(first_beam, IonParticles) and self.switch_new:
fb_mx, fb_my = first_beam.mean_xy fb_mx, fb_my = first_beam.mean_xy
else: else:
fb_mx, fb_my = ( fb_mx, fb_my = (
...@@ -789,6 +792,10 @@ class BeamIonElement(Element): ...@@ -789,6 +792,10 @@ class BeamIonElement(Element):
if not empty_bucket and self.generate_ions: if not empty_bucket and self.generate_ions:
self.generate_new_ions(electron_bunch=electron_bunch) self.generate_new_ions(electron_bunch=electron_bunch)
if self.init_asbefore:
self.init_asbefore = False
self.ion_beam["charge"][0] = self.ion_beam["charge"][1]
for aperture in self.apertures: for aperture in self.apertures:
aperture.track(self.ion_beam) aperture.track(self.ion_beam)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment