You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Propagating particles all at 0 through the IOTA lattice for ten turns works with default options repository https://github.com/egstern/iota_problem tag fe3b090333a33e83508fc2400ecee8d72a7fda1f. Adding 4 spectator particles to the bunch, all particles are lost after 4 turns tag c9f5332c685abf680aa3106d0173be1a65809f28. Replacing the IOTA lattice with just a FODO allows all 10 turns again da80939f77c76f4f2f482800e6510a3a25afa357.
egstern@WL-146057:~/xyzzy$ git checkout fe3b090333a33e83508fc2400ecee8d72a7fda1f
Note: switching to 'fe3b090333a33e83508fc2400ecee8d72a7fda1f'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
Or undo this operation with:
git switch -
Turn off this advice by setting config variable advice.detachedHead to false
HEAD is now at fe3b090 Initial application to demonstrate problem however this application allows 10 turns of propagation, unlike the original source of the problem.
egstern@WL-146057:~/xyzzy$ python iota.py
Kokkos::OpenMP::initialize WARNING: OMP_PROC_BIND environment variable not set
In general, for best performance with OpenMP 4.0 or better set OMP_PROC_BIND=spread and OMP_PLACES=threads
For best performance with OpenMP 3.1 set OMP_PROC_BIND=true
For unit testing set OMP_PROC_BIND=false
Read lattice, length = 39.95567224300007, 259 elements
RF cavity frequency should be: 2186534.51809303
state: [2.6228316936993862e-15, 5.5271381883598036e-17, 0.0, 0.0, 548.4339817538516, 0.0]
length maybe: 39.95567224300006
RF cavity: rfcavity rfc: circular_aperture_radius=0.02500000000000000139, freq=2.186534518093030677, harmon=4, l=0.05000000000000000278, lag=0, shunt=0, volt=0.0008469999999999999881, aperture_type=circular
energy: 0.9407720459999999
momentum: 0.0685391145988896
gamma: 1.002664472431698
beta: 0.07285411475639192
IOTA lattice Twiss parameters:
beta x: 0.7929530839800709, alpha x: -1.0024078120929111e-05, x tune: 5.300059023235037
disp x: -0.25146056008195367, dprime x: 0.00157192871012215
beta y: 1.5080828234123254, alpha y: -1.1605994300541831e-08, y tune: 5.300036432022202
disp y: 0.0, dprime y: 0.0
eigenvalues:
|z|: 0.9999999999999968 z: (-0.30937135154184836+0.9509413056783071j) tune: 0.300059303636869
|z|: 0.9999999999999968 z: (-0.30937135154184836-0.9509413056783071j) tune: -0.300059303636869
|z|: 1.0000000000000047 z: (0.9980248194126311+0.062820855107158j) tune: 0.010004837607696378
|z|: 1.0000000000000047 z: (0.9980248194126311-0.062820855107158j) tune: -0.010004837607696378
|z|: 1.0000000000000049 z: (-0.3092346918124168+0.9509857545619121j) tune: 0.30003643202220165
|z|: 1.0000000000000049 z: (-0.3092346918124168-0.9509857545619121j) tune: -0.30003643202220165
beam current: 0.1 mA
bunch created with 1000 macroparticles
bunch charge: 285452129459.3449
(1000, 7) , 7000
shape: 1000, 7
mean = [0. 0. 0. 0. 0. 0.]
std = [0. 0. 0. 0. 0. 0.]
Propagator: starting turn 1, final turn 10
Propagator: turn 1/inf., time = 0.112s, macroparticles = (1000) / ()
Propagator: turn 2/inf., time = 0.350s, macroparticles = (1000) / ()
Propagator: turn 3/inf., time = 0.111s, macroparticles = (1000) / ()
Propagator: turn 4/inf., time = 0.206s, macroparticles = (1000) / ()
Propagator: turn 5/inf., time = 0.224s, macroparticles = (1000) / ()
Propagator: turn 6/inf., time = 0.148s, macroparticles = (1000) / ()
Propagator: turn 7/inf., time = 0.204s, macroparticles = (1000) / ()
Propagator: turn 8/inf., time = 0.194s, macroparticles = (1000) / ()
Propagator: turn 9/inf., time = 0.173s, macroparticles = (1000) / ()
Propagator: turn 10/inf., time = 0.165s, macroparticles = (1000) / ()
Propagator: maximum number of turns reached
Propagator: total time = 1.921s
Adding the spectator particles:
egstern@WL-146057:~/xyzzy$ git checkout c9f5332c685abf680aa3106d0173be1a65809f28
Note: switching to 'c9f5332c685abf680aa3106d0173be1a65809f28'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
Or undo this operation with:
git switch -
Turn off this advice by setting config variable advice.detachedHead to false
HEAD is now at c9f5332 Adding 4 spectator particle to the bunch causes full particle loss after 4 turns. These particles are all at location 0 so they should propagate through in any case.
egstern@WL-146057:~/xyzzy$ python iota.py
Kokkos::OpenMP::initialize WARNING: OMP_PROC_BIND environment variable not set
In general, for best performance with OpenMP 4.0 or better set OMP_PROC_BIND=spread and OMP_PLACES=threads
For best performance with OpenMP 3.1 set OMP_PROC_BIND=true
For unit testing set OMP_PROC_BIND=false
Read lattice, length = 39.95567224300007, 259 elements
RF cavity frequency should be: 2186534.51809303
state: [2.6228316936993862e-15, 5.5271381883598036e-17, 0.0, 0.0, 548.4339817538516, 0.0]
length maybe: 39.95567224300006
RF cavity: rfcavity rfc: circular_aperture_radius=0.02500000000000000139, freq=2.186534518093030677, harmon=4, l=0.05000000000000000278, lag=0, shunt=0, volt=0.0008469999999999999881, aperture_type=circular
energy: 0.9407720459999999
momentum: 0.0685391145988896
gamma: 1.002664472431698
beta: 0.07285411475639192
IOTA lattice Twiss parameters:
beta x: 0.7929530839800709, alpha x: -1.0024078120929111e-05, x tune: 5.300059023235037
disp x: -0.25146056008195367, dprime x: 0.00157192871012215
beta y: 1.5080828234123254, alpha y: -1.1605994300541831e-08, y tune: 5.300036432022202
disp y: 0.0, dprime y: 0.0
eigenvalues:
|z|: 0.9999999999999968 z: (-0.30937135154184836+0.9509413056783071j) tune: 0.300059303636869
|z|: 0.9999999999999968 z: (-0.30937135154184836-0.9509413056783071j) tune: -0.300059303636869
|z|: 1.0000000000000047 z: (0.9980248194126311+0.062820855107158j) tune: 0.010004837607696378
|z|: 1.0000000000000047 z: (0.9980248194126311-0.062820855107158j) tune: -0.010004837607696378
|z|: 1.0000000000000049 z: (-0.3092346918124168+0.9509857545619121j) tune: 0.30003643202220165
|z|: 1.0000000000000049 z: (-0.3092346918124168-0.9509857545619121j) tune: -0.30003643202220165
beam current: 0.1 mA
bunch created with 1000 macroparticles
bunch charge: 285452129459.3449
(1000, 7) , 7000
shape: 1000, 7
mean = [0. 0. 0. 0. 0. 0.]
std = [0. 0. 0. 0. 0. 0.]
Propagator: starting turn 1, final turn 10
Propagator: turn 1/inf., time = 0.169s, macroparticles = (1000) / ()
Propagator: turn 2/inf., time = 0.178s, macroparticles = (1000) / ()
Propagator: turn 3/inf., time = 0.205s, macroparticles = (1000) / ()
Propagator: turn 4/inf., time = 0.212s, macroparticles = (1000) / ()
Propagator: turn 5/inf., time = 0.224s, macroparticles = (0) / ()
Propagator: turn 6/inf., time = 0.190s, macroparticles = (0) / ()
Propagator: turn 7/inf., time = 0.214s, macroparticles = (0) / ()
Propagator: turn 8/inf., time = 0.178s, macroparticles = (0) / ()
Propagator: turn 9/inf., time = 0.202s, macroparticles = (0) / ()
Propagator: turn 10/inf., time = 0.178s, macroparticles = (0) / ()
Propagator: maximum number of turns reached
Propagator: total time = 1.988s
Using the simple lattice
egstern@WL-146057:~/xyzzy$ git checkout da80939f77c76f4f2f482800e6510a3a25afa357
Note: switching to 'da80939f77c76f4f2f482800e6510a3a25afa357'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
Or undo this operation with:
git switch -
Turn off this advice by setting config variable advice.detachedHead to false
HEAD is now at da80939 Using a plain FODO lattice instead of the IOTA lattice allows particle propagation through all 10 turns.
egstern@WL-146057:~/xyzzy$ python iota.py
Kokkos::OpenMP::initialize WARNING: OMP_PROC_BIND environment variable not set
In general, for best performance with OpenMP 4.0 or better set OMP_PROC_BIND=spread and OMP_PLACES=threads
For best performance with OpenMP 3.1 set OMP_PROC_BIND=true
For unit testing set OMP_PROC_BIND=false
Read lattice, length = 20.0, 4 elements
RF cavity frequency should be: 4368222.827646561
state: [0.0, 0.0, 0.0, 0.0, 274.5212136181407, 0.0]
length maybe: 20.0
energy: 0.9407720459999999
momentum: 0.0685391145988896
gamma: 1.002664472431698
beta: 0.07285411475639192
IOTA lattice Twiss parameters:
beta x: 30.509802519558907, alpha x: -2.2014182866134835, x tune: 0.23144433247368534
disp x: 0.0, dprime x: 0.0
beta y: 7.550693678962674, alpha y: 0.6684703184610447, y tune: 0.23144433247368548
disp y: 0.0, dprime y: 0.0
eigenvalues:
|z|: 1.0000000000000009 z: (0.11632474679794863+0.993211232962251j) tune: 0.2314443324736854
|z|: 1.0000000000000009 z: (0.11632474679794863-0.993211232962251j) tune: -0.2314443324736854
|z|: 1.0000000000000002 z: (0.11632474679794805+0.9932112329622503j) tune: 0.23144433247368548
|z|: 1.0000000000000002 z: (0.11632474679794805-0.9932112329622503j) tune: -0.23144433247368548
|z|: 1.0 z: (1+0j) tune: 0.0
|z|: 1.0 z: (1+0j) tune: 0.0
beam current: 0.1 mA
bunch created with 1000 macroparticles
bunch charge: 142884408362.99728
(1000, 7) , 7000
shape: 1000, 7
mean = [0. 0. 0. 0. 0. 0.]
std = [0. 0. 0. 0. 0. 0.]
Propagator: starting turn 1, final turn 10
Propagator: turn 1/inf., time = 0.009s, macroparticles = (1000) / ()
Propagator: turn 2/inf., time = 0.007s, macroparticles = (1000) / ()
Propagator: turn 3/inf., time = 0.008s, macroparticles = (1000) / ()
Propagator: turn 4/inf., time = 0.015s, macroparticles = (1000) / ()
Propagator: turn 5/inf., time = 0.010s, macroparticles = (1000) / ()
Propagator: turn 6/inf., time = 0.019s, macroparticles = (1000) / ()
Propagator: turn 7/inf., time = 0.006s, macroparticles = (1000) / ()
Propagator: turn 8/inf., time = 0.005s, macroparticles = (1000) / ()
Propagator: turn 9/inf., time = 0.003s, macroparticles = (1000) / ()
Propagator: turn 10/inf., time = 0.003s, macroparticles = (1000) / ()
Propagator: maximum number of turns reached
Propagator: total time = 0.103s
The text was updated successfully, but these errors were encountered:
Propagating particles all at 0 through the IOTA lattice for ten turns works with default options repository https://github.com/egstern/iota_problem tag fe3b090333a33e83508fc2400ecee8d72a7fda1f. Adding 4 spectator particles to the bunch, all particles are lost after 4 turns tag c9f5332c685abf680aa3106d0173be1a65809f28. Replacing the IOTA lattice with just a FODO allows all 10 turns again da80939f77c76f4f2f482800e6510a3a25afa357.
Adding the spectator particles:
Using the simple lattice
The text was updated successfully, but these errors were encountered: