;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Lance Simms, Stanford University 2009 ;pro create_cr_db_xrg ; ;PURPOSE: ; To create tables in the Cosmic Ray MySQL databases for the HxRG detectors. ; ; The script uses Mark Buie's MySQL library to do this. ; ; There are currently 3 tables: one for single pixel CR events, one for ; multiple pixel CR events that are flagged during slopefits, and one ; for the decay of traps after a CR hit. The tables differ in their contents. ; ;INPUTS: ; DETSTR: string ; The name of the detector used ('H1RG-022', 'H2RG-32-147', 'H4RG-007') ; ELECSTR: string ; The name of the electronics used ('ASIC', 'LEACH') ; MODE: ; 0 - Create a single hit cosmic ray table for DETSTR+ELECSTR ; ; 1 - Create a multiple hit cosmic ray table for DETSTR+ELECSTR ; ; 2 - Create a cosmic ray table for the decay of signal due to ; traps after a cosmic ray hit. The two tables are ; ; Global - Classifying morphology of Event ; Single - Classifying pixel behavior ;KEYWORDS: ; OVERWRITE: int ; 0 - Don't overwrite the old tables; ; 1 - Overwrite the old tables ; ;EFFECTS: ; The MySQL database will be updated with the new table. ; ;CALLING SEQUENCE: ; Create_CR_DB_xRG, DetStr, ElecStr, Mode ; ;EXAMPLES ;To create the single table ; Create_CR_DB_xRG, 'H2RG-32-147', 'ASIC', 0 ;To create the decay table ; Create_cr_db_xrg,'H1RG-022','LEACH',2 ; Create_cr_db_xrg,'H2RG-001','ASIC',2 pro Create_CR_DB_xRG, DetStr, ElecStr, Mode, OverWrite=OverWrite If N_Elements(OverWrite) eq 0 then OverWrite = 1 Date = '' Common KeyParams, KeyStr ;Include all of the keywords from the KeywordStruct file @KeywordStruct_xRG.pro @PlotSettings_xRG.pro Case Mode of 0: begin ;Single Hit Cosmic Ray Database openmysql, MySQLLun, 'SingleCRHits', MyQLErr ;Format the strings in the table name TableName = KeyStr.DetStr+'_'+KeyStr.ElecStr+'_'+'SinCRHits' strreplace, TableName, '-','_' strreplace, TableName, '-','_' mysqlcmd, MySQLLun, 'CREATE TABLE '+TableName+'('+$ 'READNUM SMALLINT,X SMALLINT, Y SMALLINT,FILENAME VARCHAR(120),'+ $ 'ADU00 SMALLINT, ADU01 SMALLINT,ADU02 SMALLINT,'+$ 'ADU10 SMALLINT, ADU11 SMALLINT,ADU12 SMALLINT,'+$ 'ADU20 SMALLINT, ADU21 SMALLINT,ADU22 SMALLINT);', $ Answer, NumLines end 1: begin end 2: begin ;Single Hit Cosmic Ray Database openmysql, MySQLLun, 'CRHit_Decays', MyQLErr ;Format the strings in the table name GlobalTableName = KeyStr.DetStr+'_'+KeyStr.ElecStr+'_'+'Glo_CRHits' SingleTableName = KeyStr.DetStr+'_'+KeyStr.ElecStr+'_'+'Sin_CRHits' strreplace, GlobalTableName, '-','_' strreplace, GlobalTableName, '-','_' strreplace, SingleTableName, '-','_' strreplace, SingleTableName, '-','_' if OverWrite eq 1 then $ mysqlcmd, MySQLLun, 'DROP TABLE ' +GlobalTableName+';' mysqlcmd, MySQLLun, 'CREATE TABLE '+GlobalTableName+'('+$ 'COSID VARCHAR(100) NOT NULL PRIMARY KEY,' +$ 'X SMALLINT , Y SMALLINT , COSREAD SMALLINT,' +$ 'NUMPIX SMALLINT ,' +$ 'MAXCOSEDEP MEDIUMINT, MAXQLOST MEDIUMINT , MAXQRISE MEDIUMINT,' +$ 'TOTCOSEDEP MEDIUMINT, TOTQLOST MEDIUMINT , TOTQRISE MEDIUMINT,' +$ 'EXTENT SMALLINT , YEXTENT SMALLINT ,' +$ 'TRKLN2D FLOAT , PERPCNTS MEDIUMINT ,' +$ 'ELLIP FLOAT , LMBDA1 FLOAT , LMBDA2 FLOAT,' +$ 'CLASS VARCHAR(8) , FILTER VARCHAR(8) , TEMP FLOAT,' +$ 'DATE VARCHAR(8));',$ Answer, NumLines if OverWrite eq 1 then $ mysqlcmd, MySQLLun, 'DROP TABLE ' +SingleTableName+';' mysqlcmd, MySQLLun, 'CREATE TABLE '+SingleTableName+'('+$ 'COSID VARCHAR(100) , X SMALLINT , Y SMALLINT,' +$ 'COSREAD SMALLINT , COSENEDEP SMALLINT , ' +$ 'QLOST MEDIUMINT , QRISE MEDIUMINT ,' +$ 'MINREADAC SMALLINT , MAXREADAC SMALLINT ,' +$ 'FIT_A FLOAT , FIT_TAU FLOAT ,' +$ 'FIT_ER_T FLOAT , FIT_ER_STD FLOAT ,' +$ 'TEMP FLOAT , VSUB INT ,' +$ 'MAXDARK FLOAT , DEPTH FLOAT ,' +$ 'BPIX TINYINT , DATE VARCHAR(8));', $ Answer, NumLines end endcase end