From d9d2ba6cbf7f3344b8d250040058c2990ad53a92 Mon Sep 17 00:00:00 2001 From: Claudio Scafuri <claudio.scafuri@elettra.eu> Date: Thu, 16 Feb 2023 09:57:52 +0100 Subject: [PATCH] test elettra.m --- boosterubung.py | 11 +++++++--- elettratest.py | 56 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+), 3 deletions(-) create mode 100755 elettratest.py diff --git a/boosterubung.py b/boosterubung.py index 2920b88..720fe81 100755 --- a/boosterubung.py +++ b/boosterubung.py @@ -6,7 +6,12 @@ import matplotlib.pylab as mp ring=at.load_lattice("../../machine/lattice/elettra/booster.mat",energy=2.4e9) refpts = range(len(ring) + 1) -elemdata0, ringdata,elemdata=at.linopt6(ring,refpts) + +#elemdata0, ringdata,elemdata=at.linopt6(ring,refpts) + +#--- lionop needs radiation off +ring.radiation_off() +elemdata0, tune, chrom, elemdata=at.linopt(ring,0.0001,list(refpts)) s_pos = elemdata['s_pos'] beta_x =elemdata['beta'][:,0] @@ -26,8 +31,8 @@ closed_orbit_xp=elemdata['closed_orbit'][:,1] closed_orbit_y=elemdata['closed_orbit'][:,2] closed_orbit_yp=elemdata['closed_orbit'][:,3] -[tuneH,tuneV,tuneL]=ring.get_tune() -[chromH,chromV,chromL]=ring.get_chrom() +#[tuneH,tuneV,tuneL]=ring.get_tune() +#[chromH,chromV,chromL]=ring.get_chrom() e_eV=ring.energy diff --git a/elettratest.py b/elettratest.py new file mode 100755 index 0000000..3a23f63 --- /dev/null +++ b/elettratest.py @@ -0,0 +1,56 @@ +#!/usr/bin/python3 + +import at +import matplotlib.pylab as mp + +ring=at.load_lattice("../../machine/lattice/elettra/elettra.m",energy=2.0e9) + +refpts = range(len(ring) + 1) + +elemdata0, ringdata,elemdata=at.linopt6(ring,refpts) + +#--- lionop needs radiation off +#ring.radiation_off() +#elemdata0, tune, chrom, elemdata=at.linopt(ring,0.0001,list(refpts)) + +s_pos = elemdata['s_pos'] +beta_x =elemdata['beta'][:,0] +beta_y =elemdata['beta'][:,1] + +alpha_x = elemdata['alpha'][:,0] +alpha_y = elemdata['alpha'][:,1] + +dispersion_x=elemdata['dispersion'][:,0] +dispersion_xp=elemdata['dispersion'][:,1] +dispersion_y=elemdata['dispersion'][:,2] +dispersion_yp=elemdata['dispersion'][:,3] + + +closed_orbit_x=elemdata['closed_orbit'][:,0] +closed_orbit_xp=elemdata['closed_orbit'][:,1] +closed_orbit_y=elemdata['closed_orbit'][:,2] +closed_orbit_yp=elemdata['closed_orbit'][:,3] + +#[tuneH,tuneV,tuneL]=ring.get_tune() +#[chromH,chromV,chromL]=ring.get_chrom() +e_eV=ring.energy + + +mp.figure() +mp.subplot(211) +mp.plot(s_pos,beta_x) +mp.plot(s_pos,beta_y) +mp.plot(s_pos,dispersion_x) +mp.xlabel('s [m]') +mp.ylabel('m') +mp.title('beta_x beta_y disp_x' ) + + +mp.subplot(212) +mp.plot(s_pos,closed_orbit_x) +mp.xlabel('s [m]') +mp.ylabel('m') +mp.title('orb_x' ) +mp.show() +print('tune H:',tuneH,'tune V:',tuneV,'tune L:',tuneL) +print('E:', e_eV/1e9,' GeV') -- GitLab