subroutine Track_a_ray_orbit use madx_ptc_module use pointer_lattice implicit none type(layout), pointer :: ALS REAL(dp) X0(6),X(6),R TYPE(INTERNAL_STATE) STATE integer i als=>M_U%start state=default WRITE(6,*) " " WRITE(6,*) " GIVE INITIAL VALUE (ONE NUMBER) FOR X(1:6)= R " READ(5,*) R X0(1:6)=R WRITE(6,*) " Tracking " als%t%ORBIT_LATTICE%ORBIT_USE_ORBIT_UNITS=my_false X=X0 do i=1,als%t%ORBIT_LATTICE%ORBIT_N_NODE call ORBIT_TRACK_NODE(i,x,state) if(x(1)> 1000.d0) exit enddo write(6,*) x X=X0 CALL TRACK_PROBE_X(ALS,X,STATE,FIBRE1=1) write(6,*) x end subroutine Track_a_ray_orbit