; CPICK.BAT : pick particles using a coordinate doc file ; ; Assumes micrograph is in Spider format ; Coordinates are the CENTER of the particle window, ; ; THIS VERSION ASSUMES COORDS DOC FILE HAS GOOD PARTICLES ONLY, WITH ; COLUMNS: X, Y, ParticleNumber (see goodcoords.py sndc good -> coords) ;[fn] = 1 ; file number ; ----- Input files ----- FR L [filenums]../filenums ; file numbers FR L [params]../params ; the parameter file FR L [mic]../Micrographs/mic{****[fn]} ; input micrograph FR L [coords]cpick/coords{****[fn]} ; doc file with x,y,particle_numbers ;FR L ;[good]good/ngood{****[fn]} ; good particle numbers FR L [noise]noise ; input noise file for normalizing histograms ; ----- Output files ----- FR L [win]xwin/ser ; output particle images ; ---------- END BATCH FILE HEADER ------------------- FR G [_tmpmic]_11 ; temporary memory for micrograph FR G [_noise]_12 FR G [_mask]_13 ; get window size from parameter file UD 17,[winsize] [params] CP [noise] [_noise] [radius]=INT([winsize]/2)-2 MO _14 ; mask [winsize],[winsize] C [radius] AR _14 ; mask [_mask] (p1-1)*(-1) [half] = INT([winsize]/2) + 1 ; Loop over micrographs ----------------------------------- UD N,x20 [filenums] DO LB1 x11 = 1,x20 UD x11,[fn] ; [fn] is the file number [filenums] VM echo "working on [mic]" CP [mic] [_tmpmic] UD N,[nparticles] [coords] ; Loop over particles ----------------------------------- DO LB2 x11 = 1,[nparticles] UD IC,x11,[xc],[yc],[p] ; xc,yc = window center [coords] [x] = [xc]-[half] ; start coord is upper left corner [y] = [yc]-[half] WI [mic] _9 [winsize],[winsize] [x],[y] RA _9 _2 CE FIT [_noise] _2 [_mask] [win]{******[p]} LB2 UD ICE [coords] LB1 EN D