IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Feb 25, 2015, 1:59:43 PM (11 years ago)
Author:
heather
Message:

forced warp batches for sas37 are now working!

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippToPsps/jython/gpc1db.py

    r37917 r37935  
    219219   
    220220
     221    '''                                                                                                                                             
     222    Gets a list of PSPS image IDs for this stack ID                                                                                                 
     223    '''
     224    def getImageIDsForThisForcedWarpID(self, forcedWarpID):
     225
     226        self.logger.debug("Querying GPC1 for image IDs for forcedWarp ID: " + str(forcedWarpID))
     227
     228        # JOIN stackInputSkyfile shoule use stack_id as well as warp_id, right? (maybe not -- the join to warp is first)                             
     229        sql = "SELECT DISTINCT CONCAT(exp_id, SUBSTR(class_id, 3, 4)) FROM ( \
     230               SELECT DISTINCT exp_id,class_id \
     231               FROM addRun join \
     232               fullForceInput on (fullForceInput.ff_id = addRun.stage_id and \
     233               fullForceInput.warp_id = addRun.stage_extra1) \
     234               JOIN fullForceResult using (ff_id, warp_id) \
     235               JOIN warpRun USING(warp_id) \
     236               JOIN warpSkyCellMap using (warp_id) \
     237               JOIN fakeRun USING(fake_id) \
     238               JOIN camRun USING(cam_id)  \
     239               JOIN chipRun USING(chip_id) \
     240               WHERE add_id = " + str(forcedWarpID) + ") AS a"
     241
     242        try:
     243            rs = self.executeQuery(sql)
     244        except:
     245            self.logger.exception("Can't query for imageIDs using :" + sql )
     246
     247        imageIDs = []
     248        while (rs.next()):
     249            imageIDs.append(rs.getString(1))
     250        rs.close()
     251
     252        return imageIDs
     253
    221254
    222255
     
    251284     
    252285        return meta
     286
     287    '''
     288    Gets some forcedwarp stage meta data for this sky_id # TODO this SQL could surely be improved
     289    '''
     290    def getForcedWarpStageMeta(self, forcedWarpID, warpSkyfileID):
     291        self.logger.debug("Querying GPC1 for forced warp meta data")
     292
     293        meta = []
     294
     295        sql = "SELECT \
     296               exp_id, \
     297               exp_time, \
     298               fullForceResult.software_ver, \
     299               skycell_id, \
     300               warpRun.tess_id \
     301               FROM fullForceInput join addRun on \
     302               (fullForceInput.ff_id = addRun.stage_id and fullForceInput.warp_id = addRun.stage_extra1) \
     303               JOIN fullForceResult using (ff_id,warp_id) \
     304               JOIN warpRun using (warp_id) \
     305               JOIN warpImfile using (warp_id) \
     306               JOIN fakeRun using (fake_id) \
     307               JOIN camRun using (cam_id) \
     308               JOIN chipRun using (chip_id) \
     309               JOIN rawExp using (exp_id) \
     310               WHERE add_id = " + str(forcedWarpID) + " \
     311               AND warp_skyfile_id = " +  str(warpSkyfileID)
     312
     313        try:
     314            rs = self.executeQuery(sql)
     315            rs.first()
     316        except:
     317            self.logger.errorPair("Can't query for", "forced warp meta data")
     318
     319        try:
     320            meta.append(rs.getString(1))
     321            meta.append(rs.getString(2))
     322            meta.append(rs.getString(3))
     323            meta.append(rs.getString(4))
     324            meta.append(rs.getString(5))
     325
     326        except:
     327            self.logger.errorPair("getForcedWarpStageMeta()", "empty meta data")
     328
     329        return meta
     330
    253331
    254332
     
    300378
    301379    '''
     380    get forcedwarp stage cmf
     381    '''
     382    def getForcedWarpStageCmf(self, dvoDb, forcedWarpID):
     383        sql = "SELECT DISTINCT fullForceResult.path_base \
     384              from fullForceInput join addRun on \
     385              (fullForceInput.ff_id = addRun.stage_id AND \
     386              fullForceInput.warp_id = addRun.stage_extra1) \
     387              join fullForceResult using (ff_id, warp_id) \
     388              where add_id = %d" % forcedWarpID
     389        try:
     390            rs = self.executeQuery(sql)
     391            rs.first()
     392        except:
     393            self.logger.infoPair("failed sql", sql)
     394            self.logger.errorPair("can't query for fullforce cmf", "add_id = %d" %forcedWarpID)
     395            return None
     396       
     397        try:
     398            pathBase = rs.getString(1)
     399        except:
     400            self.logger.errorPair("no full force cmfs found for add_id = %d" %forcedWarpID)
     401            return None
     402       
     403        files = []
     404        if pathBase.startswith("neb"):
     405       
     406            f=os.popen("neb-ls -p " + pathBase + ".cmf")
     407            for i in f.readlines():
     408       
     409                files.append(i.rstrip())
     410       
     411       
     412        if len(files) < 1: return None
     413        fits = Fits(self.logger, self.config, files[0])
     414        return fits
     415
     416 
     417
     418    '''
    302419    get diff stage cmf name
    303420    '''
     
    327444            pathBase = rs.getString(1)
    328445        except:   
    329             self.logger.errorPair("no diff cms found for diff_skyfile_id = %d" %diff_skyfile_id)
     446            self.logger.errorPair("no diff cmfs found for diff_skyfile_id = %d" %diff_skyfile_id)
    330447            return None
    331448        print pathBase
Note: See TracChangeset for help on using the changeset viewer.