From 21c9357a189fc2964541ec731c77d52f9ce9e115 Mon Sep 17 00:00:00 2001 From: voulot_d Date: Thu, 23 Jun 2016 15:01:05 +0200 Subject: [PATCH] Startup --- script/Emittance/emitt_dv.py | 45 ++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100755 script/Emittance/emitt_dv.py diff --git a/script/Emittance/emitt_dv.py b/script/Emittance/emitt_dv.py new file mode 100755 index 0000000..07e9b6b --- /dev/null +++ b/script/Emittance/emitt_dv.py @@ -0,0 +1,45 @@ +################################################################################ +# s = eps * [[beta, -alpha], +# [-alpha, gamma]] +# R = R(1)->(2) +# s2 = R * s1 * RT +# +# s2_11 = s1_11 * R11**2 + 2 * s1_12 * R11 * R12 + s1_22 * R12**2 +# +# A = [[R11,1**2, 2 * R11,1 * R12,1, R12,1**2], +# [R11,2**2, 2 * R11,2 * R12,2, R12,2**2], +# ... +# [R11,n**2, 2 * R11,n * R12,n, R12,n**2], +# B = [s2_11,1, +# s2_11,2, +# ... +# s2_11,n] +# X = [s1_11, +# s1_12, +# s1_22] +# +# A * X = B +################################################################################ +import numpy as np + +n = 5 +bet = [1.74450, 1.34220, 0.99999, 0.71557, 0.48651] +eps = 25.0E-6 # m.rad +R11 = [ 0.85800, 0.71000, 0.56400, 0.42000, 0.27900] +R12 = [ 0.44100, 0.41900, 0.39800, 0.37600, 0.35500] + +#A = [[1.0,2.0],[3.0,4.0],[2.0,3.0]] +#B = [[-1.0],[-1.0],[-1.2]] +#X = [[1.0],[-1.0]] + +A = [] +B = [] +for i in range(0, n): + A.append([R11[i]**2, 2 * R11[i] * R12[i], R12[i]**2]) + B.append([bet[i] * eps]) + +A = np.matrix(A) +B = np.matrix(B) +X = np.linalg.inv(A.T.dot(A)).dot(A.T).dot(B) + +print(X)