Ejemplo n.º 1
0
#plot_opt_func(lat, tws0)

tw0 = deepcopy(tws0[0])
tw_end = tw0


tw_end.beta_x = 3.00000000313
tw_end.alpha_x = -0.601367997622
tw_end.beta_y = 7.78559521531 
tw_end.alpha_y = 1.5144714708
tw_end.p = 1.e-2



tws_bdc=twiss(lat_bdc, tw_end)
show_optics(tws_bdc, lat_bdc, beam, scale = 0.0)

constr = {}
constr['global'] = {'beta_x':['<',70.], 'beta_y':['<',160.], 'Dx':['<',3.5]}
constr[drift_319] = {'tau':-47.e-4}
constr[drift_318] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
constr[drift_320] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
constr[drift_321] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
constr[drift_322] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
constr[drift_323] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
constr[drift_324] = {'beta_x':['<',50.], 'beta_y':['<',100.], 'Dx':0.0, 'Dxp':0.0}
constr[drift_314] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
constr[drift_315] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
constr[drift_316] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
constr[drift_317] = {'beta_x':['<',50.], 'beta_y':['<',100.]}
Ejemplo n.º 2
0
print 'total deflection: ', tot_angle

tw0.beta_x = 22.0
tw0.alpha_x = -0.8
tw0.beta_y = 7.0
tw0.alpha_y = 1.8

tw0.Dx = 0.0
tw0.Dxp = 0.0
tw0.p = 1.e-2

tws = twiss(lat, tw0, nPoints=100)
print 'R56=', tws[-1].tau

show_optics(tws, lat, beam, scale=0.0)
plt.show()

constr = {m2_bdc: {'tau': -45.e-4, 'Dx': 0.0}}
constr['global'] = {'beta_x': ['<', 40], 'beta_y': ['<', 40]}

var = [qf1_bdc, qf2_bdc, qf3_bdc, qf4_bdc, qd1_bdc, qd2_bdc, qd3_bdc, qd4_bdc]
res = match(lat, constr, var, tw0, max_iter=5000)

tws = twiss(lat, tw0, nPoints=100)
print 'diff:', tws[-1].tau * 1.e4, tws[-1].Dx, tws[-1].Dxp

show_optics(tws, lat, beam, scale=0.0)
plt.show()
'''
# knob calculation
Ejemplo n.º 3
0
for tau in taus:
    constr[m2] = {'Dx':0.0, 'Dxp':0.0, 'tau': tau, 'beta_x':['->',m1], 'beta_y':['->',m1]}
    res = match(lat, constr, var, tw0, max_iter=5000)
    tws=twiss(lat, tw0, nPoints = 100)
    err = np.abs(tws[-1].Dx) + np.abs( tws[-1].Dxp)
    errs.append(err)
    for v in var:
        print v.k1
        quad_tab[v].append(v.k1)
                    
fig = plt.figure()
ax  = fig.add_subplot(111)
labs = []
pls = []
for v in var:
    p, = ax.plot(taus * 1.e4, quad_tab[v])
    pls.append(p)
    labs.append(v.id)
plt.legend(pls, labs)
    
ax2 = ax.twinx()
ax2.plot(taus, errs, 'r--', lw=3)
'''


tws=twiss(lat, tw0, nPoints = 100)

from common import show_optics

show_optics(tws, lat, beam)
Ejemplo n.º 4
0
Archivo: bdc.py Proyecto: iagapov/desy
tw0.beta_x = 22.0
tw0.alpha_x = -0.8
tw0.beta_y = 7.0
tw0.alpha_y = 1.8

tw0.Dx = 0.0
tw0.Dxp = 0.0
tw0.p = 1.e-2



tws=twiss(lat, tw0, nPoints = 100)
print 'R56=', tws[-1].tau

show_optics(tws, lat, beam, scale = 0.0)
plt.show()

constr = {m2_bdc:{'tau': -45.e-4, 'Dx':0.0} }
constr['global'] = {'beta_x':['<',40], 'beta_y':['<',40]}


var = [qf1_bdc, qf2_bdc, qf3_bdc, qf4_bdc, qd1_bdc, qd2_bdc, qd3_bdc, qd4_bdc]
res = match(lat, constr, var, tw0, max_iter=5000)

tws=twiss(lat, tw0, nPoints = 100)
print 'diff:', tws[-1].tau * 1.e4, tws[-1].Dx, tws[-1].Dxp

show_optics(tws, lat, beam, scale = 0.0)
plt.show()
Ejemplo n.º 5
0
#eb.print_params()
#eb.integrals_id()

#plot_opt_func(lat, tws0)

tw0 = deepcopy(tws0[0])
tw_end = tw0

tw_end.beta_x = 3.00000000313
tw_end.alpha_x = -0.601367997622
tw_end.beta_y = 7.78559521531
tw_end.alpha_y = 1.5144714708
tw_end.p = 1.e-2

tws_bdc = twiss(lat_bdc, tw_end)
show_optics(tws_bdc, lat_bdc, beam, scale=0.0)

constr = {}
constr['global'] = {
    'beta_x': ['<', 70.],
    'beta_y': ['<', 160.],
    'Dx': ['<', 3.5]
}
constr[drift_319] = {'tau': -47.e-4}
constr[drift_318] = {'beta_x': ['<', 50.], 'beta_y': ['<', 100.]}
constr[drift_320] = {'beta_x': ['<', 50.], 'beta_y': ['<', 100.]}
constr[drift_321] = {'beta_x': ['<', 50.], 'beta_y': ['<', 100.]}
constr[drift_322] = {'beta_x': ['<', 50.], 'beta_y': ['<', 100.]}
constr[drift_323] = {'beta_x': ['<', 50.], 'beta_y': ['<', 100.]}
constr[drift_324] = {
    'beta_x': ['<', 50.],
Ejemplo n.º 6
0
constr['global'] = {
    'beta_x': ['<', 25.],
    'beta_y': ['<', 25.],
    'Dx': ['<', 1.0],
    'Dxp': ['<', 0.05]
}
constr[drift_398] = {'Dx': 0.0, 'Dxp': 0.0}

constr[end_arc3] = {
    'beta_x': 5.7078928123,
    'alpha_x': -0.426268101809,
    'beta_y': 24.0252733016,
    'alpha_y': 2.08007605731
}

variables = [
    qfa3, qda3, q7na3, q6na3, q9na3, qs_n2a3, qs_n1a3, q0ba3, q2ba3, q3a3,
    q1a3, [tw_end, 'beta_x'], [tw_end, 'beta_y'], [tw_end, 'alpha_x'],
    [tw_end, 'alpha_y']
]

match(lat_arc3, constr, variables, tw_end, max_iter=5000)

for v in variables:
    if v.__class__ == Quadrupole: print v.id, v.k1

tws_arc3 = twiss(lat_arc3, tw_end)
show_optics(tws_arc3, lat_arc3, beam, scale=0.0)

plt.show()