function bendalign(sx,sy); %locate bend magnets in AO and return alignment to zero %function bendalign(sx,sy); sx and sy are sigma values for randn; %units are meters if nargin<2 disp('Error in bendalign - must supply alignment spreads'); return end global THERING AO = getao; ATindx=[]; %indices of bend magnets mx=[]; my=[]; len=findspos(THERING,length(THERING)+1); for ii=1:length(AO) if strcmp(lower(AO{ii}.FamilyType),'bend') indx=AO{ii}.AT.ATIndex; %assign random alignment error to first magnet mx=[mx; sx*randn]; my=[my; sy*randn]; % assign random error to rest of family tol=1e-6; %tolerance for spacing between magnets for jj=2:length(indx) %check for split magnets if AO{ii}.Position(jj)-THERING{indx(jj)}.Length - AO{ii}.Position(jj-1)