subroutine set_steering(lat, name, kick) use bmad use muon_mod use parameters_bmad implicit none type (lat_struct), target::lat type (ele_struct), pointer:: ele type (ele_pointer_struct), allocatable :: eles(:) integer i,ib, n_loc logical err/.false./ character*16 name(:) real(rp) kick(:) do i=1,size(kick) if(name(i) == ' ')cycle call lat_ele_locator(trim(name(i)),lat,eles,n_loc,err) if(n_loc == 0)cycle ! if(err)cycle ele => eles(1)%ele ele%value(kick$) = kick(i) print '(a4,a16,a2,es12.4,a16,a16,a16,es12.4)','Set ',trim(name(i)),': ',kick(i),' ele%name = ', ele%name, ' ele%value(kick$) = ',ele%value(kick$) end do return end subroutine set_steering