use PDL::DiskCache; ### Set up and execute mask run @datafiles = <00-data/*> @maskfiles = map { ($a=$_)=~s/00-data/01-mask/; $a } @datafiles; `rm -rf 01-mask; mkdir 01-mask`; $data = diskcache(\@datafiles,{ro=>1}); $mask = diskcache(\@maskfiles,{rw=>1}); $mask = frag_detect($data, {diag=>2,masks=>$mask,thresh=>[66,22]}); ### Set up and execute ID run @idfiles = map { ($a=$_)=~s/00-data/02-id/; $a } @datafiles; `rm -rf 02-id; mkdir 02-id`; $id = diskcache(\@idfiles,{rw=>1}); $ids = frag_id($data,$mask,{method=>'downhill',diag=>1,ids=>$id}); ### Set up and execute association run @assocfiles = map { ($a=$_)=~s/00-data/03-assoc/; $a } @datafiles; `rm -rf 03-assoc; mkdir 03-assoc`; $assoc = diskcache(\@assocfiles,{rw=>1}); $assoc = frag_assoc($ids,{assoc=>$assoc, monitor=>1, verbose=>1}); (tied @$assoc)->purge(-1); @tabfiles = map { ($a=$_)=~s/00-data/04-tab/; $a}@datafiles; `rm -rf 04-tab; mkdir 04-tab`; $tab=diskcache(\@tabfiles,{rw=>1}); $tabs = frag_tabulate($assoc,$data,{verbose=>1,tab=>$tab}); wfits($tabs,'tabs.fits'); (tied @$tab)->purge(-1); $hist = frag_hist($tabs,$tab,{verbose=>1,sep=>6,ratio=>0.5}); $hist->wfits('hist.fits');