IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 34472


Ignore:
Timestamp:
Sep 26, 2012, 11:08:26 AM (14 years ago)
Author:
Serge CHASTEL
Message:

Changes for ppMops version 3

Location:
trunk/ppTranslate/src
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/ppTranslate/src/ppMops.h

    r34284 r34472  
    2828  psString output;                    // Output filename
    2929  psU16 version;                      // Version (for parameters)
     30  psString comment;                   // Comment associated with the first argument of the diff
     31  psString obsMode;                   // Observation mode
     32  psString difftype;                  // Either WW (Warp-Warp Diff) or WS (Warp-Stack Diff)
    3033} ppMopsArguments;
    3134
  • trunk/ppTranslate/src/ppMopsArguments.c

    r34279 r34472  
    6767    args->output = NULL;
    6868    args->version = 1;
    69 
     69    args->comment = NULL;
     70    args->obsMode = NULL;
     71    args->difftype = NULL;
    7072    return args;
    7173}
     
    9395    psMetadataAddF32(arguments, PS_LIST_TAIL, "-astrom_rms", 0, "Astrometric solution RMS", NAN);
    9496    psMetadataAddU16(arguments, PS_LIST_TAIL, "-version", 0, "CMF file version", 0);
     97    psMetadataAddStr(arguments, PS_LIST_TAIL, "-comment", 0, "Exposure comment", NULL);
     98    psMetadataAddStr(arguments, PS_LIST_TAIL, "-obsmode", 0, "Observation mode", NULL);
     99    psMetadataAddStr(arguments, PS_LIST_TAIL, "-difftype", 0, "Either WW (Warp-Warp Diff) or WS (Warp-Stack Diff)", NULL);
    95100    if (argc == 1 || !psArgumentParse(arguments, &argc, argv) || argc != 3) {
    96101        usage(argv[0], arguments);
     
    120125    args->rmsAstrom = psMetadataLookupF32(NULL, arguments, "-astrom_rms");
    121126    args->version = psMetadataLookupU16(NULL, arguments, "-version");
     127    args->comment = psMemIncrRefCounter(psMetadataLookupStr(NULL, arguments, "-comment"));
     128    args->obsMode = psMemIncrRefCounter(psMetadataLookupStr(NULL, arguments, "-obsmode"));
     129    args->difftype = psMemIncrRefCounter(psMetadataLookupStr(NULL, arguments, "-difftype"));
    122130
    123131    psTrace("ppMops.args", 1, "Done parsing command-line arguments\n");
  • trunk/ppTranslate/src/ppMopsGetSkyChipPsfVersion.c

    r34279 r34472  
    1616  } else if (strcmp(version, "PS1_DV3") == 0) {
    1717    psFree(headerSkyChip);
    18     return 2;
     18    return 3;
    1919  }
    2020  psWarning("Unsupported EXTTYPE in SkyChip.psf table: [%s]", version);
  • trunk/ppTranslate/src/ppMopsRead.c

    r34437 r34472  
    88#include "ppMops.h"
    99
    10 static void addDummyValues(psMetadata* md, long size);
     10static void addDummyValues(psMetadata* md, long size, int version);
    1111static void replaceDummyValuesF32(const char* colName, psMetadata* source, psMetadata* target, psVector* indexes);
    1212
     
    116116    if (skyChipPsfVersion >= 2) {
    117117      //First: append all the new columns that we want to the existing table
    118       addDummyValues(det->table, size);
     118      addDummyValues(det->table, size, args->version);
    119119      if (!psFitsMoveExtName(fits, "SkyChip.xfit")) {
    120120        psTrace("ppMops.read", 3, "No fitted trails extension");
     
    147147          replaceDummyValuesF32("EXT_WIDTH_MIN_ERR",  fittedTrails, det->table, idet);
    148148          replaceDummyValuesF32("EXT_THETA_ERR",  fittedTrails, det->table, idet);
     149          if (skyChipPsfVersion >= 3) {
     150            replaceDummyValuesF32("RA_EXT",  fittedTrails, det->table, idet);
     151            replaceDummyValuesF32("RA_EXT_SIGMA",  fittedTrails, det->table, idet);
     152            replaceDummyValuesF32("DEC_EXT",  fittedTrails, det->table, idet);
     153            replaceDummyValuesF32("DEC_EXT_SIGMA",  fittedTrails, det->table, idet);
     154            replaceDummyValuesF32("POSANG_EXT",  fittedTrails, det->table, idet);
     155            replaceDummyValuesF32("PLTSCALE_EXT",  fittedTrails, det->table, idet);
     156            replaceDummyValuesF32("EXT_FLUX",  fittedTrails, det->table, idet);
     157            replaceDummyValuesF32("EXT_CAL_MAG",  fittedTrails, det->table, idet);
     158            replaceDummyValuesF32("EXT_MAG_SIG",  fittedTrails, det->table, idet);
     159            replaceDummyValuesF32("EXT_CHISQ",  fittedTrails, det->table, idet);
     160            replaceDummyValuesF32("EXT_NDOF",  fittedTrails, det->table, idet);
     161          }
    149162        }
    150163      }
     
    257270}
    258271
    259 static void addDummyValues(psMetadata* md, long size) {
     272static void addDummyValues(psMetadata* md, long size, int version) {
    260273  psMetadataAdd(md, PS_LIST_TAIL, "X_EXT", PS_DATA_VECTOR, "EXT model x coordinate", createDummyF32(size));
    261274  psMetadataAdd(md, PS_LIST_TAIL, "Y_EXT", PS_DATA_VECTOR, "EXT model y coordinate", createDummyF32(size));
     
    271284  psMetadataAdd(md, PS_LIST_TAIL, "EXT_WIDTH_MIN_ERR",  PS_DATA_VECTOR, "EXT width error (minor axis)", createDummyF32(size));
    272285  psMetadataAdd(md, PS_LIST_TAIL, "EXT_THETA_ERR",  PS_DATA_VECTOR, "EXT orientation angle (error)", createDummyF32(size));
     286  if (version >= 3) {
     287    psTrace("ppMops.read", 10, "Adding columns for version PS1_DV%d\n", version);
     288    psMetadataAdd(md, PS_LIST_TAIL, "RA_EXT",  PS_DATA_VECTOR, "Fitted centroid RA", createDummyF32(size));
     289    psMetadataAdd(md, PS_LIST_TAIL, "RA_EXT_SIGMA",  PS_DATA_VECTOR, "Fitted RA sigma", createDummyF32(size));
     290    psMetadataAdd(md, PS_LIST_TAIL, "DEC_EXT",  PS_DATA_VECTOR, "Fitted centroid DEC", createDummyF32(size));
     291    psMetadataAdd(md, PS_LIST_TAIL, "DEC_EXT_SIGMA",  PS_DATA_VECTOR, "Fitted DEC sigma", createDummyF32(size));
     292    psMetadataAdd(md, PS_LIST_TAIL, "POSANG_EXT",  PS_DATA_VECTOR, "Fitted position angle", createDummyF32(size));
     293    psMetadataAdd(md, PS_LIST_TAIL, "PLTSCALE_EXT",  PS_DATA_VECTOR, "Plate scale at centroid", createDummyF32(size));
     294    psMetadataAdd(md, PS_LIST_TAIL, "EXT_FLUX",  PS_DATA_VECTOR, "Fitted flux", createDummyF32(size));
     295    psMetadataAdd(md, PS_LIST_TAIL, "EXT_CAL_MAG",  PS_DATA_VECTOR, "Calibrated mag", createDummyF32(size));
     296    psMetadataAdd(md, PS_LIST_TAIL, "EXT_MAG_SIG",  PS_DATA_VECTOR, "Mag sigma", createDummyF32(size));
     297    psMetadataAdd(md, PS_LIST_TAIL, "EXT_CHISQ",  PS_DATA_VECTOR, "Chi^2 of fit", createDummyF32(size));
     298    psMetadataAdd(md, PS_LIST_TAIL, "EXT_NDOF",  PS_DATA_VECTOR, "Fit degrees of freedom", createDummyF32(size));
     299  }
    273300}
    274301
  • trunk/ppTranslate/src/ppMopsWrite.c

    r34439 r34472  
    7474    psMetadataAddF32(header, PS_LIST_TAIL, "AIRMASS", 0, "Airmass of exposure", det->airmass);
    7575    psMetadataAddF32(header, PS_LIST_TAIL, "SEEING", 0, "Mean seeing", seeingStats->sampleMedian);
     76    //MOPS want the name FWHM for SEEING
     77    psMetadataAddF32(header, PS_LIST_TAIL, "FWHM", 0, "Mean seeing", det->seeing);
    7678  } else {
    7779    psWarning("no inputs with surviving detections. output header will be incomplete");
     
    7981  psMetadataAddStr(header, PS_LIST_TAIL, "OBSCODE", 0, "IAU Observatory code", OBSERVATORY_CODE);
    8082  psMetadataAddF32(header, PS_LIST_TAIL, "MAGZP", 0, "Magnitude zero point", args->zp);
     83  //MOPS want the name ZEROPOINT for MAGZP
     84  psMetadataAddF32(header, PS_LIST_TAIL, "ZEROPOINT", 0, "Magnitude zero point", args->zp);
    8185  psMetadataAddF32(header, PS_LIST_TAIL, "MAGZPERR", 0, "Error in magnitude zero point", args->zpErr);
    8286  psMetadataAddF32(header, PS_LIST_TAIL, "ASTRORMS", 0, "RMS of astrometric fit", args->rmsAstrom);
     87  psMetadataAddStr(header, PS_LIST_TAIL, "COMMENT", 0, "Exposure comment", args->comment);
     88  psMetadataAddStr(header, PS_LIST_TAIL, "OBS_MODE", 0, "Exposure observation mode", args->obsMode);
     89  psMetadataAddStr(header, PS_LIST_TAIL, "DIFFTYPE", 0, "WW: Warp-Warp diff / WS: Warp-Stack diff / SW: Stack-Warp diff", args->difftype);
    8390
    8491  //field in header that tells about the CMF version
     
    187194                     0);
    188195      if (args->version == 3) {
    189         // TODO: Write data of version 3 (see ICD)
     196        // Write data of version 3 (see ICD)
     197        psMetadataAdd (row, PS_LIST_TAIL, "RA_EXT",         PS_DATA_F32, "Fitted centroid RA",
     198                       0);
     199        psMetadataAdd (row, PS_LIST_TAIL, "RA_EXT_SIGMA",   PS_DATA_F32, "Fitted RA sigma",
     200                       0);
     201        psMetadataAdd (row, PS_LIST_TAIL, "DEC_EXT",        PS_DATA_F32, "Fitted centroid DEC",
     202                       0);
     203        psMetadataAdd (row, PS_LIST_TAIL, "DEC_EXT_SIGMA",  PS_DATA_F32, "Fitted DEC sigma",
     204                       0);
     205        psMetadataAdd (row, PS_LIST_TAIL, "POSANG_EXT",     PS_DATA_F32, "Fitted position angle",
     206                       0);
     207        psMetadataAdd (row, PS_LIST_TAIL, "PLTSCALE_EXT",   PS_DATA_F32, "Plate scale at centroid",
     208                       0);
     209        psMetadataAdd (row, PS_LIST_TAIL, "EXT_FLUX",       PS_DATA_F32, "Fitted flux",
     210                       0);
     211        psMetadataAdd (row, PS_LIST_TAIL, "EXT_CAL_MAG",    PS_DATA_F32, "Calibrated mag",
     212                       0);
     213        psMetadataAdd (row, PS_LIST_TAIL, "EXT_MAG_SIG",    PS_DATA_F32, "Mag sigma",
     214                       0);
     215        psMetadataAdd (row, PS_LIST_TAIL, "EXT_CHISQ",      PS_DATA_F32, "Chi^2 of fit",
     216                       0);
     217        psMetadataAdd (row, PS_LIST_TAIL, "EXT_NDOF",       PS_DATA_F32, "Fit degrees of freedom",
     218                       0);
    190219      }
    191220    }
     
    276305      addColumn("EXT_THETA_ERR", NULL, 0);
    277306    }
     307    if (args->version >= 3) {
     308      addColumn("RA_EXT", NULL, 0);
     309      addColumn("RA_EXT_SIGMA", NULL, 0);
     310      addColumn("DEC_EXT", NULL, 0);
     311      addColumn("DEC_EXT_SIGMA", NULL, 0);
     312      addColumn("POSANG_EXT", NULL, 0);
     313      addColumn("PLTSCALE_EXT", NULL, 0);
     314      addColumn("EXT_FLUX", NULL, 0);
     315      addColumn("EXT_CAL_MAG", NULL, 0);
     316      addColumn("EXT_MAG_SIG", NULL, 0);
     317      addColumn("EXT_CHISQ", NULL, 0);
     318      addColumn("EXT_NDOF", NULL, 0);
     319    }
     320
    278321    if (!psFitsWriteTableAllColumns(fits, header, table, OUT_EXTNAME)) {
    279322      psError(psErrorCodeLast(), false, "Unable to write table");
Note: See TracChangeset for help on using the changeset viewer.