#------------------------------------------------------------- # NGC2403, Raster, Combining all data - Nov 07 to Jan 08 runs #------------------------------------------------------------- # Data for 20071124 all have Tsys>500 but is generally good, included in first cube tests. # Data for 20080111 is of poor quality (poor Tau, Tsys varies quickly). Included in first cube tests. ------------------------------------------------------------------------------- INITIAL REDUCTION USING NEAREST SPREAD: # Full cube for all observations up to January 2008 (12.5 MSBs) makecube in="a200*_flagspike.sdf" autogrid=true crota=323 pixsize=7.2761 sparse=false spread='nearest' specbounds=\"-260.0 530.0\" out=ngc2403_combined reset # Projection parameters used: # CRPIX1 = 64.9775510188192 # CRPIX2 = 42.5734694004059 # CRVAL1 = 114.214166666667 ( RA = 7:36:51.4 ) # CRVAL2 = 65.6025 ( Dec = 65:36:09 ) # CDELT1 = -0.00202113893296984 ( -7.3 arcsec ) # CDELT2 = 0.00202113893296984 ( 7.3 arcsec ) # CROTA2 = 323 # # Output cube pixel bounds: ( -63:65, -41:42, -933:931 ) # Output cube WCS bounds: # Right ascension: 7:35:21.1 -> 7:38:21.5 # Declination: 65:27:22 -> 65:44:55 # Optical velocity (USB): -260.0428 -> 530.2007 km/s # # # WARNING: Tsys conversion factor has changed from 3.09812257335234e-06 to # 3.09843982321546e-06 (0.0102400681578872 %) in file a20080106_00042_flagspike mfittrend ngc2403_combined ranges=\"-260 -50 300 530\" order=3 axis=3 out=ngc2403_combined_base3 # Fitting NDF Axis 3, using ranges in current co-ordinate Frame (pixels): # -259.6202 : -50.28241 km/s (-933 : -438) # 299.6891 : 529.7759 km/s (388 : 930) sub ngc2403_combined ngc2403_combined_base3 ngc2403_combined_sub3 compave ngc2403_combined_sub3 ngc2403_combined_sub3_20kms compress="[1,1,47]" stats 'ngc2403_combined_sub3_20kms(~35,~35,:)' | grep Standard # Standard deviation : 0.017879 stats 'ngc2403_combined_sub3_20kms(~45,~45,:)' | grep Standard # Standard deviation : 0.0179736 stats 'ngc2403_combined_sub3_20kms(~45,~45,-260.0:-50.0)' | grep Standard # Standard deviation : 0.0158304 stats 'ngc2403_combined_sub3_20kms(~45,~45,300.0:530.0)' | grep Standard # Standard deviation : 0.0130786 # Preliminary map is quite promissing, rms is good, line is present, it is even possible to see the "spider" pattern in the channel maps. ------------------------------------------------------------------------------- NOW SINCSINC: makecube in="a*" autogrid=true crota=323 pixsize=7.2761 sparse=false spread='sincsinc' params='[1,2]' specbounds=\"-260.0 530.0\" out=ngc2403_sincsinc reset # Projection parameters used: # CRPIX1 = 64.9775510188192 # CRPIX2 = 42.5734694004059 # CRVAL1 = 114.214166666667 ( RA = 7:36:51.4 ) # CRVAL2 = 65.6025 ( Dec = 65:36:09 ) # CDELT1 = -0.00202113893296984 ( -7.3 arcsec ) # CDELT2 = 0.00202113893296984 ( 7.3 arcsec ) # CROTA2 = 323 # # Output cube pixel bounds: ( -63:65, -41:42, -933:931 ) # Output cube WCS bounds: # Right ascension: 7:35:21.1 -> 7:38:21.5 # Declination: 65:27:22 -> 65:44:55 # Optical velocity (USB): -260.0428 -> 530.2007 km/s # # WARNING: Tsys conversion factor has changed from 3.09812257335234e-06 to # 3.09843982321546e-06 (0.0102400681578872 %) in file a20080106_00042_flagspike # WARNING: Cannot create output Tsys values. chpix in=ngc2403_sincsinc out=ngc2403_sincsinc_spikebad_temp section=\":,:,-494:-485\" newval=bad chpix in=ngc2403_sincsinc_spikebad_temp.sdf out=ngc2403_sincsinc_spikebad section=\":,:,-448:-460\" newval=bad ndfcopy in=ngc2403_sincsinc_spikebad'(-38:45,-24:24,)' out=ngc2403_sincsinc_trim mfittrend ngc2403_sincsinc_trim ranges=\"-260 -50 300 530\" order=3 axis=3 out=ngc2403_sincsinc_trim_base3 # Fitting NDF Axis 3, using ranges in current co-ordinate Frame (pixels): # -259.6202 : -50.28241 km/s (-933 : -438) # 299.6891 : 529.7759 km/s (388 : 930) sub ngc2403_sincsinc_trim ngc2403_sincsinc_trim_base3 ngc2403_sincsinc_trim_sub3 compave ngc2403_sincsinc_trim_sub3 ngc2403_sincsinc_trim_sub3_20kms compress="[1,1,47]" stats 'ngc2403_sincsinc_trim_sub3_20kms(~35,~35,:)' | grep Standard # Standard deviation : 0.0163038 stats 'ngc2403_sincsinc_trim_sub3_20kms(~45,~45,:)' | grep Standard # Standard deviation : 0.0163458 stats 'ngc2403_sincsinc_trim_sub3_20kms(~45,~45,-260.0:-50.0)' | grep Standard # Standard deviation : 0.0142043 stats 'ngc2403_sincsinc_trim_sub3_20kms(~45,~45,300.0:530.0)' | grep Standard # Standard deviation : 0.0117815 ------------------------------------------------------------------------------- BASELINE MASK PRODUCTION: # First produce a smoothed cube to identify the line and make masks with mfittrend block in=ngc2403_sincsinc_trim out=ngc2403_sincsinc_trim_vsmooth 'axes=[1,3] box=[1,25]' block in=ngc2403_sincsinc_trim_vsmooth out=ngc2403_sincsinc_trim_smooth 'axes=[1,2] box=[3,3]' mfittrend in=ngc2403_sincsinc_trim_smooth axis=3 order=3 out=ngc2403_sincsinc_trim_smooth_base3 auto mask=ngc2403_sincsinc_trim_smooth_basemsk3 method=single variance=false subtract=false 'clip=[2,3]' mfittrend in=ngc2403_sincsinc_trim_smooth axis=3 order=3 out=ngc2403_sincsinc_trim_smooth_base3g auto mask=ngc2403_sincsinc_trim_smooth_basemsk3g method=global variance=false subtract=false 'clip=[2,2.5,3]' add ngc2403_sincsinc_trim_smooth_basemsk3 ngc2403_sincsinc_trim_smooth_basemsk3g ngc2403_trim_basemask0 chpix in=ngc2403_trim_basemask0 out=ngc2403_trim_basemask0_end1 section=\":,:,-933:-438\" newval=0 chpix in=ngc2403_trim_basemask0_end1 out=ngc2403_trim_basemask0_end2 section=\":,:,388:931\" newval=0 cadd ngc2403_trim_basemask0_end2 1 ngc2403_trim_basemask1 mult ngc2403_sincsinc_trim ngc2403_trim_basemask1 ngc2403_sincsinc_trim_masked mfittrend ngc2403_sincsinc_trim_masked ranges=\"-260 530\" order=3 axis=3 out=ngc2403_sincsinc_trim_masked_base3 # Fitting NDF Axis 3, using ranges in current co-ordinate Frame (pixels): # -259.6202 : 529.7759 km/s (-933 : 930) sub ngc2403_sincsinc_trim ngc2403_sincsinc_trim_masked_base3 ngc2403_sincsinc_trim_submask3 compave ngc2403_sincsinc_trim_submask3 ngc2403_sincsinc_trim_submask3_20kms compress="[1,1,47]" stats 'ngc2403_sincsinc_trim_submask3_20kms(~35,~35,:)' | grep Standard # Standard deviation : 0.0140207 stats 'ngc2403_sincsinc_trim_submask3_20kms(~45,~45,:)' | grep Standard # Standard deviation : 0.01395 stats 'ngc2403_sincsinc_trim_submask3_20kms(~45,~45,-260.0:-50.0)' | grep Standard # Standard deviation : 0.0149854 stats 'ngc2403_sincsinc_trim_submask3_20kms(~45,~45,300.0:530.0)' | grep Standard # Standard deviation : 0.0125383 ------------------------------------------------------------------------------- CREATE MOMENT MAPS: mkdir Moment_sincsinc cp ngc2403_sincsinc_trim_submask3.sdf Moment_sincsinc/ngc2403_sincsinc_trim_submask3_rembsl.sdf cp ngc2403_trim_basemask1.sdf Moment_sincsinc/ngc2403_sincsinc_trim_submask3_msk.sdf cp ../NGC2976/Moment_sincsinc/REDUCE_SCIENCE_GRADIENT Moment_sincsinc/ cd Moment_sincsinc *Edit RSG Script: emacs REDUCE_SCIENCE_GRADIENT & set object = "ngc2403_sincsinc_trim_submask3" set vrange = "low=-50 high=300" # Quick jumps to repeat parts of the reduction #goto STEP1a #goto STEP1b #goto STEP2 goto STEP3 foreach rmslev (2.0 2.5 3.0 3.5 4.0 4.5 5.0) **Remove trim function: # Multiply baselined cube with clump mask ${kap}/mult ${sdf} ${sdf}_findclump${rmslab} ${sdf}_clmsk${rmslab} # Trim the noisy edges # ${kap}/ndfcopy temp'(-26:26,-36:40,)' ${sdf}_clmsk${rmslab} \rm -f ${sdf}_mask_temp1.sdf ${sdf}_mask_temp2.sdf >& /dev/null ./REDUCE_SCIENCE_GRADIENT # RMS MASKED SMOOTHED CUBE(-23:30,-15:15,-876:874): 0.00751025465987564 Rotate intvel maps: rotate ngc2403_sincsinc_trim_submask3_intvel20 ngc2403_sincsinc_trim_submask3_intvel20_rot angle=! rotate ngc2403_sincsinc_trim_submask3_intvel25 ngc2403_sincsinc_trim_submask3_intvel25_rot angle=! rotate ngc2403_sincsinc_trim_submask3_intvel30 ngc2403_sincsinc_trim_submask3_intvel30_rot angle=! rotate ngc2403_sincsinc_trim_submask3_intvel35 ngc2403_sincsinc_trim_submask3_intvel35_rot angle=! rotate ngc2403_sincsinc_trim_submask3_intvel40 ngc2403_sincsinc_trim_submask3_intvel40_rot angle=! rotate ngc2403_sincsinc_trim_submask3_intvel45 ngc2403_sincsinc_trim_submask3_intvel45_rot angle=! rotate ngc2403_sincsinc_trim_submask3_intvel50 ngc2403_sincsinc_trim_submask3_intvel50_rot angle=! (contoured totint maps and velocity maps then made using gaia) ------------------------------------------------------------------------------- MAKE CUBES DISPLAYING S/N RATIO: collapse in=ngc2403_sincsinc_trim_submask3.sdf low=-260 high=-50 axis=vopt out=sigma_low estimator=sigma reset collapse in=ngc2403_sincsinc_trim_submask3.sdf low=300 high=530 axis=vopt out=sigma_high estimator=sigma reset block ngc2403_sincsinc_trim_submask3_20kms.sdf ngc2403_sincsinc_trim_submask3_20kms_bin5.sdf axes="[2,3]" box="[1,5]" estimator=mean block ngc2403_sincsinc_trim_submask3_20kms.sdf ngc2403_sincsinc_trim_submask3_20kms_bin9.sdf axes="[2,3]" box="[1,9]" estimator=mean manic in=sigma_low out=sigma_low_3d axes="[1,2,0]" lbound=-19 ubound=40 reset wcscopy ndf=sigma_low_3d like=ngc2403_sincsinc_trim_submask3_20kms_bin5.sdf confirm=false reset cdiv sigma_low_3d 6.85565 sigma_low_20kms div ngc2403_sincsinc_trim_submask3_20kms_bin5.sdf sigma_low_20kms.sdf ngc2403_sincsinc_trim_submask3_20kms_bin5_SN.sdf div ngc2403_sincsinc_trim_submask3_20kms_bin9.sdf sigma_low_20kms.sdf ngc2403_sincsinc_trim_submask3_20kms_bin9_SN.sdf ------------------------------------------------------------------------------- MAKE TOTINT20 NOISE and SN MAPS: mkdir noise_maps cd noise_maps cp ../sigma_high.sdf . cp ../sigma_low.sdf . cp ../Moment_sincsinc/ngc2403_sincsinc_trim_submask3_rembsl_findclump20.sdf . cp ../Moment_sincsinc/ngc2403_sincsinc_trim_submask3_totint20.sdf . add sigma_high sigma_low out=sigma_sum cdiv sigma_sum.sdf 2 sigma_avg collapse in= ngc2403_sincsinc_trim_submask3_rembsl_findclump20.sdf out=test0 axis=vopt estimator=sum wlim=0.0 (must make mask to multiply by collapsed image so values are real, not integer, otherwise sqrt function below will round to nearest integer) cmult sigma_avg 0 test1 cadd test1 1.0 test2 mult test2 test0 test3 (now have same collapsed image with real, not integer values) maths exp="sqrt(IA)" out=test4 IA=test3 cmult test4 0.42 test5 mult sigma_avg test5 ngc2403_totint20_noise div ngc2403_sincsinc_trim_submask3_totint20.sdf ngc2403_totint20_noise ngc2403_totint20_SN (contoured SN maps then made using gaia) ------------------------------------------------------------------------------- TRIM OUT NOISE FROM TOTINT20 MAP: *Try trimming regions with SN < 2.0: thresh ngc2403_totint20_SN.sdf thrlo=2 newlo=bad thrhi=500 newhi=bad out=ngc2403_totint20_SN_thresh2 # There were 1636 elements changed in the DATA array below the threshold. # There were 0 elements changed in the DATA array above the threshold. cmult ngc2403_totint20_SN_thresh2.sdf 0 ngc2403_zeroall_2 cadd ngc2403_zeroall_2 1 ngc2403_msk_2 mult ngc2403_msk_2.sdf ngc2403_sincsinc_trim_submask3_totint20.sdf ngc2403_totint20_noisetrim2 *Try trimming regions with SN < 1.5: thresh ngc2403_totint20_SN.sdf thrlo=1.5 newlo=bad thrhi=500 newhi=bad out=ngc2403_totint20_SN_thresh15 # There were 1376 elements changed in the DATA array below the threshold. # There were 0 elements changed in the DATA array above the threshold. cmult ngc2403_totint20_SN_thresh15.sdf 0 ngc2403_zeroall_15 cadd ngc2403_zeroall_15.sdf 1 ngc2403_msk_15 mult ngc2403_msk_15.sdf ngc2403_sincsinc_trim_submask3_totint20.sdf ngc2403_totint20_noisetrim_15 ------------------------------------------------------------------------------- MAKE TOTINT30 NOISE and SN MAPS: cp ../Moment_sincsinc/ngc2403_sincsinc_trim_submask3_rembsl_findclump30.sdf . cp ../Moment_sincsinc/ngc2403_sincsinc_trim_submask3_totint30.sdf . collapse in= ngc2403_sincsinc_trim_submask3_rembsl_findclump30.sdf out=test6 axis=vopt estimator=sum wlim=0.0 mult test2 test6 test7 maths exp="sqrt(IA)" out=test8 IA=test7 cmult test8 0.42 test9 mult sigma_avg test9 ngc2403_totint30_noise div ngc2403_sincsinc_trim_submask3_totint30.sdf ngc2403_totint30_noise ngc2403_totint30_SN (contoured SN maps then made using gaia)