matching phase advance and tunes
Hello,
I am learning to use Elegant to do beta matching. One of the requirements are phase advance between two elements, like(FODO: LINE = (M1,QFh, D2, SF, D3, B0, D1,QDh,QDh, D2, SD, D3, B0, D1, QFh,M2))
I want to use QFh and QDh to adjust the phase advance between(M1,M2--mark) to be pi/3.
I used two different processes,one is:correct_tunes and the other is optimization_term(term = "M2#1.nux M1#1.nux - abs 0.1666666666666667 - sqr ", weight=1.0 )
I think the optimized results is same,but the output is not,is there something wrong in my *.ele file?
&optimization_setup
mode = "minimize",
method = "simplex",
tolerance = 1e-12,
verbose = 0,
log_file = /dev/tty,
n_evaluations = 1500,
n_passes = 2,
n_restarts = 5,
output_sparsing_factor = 10
&end
&optimization_term
term = "M1#1.betax 8.117104E+01 / 1 .0000001 sene", weight=1.0
&end
&optimization_term
term = "M1#1.betay 2.744211E+01 / 1 .0000001 sene", weight=1.0
&end
&correct_tunes
quadrupoles = "QFh QDh",
tune_x ="(60 360 /)", tune_y="(60 360 /)",
n_iterations = 10,
change_defined_values = 1,
tolerance = 0.00000001
&end
!&optimization_term
! term = "M2#1.nux M1#1.nux - abs 0.1666666666666667 - sqr ", weight=1.0
!
!&end
!
!&optimization_term
! term = "M2#1.nuy M1#1.nuy - abs 0.1666666666666667 - sqr ", weight=1.0
!&end
&optimization_variable
name = QFh, item=K1, lower_limit=0, upper_limit=0.05, step_size = 0.00001
&end
&optimization_variable
name = QDh, item=K1, lower_limit=-0.05, upper_limit=0, step_size = 0.00001
&end
matching phase advance and tunes
Moderators: cyao, michael_borland
-
- Posts: 1933
- Joined: 19 May 2008, 09:33
- Location: Argonne National Laboratory
- Contact:
Re: matching phase advance and tunes
The differences are that for the optimization, you have limits on the quadrupole strengths plus additional constraints (maximum beta functions). The attached file shows two equivalent results using the two methods.
--Michael
--Michael
- Attachments
-
- 2015-11-24.zip
- (9.31 KiB) Downloaded 542 times