IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 38855


Ignore:
Timestamp:
Oct 13, 2015, 11:42:22 AM (11 years ago)
Author:
eugene
Message:

fix selection of the stack tables

File:
1 edited

Legend:

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

    r38841 r38855  
    55import sys
    66import math
     7import string
    78
    89import stilts
     
    549550                continue
    550551
    551             cmfTable = filter + "SkyChip.xsrc"
    552             mysTable = filter + "SkyChip_xsrc"
     552            cmfTable = filter + "SkyChip_xsrc"
    553553            if not cmfTable in self.tablesLoaded:
    554554                self.logger.infoPair("no xsrc data for filter" , filter)
     555                self.logger.infoPair("(did not find table in tablesLoaded)", cmfTable)
     556                for name in self.tablesLoaded:
     557                    print "-- table: " + name
     558                os._exit(3)
    555559                continue
    556560
     
    566570
    567571            sql = sqlLine.makeEquals("WHERE a." + filter + "ippDetectID = b.IPP_IDET")
    568 
    569             try:
    570                 self.scratchDb.execute(sql)
    571             except:
    572                 self.logger.errorPair('failed sql',sql)
    573                 raise
     572            self.scratchDb.execute(sql)
    574573
    575574        self.deleteRowsWithNoStackData(tablename)
     
    604603        tablename = "StackModelFit" + model
    605604
    606         if self.config.camera == "simtest":
    607             self.logger.infoPair("Skipping table for simtest:", tablename)
    608             return
    609 
    610605        self.logger.infoPair("Procesing table", tablename)
    611606        self.insertDvoIDs(tablename, "StackObjectThin")
     
    631626            return True
    632627
    633         cmfTable = filter + "SkyChip.xfit"
    634         mysTable = filter + "SkyChip_xfit"
     628        cmfTable = filter + "SkyChip_xfit"
    635629        if not cmfTable in self.tablesLoaded:
    636630            self.logger.infoPair("no xfit data for filter" , filter)
     631            self.logger.infoPair("(did not find table in tablesLoaded)", cmfTable)
     632            for name in self.tablesLoaded:
     633                print "-- table: " + name
     634            os._exit(3)
    637635            return True
    638636
    639         if self.scratchDb.getRowCount(mysTable) <=0 :
     637        if self.scratchDb.getRowCount(cmfTable) <=0 :
    640638            self.logger.infoPair("no extended source information, trying to skip",filter)
    641639            return True
     
    646644        magtime = "%.5f" % (2.5*math.log10(float(header['EXPTIME'])))
    647645
    648         sqlLine = sqlUtility("UPDATE " + tablename + " AS a, " + mysTable + " AS b SET")
     646        sqlLine = sqlUtility("UPDATE " + tablename + " AS a, " + cmfTable + " AS b SET")
    649647
    650648        sqlLine.group("a."+filter+"haveData",              "'1'")
     
    773771        tablename = "StackPetrosian"
    774772
    775         if self.config.camera == "simtest":
    776             self.logger.infoPair("Skipping table for simtest:", tablename)
    777             return
    778 
    779773        self.logger.infoPair("Procesing table", tablename)
    780774        self.insertDvoIDs(tablename, "StackObjectThin")
     
    800794            return True
    801795
    802         cmfTable = filter + "SkyChip.xsrc"
    803         mysTable = filter + "SkyChip_xsrc"
     796        cmfTable = filter + "SkyChip_xsrc"
    804797        if not cmfTable in self.tablesLoaded:
    805798            self.logger.infoPair("no xsrc data for filter" , filter)
     799            self.logger.infoPair("(did not find table in tablesLoaded)", cmfTable)
     800            for name in self.tablesLoaded:
     801                print "-- table: " + name
     802            os._exit(3)
    806803            return True
    807804
    808         if self.scratchDb.getRowCount(mysTable) <=0 :
     805        if self.scratchDb.getRowCount(cmfTable) <=0 :
    809806            self.logger.infoPair("no extended source information, trying to skip", filter)
    810807            return True
     
    820817
    821818        self.logger.infoPair("Adding", "petrosians for extended sources")
    822         sqlLine = sqlUtility("UPDATE " + tablename + " AS a, " + mysTable + " AS b SET")
     819        sqlLine = sqlUtility("UPDATE " + tablename + " AS a, " + cmfTable + " AS b SET")
    823820
    824821        sqlLine.group("a."+filter+"haveData",         "'1'")
     
    858855        tablename = "StackApFlx"
    859856
    860         if self.config.camera == "simtest":
    861             self.logger.infoPair("Skipping table for simtest:", tablename)
    862             return
    863 
    864857        self.logger.infoPair("Procesing table", tablename)
    865858        self.insertDvoIDs(tablename, "StackObjectThin")
     
    883876
    884877        tablename = "StackApFlxExGal" + version
    885 
    886         if self.config.camera == "simtest":
    887             self.logger.infoPair("Skipping table for simtest:", tablename)
    888             return
    889878
    890879        self.logger.infoPair("Procesing table", tablename)
     
    954943
    955944        # set the flux values from the cmf file
    956         cmfTable = filter + "SkyChip.xrad"
    957         mysTable = filter + "SkyChip_xrad"
    958945
    959946        # skip this table if it was not loaded from the cmf
     947        cmfTable = filter + "SkyChip_xrad"
    960948        if not cmfTable in self.tablesLoaded:
    961949            self.logger.infoPair("no xrad data for filter" , filter)
     
    963951
    964952        # we have variable numbers of these columns. find out which are in use
    965         sql = "DESCRIBE " + mysTable + " 'aper_fill_%'"
     953        sql = "DESCRIBE " + cmfTable + " 'aper_fill_%'"
    966954        rs = self.scratchDb.executeQuery(sql)
    967955        rs.first()
     
    984972        # get the exposure time for aperture fluxes
    985973        header = self.headerSet[filter]
    986         exptime = self.getKeyFloat(header, "%.5f", "EXPTIME")
     974        exptimeString = str(self.getKeyFloat(header, "%.5f", "EXPTIME"))
    987975
    988976        # generate the sql to do the necessary ops on the columns   
    989         sqlLine = sqlUtility("UPDATE " + tablename + " AS a, " + mysTable + " AS b SET ")
     977        sqlLine = sqlUtility("UPDATE " + tablename + " AS a, " + cmfTable + " AS b SET ")
    990978
    991979        sqlLine.group("a."+filter+"haveData", "'1'")
     
    994982            pspsNum  = str(int(number) + 2)
    995983            field = filter + prefix + "flxR" + pspsNum
    996             sqlLine.group(field,          "b.APER_FLUX_"       + number + " / " + exptime)
    997             sqlLine.group(field + "Err",  "b.APER_FLUX_ERR_"   + number + " / " + exptime)
    998             sqlLine.group(field + "Std",  "b.APER_FLUX_STDEV_" + number + " / " + exptime)
     984            sqlLine.group(field,          "b.APER_FLUX_"       + number + " / " + exptimeString)
     985            sqlLine.group(field + "Err",  "b.APER_FLUX_ERR_"   + number + " / " + exptimeString)
     986            sqlLine.group(field + "Std",  "b.APER_FLUX_STDEV_" + number + " / " + exptimeString)
    999987            sqlLine.group(field + "Fill", "b.APER_FILL_"       + number)
    1000988           
     
    11201108            self.logger.infoPair("Creating indexes on", "IPP tables")
    11211109
    1122             cmfTable = filter + "SkyChip.psf"
    1123             mysTable = filter + "SkyChip_psf"
    1124             if cmfTable in self.tablesLoaded: self.scratchDb.createIndex(mysTable, "IPP_IDET")
    1125 
    1126             cmfTable = filter + "SkyChip.xfit"
    1127             mysTable = filter + "SkyChip_xfit"
    1128             if cmfTable in self.tablesLoaded: self.scratchDb.createIndex(mysTable, "IPP_IDET")
    1129 
    1130             cmfTable = filter + "SkyChip.xrad"
    1131             mysTable = filter + "SkyChip_xrad"
    1132             if cmfTable in self.tablesLoaded: self.scratchDb.createIndex(mysTable, "IPP_IDET")
    1133 
    1134             cmfTable = filter + "SkyChip.xsrc"
    1135             mysTable = filter + "SkyChip_xsrc"
    1136             if cmfTable in self.tablesLoaded: self.scratchDb.createIndex(mysTable, "IPP_IDET")
     1110            cmfTable = filter + "SkyChip_psf"
     1111            if cmfTable in self.tablesLoaded: self.scratchDb.createIndex(cmfTable, "IPP_IDET")
     1112
     1113            cmfTable = filter + "SkyChip_xfit"
     1114            if cmfTable in self.tablesLoaded: self.scratchDb.createIndex(cmfTable, "IPP_IDET")
     1115
     1116            cmfTable = filter + "SkyChip_xrad"
     1117            if cmfTable in self.tablesLoaded: self.scratchDb.createIndex(cmfTable, "IPP_IDET")
     1118
     1119            cmfTable = filter + "SkyChip_xsrc"
     1120            if cmfTable in self.tablesLoaded: self.scratchDb.createIndex(cmfTable, "IPP_IDET")
    11371121
    11381122        return True
     
    13511335
    13521336        self.tablesLoaded = []
     1337
     1338        transtable = string.maketrans(".","_")
    13531339
    13541340        count = 0
     
    13921378                    self.logger.exception("Problem writing table '" + filter + table.name + "' to the database")
    13931379                     
    1394                 self.tablesLoaded.append(table.name)
     1380                # headers (and thus table.name) are like SkyChip.psf, but mysql names are SkyChip_psf (converted automatically by stilts)
     1381                myTable = filter + table.name.replace(".", "_")
     1382                self.tablesLoaded.append(myTable)
    13951383
    13961384        # XXX validate required tables (do we need _psf?, _xsrc? etc)
Note: See TracChangeset for help on using the changeset viewer.