;;;;;;;;;;;;;;;;;;; syori1.pro ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; dir ='E:\25CM\PMIDATA\2009\091012\' ; <== データのあるディレクトリ outdir ='E:\25CM\data\091012\' ; <== 結果を出力するディレクトリ fname ='ir01_*.pmi' ; <== シーケンスファイル名の*指定 dark ='drk00.pmi' ; <== ダークの入ったファイル名 flat ='flat00.pmi' ; <== フラットの入ったファイル名 fdark ='drk00.pmi' ; <== フラット用ダークの入ったファイル名 ;------------------------------------------------------------------------- cd,dir ; <== ディレクトリをファイルのある場所に nkrget,dark,hd,drk ; <== ダークを読み込みます nkrget,flat,hf,flt ; <== フラットを読み込みます nkrget,fdark,hfd,fdrk ; <== フラット用ダークを読み込みます sbtdrk,hf,flt,hfd,fdrk ; <== フラットの準備をします files=findfile(fname) ; <== シーケンスファイル名が読み込まれます n=n_elements(files) ; <== 処理するファイルの数 for i=0, n-1 do begin ; <== endfor と挟まれた部分をi=0からn-1まで繰り返す nkrget,files(i),h,img ; <== データ読み込み sbtdrk,h,img,hd,drk ; <== ダーク引き算 divflt,h,img,hf,flt ; <== フラット補正 tvscl,img ; <== 結果を表示します outfile=strmid(files(i),0, $ ; <== 出力ファイル名(outfile) を strlen(files(i))-3)+'dat' ;  'a_*.pmi'から 'a_*.dat'とします nkrsave,outdir+outfile,h,img ; <== outfile に保存します endfor print,'** syori1 finish! **' ; <== 終わったといいます end ; <== プログラムのおわりです ;;;;;;;;;;;;;;;;;;; end of program ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;