Tune Correction

Moderators: cyao, michael_borland

Post Reply
marlibgin
Posts: 54
Joined: 15 Mar 2011, 12:43

Tune Correction

Post by marlibgin » 06 Nov 2015, 05:27

Hi all,
I am correcting the tune in an elegant Diamond model, and was warned that in the manual use of ONLY TWO quad families is recommended.
Not knowing that I have been "happily" using all the 6 families we utilize in the real machine, like this:

&correct_tunes
quadrupoles = "Q1D Q2D Q3D Q3B Q2B Q1B",
n_iterations = 20,
change_defined_values = 1,
tune_x = <nux>
tune_y = <nuy>
&end

elegant seems to cope quite well with it, to the point that I had never realized this limitation.
The output seems to be consistent with the demanded action, and a (2x6) response matrix + its inverse are computed:

Computing tune influence matrix for all named quadrupoles.
6 instances of Q1D found
10 instances of Q2D found
10 instances of Q3D found
36 instances of Q3B found
36 instances of Q2B found
36 instances of Q1B found

family dNUx/dK1 dNUy/dK1
Q1D: 2.767659841836205e+00 -2.164981056828040e+00
Q2D: 1.018815337729133e+01 -4.511958898097328e+00
Q3D: 2.242069211361089e+00 -4.165355398602401e+00
Q3B: 8.453112974746261e+00 -1.290344052327592e+01
Q2B: 3.531437639160008e+01 -1.474791226255616e+01
Q1B: 1.130394033447765e+01 -1.470227659855234e+01

family dK1/dNUx dK1/dNUy
Q1D: -8.125000000000000e-01 -3.125000000000000e-01
Q2D: -4.687500000000000e-02 9.375000000000000e-02
Q3D: 6.250000000000000e-01 1.250000000000000e-01
Q3B: -3.125000000000000e-02 -6.250000000000000e-02
Q2B: 1.015625000000000e-01 1.562500000000000e-02
Q1B: -1.875000000000000e-01 0.000000000000000e+00


all six families are varied separately, as I 'd expect. So, what is really happening? Is it so wrong to use >2 quad families?

Thanks
Marco

michael_borland
Posts: 1933
Joined: 19 May 2008, 09:33
Location: Argonne National Laboratory
Contact:

Re: Tune Correction

Post by michael_borland » 06 Nov 2015, 16:36

Marco,

You are right, there is no real restriction on the number of families. However, listing more that two could give some odd results. For example, if I had 4 instances of Q1, called Q1A, Q1B, Q1C, and Q1D and used

Code: Select all

quadrupoles = "Q1A Q1B Q1C Q1D Q2"
Q1[ABCD] wouldn't be changed by the same amount, even though they have identical parameters and the lattice functions are the same.

A better way is

Code: Select all

quadrupoles = "Q1[ABCD] Q2"
which indicates that the quadrupoles are to be changed as families.

--Michael

marlibgin
Posts: 54
Joined: 15 Mar 2011, 12:43

Re: Tune Correction

Post by marlibgin » 16 Nov 2015, 09:35

Thanks Michael
I see the point, but I am still not sure what "odd" means. Our machine has 6 families of quads used for tune corrections
Q1D Q2D Q3D Q1B Q2B Q3B
and indeed the way we correct is based on a 6x2 response matrix, which is what is simulated in AT for example.
So if I want to mimic my machine I should use 6 families. Grouping them as suggested in the manual seems a bit
artificial in my case, if you see what I mean.

michael_borland
Posts: 1933
Joined: 19 May 2008, 09:33
Location: Argonne National Laboratory
Contact:

Re: Tune Correction

Post by michael_borland » 16 Nov 2015, 09:42

Marco,

By "odd" I meant that it may not satisfy any particularly useful relationship among the various families. What I tend to do instead is to use the optimization feature in elegant to perform tune correction with other constraints, e.g., keeping the dispersion matched.

If you use something like "Q1* Q2*", you'll at least get the same delta K1 in each member of a given group (Q1* or Q2* in this example).

Perhaps we need to improve this feature in elegant. Do you know if AT applies additional constraints?

--Michael

Post Reply