Dynamic aperture scan in x direction with a y offset
Moderators: cyao, michael_borland
Dynamic aperture scan in x direction with a y offset
Hello, Michael, and other experts,
Usually we make dynamic aperture line survey as shown in follow figure. And we can use like follow words to get the dynamic aperture for the line (X= n*sigma_x, Y=n*sigma_y), (X= n*sigma_x, Y=n*sigma_y)
and (X= 0*sigma_x, Y=n*sigma_y).
&find_aperture
output = "%s.aper",
mode = nlines,
n_lines = 41,
xmin = 0.001,
xmax = 0.001,
ymin = 0
ymax = 0.0005,
nx = 21,
ny = 11,
n_splits = 5,
desired_resolution = 0.00001,
verbosity = 1
&end
But for the line (X= n*sigma_x, Y=1*sigma_y), I don't know how to make the dynamic aperture scan.
And when I make a scan with the line (X= n*sigma_x, Y=0*sigma_y), I can only get a result of NO 3 of follow figures which is not enough. Thank you.
Guohui
Usually we make dynamic aperture line survey as shown in follow figure. And we can use like follow words to get the dynamic aperture for the line (X= n*sigma_x, Y=n*sigma_y), (X= n*sigma_x, Y=n*sigma_y)
and (X= 0*sigma_x, Y=n*sigma_y).
&find_aperture
output = "%s.aper",
mode = nlines,
n_lines = 41,
xmin = 0.001,
xmax = 0.001,
ymin = 0
ymax = 0.0005,
nx = 21,
ny = 11,
n_splits = 5,
desired_resolution = 0.00001,
verbosity = 1
&end
But for the line (X= n*sigma_x, Y=1*sigma_y), I don't know how to make the dynamic aperture scan.
And when I make a scan with the line (X= n*sigma_x, Y=0*sigma_y), I can only get a result of NO 3 of follow figures which is not enough. Thank you.
Guohui

 Posts: 1832
 Joined: 19 May 2008, 09:33
 Location: Argonne National Laboratory
 Contact:
Re: Dynamic aperture scan in x direction with a y offset
Guohui,
If I understand correctly, you want to set the initial y coordinate to a fixed value and scan the x coordinate to find the aperture. You can do this by simply creating a line of particles in phase space, e.g.,
In addition, in the &run_setup command, you should request the acceptance output:
The .acc file will contain the initial coordinates of all particles that survive tracking, which is the aperture in this case.
Michael
If I understand correctly, you want to set the initial y coordinate to a fixed value and scan the x coordinate to find the aperture. You can do this by simply creating a line of particles in phase space, e.g.,
Code: Select all
&bunched_beam
n_particles_per_bunch = 100,
bunch = %s.bun,
! 20mm horizontal size
beta_x = 2e300,
emit_x = 2e304,
! Zero vertical size
beta_y = 1,
emit_y = 0,
! 1mm vertical offset
centroid[2] = 1e3
! Distribution is a line in xx' and yy' phase space
distribution_type[0] = 2*"line"
&end
Code: Select all
&run_setup
...
acceptance = %s.acc
...
&end
Michael
Re: Dynamic aperture scan in x direction with a y offset

Last edited by gwei on 25 Jan 2017, 10:43, edited 1 time in total.
Re: Dynamic aperture scan in x direction with a y offset
Thank you, Michaelmichael_borland wrote:Guohui,
If I understand correctly, you want to set the initial y coordinate to a fixed value and scan the x coordinate to find the aperture. You can do this by simply creating a line of particles in phase space, e.g.,MichaelCode: Select all
&bunched_beam n_particles_per_bunch = 100, bunch = %s.bun, ! 20mm horizontal size beta_x = 2e300, emit_x = 2e304, ! Zero vertical size beta_y = 1, emit_y = 0, ! 1mm vertical offset centroid[2] = 1e3 ! Distribution is a line in xx' and yy' phase space distribution_type[0] = 2*"line" &end
And what's the meaning of ' centroid[2] = 1e3 ' ? a y offset=0.001 m ?
In your definition of centroid, it is
double centroid[6] = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
And I guess {0.0, 0.0, 0.0, 0.0, 0.0, 0.0} is values in (x, x’, y, y’, t, p)
Is it right?
Best wishes
Guohui

 Posts: 1832
 Joined: 19 May 2008, 09:33
 Location: Argonne National Laboratory
 Contact:
Re: Dynamic aperture scan in x direction with a y offset
Guohui,
Michael
Yes, that's all correct, except centroid[4] and centroid[5], which are in units of meters and fractional momentum deviation, respectively.And what's the meaning of ' centroid[2] = 1e3 ' ? a y offset=0.001 m ?
In your definition of centroid, it is
double centroid[6] = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
And I guess {0.0, 0.0, 0.0, 0.0, 0.0, 0.0} is values in (x, x’, y, y’, t, p)
Is it right?
Michael
Re: Dynamic aperture scan in x direction with a y offset
So centroid[0] means x, centroid[1] means x', centroid[2] means y, centroid[3] means y', centroid[4] means t, centroid[5] means p.michael_borland wrote:Guohui,
Yes, that's all correct, except centroid[4] and centroid[5], which are in units of meters and fractional momentum deviation, respectively.And what's the meaning of ' centroid[2] = 1e3 ' ? a y offset=0.001 m ?
In your definition of centroid, it is
double centroid[6] = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
And I guess {0.0, 0.0, 0.0, 0.0, 0.0, 0.0} is values in (x, x’, y, y’, t, p)
Is it right?
Michael
if we want a centroid offset of x = 0.001 m and y = 0.001 m ,
we should write : centroid[0, 2] ={1e3, 1e3}. Is it right?

 Posts: 1832
 Joined: 19 May 2008, 09:33
 Location: Argonne National Laboratory
 Contact:
Re: Dynamic aperture scan in x direction with a y offset
Guohui,
or
Michael
That's not quite right. centroid[4] is distance traveled, not time, while centroid[5] is (p<p>)/<p>, not p itself. The syntax for changing several centroids isSo centroid[0] means x, centroid[1] means x', centroid[2] means y, centroid[3] means y', centroid[4] means t, centroid[5] means p.
if we want a centroid offset of x = 0.001 m and y = 0.001 m ,
we should write : centroid[0, 2] ={1e3, 1e3}. Is it right?
Code: Select all
centroid[0] = 1e3
centroid[2] = 1e3,
Code: Select all
centroid[0] = 1e3, 0, 1e3
Re: Dynamic aperture scan in x direction with a y offset
Thank you very much! Michaelmichael_borland wrote:Guohui,
That's not quite right. centroid[4] is distance traveled, not time, while centroid[5] is (p<p>)/<p>, not p itself. The syntax for changing several centroids isSo centroid[0] means x, centroid[1] means x', centroid[2] means y, centroid[3] means y', centroid[4] means t, centroid[5] means p.
if we want a centroid offset of x = 0.001 m and y = 0.001 m ,
we should write : centroid[0, 2] ={1e3, 1e3}. Is it right?orCode: Select all
centroid[0] = 1e3 centroid[2] = 1e3,
MichaelCode: Select all
centroid[0] = 1e3, 0, 1e3
Guohui