Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 import time
00019 import os
00020
00021 os.system('rm -rf OrionS_rawACSmod OrionS_rawACSmod_cal OrionS_rawACSmod_cal_sm OrionS_rawACSmod_cal_sm_bs orions_sio_reducedSCAN0_CYCLE0_BEAM0_IF0.txt orions_sio_reduced.eps orions_sio_fit.txt')
00022
00023
00024 doplot = False
00025
00026 casapath=os.environ['CASAPATH']
00027 datapath=casapath.split()[0]+'/data/regression/ATST5/OrionS/OrionS_rawACSmod'
00028 copystring='cp -r '+datapath+' .'
00029 os.system(copystring)
00030
00031 startTime=time.time()
00032 startProc=time.clock()
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063 asap_init()
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078 if doplot:
00079 localplotlevel = 1
00080 else:
00081 localplotlevel = 0
00082
00083
00084
00085 default(sdcal)
00086 infile='OrionS_rawACSmod'
00087 fluxunit='K'
00088 calmode='ps'
00089 scanlist=[24,25,26,27]
00090 iflist=[15]
00091 scanaverage=False
00092 timeaverage=True
00093 tweight='tintsys'
00094 polaverage=True
00095 pweight='tsys'
00096 tau=0.09
00097 overwrite=True
00098 plotlevel=localplotlevel
00099 sdcal()
00100
00101 localoutfile=infile+'_cal'
00102
00103
00104
00105 default(sdsmooth)
00106 infile = localoutfile
00107 kernel='boxcar'
00108 kwidth=10
00109 overwrite=True
00110 plotlevel=localplotlevel
00111 sdsmooth()
00112 localoutfile=infile+'_sm'
00113
00114
00115
00116
00117 default(sdbaseline)
00118 infile=localoutfile
00119 maskmode='list'
00120 masklist=[[500,3500],[5000,7500]]
00121 blfunc='poly'
00122 order=5
00123 overwrite=True
00124 plotlevel=localplotlevel
00125 sdbaseline()
00126 localoutfile=infile+'_bs'
00127
00128
00129
00130
00131 if doplot:
00132 default(sdplot)
00133 infile=localoutfile
00134 specunit='GHz'
00135 outfile='orions_sio_reduced.eps'
00136
00137
00138 sdplot()
00139 else:
00140 print "Plotting the result is skipped."
00141
00142
00143 default(sdstat)
00144
00145 infile=localoutfile
00146 masklist=[1000,3000]
00147 xstat=sdstat()
00148 rms=xstat['rms']
00149
00150
00151
00152 masklist=[3900,4300]
00153 xstat=sdstat()
00154 xstat
00155 max=xstat['max']
00156 sum=xstat['sum']
00157 median=xstat['median']
00158 mean=xstat['mean']
00159
00160
00161 default(sdfit)
00162 infile=localoutfile
00163
00164 fitmode='list'
00165 maskline=[3900,4300]
00166 nfit=1
00167 plotlevel=localplotlevel
00168 outfile='orions_sio_fit.txt'
00169 xstat=sdfit()
00170 xstat
00171
00172
00173
00174 default(sdsave)
00175 infile=localoutfile
00176 outfile='orions_sio_reduced'
00177 outform='ASCII'
00178 overwrite=True
00179 sdsave()
00180 outfile='orions_sio_reduced.ms'
00181 outform='MS2'
00182
00183 endProc = time.clock()
00184 endTime = time.time()
00185
00186
00187
00188
00189
00190
00191
00192
00193
00194 ori_max=0.3662
00195 ori_rms=0.03720
00196 ori_sum=49.95
00197 diff_max = abs((ori_max-max)/ori_max)
00198 diff_rms = abs((ori_rms-rms)/ori_rms)
00199 diff_sum = abs((ori_sum-sum)/ori_sum)
00200
00201 import datetime
00202 datestring=datetime.datetime.isoformat(datetime.datetime.today())
00203 outfile='ori.sio.task.'+datestring+'.log'
00204 logfile=open(outfile,'w')
00205 print >>logfile,''
00206 print >>logfile,'********** Regression ***********'
00207 print >>logfile,'* *'
00208 if (diff_max < 0.05): print >>logfile,'* Passed spectrum max test '
00209 print >>logfile,'* Spectrum max '+str(max)
00210 if (diff_rms < 0.05): print >>logfile,'* Passed spectrum rms test '
00211 print >>logfile,'* Spectrum rms '+str(rms)
00212 if (diff_sum < 0.05): print >>logfile,'* Passed spectrum (line) sum test'
00213 print >>logfile,'* Line integral '+str(sum)
00214 if ((diff_max<0.05) & (diff_rms<0.05) & (diff_sum<0.05)):
00215 regstate=True
00216 print >>logfile,'---'
00217 print >>logfile,'Passed Regression test for OrionS-SiO'
00218 print >>logfile,'---'
00219 print ''
00220 print 'Regression PASSED'
00221 print ''
00222 else:
00223 regstate=False
00224 print >>logfile,'----FAILED Regression test for OrionS-SiO'
00225 print ''
00226 print 'Regression FAILED'
00227 print ''
00228
00229 print >>logfile,'*********************************'
00230
00231 print >>logfile,''
00232 print >>logfile,''
00233 print >>logfile,'********* Benchmarking *****************'
00234 print >>logfile,'* *'
00235 print >>logfile,'Total wall clock time was: '+str(endTime - startTime)
00236 print >>logfile,'Total CPU time was: '+str(endProc - startProc)
00237
00238
00239 logfile.close()