Skip to content

Commit c7b8a12

Browse files
committed
Fix in twiss adaptive steps
1 parent 863ef75 commit c7b8a12

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

xtrack/twiss.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2228,15 +2228,23 @@ def _find_periodic_solution(line, particle_on_co, particle_ref, method,
22282228
gemitt_y = nemitt_y/part_on_co._xobject.beta0[0]/part_on_co._xobject.gamma0[0]
22292229
betx_at_start = W[0, 0]**2 + W[0, 1]**2
22302230
bety_at_start = W[2, 2]**2 + W[2, 3]**2
2231+
gamx_at_start = W[1, 0]**2 + W[1, 1]**2
2232+
gamy_at_start = W[3, 2]**2 + W[3, 3]**2
22312233
sigma_x_start = np.sqrt(betx_at_start * gemitt_x)
22322234
sigma_y_start = np.sqrt(bety_at_start * gemitt_y)
2235+
sigma_px_start = np.sqrt(gamx_at_start * gemitt_x)
2236+
sigma_py_start = np.sqrt(gamy_at_start * gemitt_y)
22332237

22342238
if ((steps_r_matrix['dx'] < 0.3 * sigma_x_start)
2235-
and (steps_r_matrix['dy'] < 0.3 * sigma_y_start)):
2239+
and (steps_r_matrix['dy'] < 0.3 * sigma_y_start)
2240+
and (steps_r_matrix['dpx'] < 0.3 * sigma_px_start)
2241+
and (steps_r_matrix['dpy'] < 0.3 * sigma_py_start)):
22362242
break # sufficient accuracy
22372243
else:
22382244
steps_r_matrix['dx'] = 0.01 * sigma_x_start
22392245
steps_r_matrix['dy'] = 0.01 * sigma_y_start
2246+
steps_r_matrix['dpx'] = 0.01 * sigma_px_start
2247+
steps_r_matrix['dpy'] = 0.01 * sigma_py_start
22402248
steps_r_matrix['adapted'] = True
22412249

22422250
# Check on R matrix

0 commit comments

Comments
 (0)