Changeset 36898
- Timestamp:
- Jun 17, 2014, 6:23:16 PM (12 years ago)
- Location:
- branches/eam_branches/ipp-20140610/Ohana/src/libdvo
- Files:
-
- 2 added
- 40 edited
-
Makefile (modified) (2 diffs)
-
doc/notes.ps1v5.txt (added)
-
include/dvo.h (modified) (8 diffs)
-
include/dvodb.h (modified) (1 diff)
-
include/elixir_defs.h (modified) (1 diff)
-
include/loneos_defs.h (modified) (1 diff)
-
include/panstarrs_dev_0_defs.h (modified) (1 diff)
-
include/panstarrs_dev_1_defs.h (modified) (1 diff)
-
include/ps1_dev_1_defs.h (modified) (1 diff)
-
include/ps1_dev_2_defs.h (modified) (1 diff)
-
include/ps1_ref_defs.h (modified) (1 diff)
-
include/ps1_v1_defs.h (modified) (1 diff)
-
include/ps1_v2_defs.h (modified) (1 diff)
-
include/ps1_v3_defs.h (modified) (1 diff)
-
include/ps1_v4_defs.h (modified) (1 diff)
-
include/ps1_v5_defs.h (added)
-
src/LoadPhotcodesFITS.c (modified) (1 diff)
-
src/SavePhotcodesFITS.c (modified) (1 diff)
-
src/dbExtractAverages.c (modified) (1 diff)
-
src/dbExtractMeasures.c (modified) (16 diffs)
-
src/dbFields.c (modified) (1 diff)
-
src/dvo_catalog.c (modified) (10 diffs)
-
src/dvo_catalog_chipcoords.c (modified) (1 diff)
-
src/dvo_catalog_mef.c (modified) (2 diffs)
-
src/dvo_catalog_raw.c (modified) (12 diffs)
-
src/dvo_catalog_split.c (modified) (5 diffs)
-
src/dvo_convert.c (modified) (14 diffs)
-
src/dvo_convert_PS1_DEV_1.c (modified) (4 diffs)
-
src/dvo_convert_PS1_DEV_2.c (modified) (4 diffs)
-
src/dvo_convert_PS1_REF.c (modified) (4 diffs)
-
src/dvo_convert_PS1_V1.c (modified) (6 diffs)
-
src/dvo_convert_PS1_V2.c (modified) (6 diffs)
-
src/dvo_convert_PS1_V3.c (modified) (6 diffs)
-
src/dvo_convert_PS1_V4.c (modified) (8 diffs)
-
src/dvo_convert_elixir.c (modified) (4 diffs)
-
src/dvo_convert_loneos.c (modified) (4 diffs)
-
src/dvo_convert_panstarrs_DEV_0.c (modified) (4 diffs)
-
src/dvo_convert_panstarrs_DEV_1.c (modified) (4 diffs)
-
src/dvo_image.c (modified) (1 diff)
-
src/dvo_image_raw.c (modified) (2 diffs)
-
src/dvo_photcode_ops.c (modified) (4 diffs)
-
src/dvo_tiny_values.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/Makefile
r36630 r36898 36 36 $(DESTINC)/ps1_v3_defs.h \ 37 37 $(DESTINC)/ps1_v4_defs.h \ 38 $(DESTINC)/ps1_v5_defs.h \ 38 39 $(DESTINC)/ps1_ref_defs.h \ 39 40 $(DESTINC)/cmf-ps1-dv3.h … … 76 77 $(SRC)/dvo_convert_PS1_V3.$(ARCH).o \ 77 78 $(SRC)/dvo_convert_PS1_V4.$(ARCH).o \ 79 $(SRC)/dvo_convert_PS1_V5.$(ARCH).o \ 78 80 $(SRC)/dvo_convert_PS1_REF.$(ARCH).o \ 79 81 $(SRC)/flatcorr_io.$(ARCH).o \ -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/dvo.h
r36833 r36898 28 28 DVO_FORMAT_PS1_V3, 29 29 DVO_FORMAT_PS1_V4, 30 DVO_FORMAT_PS1_V5, 30 31 } DVOTableFormat; 31 32 … … 434 435 // a reduced-subset structure for relphot & relastro 435 436 typedef struct { 436 float dR;437 float dD;437 double R; 438 double D; 438 439 float M; 439 440 float Mcal; … … 548 549 549 550 Measure_PS1_V4alt *gfits_table_get_Measure_PS1_V4alt (FTable *table, off_t *Ndata, char *swapped); 550 Measure *Measure_PS1_V4alt_ToInternal ( Measure_PS1_V4alt *in, off_t Nvalues);551 Measure *Measure_PS1_V4alt_ToInternal (Average *ave, Measure_PS1_V4alt *in, off_t Nvalues); 551 552 552 553 /* a catalog contains this data */ … … 696 697 697 698 float PhotMstdev (PhotCode *code, Average *average, SecFilt *secfilt); 698 float PhotM 20(PhotCode *code, Average *average, SecFilt *secfilt);699 float PhotM 80(PhotCode *code, Average *average, SecFilt *secfilt);699 float PhotMmin (PhotCode *code, Average *average, SecFilt *secfilt); 700 float PhotMmax (PhotCode *code, Average *average, SecFilt *secfilt); 700 701 float PhotUCdist (PhotCode *code, Average *average, SecFilt *secfilt); 701 702 unsigned int PhotStackID (PhotCode *code, Average *average, SecFilt *secfilt); … … 782 783 /*** conversion functions / I/O conversions ***/ 783 784 Average *ReadRawAverage (FILE *f, off_t Naverage, char format, SecFilt **primary); 784 Measure *ReadRawMeasure (FILE *f, off_t Nmeasure, char format);785 Measure *ReadRawMeasure (FILE *f, Average *average, off_t Nmeasure, char format); 785 786 SecFilt *ReadRawSecFilt (FILE *f, off_t Nsecfilt, char format); 786 787 int WriteRawAverage (FILE *f, Average *average, off_t Naverage, char format, SecFilt *primary); 787 int WriteRawMeasure (FILE *f, Measure *measure, off_t Nmeasure, char format);788 int WriteRawMeasure (FILE *f, Average *average, Measure *measure, off_t Nmeasure, char format); 788 789 int WriteRawSecFilt (FILE *f, SecFilt *secfilt, off_t Nsecfilt, char format); 789 790 … … 791 792 792 793 Average *FtableToAverage (FTable *ftable, off_t *Naverage, char *format, SecFilt **primary); 793 Measure *FtableToMeasure (FTable *ftable, off_t *Nmeasure, char *format);794 Measure *FtableToMeasure (FTable *ftable, Average *average, off_t *Nmeasure, char *format); 794 795 SecFilt *FtableToSecFilt (FTable *ftable, off_t *Nsecfilt, char *format); 795 796 int FtableToImage (FTable *ftable, Header *theader, char *format); 796 797 797 798 int AverageToFtable (FTable *ftable, Average *average, off_t Naverage, char format, SecFilt *primary); 798 int MeasureToFtable (FTable *ftable, Measure *measure, off_t Nmeasure, char format);799 int MeasureToFtable (FTable *ftable, Average *average, Measure *measure, off_t Nmeasure, char format); 799 800 int SecFiltToFtable (FTable *ftable, SecFilt *secfilt, off_t Nsecfilt, char format); 800 801 int ImageToFtable (FTable *ftable, Header *theader, char format); … … 812 813 # include "ps1_v3_defs.h" 813 814 # include "ps1_v4_defs.h" 815 # include "ps1_v5_defs.h" 814 816 # include "ps1_ref_defs.h" 815 817 … … 906 908 void TessellationTableInit (TessellationTable *tess, int Ntess); 907 909 910 float dvoOffsetR (Measure *measure, Average *average); 911 float dvoOffsetD (Measure *measure, Average *average); 912 double dvoMeanR (float dR, Average *average); 913 double dvoMeanD (float dD, Average *average); 914 908 915 void dvo_average_init (Average *average); 909 916 void dvo_averageT_init (AverageTiny *average); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/dvodb.h
r36840 r36898 58 58 MAG_AVE_ERR, 59 59 MAG_CHISQ, 60 MAG_ 20,61 MAG_ 80,60 MAG_MIN, 61 MAG_MAX, 62 62 MAG_FLUX_PSF, 63 63 MAG_FLUX_PSF_ERR, -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/elixir_defs.h
r35162 r36898 3 3 Average *Average_Elixir_ToInternal (Average_Elixir *in, off_t Nvalues, SecFilt **primary); 4 4 Average_Elixir *AverageInternalTo_Elixir (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_Elixir_ToInternal ( Measure_Elixir *in, off_t Nvalues);6 Measure_Elixir *MeasureInternalTo_Elixir ( Measure *in, off_t Nvalues);5 Measure *Measure_Elixir_ToInternal (Average *ave, Measure_Elixir *in, off_t Nvalues); 6 Measure_Elixir *MeasureInternalTo_Elixir (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_Elixir_ToInternal (SecFilt_Elixir *in, off_t Nvalues); 8 8 SecFilt_Elixir *SecFiltInternalTo_Elixir (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/loneos_defs.h
r35162 r36898 3 3 Average *Average_Loneos_ToInternal (Average_Loneos *in, off_t Nvalues, SecFilt **primary); 4 4 Average_Loneos *AverageInternalTo_Loneos (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_Loneos_ToInternal ( Measure_Loneos *in, off_t Nvalues);6 Measure_Loneos *MeasureInternalTo_Loneos ( Measure *in, off_t Nvalues);5 Measure *Measure_Loneos_ToInternal (Average *ave, Measure_Loneos *in, off_t Nvalues); 6 Measure_Loneos *MeasureInternalTo_Loneos (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_Loneos_ToInternal (SecFilt_Loneos *in, off_t Nvalues); 8 8 SecFilt_Loneos *SecFiltInternalTo_Loneos (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/panstarrs_dev_0_defs.h
r35162 r36898 3 3 Average *Average_Panstarrs_DEV_0_ToInternal (Average_Panstarrs_DEV_0 *in, off_t Nvalues, SecFilt **primary); 4 4 Average_Panstarrs_DEV_0 *AverageInternalTo_Panstarrs_DEV_0 (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_Panstarrs_DEV_0_ToInternal ( Measure_Panstarrs_DEV_0 *in, off_t Nvalues);6 Measure_Panstarrs_DEV_0 *MeasureInternalTo_Panstarrs_DEV_0 ( Measure *in, off_t Nvalues);5 Measure *Measure_Panstarrs_DEV_0_ToInternal (Average *ave, Measure_Panstarrs_DEV_0 *in, off_t Nvalues); 6 Measure_Panstarrs_DEV_0 *MeasureInternalTo_Panstarrs_DEV_0 (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_Panstarrs_DEV_0_ToInternal (SecFilt_Panstarrs_DEV_0 *in, off_t Nvalues); 8 8 SecFilt_Panstarrs_DEV_0 *SecFiltInternalTo_Panstarrs_DEV_0 (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/panstarrs_dev_1_defs.h
r35162 r36898 3 3 Average *Average_Panstarrs_DEV_1_ToInternal (Average_Panstarrs_DEV_1 *in, off_t Nvalues, SecFilt **primary); 4 4 Average_Panstarrs_DEV_1 *AverageInternalTo_Panstarrs_DEV_1 (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_Panstarrs_DEV_1_ToInternal ( Measure_Panstarrs_DEV_1 *in, off_t Nvalues);6 Measure_Panstarrs_DEV_1 *MeasureInternalTo_Panstarrs_DEV_1 ( Measure *in, off_t Nvalues);5 Measure *Measure_Panstarrs_DEV_1_ToInternal (Average *ave, Measure_Panstarrs_DEV_1 *in, off_t Nvalues); 6 Measure_Panstarrs_DEV_1 *MeasureInternalTo_Panstarrs_DEV_1 (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_Panstarrs_DEV_1_ToInternal (SecFilt_Panstarrs_DEV_1 *in, off_t Nvalues); 8 8 SecFilt_Panstarrs_DEV_1 *SecFiltInternalTo_Panstarrs_DEV_1 (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/ps1_dev_1_defs.h
r35162 r36898 3 3 Average *Average_PS1_DEV_1_ToInternal (Average_PS1_DEV_1 *in, off_t Nvalues, SecFilt **primary); 4 4 Average_PS1_DEV_1 *AverageInternalTo_PS1_DEV_1 (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_PS1_DEV_1_ToInternal ( Measure_PS1_DEV_1 *in, off_t Nvalues);6 Measure_PS1_DEV_1 *MeasureInternalTo_PS1_DEV_1 ( Measure *in, off_t Nvalues);5 Measure *Measure_PS1_DEV_1_ToInternal (Average *ave, Measure_PS1_DEV_1 *in, off_t Nvalues); 6 Measure_PS1_DEV_1 *MeasureInternalTo_PS1_DEV_1 (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_PS1_DEV_1_ToInternal (SecFilt_PS1_DEV_1 *in, off_t Nvalues); 8 8 SecFilt_PS1_DEV_1 *SecFiltInternalTo_PS1_DEV_1 (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/ps1_dev_2_defs.h
r35162 r36898 3 3 Average *Average_PS1_DEV_2_ToInternal (Average_PS1_DEV_2 *in, off_t Nvalues, SecFilt **primary); 4 4 Average_PS1_DEV_2 *AverageInternalTo_PS1_DEV_2 (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_PS1_DEV_2_ToInternal ( Measure_PS1_DEV_2 *in, off_t Nvalues);6 Measure_PS1_DEV_2 *MeasureInternalTo_PS1_DEV_2 ( Measure *in, off_t Nvalues);5 Measure *Measure_PS1_DEV_2_ToInternal (Average *ave, Measure_PS1_DEV_2 *in, off_t Nvalues); 6 Measure_PS1_DEV_2 *MeasureInternalTo_PS1_DEV_2 (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_PS1_DEV_2_ToInternal (SecFilt_PS1_DEV_2 *in, off_t Nvalues); 8 8 SecFilt_PS1_DEV_2 *SecFiltInternalTo_PS1_DEV_2 (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/ps1_ref_defs.h
r35162 r36898 3 3 Average *Average_PS1_REF_ToInternal (Average_PS1_REF *in, off_t Nvalues, SecFilt **primary); 4 4 Average_PS1_REF *AverageInternalTo_PS1_REF (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_PS1_REF_ToInternal ( Measure_PS1_REF *in, off_t Nvalues);6 Measure_PS1_REF *MeasureInternalTo_PS1_REF ( Measure *in, off_t Nvalues);5 Measure *Measure_PS1_REF_ToInternal (Average *ave, Measure_PS1_REF *in, off_t Nvalues); 6 Measure_PS1_REF *MeasureInternalTo_PS1_REF (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_PS1_REF_ToInternal (SecFilt_PS1_REF *in, off_t Nvalues); 8 8 SecFilt_PS1_REF *SecFiltInternalTo_PS1_REF (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/ps1_v1_defs.h
r35162 r36898 3 3 Average *Average_PS1_V1_ToInternal (Average_PS1_V1 *in, off_t Nvalues, SecFilt **primary); 4 4 Average_PS1_V1 *AverageInternalTo_PS1_V1 (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_PS1_V1_ToInternal ( Measure_PS1_V1 *in, off_t Nvalues);6 Measure_PS1_V1 *MeasureInternalTo_PS1_V1 ( Measure *in, off_t Nvalues);5 Measure *Measure_PS1_V1_ToInternal (Average *ave, Measure_PS1_V1 *in, off_t Nvalues); 6 Measure_PS1_V1 *MeasureInternalTo_PS1_V1 (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_PS1_V1_ToInternal (SecFilt_PS1_V1 *in, off_t Nvalues); 8 8 SecFilt_PS1_V1 *SecFiltInternalTo_PS1_V1 (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/ps1_v2_defs.h
r35162 r36898 3 3 Average *Average_PS1_V2_ToInternal (Average_PS1_V2 *in, off_t Nvalues, SecFilt **primary); 4 4 Average_PS1_V2 *AverageInternalTo_PS1_V2 (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_PS1_V2_ToInternal ( Measure_PS1_V2 *in, off_t Nvalues);6 Measure_PS1_V2 *MeasureInternalTo_PS1_V2 ( Measure *in, off_t Nvalues);5 Measure *Measure_PS1_V2_ToInternal (Average *ave, Measure_PS1_V2 *in, off_t Nvalues); 6 Measure_PS1_V2 *MeasureInternalTo_PS1_V2 (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_PS1_V2_ToInternal (SecFilt_PS1_V2 *in, off_t Nvalues); 8 8 SecFilt_PS1_V2 *SecFiltInternalTo_PS1_V2 (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/ps1_v3_defs.h
r35162 r36898 3 3 Average *Average_PS1_V3_ToInternal (Average_PS1_V3 *in, off_t Nvalues, SecFilt **primary); 4 4 Average_PS1_V3 *AverageInternalTo_PS1_V3 (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_PS1_V3_ToInternal ( Measure_PS1_V3 *in, off_t Nvalues);6 Measure_PS1_V3 *MeasureInternalTo_PS1_V3 ( Measure *in, off_t Nvalues);5 Measure *Measure_PS1_V3_ToInternal (Average *ave, Measure_PS1_V3 *in, off_t Nvalues); 6 Measure_PS1_V3 *MeasureInternalTo_PS1_V3 (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_PS1_V3_ToInternal (SecFilt_PS1_V3 *in, off_t Nvalues); 8 8 SecFilt_PS1_V3 *SecFiltInternalTo_PS1_V3 (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/include/ps1_v4_defs.h
r35162 r36898 3 3 Average *Average_PS1_V4_ToInternal (Average_PS1_V4 *in, off_t Nvalues, SecFilt **primary); 4 4 Average_PS1_V4 *AverageInternalTo_PS1_V4 (Average *in, off_t Nvalues, SecFilt *primary); 5 Measure *Measure_PS1_V4_ToInternal ( Measure_PS1_V4 *in, off_t Nvalues);6 Measure_PS1_V4 *MeasureInternalTo_PS1_V4 ( Measure *in, off_t Nvalues);5 Measure *Measure_PS1_V4_ToInternal (Average *ave, Measure_PS1_V4 *in, off_t Nvalues); 6 Measure_PS1_V4 *MeasureInternalTo_PS1_V4 (Average *ave, Measure *in, off_t Nvalues); 7 7 SecFilt *SecFilt_PS1_V4_ToInternal (SecFilt_PS1_V4 *in, off_t Nvalues); 8 8 SecFilt_PS1_V4 *SecFiltInternalTo_PS1_V4 (SecFilt *in, off_t Nvalues); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/LoadPhotcodesFITS.c
r35755 r36898 64 64 CONVERT_FORMAT("DVO_PHOTCODE_PS1_V3", PS1_V3); 65 65 CONVERT_FORMAT("DVO_PHOTCODE_PS1_V4", PS1_V4); 66 CONVERT_FORMAT("DVO_PHOTCODE_PS1_V5", PS1_V5); 66 67 67 68 table = GetPhotcodeTable (); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/SavePhotcodesFITS.c
r34260 r36898 30 30 // for the moment, we simply support the latest photcode format for output 31 31 // XXX update this as needed as new formats are defined 32 PhotCode_PS1_V 4 *photcode_output = PhotCode_Internal_To_PS1_V4(table[0].code, table[0].Ncode);32 PhotCode_PS1_V5 *photcode_output = PhotCode_Internal_To_PS1_V5 (table[0].code, table[0].Ncode); 33 33 34 34 /* convert FITS format data to internal format (byteswaps & EXTNAME) */ 35 35 if (!gfits_db_create (&db)) return (FALSE); 36 if (!gfits_table_set_PhotCode_PS1_V 4(&db.ftable, photcode_output, table[0].Ncode)) return (FALSE);36 if (!gfits_table_set_PhotCode_PS1_V5 (&db.ftable, photcode_output, table[0].Ncode)) return (FALSE); 37 37 if (!gfits_db_save (&db)) return (FALSE); 38 38 if (!gfits_db_close (&db)) return (FALSE); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dbExtractAverages.c
r36833 r36898 268 268 break; 269 269 270 case MAG_ 20:271 value.Flt = PhotM 20(field->photcode, average, secfilt);272 break; 273 case MAG_ 80:274 value.Flt = PhotM 80(field->photcode, average, secfilt);270 case MAG_MIN: 271 value.Flt = PhotMmin (field->photcode, average, secfilt); 272 break; 273 case MAG_MAX: 274 value.Flt = PhotMmax (field->photcode, average, secfilt); 275 275 break; 276 276 case MAG_UC_DIST: -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dbExtractMeasures.c
r36840 r36898 90 90 dbValue value; 91 91 double dT; 92 float dR, dD; 92 93 93 94 Coords *mosaic, *fieldc; … … 150 151 case MAG_AVE_ERR: 151 152 case MAG_CHISQ: 153 152 154 case MAG_FLUX_PSF: 153 155 case MAG_FLUX_PSF_ERR: … … 159 161 case MAG_FLUX_KRON_ERR: 160 162 161 case MAG_ 20:162 case MAG_ 80:163 case MAG_MIN: 164 case MAG_MAX: 163 165 case MAG_UC_DIST: 164 166 case MAG_STACK_DET_ID: … … 283 285 value.Flt = PhotMstdev (equiv, average, secfilt); 284 286 break; 285 case MAG_ 20:286 value.Flt = PhotM 20(equiv, average, secfilt);287 break; 288 case MAG_ 80:289 value.Flt = PhotM 80(equiv, average, secfilt);287 case MAG_MIN: 288 value.Flt = PhotMmin (equiv, average, secfilt); 289 break; 290 case MAG_MAX: 291 value.Flt = PhotMmax (equiv, average, secfilt); 290 292 break; 291 293 case MAG_UC_DIST: … … 309 311 } 310 312 case MEAS_RA: /* OK */ 311 value.Flt = average[0].R - measure[0].dR / 3600.0;313 value.Flt = measure[0].R; 312 314 break; 313 315 case MEAS_DEC: /* OK */ 314 value.Flt = average[0].D - measure[0].dD / 3600.0;316 value.Flt = measure[0].D; 315 317 break; 316 318 case MEAS_RA_AVE: /* OK */ … … 323 325 case MEAS_GLON: 324 326 if (!haveGalacticMeas) { 325 ApplyTransform (&GLON_MEAS, &GLAT_MEAS, average[0].R - measure[0].dR / 3600.0, average[0].D - measure[0].dD / 3600.0, celestial_to_galactic);327 ApplyTransform (&GLON_MEAS, &GLAT_MEAS, measure[0].R, measure[0].D, celestial_to_galactic); 326 328 haveGalacticMeas = TRUE; 327 329 } … … 330 332 case MEAS_GLAT: 331 333 if (!haveGalacticMeas) { 332 ApplyTransform (&GLON_MEAS, &GLAT_MEAS, average[0].R - measure[0].dR / 3600.0, average[0].D - measure[0].dD / 3600.0, celestial_to_galactic);334 ApplyTransform (&GLON_MEAS, &GLAT_MEAS, measure[0].R, measure[0].D, celestial_to_galactic); 333 335 haveGalacticMeas = TRUE; 334 336 } … … 337 339 case MEAS_ELON: 338 340 if (!haveEclipticMeas) { 339 ApplyTransform (&ELON_MEAS, &ELAT_MEAS, average[0].R - measure[0].dR / 3600.0, average[0].D - measure[0].dD / 3600.0, celestial_to_ecliptic);341 ApplyTransform (&ELON_MEAS, &ELAT_MEAS, measure[0].R, measure[0].D, celestial_to_ecliptic); 340 342 haveEclipticMeas = TRUE; 341 343 } … … 344 346 case MEAS_ELAT: 345 347 if (!haveEclipticMeas) { 346 ApplyTransform (&ELON_MEAS, &ELAT_MEAS, average[0].R - measure[0].dR / 3600.0, average[0].D - measure[0].dD / 3600.0, celestial_to_ecliptic);348 ApplyTransform (&ELON_MEAS, &ELAT_MEAS, measure[0].R, measure[0].D, celestial_to_ecliptic); 347 349 haveEclipticMeas = TRUE; 348 350 } … … 441 443 // the error. 442 444 case MEAS_RA_OFFSET: /* OK */ 443 value.Flt = measure[0].dR;445 value.Flt = dvoOffsetR (measure, average); 444 446 break; 445 447 case MEAS_DEC_OFFSET: /* OK */ 446 value.Flt = measure[0].dD;448 value.Flt = dvoOffsetD (measure, average); 447 449 break; 448 450 case MEAS_RA_FIT_OFFSET: /* OK */ 449 451 dT = (measure[0].t - average[0].Tmean) / (86400*365.25); 450 value.Flt = average[0].uR * dT + measure[0].dR; 452 dR = dvoOffsetR (measure, average); 453 value.Flt = average[0].uR * dT + dR; 451 454 break; 452 455 case MEAS_DEC_FIT_OFFSET: /* OK */ 453 456 dT = (measure[0].t - average[0].Tmean) / (86400*365.25); 454 value.Flt = average[0].uD * dT + measure[0].dD; 457 dD = dvoOffsetD (measure, average); 458 value.Flt = average[0].uD * dT + dD; 455 459 break; 456 460 case MEAS_RA_OFFSET_ERR: /* OK */ … … 556 560 // measure.xccd if we need it 557 561 Image *image; 558 ra = average[0].R - measure[0].dR / 3600.0;559 dec = average[0].D - measure[0].dD / 3600.0;562 ra = measure[0].R; 563 dec = measure[0].D; 560 564 image = MatchImageDVO (measure[0].t, measure[0].photcode, measure[0].imageID); 561 565 if (image == NULL) break; … … 571 575 { 572 576 Image *image; 573 ra = average[0].R - measure[0].dR / 3600.0;574 dec = average[0].D - measure[0].dD / 3600.0;577 ra = measure[0].R; 578 dec = measure[0].D; 575 579 image = MatchImageDVO (measure[0].t, measure[0].photcode, measure[0].imageID); 576 580 if (image == NULL) break; … … 607 611 } 608 612 if (fieldc == NULL) break; 609 double Rm = average[0].R - measure[0].dR / 3600.0;610 double Dm = average[0].D - measure[0].dD / 3600.0;613 double Rm = measure[0].R; 614 double Dm = measure[0].D; 611 615 RD_to_XY (&XFIELD_MEAS, &YFIELD_MEAS, Rm, Dm, fieldc); 612 616 } … … 624 628 } 625 629 if (fieldc == NULL) break; 626 double Rm = average[0].R - measure[0].dR / 3600.0;627 double Dm = average[0].D - measure[0].dD / 3600.0;630 double Rm = measure[0].R; 631 double Dm = measure[0].D; 628 632 RD_to_XY (&XFIELD_MEAS, &YFIELD_MEAS, Rm, Dm, fieldc); 629 633 } … … 642 646 } 643 647 if (mosaic == NULL) break; 644 double Rm = average[0].R - measure[0].dR / 3600.0;645 double Dm = average[0].D - measure[0].dD / 3600.0;648 double Rm = measure[0].R; 649 double Dm = measure[0].D; 646 650 RD_to_XY (&XMOS_MEAS, &YMOS_MEAS, Rm, Dm, mosaic); 647 651 } … … 659 663 } 660 664 if (mosaic == NULL) break; 661 double Rm = average[0].R - measure[0].dR / 3600.0;662 double Dm = average[0].D - measure[0].dD / 3600.0;665 double Rm = measure[0].R; 666 double Dm = measure[0].D; 663 667 RD_to_XY (&XMOS_MEAS, &YMOS_MEAS, Rm, Dm, mosaic); 664 668 } -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dbFields.c
r36840 r36898 85 85 if (!strcasecmp (string, "nphot")) return (MAG_NPHOT); 86 86 if (!strcasecmp (string, "stdev")) return (MAG_STDEV); 87 if (!strcasecmp (string, " 20")) return (MAG_20);88 if (!strcasecmp (string, " 80")) return (MAG_80);87 if (!strcasecmp (string, "min")) return (MAG_MIN); 88 if (!strcasecmp (string, "max")) return (MAG_MAX); 89 89 if (!strcasecmp (string, "ucdist")) return (MAG_UC_DIST); 90 90 if (!strcasecmp (string, "stackDetectID")) return (MAG_STACK_DET_ID); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_catalog.c
r36833 r36898 56 56 if (!strcasecmp (catformat, "PS1_V3")) return (DVO_FORMAT_PS1_V3); 57 57 if (!strcasecmp (catformat, "PS1_V4")) return (DVO_FORMAT_PS1_V4); 58 if (!strcasecmp (catformat, "PS1_V5")) return (DVO_FORMAT_PS1_V5); 58 59 if (!strcasecmp (catformat, "PS1_REF")) return (DVO_FORMAT_PS1_REF); 59 60 return (DVO_FORMAT_UNDEF); … … 69 70 } 70 71 72 float dvoOffsetR (Measure *measure, Average *average) { 73 74 float dR = (measure[0].R - average[0].R) * 3600.0; 75 return dR; 76 } 77 78 float dvoOffsetD (Measure *measure, Average *average) { 79 80 float dD = (measure[0].D - average[0].D) * 3600.0; 81 return dD; 82 } 83 84 double dvoMeanR (float dR, Average *average) { 85 86 double ra = average[0].R - dR / 3600.0; 87 return ra; 88 } 89 90 double dvoMeanD (float dD, Average *average) { 91 92 double dec = average[0].D - dD / 3600.0; 93 return dec; 94 } 95 71 96 // init all data, or just catalog data 72 97 void dvo_average_init (Average *average) { 73 98 average->R = 0; 74 99 average->D = 0; 75 average->dR = 0;76 average->dD = 0;100 average->dR = NAN; 101 average->dD = NAN; 77 102 78 103 average->uR = 0; 79 104 average->uD = 0; 80 average->duR = 0;81 average->duD = 0;105 average->duR = NAN; 106 average->duD = NAN; 82 107 average->P = 0; 83 average->dP = 0; 108 average->dP = NAN; 109 110 average->Rstk = NAN; 111 average->Dstk = NAN; 112 average->dRstk = NAN; 113 average->dDstk = NAN; 84 114 85 115 average->ChiSqAve = NAN; … … 97 127 average->Nmeasure = 0; 98 128 average->Nmissing = 0; 129 average->Nlensing = 0; 130 average->Nlensobj = 0; 99 131 average->Nextend = 0; 132 100 133 average->measureOffset = -1; 101 134 average->missingOffset = -1; 135 average->lensingOffset = -1; 136 average->lensobjOffset = -1; 137 average->extendOffset = -1; 138 102 139 average->refColor = NAN; 103 140 … … 109 146 average->catID = 0; 110 147 average->extID = 0; 148 average->extIDgc = 0; 111 149 } 112 150 … … 125 163 void dvo_secfilt_init (SecFilt *secfilt) { 126 164 secfilt->M = NAN; 165 secfilt->dM = NAN; 127 166 secfilt->Map = NAN; 167 secfilt->dMap = NAN; 128 168 secfilt->Mkron = NAN; 129 169 secfilt->dMkron = NAN; 130 secfilt->dM = NAN; 131 secfilt->Xm = NAN_S_SHORT; 132 133 secfilt->FluxPSF = NAN; 134 secfilt->dFluxPSF = NAN; 135 secfilt->FluxKron = NAN; 136 secfilt->dFluxKron = NAN; 137 138 secfilt->flags = 0; 170 171 secfilt->Mstdev = NAN; 172 secfilt->Mmin = NAN; 173 secfilt->Mmax = NAN; 174 secfilt->Xm = NAN; 175 139 176 secfilt->Ncode = 0; 140 177 secfilt->Nused = 0; 141 142 secfilt->M_20 = NAN_S_SHORT; 143 secfilt->M_80 = NAN_S_SHORT; 178 secfilt->NusedKron = 0; 179 secfilt->NusedAp = 0; 180 181 secfilt->flags = 0; 182 183 secfilt->MpsfStk = NAN; 184 secfilt->FpsfStk = NAN; 185 secfilt->dFpsfStk = NAN; 186 187 secfilt->MkronStk = NAN; 188 secfilt->FkronStk = NAN; 189 secfilt->dFkronStk = NAN; 190 191 secfilt->MapStk = NAN; 192 secfilt->FapStk = NAN; 193 secfilt->dFapStk = NAN; 194 195 secfilt->stackDetectID = 0; 196 197 secfilt->MpsfWrp = NAN; 198 secfilt->FpsfWrp = NAN; 199 secfilt->dFpsfWrp = NAN; 200 secfilt->sFpsfWrp = NAN; 201 202 secfilt->MkronWrp = NAN; 203 secfilt->FkronWrp = NAN; 204 secfilt->dFkronWrp = NAN; 205 secfilt->sFkronWrp = NAN; 206 207 secfilt->MapWrp = NAN; 208 secfilt->FapWrp = NAN; 209 secfilt->dFapWrp = NAN; 210 secfilt->sFapWrp = NAN; 211 212 secfilt->NusedWrp = 0; 213 secfilt->NusedKronWrp = 0; 214 secfilt->NusedApWrp = 0; 144 215 145 216 secfilt->ubercalDist = 1000; 146 secfilt->Mstdev = NAN_S_SHORT;147 secfilt->stackDetectID = 0;148 217 } 149 218 150 219 // init all data, or just catalog data 151 220 void dvo_measure_init (Measure *measure) { 221 measure->R = NAN; 222 measure->D = NAN; 223 152 224 measure->M = NAN; 153 measure->dR = NAN; 154 measure->dD = NAN; 155 measure->Mcal = NAN; 225 measure->dM = NAN; 156 226 measure->Map = NAN; 227 measure->dMap = NAN; 157 228 measure->Mkron = NAN; 158 229 measure->dMkron = NAN; 159 measure-> dM= NAN;230 measure->Mcal = NAN; 160 231 measure->dMcal = NAN; 161 232 measure->dt = NAN; … … 165 236 measure->FluxKron = NAN; 166 237 measure->dFluxKron = NAN; 238 measure->FluxAp = NAN; 239 measure->dFluxAp = NAN; 167 240 168 241 measure->airmass = NAN; … … 174 247 measure->Yfix = NAN; 175 248 249 measure->XoffKH = NAN; 250 measure->YoffKH = NAN; 251 measure->XoffDCR = NAN; 252 measure->YoffDCR = NAN; 253 measure->XoffGAL = NAN; 254 measure->YoffGAL = NAN; 255 176 256 measure->Sky = NAN; 177 257 measure->dSky = NAN; 178 258 179 259 measure->t = 0; 180 measure->t_msec = 0;181 260 measure->averef = 0; 182 261 183 262 measure->detID = 0; 184 measure->imageID = 0;185 263 measure->objID = 0; 186 264 measure->catID = 0; 265 187 266 measure->extID = 0; 267 268 measure->imageID = 0; 188 269 189 270 measure->psfQF = NAN; 190 271 measure->psfQFperf = NAN; 191 272 measure->psfChisq = NAN; 273 192 274 measure->psfNdof = 0; 193 275 measure->psfNpix = 0; … … 203 285 measure->Myy = 0; 204 286 287 measure->t_msec = 0; 288 measure->photcode = 0; 289 205 290 measure->dXccd = 0; 206 291 measure->dYccd = 0; … … 210 295 measure->pltscale = NAN; 211 296 212 measure->photcode = 0;213 297 measure->dbFlags = 0; 214 298 measure->photFlags = 0; … … 216 300 217 301 void dvo_measureT_init (MeasureTiny *measure) { 218 measure-> dR= NAN;219 measure-> dD= NAN;302 measure->R = NAN; 303 measure->D = NAN; 220 304 measure->M = NAN; 221 305 measure->Mcal = NAN; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_catalog_chipcoords.c
r16810 r36898 56 56 m = average[i].measureOffset; 57 57 for (j = 0; j < average[i].Nmeasure; j++, m++) { 58 ra = average[i].R - measure[m].dR / 3600.0;59 dec = average[i].D - measure[m].dD / 3600.0;58 ra = measure[m].R; 59 dec = measure[m].D; 60 60 N = dvo_match_image (image, Nimage, measure[m].t, measure[m].photcode); 61 61 if (N == -1) continue; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_catalog_mef.c
r33649 r36898 101 101 return (FALSE); 102 102 } 103 catalog[0].measure = FtableToMeasure (&ftable, &catalog[0].Nmeasure, &catalog[0].catformat);103 catalog[0].measure = FtableToMeasure (&ftable, catalog[0].average, &catalog[0].Nmeasure, &catalog[0].catformat); 104 104 if (Nmeasure != catalog[0].Nmeas_disk) { 105 105 fprintf (stderr, "Warning: mismatch between Nmeasure in PHU and Table headers ("OFF_T_FMT" vs "OFF_T_FMT")\n", Nmeasure, catalog[0].Nmeas_disk); … … 289 289 290 290 /* write out Measure table (convert to FITS table format) */ 291 MeasureToFtable (&ftable, catalog[0]. measure, catalog[0].Nmeasure, catalog[0].catformat);291 MeasureToFtable (&ftable, catalog[0].average, catalog[0].measure, catalog[0].Nmeasure, catalog[0].catformat); 292 292 if (!gfits_fwrite_Theader (catalog[0].f, &header)) { 293 293 fprintf (stderr, "can't write table header"); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_catalog_raw.c
r34260 r36898 90 90 FORMAT_CASE (PS1_V3, PS1_V3); 91 91 FORMAT_CASE (PS1_V4, PS1_V4); 92 FORMAT_CASE (PS1_V5, PS1_V5); 92 93 FORMAT_CASE (PS1_REF, PS1_REF); 93 94 … … 144 145 /* read and convert the measures (use a macro to clean this up?) */ 145 146 if (catalog[0].catflags & LOAD_MEAS) { 146 catalog[0].measure = ReadRawMeasure (catalog[0].f, catalog[0]. Nmeasure, catalog[0].catformat);147 catalog[0].measure = ReadRawMeasure (catalog[0].f, catalog[0].average, catalog[0].Nmeasure, catalog[0].catformat); 147 148 } else { 148 149 /* skip over measures */ … … 284 285 if (catalog[0].catformat == DVO_FORMAT_PS1_V3) gfits_modify (&catalog[0].header, "FORMAT", "%s", 1, "PS1_V3"); 285 286 if (catalog[0].catformat == DVO_FORMAT_PS1_V4) gfits_modify (&catalog[0].header, "FORMAT", "%s", 1, "PS1_V4"); 287 if (catalog[0].catformat == DVO_FORMAT_PS1_V5) gfits_modify (&catalog[0].header, "FORMAT", "%s", 1, "PS1_V5"); 286 288 if (catalog[0].catformat == DVO_FORMAT_PS1_REF) gfits_modify (&catalog[0].header, "FORMAT", "%s", 1, "PS1_REF"); 287 289 … … 303 305 /* write averages and measures */ 304 306 WriteRawAverage (f, catalog[0].average, catalog[0].Naverage, catalog[0].catformat, primary); 305 WriteRawMeasure (f, catalog[0]. measure, catalog[0].Nmeasure, catalog[0].catformat);307 WriteRawMeasure (f, catalog[0].average, catalog[0].measure, catalog[0].Nmeasure, catalog[0].catformat); 306 308 307 309 /* write missing data */ … … 387 389 FORMAT_CASE (PS1_V3, PS1_V3); 388 390 FORMAT_CASE (PS1_V4, PS1_V4); 391 FORMAT_CASE (PS1_V5, PS1_V5); 389 392 FORMAT_CASE (PS1_REF, PS1_REF); 390 393 … … 438 441 FORMAT_CASE (PS1_V3, PS1_V3); 439 442 FORMAT_CASE (PS1_V4, PS1_V4); 443 FORMAT_CASE (PS1_V5, PS1_V5); 440 444 FORMAT_CASE (PS1_REF, PS1_REF); 441 445 … … 451 455 /** Average / Raw Table conversions **/ 452 456 453 Measure *ReadRawMeasure (FILE *f, off_t Nmeasure, char format) {457 Measure *ReadRawMeasure (FILE *f, Average *average, off_t Nmeasure, char format) { 454 458 455 459 Measure *measure; … … 467 471 } \ 468 472 gfits_convert_Measure_##TYPE (tmpMeasure, sizeof(Measure_##TYPE), Nmeasure); \ 469 measure = Measure_##TYPE##_ToInternal ( tmpMeasure, Nmeasure); \473 measure = Measure_##TYPE##_ToInternal (average, tmpMeasure, Nmeasure); \ 470 474 free (tmpMeasure); \ 471 475 break; } … … 481 485 } 482 486 gfits_convert_Measure (measure, sizeof(Measure), Nmeasure); 487 break; } 488 489 FORMAT_CASE (LONEOS, Loneos); 490 FORMAT_CASE (ELIXIR, Elixir); 491 FORMAT_CASE (PANSTARRS_DEV_0, Panstarrs_DEV_0); 492 FORMAT_CASE (PANSTARRS_DEV_1, Panstarrs_DEV_1); 493 FORMAT_CASE (PS1_DEV_1, PS1_DEV_1); 494 FORMAT_CASE (PS1_DEV_2, PS1_DEV_2); 495 FORMAT_CASE (PS1_V1, PS1_V1); 496 FORMAT_CASE (PS1_V2, PS1_V2); 497 FORMAT_CASE (PS1_V3, PS1_V3); 498 FORMAT_CASE (PS1_V5, PS1_V5); 499 FORMAT_CASE (PS1_REF, PS1_REF); 500 501 default: 502 fprintf (stderr, "error reading measures\n"); 503 return (NULL); 504 } 505 # undef FORMAT_CASE 506 507 return (measure); 508 } 509 510 /* accepts and converts internal measure formats and outputs 511 raw data in the specified format */ 512 int WriteRawMeasure (FILE *f, Average *average, Measure *measure, off_t Nmeasure, char format) { 513 514 // this macro generates the case statements for each type 515 # define FORMAT_CASE(NAME,TYPE) \ 516 case DVO_FORMAT_##NAME: { \ 517 off_t nitems; \ 518 Measure_##TYPE *tmpMeasure; \ 519 tmpMeasure = MeasureInternalTo_##TYPE (average, measure, Nmeasure); \ 520 gfits_convert_Measure_##TYPE (tmpMeasure, sizeof(Measure_##TYPE), Nmeasure); \ 521 nitems = fwrite (tmpMeasure, sizeof(Measure_##TYPE), Nmeasure, f); \ 522 free (tmpMeasure); \ 523 if (nitems != Nmeasure) { \ 524 fprintf (stderr, "failed to write measures ("OFF_T_FMT" vs "OFF_T_FMT")\n", nitems, Nmeasure); \ 525 return (FALSE); \ 526 } \ 527 break; } 528 529 switch (format) { 530 case DVO_FORMAT_INTERNAL: { 531 off_t nitems; 532 gfits_convert_Measure (measure, sizeof(Measure), Nmeasure); 533 nitems = fwrite (measure, sizeof(Measure), Nmeasure, f); 534 if (nitems != Nmeasure) { 535 fprintf (stderr, "failed to write measures ("OFF_T_FMT" vs "OFF_T_FMT")\n", nitems, Nmeasure); 536 return (FALSE); 537 } 483 538 break; } 484 539 … … 493 548 FORMAT_CASE (PS1_V3, PS1_V3); 494 549 FORMAT_CASE (PS1_V4, PS1_V4); 495 FORMAT_CASE (PS1_REF, PS1_REF); 496 497 default: 498 fprintf (stderr, "error reading measures\n"); 499 return (NULL); 500 } 501 # undef FORMAT_CASE 502 503 return (measure); 504 } 505 506 /* accepts and converts internal measure formats and outputs 507 raw data in the specified format */ 508 int WriteRawMeasure (FILE *f, Measure *measure, off_t Nmeasure, char format) { 509 510 // this macro generates the case statements for each type 511 # define FORMAT_CASE(NAME,TYPE) \ 512 case DVO_FORMAT_##NAME: { \ 513 off_t nitems; \ 514 Measure_##TYPE *tmpMeasure; \ 515 tmpMeasure = MeasureInternalTo_##TYPE (measure, Nmeasure); \ 516 gfits_convert_Measure_##TYPE (tmpMeasure, sizeof(Measure_##TYPE), Nmeasure); \ 517 nitems = fwrite (tmpMeasure, sizeof(Measure_##TYPE), Nmeasure, f); \ 518 free (tmpMeasure); \ 519 if (nitems != Nmeasure) { \ 520 fprintf (stderr, "failed to write measures ("OFF_T_FMT" vs "OFF_T_FMT")\n", nitems, Nmeasure); \ 521 return (FALSE); \ 522 } \ 523 break; } 524 525 switch (format) { 526 case DVO_FORMAT_INTERNAL: { 527 off_t nitems; 528 gfits_convert_Measure (measure, sizeof(Measure), Nmeasure); 529 nitems = fwrite (measure, sizeof(Measure), Nmeasure, f); 530 if (nitems != Nmeasure) { 531 fprintf (stderr, "failed to write measures ("OFF_T_FMT" vs "OFF_T_FMT")\n", nitems, Nmeasure); 532 return (FALSE); 533 } 534 break; } 535 536 FORMAT_CASE (LONEOS, Loneos); 537 FORMAT_CASE (ELIXIR, Elixir); 538 FORMAT_CASE (PANSTARRS_DEV_0, Panstarrs_DEV_0); 539 FORMAT_CASE (PANSTARRS_DEV_1, Panstarrs_DEV_1); 540 FORMAT_CASE (PS1_DEV_1, PS1_DEV_1); 541 FORMAT_CASE (PS1_DEV_2, PS1_DEV_2); 542 FORMAT_CASE (PS1_V1, PS1_V1); 543 FORMAT_CASE (PS1_V2, PS1_V2); 544 FORMAT_CASE (PS1_V3, PS1_V3); 545 FORMAT_CASE (PS1_V4, PS1_V4); 550 FORMAT_CASE (PS1_V5, PS1_V5); 546 551 FORMAT_CASE (PS1_REF, PS1_REF); 547 552 … … 599 604 FORMAT_CASE (PS1_V3, PS1_V3); 600 605 FORMAT_CASE (PS1_V4, PS1_V4); 606 FORMAT_CASE (PS1_V5, PS1_V5); 601 607 FORMAT_CASE (PS1_REF, PS1_REF); 602 608 … … 650 656 FORMAT_CASE (PS1_V3, PS1_V3); 651 657 FORMAT_CASE (PS1_V4, PS1_V4); 658 FORMAT_CASE (PS1_V5, PS1_V5); 652 659 FORMAT_CASE (PS1_REF, PS1_REF); 653 660 -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_catalog_split.c
r34844 r36898 277 277 } 278 278 /* convert data format to internal : returns number of row read in Nmeasure */ 279 catalog[0].measure = FtableToMeasure (&ftable, &Nmeasure, &catalog[0].catformat);279 catalog[0].measure = FtableToMeasure (&ftable, catalog[0].average, &Nmeasure, &catalog[0].catformat); 280 280 if (Nmeasure != catalog[0].Nmeas_disk) { 281 281 fprintf (stderr, "Warning: mismatch between Nmeasure in PHU and Table headers ("OFF_T_FMT" vs "OFF_T_FMT")\n", Nmeasure, catalog[0].Nmeas_disk); … … 476 476 477 477 /* convert data format to internal : returns number of row read in Nmeasure */ 478 catalog[0].measure = FtableToMeasure (&ftable, &Nmeasure, &catalog[0].catformat);478 catalog[0].measure = FtableToMeasure (&ftable, catalog[0].average, &Nmeasure, &catalog[0].catformat); 479 479 if (Nmeasure != Nrows) { 480 480 // XXX this condition denotes the eof has been reached; not an error or a warning … … 621 621 assert (catalog[0].Nmeas_disk >= catalog[0].Nmeas_off); 622 622 623 // convert to external table format 624 if (!MeasureToFtable (&ftable, &catalog[0].measure[first], Nrows, catalog[0].catformat)) {623 // convert to external table format (note that the block above does not damage or free catalog.average) 624 if (!MeasureToFtable (&ftable, catalog[0].average, &catalog[0].measure[first], Nrows, catalog[0].catformat)) { 625 625 fprintf (stderr, "trouble converting format\n"); 626 626 goto failure; … … 821 821 822 822 // convert to external table format 823 if (!MeasureToFtable (&ftable, &catalog[0].measure[first], Nrows, catalog[0].catformat)) {823 if (!MeasureToFtable (&ftable, catalog[0].average, &catalog[0].measure[first], Nrows, catalog[0].catformat)) { 824 824 fprintf (stderr, "trouble converting format\n"); 825 825 goto failure; … … 1000 1000 1001 1001 // convert to external table format 1002 if (!MeasureToFtable (&ftable, &catalog[0].measure[first], Nrows, catalog[0].catformat)) { 1002 // XXX does catalog.measure have averef correctly set up? 1003 if (!MeasureToFtable (&ftable, catalog[0].average, &catalog[0].measure[first], Nrows, catalog[0].catformat)) { 1003 1004 fprintf (stderr, "trouble converting format\n"); 1004 1005 goto failure; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert.c
r36528 r36898 41 41 CONVERT_FORMAT ("DVO_AVERAGE_PS1_V3", PS1_V3); 42 42 CONVERT_FORMAT ("DVO_AVERAGE_PS1_V4", PS1_V4); 43 CONVERT_FORMAT ("DVO_AVERAGE_PS1_V5", PS1_V5); 43 44 CONVERT_FORMAT ("DVO_AVERAGE_PS1_REF", PS1_REF); 44 45 # undef CONVERT_FORMAT … … 112 113 CONVERT_FORMAT ("DVO_AVERAGE_PS1_V3", PS1_V3, PS1_V3); 113 114 CONVERT_FORMAT ("DVO_AVERAGE_PS1_V4", PS1_V4, PS1_V4); 115 CONVERT_FORMAT ("DVO_AVERAGE_PS1_V5", PS1_V5, PS1_V5); 114 116 CONVERT_FORMAT ("DVO_AVERAGE_PS1_REF", PS1_REF, PS1_REF); 115 117 # undef CONVERT_FORMAT … … 147 149 FORMAT_CASE (PS1_V3, PS1_V3); 148 150 FORMAT_CASE (PS1_V4, PS1_V4); 151 FORMAT_CASE (PS1_V5, PS1_V5); 149 152 FORMAT_CASE (PS1_REF, PS1_REF); 150 153 # undef FORMAT_CASE … … 159 162 /*** Measure / FTable conversion functions ***/ 160 163 161 Measure *FtableToMeasure (FTable *ftable, off_t *Nmeasure, char *format) { 164 // FtableToMeasure needs the Average since old formats stored measure.dR,dD only 165 Measure *FtableToMeasure (FTable *ftable, Average *average, off_t *Nmeasure, char *format) { 162 166 163 167 Measure *measure; … … 179 183 exit (2); 180 184 } 181 measure = Measure_PS1_V4alt_ToInternal (tmpMeasure, *Nmeasure); 185 myAssert (average, "conversion to internal needs average table"); 186 measure = Measure_PS1_V4alt_ToInternal (average, tmpMeasure, *Nmeasure); 182 187 free (tmpMeasure); 183 188 *format = DVO_FORMAT_PS1_V4; … … 185 190 } 186 191 187 # define CONVERT_FORMAT(NAME, FORMAT, TYPE )\188 if (!strcmp (extname, NAME)) { \189 Measure_##TYPE *tmpMeasure; \192 # define CONVERT_FORMAT(NAME, FORMAT, TYPE, ABS_COORDS) \ 193 if (!strcmp (extname, NAME)) { \ 194 Measure_##TYPE *tmpMeasure; \ 190 195 tmpMeasure = gfits_table_get_Measure_##TYPE (ftable, Nmeasure, NULL); \ 191 if (!tmpMeasure) { \ 192 fprintf (stderr, "ERROR: failed to read measures\n"); \ 193 exit (2); \ 194 } \ 195 measure = Measure_##TYPE##_ToInternal (tmpMeasure, *Nmeasure); \ 196 free (tmpMeasure); \ 197 *format = DVO_FORMAT_##FORMAT; \ 196 if (!tmpMeasure) { \ 197 fprintf (stderr, "ERROR: failed to read measures\n"); \ 198 exit (2); \ 199 } \ 200 myAssert (ABS_COORDS || average, "conversion to internal needs average table"); \ 201 measure = Measure_##TYPE##_ToInternal (average, tmpMeasure, *Nmeasure); \ 202 free (tmpMeasure); \ 203 *format = DVO_FORMAT_##FORMAT; \ 198 204 return (measure); } 199 205 … … 208 214 } 209 215 210 CONVERT_FORMAT ("DVO_MEASURE_ELIXIR", ELIXIR, Elixir); 211 CONVERT_FORMAT ("DVO_MEASURE_LONEOS", LONEOS, Loneos); 212 CONVERT_FORMAT ("DVO_MEASURE_PANSTARRS_DEV_0", PANSTARRS_DEV_0, Panstarrs_DEV_0); 213 CONVERT_FORMAT ("DVO_MEASURE_PANSTARRS_DEV_1", PANSTARRS_DEV_1, Panstarrs_DEV_1); 214 CONVERT_FORMAT ("DVO_MEASURE_PS1_DEV_1", PS1_DEV_1, PS1_DEV_1); 215 CONVERT_FORMAT ("DVO_MEASURE_PS1_DEV_2", PS1_DEV_2, PS1_DEV_2); 216 CONVERT_FORMAT ("DVO_MEASURE_PS1_V1", PS1_V1, PS1_V1); 217 CONVERT_FORMAT ("DVO_MEASURE_PS1_V2", PS1_V2, PS1_V2); 218 CONVERT_FORMAT ("DVO_MEASURE_PS1_V3", PS1_V3, PS1_V3); 219 CONVERT_FORMAT ("DVO_MEASURE_PS1_V4", PS1_V4, PS1_V4); 220 CONVERT_FORMAT ("DVO_MEASURE_PS1_REF", PS1_REF, PS1_REF); 216 CONVERT_FORMAT ("DVO_MEASURE_ELIXIR", ELIXIR, Elixir, FALSE); 217 CONVERT_FORMAT ("DVO_MEASURE_LONEOS", LONEOS, Loneos, FALSE); 218 CONVERT_FORMAT ("DVO_MEASURE_PANSTARRS_DEV_0", PANSTARRS_DEV_0, Panstarrs_DEV_0, FALSE); 219 CONVERT_FORMAT ("DVO_MEASURE_PANSTARRS_DEV_1", PANSTARRS_DEV_1, Panstarrs_DEV_1, FALSE); 220 CONVERT_FORMAT ("DVO_MEASURE_PS1_DEV_1", PS1_DEV_1, PS1_DEV_1, FALSE); 221 CONVERT_FORMAT ("DVO_MEASURE_PS1_DEV_2", PS1_DEV_2, PS1_DEV_2, FALSE); 222 CONVERT_FORMAT ("DVO_MEASURE_PS1_V1", PS1_V1, PS1_V1, FALSE); 223 CONVERT_FORMAT ("DVO_MEASURE_PS1_V2", PS1_V2, PS1_V2, FALSE); 224 CONVERT_FORMAT ("DVO_MEASURE_PS1_V3", PS1_V3, PS1_V3, FALSE); 225 CONVERT_FORMAT ("DVO_MEASURE_PS1_V4", PS1_V4, PS1_V4, FALSE); 226 CONVERT_FORMAT ("DVO_MEASURE_PS1_V5", PS1_V5, PS1_V5, TRUE); 227 CONVERT_FORMAT ("DVO_MEASURE_PS1_REF", PS1_REF, PS1_REF, FALSE); 221 228 # undef CONVERT_FORMAT 222 229 … … 227 234 } 228 235 229 int MeasureToFtable (FTable *ftable, Measure *measure, off_t Nmeasure, char format) { 230 231 # define FORMAT_CASE(FORMAT, TYPE) \ 236 // MeasureToFtable needs the Average since old formats stored measure.dR,dD only 237 int MeasureToFtable (FTable *ftable, Average *average, Measure *measure, off_t Nmeasure, char format) { 238 239 # define FORMAT_CASE(FORMAT, TYPE, ABS_COORDS) \ 232 240 case DVO_FORMAT_##FORMAT: { \ 233 241 Measure_##TYPE *tmpMeasure; \ 234 tmpMeasure = MeasureInternalTo_##TYPE (measure, Nmeasure); \ 242 myAssert (ABS_COORDS || average, "conversion to internal needs average table"); \ 243 tmpMeasure = MeasureInternalTo_##TYPE (average, measure, Nmeasure); \ 235 244 gfits_table_set_Measure_##TYPE (ftable, tmpMeasure, Nmeasure); \ 236 245 free (tmpMeasure); \ … … 243 252 break; } 244 253 245 FORMAT_CASE (ELIXIR, Elixir); 246 FORMAT_CASE (LONEOS, Loneos); 247 FORMAT_CASE (PANSTARRS_DEV_0, Panstarrs_DEV_0); 248 FORMAT_CASE (PANSTARRS_DEV_1, Panstarrs_DEV_1); 249 FORMAT_CASE (PS1_DEV_1, PS1_DEV_1); 250 FORMAT_CASE (PS1_DEV_2, PS1_DEV_2); 251 FORMAT_CASE (PS1_V1, PS1_V1); 252 FORMAT_CASE (PS1_V2, PS1_V2); 253 FORMAT_CASE (PS1_V3, PS1_V3); 254 FORMAT_CASE (PS1_V4, PS1_V4); 255 FORMAT_CASE (PS1_REF, PS1_REF); 254 FORMAT_CASE (ELIXIR, Elixir, FALSE); 255 FORMAT_CASE (LONEOS, Loneos, FALSE); 256 FORMAT_CASE (PANSTARRS_DEV_0, Panstarrs_DEV_0, FALSE); 257 FORMAT_CASE (PANSTARRS_DEV_1, Panstarrs_DEV_1, FALSE); 258 FORMAT_CASE (PS1_DEV_1, PS1_DEV_1, FALSE); 259 FORMAT_CASE (PS1_DEV_2, PS1_DEV_2, FALSE); 260 FORMAT_CASE (PS1_V1, PS1_V1, FALSE); 261 FORMAT_CASE (PS1_V2, PS1_V2, FALSE); 262 FORMAT_CASE (PS1_V3, PS1_V3, FALSE); 263 FORMAT_CASE (PS1_V4, PS1_V4, FALSE); 264 FORMAT_CASE (PS1_V5, PS1_V5, TRUE); 265 FORMAT_CASE (PS1_REF, PS1_REF, FALSE); 256 266 # undef FORMAT_CASE 257 267 … … 309 319 CONVERT_FORMAT ("DVO_SECFILT_PS1_V3", PS1_V3, PS1_V3); 310 320 CONVERT_FORMAT ("DVO_SECFILT_PS1_V4", PS1_V4, PS1_V4); 321 CONVERT_FORMAT ("DVO_SECFILT_PS1_V5", PS1_V5, PS1_V5); 311 322 CONVERT_FORMAT ("DVO_SECFILT_PS1_REF", PS1_REF, PS1_REF); 312 323 # undef CONVERT_FORMAT … … 344 355 FORMAT_CASE (PS1_V3, PS1_V3); 345 356 FORMAT_CASE (PS1_V4, PS1_V4); 357 FORMAT_CASE (PS1_V5, PS1_V5); 346 358 FORMAT_CASE (PS1_REF, PS1_REF); 347 359 # undef FORMAT_CASE … … 428 440 CONVERT_FORMAT ("DVO_IMAGE_PS1_V3", PS1_V3, PS1_V3); 429 441 CONVERT_FORMAT ("DVO_IMAGE_PS1_V4", PS1_V4, PS1_V4); 442 CONVERT_FORMAT ("DVO_IMAGE_PS1_V5", PS1_V5, PS1_V5); 430 443 CONVERT_FORMAT ("DVO_IMAGE_PS1_REF", PS1_REF, PS1_REF); 431 444 … … 467 480 FORMAT_CASE (PS1_V3, PS1_V3); 468 481 FORMAT_CASE (PS1_V4, PS1_V4); 482 FORMAT_CASE (PS1_V5, PS1_V5); 469 483 FORMAT_CASE (PS1_REF, PS1_REF); 470 484 … … 522 536 FORMAT_CASE (PS1_V3, PS1_V3); 523 537 FORMAT_CASE (PS1_V4, PS1_V4); 538 FORMAT_CASE (PS1_V5, PS1_V5); 524 539 FORMAT_CASE (PS1_REF, PS1_REF); 525 540 -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_1.c
r35162 r36898 3 3 /* convert PS1_DEV_1 formats to internal formats */ 4 4 5 Measure *Measure_PS1_DEV_1_ToInternal ( Measure_PS1_DEV_1 *in, off_t Nvalues) {5 Measure *Measure_PS1_DEV_1_ToInternal (Average *ave, Measure_PS1_DEV_1 *in, off_t Nvalues) { 6 6 7 7 off_t i; … … 12 12 for (i = 0; i < Nvalues; i++) { 13 13 dvo_measure_init (&out[i]); 14 out[i].dR = in[i].dR; 15 out[i].dD = in[i].dD; 14 15 int averef = in[i].averef; 16 out[i].R = ave[averef].R - in[i].dR / 3600.0; 17 out[i].D = ave[averef].D - in[i].dD / 3600.0; 16 18 out[i].M = in[i].M; 17 19 out[i].Mcal = in[i].Mcal; … … 50 52 } 51 53 52 Measure_PS1_DEV_1 *MeasureInternalTo_PS1_DEV_1 ( Measure *in, off_t Nvalues) {54 Measure_PS1_DEV_1 *MeasureInternalTo_PS1_DEV_1 (Average *ave, Measure *in, off_t Nvalues) { 53 55 54 56 off_t i; … … 58 60 59 61 for (i = 0; i < Nvalues; i++) { 60 out[i].dR = in[i].dR; 61 out[i].dD = in[i].dD; 62 int averef = in[i].averef; 63 64 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 65 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 62 66 out[i].M = in[i].M; 63 67 out[i].Mcal = in[i].Mcal; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_2.c
r36833 r36898 3 3 /* convert PS1_DEV_2 formats to internal formats */ 4 4 5 Measure *Measure_PS1_DEV_2_ToInternal ( Measure_PS1_DEV_2 *in, off_t Nvalues) {5 Measure *Measure_PS1_DEV_2_ToInternal (Average *ave, Measure_PS1_DEV_2 *in, off_t Nvalues) { 6 6 7 7 off_t i; … … 12 12 for (i = 0; i < Nvalues; i++) { 13 13 dvo_measure_init (&out[i]); 14 out[i].dR = in[i].dR; 15 out[i].dD = in[i].dD; 14 15 int averef = in[i].averef; 16 out[i].R = ave[averef].R - in[i].dR / 3600.0; 17 out[i].D = ave[averef].D - in[i].dD / 3600.0; 16 18 out[i].M = in[i].M; 17 19 out[i].Mcal = in[i].Mcal; … … 48 50 } 49 51 50 Measure_PS1_DEV_2 *MeasureInternalTo_PS1_DEV_2 ( Measure *in, off_t Nvalues) {52 Measure_PS1_DEV_2 *MeasureInternalTo_PS1_DEV_2 (Average *ave, Measure *in, off_t Nvalues) { 51 53 52 54 off_t i; … … 56 58 57 59 for (i = 0; i < Nvalues; i++) { 58 out[i].dR = in[i].dR; 59 out[i].dD = in[i].dD; 60 int averef = in[i].averef; 61 62 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 63 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 60 64 out[i].M = in[i].M; 61 65 out[i].Mcal = in[i].Mcal; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_PS1_REF.c
r35162 r36898 3 3 /* convert PS1_REF formats to internal formats */ 4 4 5 Measure *Measure_PS1_REF_ToInternal ( Measure_PS1_REF *in, off_t Nvalues) {5 Measure *Measure_PS1_REF_ToInternal (Average *ave, Measure_PS1_REF *in, off_t Nvalues) { 6 6 7 7 off_t i; … … 13 13 dvo_measure_init (&out[i]); 14 14 15 out[i].dR = in[i].dR; 16 out[i].dD = in[i].dD; 15 int averef = in[i].averef; 16 out[i].R = ave[averef].R - in[i].dR / 3600.0; 17 out[i].D = ave[averef].D - in[i].dD / 3600.0; 17 18 out[i].M = in[i].M; 18 19 out[i].dM = in[i].dM; … … 28 29 } 29 30 30 Measure_PS1_REF *MeasureInternalTo_PS1_REF ( Measure *in, off_t Nvalues) {31 Measure_PS1_REF *MeasureInternalTo_PS1_REF (Average *ave, Measure *in, off_t Nvalues) { 31 32 32 33 off_t i; … … 36 37 37 38 for (i = 0; i < Nvalues; i++) { 38 out[i].dR = in[i].dR; 39 out[i].dD = in[i].dD; 39 int averef = in[i].averef; 40 41 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 42 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 40 43 out[i].M = in[i].M; 41 44 out[i].dM = in[i].dM; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_PS1_V1.c
r36833 r36898 3 3 /* convert PS1_V1 formats to internal formats */ 4 4 5 Measure *Measure_PS1_V1_ToInternal ( Measure_PS1_V1 *in, off_t Nvalues) {5 Measure *Measure_PS1_V1_ToInternal (Average *ave, Measure_PS1_V1 *in, off_t Nvalues) { 6 6 7 7 off_t i; … … 13 13 dvo_measure_init (&out[i]); 14 14 15 out[i].dR = in[i].dR; 16 out[i].dD = in[i].dD; 15 int averef = in[i].averef; 16 out[i].R = ave[averef].R - in[i].dR / 3600.0; 17 out[i].D = ave[averef].D - in[i].dD / 3600.0; 17 18 out[i].M = in[i].M; 18 19 out[i].Mcal = in[i].Mcal; … … 58 59 } 59 60 60 Measure_PS1_V1 *MeasureInternalTo_PS1_V1 ( Measure *in, off_t Nvalues) {61 Measure_PS1_V1 *MeasureInternalTo_PS1_V1 (Average *ave, Measure *in, off_t Nvalues) { 61 62 62 63 off_t i; … … 66 67 67 68 for (i = 0; i < Nvalues; i++) { 68 out[i].dR = in[i].dR; 69 out[i].dD = in[i].dD; 69 int averef = in[i].averef; 70 71 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 72 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 70 73 out[i].M = in[i].M; 71 74 out[i].Mcal = in[i].Mcal; … … 199 202 out[i].Ncode = in[i].Ncode; 200 203 out[i].Nused = in[i].Nused; 201 out[i].M _20 = in[i].M_20;202 out[i].M _80 = in[i].M_80;204 out[i].Mmin = in[i].M_20*0.001; 205 out[i].Mmax = in[i].M_80*0.001; 203 206 } 204 207 return (out); … … 218 221 out[i].Ncode = in[i].Ncode; 219 222 out[i].Nused = in[i].Nused; 220 out[i].M_20 = in[i].M _20;221 out[i].M_80 = in[i].M _80;223 out[i].M_20 = in[i].Mmin*1000.0; 224 out[i].M_80 = in[i].Mmax*1000.0; 222 225 } 223 226 return (out); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_PS1_V2.c
r36833 r36898 3 3 /* convert PS1_V2 formats to internal formats */ 4 4 5 Measure *Measure_PS1_V2_ToInternal ( Measure_PS1_V2 *in, off_t Nvalues) {5 Measure *Measure_PS1_V2_ToInternal (Average *ave, Measure_PS1_V2 *in, off_t Nvalues) { 6 6 7 7 off_t i; … … 13 13 dvo_measure_init (&out[i]); 14 14 15 out[i].dR = in[i].dR; 16 out[i].dD = in[i].dD; 15 int averef = in[i].averef; 16 out[i].R = ave[averef].R - in[i].dR / 3600.0; 17 out[i].D = ave[averef].D - in[i].dD / 3600.0; 17 18 out[i].M = in[i].M; 18 19 out[i].Mcal = in[i].Mcal; … … 59 60 } 60 61 61 Measure_PS1_V2 *MeasureInternalTo_PS1_V2 ( Measure *in, off_t Nvalues) {62 Measure_PS1_V2 *MeasureInternalTo_PS1_V2 (Average *ave, Measure *in, off_t Nvalues) { 62 63 63 64 off_t i; … … 67 68 68 69 for (i = 0; i < Nvalues; i++) { 69 out[i].dR = in[i].dR; 70 out[i].dD = in[i].dD; 70 int averef = in[i].averef; 71 72 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 73 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 71 74 out[i].M = in[i].M; 72 75 out[i].Mcal = in[i].Mcal; … … 209 212 out[i].Ncode = in[i].Ncode; 210 213 out[i].Nused = in[i].Nused; 211 out[i].M _20 = in[i].M_20;212 out[i].M _80 = in[i].M_80;214 out[i].Mmin = in[i].M_20*0.001; 215 out[i].Mmax = in[i].M_80*0.001; 213 216 } 214 217 return (out); … … 229 232 out[i].Ncode = in[i].Ncode; 230 233 out[i].Nused = in[i].Nused; 231 out[i].M_20 = in[i].M _20;232 out[i].M_80 = in[i].M _80;234 out[i].M_20 = in[i].Mmin*1000.0; 235 out[i].M_80 = in[i].Mmax*1000.0; 233 236 } 234 237 return (out); -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_PS1_V3.c
r36833 r36898 3 3 /* convert PS1_V3 formats to internal formats */ 4 4 5 Measure *Measure_PS1_V3_ToInternal ( Measure_PS1_V3 *in, off_t Nvalues) {5 Measure *Measure_PS1_V3_ToInternal (Average *ave, Measure_PS1_V3 *in, off_t Nvalues) { 6 6 7 7 off_t i; … … 13 13 dvo_measure_init (&out[i]); 14 14 15 out[i].dR = in[i].dR; 16 out[i].dD = in[i].dD; 15 int averef = in[i].averef; 16 out[i].R = ave[averef].R - in[i].dR / 3600.0; 17 out[i].D = ave[averef].D - in[i].dD / 3600.0; 17 18 out[i].M = in[i].M; 18 19 out[i].Mcal = in[i].Mcal; … … 59 60 } 60 61 61 Measure_PS1_V3 *MeasureInternalTo_PS1_V3 ( Measure *in, off_t Nvalues) {62 Measure_PS1_V3 *MeasureInternalTo_PS1_V3 (Average *ave, Measure *in, off_t Nvalues) { 62 63 63 64 off_t i; … … 67 68 68 69 for (i = 0; i < Nvalues; i++) { 69 out[i].dR = in[i].dR; 70 out[i].dD = in[i].dD; 70 int averef = in[i].averef; 71 72 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 73 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 71 74 out[i].M = in[i].M; 72 75 out[i].Mcal = in[i].Mcal; … … 214 217 out[i].Ncode = in[i].Ncode; 215 218 out[i].Nused = in[i].Nused; 216 out[i].M _20 = in[i].M_20;217 out[i].M _80 = in[i].M_80;219 out[i].Mmin = in[i].M_20*0.001; 220 out[i].Mmax = in[i].M_80*0.001; 218 221 out[i].Mstdev = in[i].Mstdev; 219 222 out[i].ubercalDist = in[i].ubercalDist; … … 237 240 out[i].Ncode = in[i].Ncode; 238 241 out[i].Nused = in[i].Nused; 239 out[i].M_20 = in[i].M _20;240 out[i].M_80 = in[i].M _80;242 out[i].M_20 = in[i].Mmin*1000.0; 243 out[i].M_80 = in[i].Mmax*1000.0; 241 244 out[i].Mstdev = in[i].Mstdev; 242 245 out[i].ubercalDist = in[i].ubercalDist; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_PS1_V4.c
r36833 r36898 3 3 /* convert PS1_V4 formats to internal formats */ 4 4 5 Measure *Measure_PS1_V4_ToInternal ( Measure_PS1_V4 *in, off_t Nvalues) {5 Measure *Measure_PS1_V4_ToInternal (Average *ave, Measure_PS1_V4 *in, off_t Nvalues) { 6 6 7 7 off_t i; … … 13 13 dvo_measure_init (&out[i]); 14 14 15 out[i].dR = in[i].dR; 16 out[i].dD = in[i].dD; 15 int averef = in[i].averef; 16 out[i].R = ave[averef].R - in[i].dR / 3600.0; 17 out[i].D = ave[averef].D - in[i].dD / 3600.0; 17 18 out[i].M = in[i].M; 18 19 out[i].Mcal = in[i].Mcal; … … 68 69 } 69 70 70 Measure_PS1_V4 *MeasureInternalTo_PS1_V4 ( Measure *in, off_t Nvalues) {71 Measure_PS1_V4 *MeasureInternalTo_PS1_V4 (Average *ave, Measure *in, off_t Nvalues) { 71 72 72 73 off_t i; … … 76 77 77 78 for (i = 0; i < Nvalues; i++) { 78 out[i].dR = in[i].dR; 79 out[i].dD = in[i].dD; 79 int averef = in[i].averef; 80 81 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 82 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 80 83 out[i].M = in[i].M; 81 84 out[i].Mcal = in[i].Mcal; … … 237 240 out[i].dM = in[i].dM; 238 241 out[i].Xm = in[i].Xm; 239 out[i].F luxPSF= in[i].FluxPSF;240 out[i].dF luxPSF= in[i].dFluxPSF;241 out[i].F luxKron= in[i].FluxKron;242 out[i].dF luxKron= in[i].dFluxKron;242 out[i].FpsfStk = in[i].FluxPSF; 243 out[i].dFpsfStk = in[i].dFluxPSF; 244 out[i].FkronStk = in[i].FluxKron; 245 out[i].dFkronStk = in[i].dFluxKron; 243 246 out[i].flags = in[i].flags; 244 247 out[i].Ncode = in[i].Ncode; 245 248 out[i].Nused = in[i].Nused; 246 out[i].M _20 = in[i].M_20;247 out[i].M _80 = in[i].M_80;249 out[i].Mmin = in[i].M_20*0.001; 250 out[i].Mmax = in[i].M_80*0.001; 248 251 out[i].Mstdev = in[i].Mstdev; 249 252 out[i].ubercalDist = in[i].ubercalDist; … … 267 270 out[i].dM = in[i].dM; 268 271 out[i].Xm = in[i].Xm; 269 out[i].FluxPSF = in[i].F luxPSF;270 out[i].dFluxPSF = in[i].dF luxPSF;271 out[i].FluxKron = in[i].F luxKron;272 out[i].dFluxKron = in[i].dF luxKron;272 out[i].FluxPSF = in[i].FpsfStk; 273 out[i].dFluxPSF = in[i].dFpsfStk; 274 out[i].FluxKron = in[i].FkronStk; 275 out[i].dFluxKron = in[i].dFkronStk; 273 276 out[i].flags = in[i].flags; 274 277 out[i].Ncode = in[i].Ncode; 275 278 out[i].Nused = in[i].Nused; 276 out[i].M_20 = in[i].M _20;277 out[i].M_80 = in[i].M _80;279 out[i].M_20 = in[i].Mmin*1000.0; 280 out[i].M_80 = in[i].Mmax*1000.0; 278 281 out[i].Mstdev = in[i].Mstdev; 279 282 out[i].ubercalDist = in[i].ubercalDist; … … 486 489 /*** there are some mini dvodbs with the wrong PS1_V4 format (missing Xoff,Yoff / Xfix,Yfix) ************/ 487 490 488 Measure *Measure_PS1_V4alt_ToInternal ( Measure_PS1_V4alt *in, off_t Nvalues) {491 Measure *Measure_PS1_V4alt_ToInternal (Average *ave, Measure_PS1_V4alt *in, off_t Nvalues) { 489 492 490 493 off_t i; … … 496 499 dvo_measure_init (&out[i]); 497 500 498 out[i].dR = in[i].dR; 499 out[i].dD = in[i].dD; 501 int averef = in[i].averef; 502 out[i].R = ave[averef].R - in[i].dR / 3600.0; 503 out[i].D = ave[averef].D - in[i].dD / 3600.0; 500 504 out[i].M = in[i].M; 501 505 out[i].Mcal = in[i].Mcal; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_elixir.c
r35162 r36898 2 2 3 3 /* convert elixir-format measures to internal measures */ 4 Measure *Measure_Elixir_ToInternal ( Measure_Elixir *in, off_t Nvalues) {4 Measure *Measure_Elixir_ToInternal (Average *ave, Measure_Elixir *in, off_t Nvalues) { 5 5 6 6 off_t i; … … 15 15 out[i].averef = in[i].averef; 16 16 17 // changed for PS1_V5 18 int averef = out[i].averef; 19 out[i].R = (in[i].dR == NAN_S_SHORT) ? NAN : ave[averef].R - 0.01 * in[i].dR / 3600.0; 20 out[i].D = (in[i].dD == NAN_S_SHORT) ? NAN : ave[averef].D - 0.01 * in[i].dD / 3600.0; 21 17 22 // changed for PANSTARRS_DEV_0 18 out[i].dR = (in[i].dR == NAN_S_SHORT) ? NAN : in[i].dR * 0.01;19 out[i].dD = (in[i].dD == NAN_S_SHORT) ? NAN : in[i].dD * 0.01;20 23 out[i].M = (in[i].M == NAN_S_SHORT) ? NAN : in[i].M * 0.001; 21 24 out[i].dM = (in[i].dM == NAN_U_CHAR) ? NAN : in[i].dM * 0.001; … … 47 50 48 51 /* convert internal measures to elixir-format measures */ 49 Measure_Elixir *MeasureInternalTo_Elixir ( Measure *in, off_t Nvalues) {52 Measure_Elixir *MeasureInternalTo_Elixir (Average *ave, Measure *in, off_t Nvalues) { 50 53 51 54 off_t i; … … 59 62 out[i].averef = in[i].averef; 60 63 64 // changed for PS1_V5 65 int averef = in[i].averef; 66 int isBad = isnan(in[i].R) || isnan(in[i].D); 67 out[i].dR = isBad ? NAN_S_SHORT : 100.0*3600.0*(ave[averef].R - in[i].R); 68 out[i].dD = isBad ? NAN_S_SHORT : 100.0*3600.0*(ave[averef].D - in[i].D); 69 61 70 // changed for PANSTARRS_DEV_0 62 out[i].dR = isnan(in[i].dR ) ? NAN_S_SHORT : in[i].dR * 100.0;63 out[i].dD = isnan(in[i].dD ) ? NAN_S_SHORT : in[i].dD * 100.0;64 71 out[i].M = isnan(in[i].M ) ? NAN_S_SHORT : in[i].M * 1000.0; 65 72 out[i].dM = isnan(in[i].dM ) ? NAN_U_CHAR : in[i].dM * 1000.0; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_loneos.c
r35162 r36898 2 2 3 3 /* convert loneos-format measures to internal measures */ 4 Measure *Measure_Loneos_ToInternal ( Measure_Loneos *in, off_t Nvalues) {4 Measure *Measure_Loneos_ToInternal (Average *ave, Measure_Loneos *in, off_t Nvalues) { 5 5 6 6 off_t i; … … 18 18 out[i].t = in[i].t; 19 19 20 // changed for PS1_V5 21 int averef = out[i].averef; 22 out[i].R = (in[i].dR == NAN_S_SHORT) ? NAN : ave[averef].R - 0.01 * in[i].dR / 3600.0; 23 out[i].D = (in[i].dD == NAN_S_SHORT) ? NAN : ave[averef].D - 0.01 * in[i].dD / 3600.0; 24 20 25 // changed for PANSTARRS_DEV_0 21 out[i].dR = (in[i].dR == NAN_S_SHORT) ? NAN : in[i].dR * 0.01;22 out[i].dD = (in[i].dD == NAN_S_SHORT) ? NAN : in[i].dD * 0.01;23 26 out[i].M = (in[i].M == NAN_S_SHORT) ? NAN : in[i].M * 0.001; 24 27 out[i].dM = (in[i].dM == NAN_U_CHAR) ? NAN : in[i].dM * 0.001; … … 40 43 41 44 /* convert internal measures to loneos-format measures */ 42 Measure_Loneos *MeasureInternalTo_Loneos ( Measure *in, off_t Nvalues) {45 Measure_Loneos *MeasureInternalTo_Loneos (Average *ave, Measure *in, off_t Nvalues) { 43 46 44 47 off_t i; … … 48 51 49 52 for (i = 0; i < Nvalues; i++) { 50 51 // changed for PANSTARRS_DEV_0 52 out[i].dR = isnan(in[i].dR ) ? NAN_S_SHORT : in[i].dR * 100.0; 53 out[i].dD = isnan(in[i].dD ) ? NAN_S_SHORT : in[i].dD * 100.0; 53 // changed for PS1_V5 54 int averef = in[i].averef; 55 int isBad = isnan(in[i].R) || isnan(in[i].D); 56 out[i].dR = isBad ? NAN_S_SHORT : 100.0*3600.0*(ave[averef].R - in[i].R); 57 out[i].dD = isBad ? NAN_S_SHORT : 100.0*3600.0*(ave[averef].D - in[i].D); 58 54 59 out[i].M = isnan(in[i].M ) ? NAN_S_SHORT : in[i].M * 1000.0; 55 60 out[i].dM = isnan(in[i].dM ) ? NAN_U_CHAR : in[i].dM * 1000.0; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_0.c
r35162 r36898 2 2 3 3 /* convert panstarrs-format measures to internal measures */ 4 Measure *Measure_Panstarrs_DEV_0_ToInternal ( Measure_Panstarrs_DEV_0 *in, off_t Nvalues) {4 Measure *Measure_Panstarrs_DEV_0_ToInternal (Average *ave, Measure_Panstarrs_DEV_0 *in, off_t Nvalues) { 5 5 6 6 off_t i; … … 11 11 for (i = 0; i < Nvalues; i++) { 12 12 dvo_measure_init (&out[i]); 13 out[i].dR = in[i].dR; 14 out[i].dD = in[i].dD; 13 14 int averef = in[i].averef; 15 out[i].R = ave[averef].R - in[i].dR / 3600.0; 16 out[i].D = ave[averef].D - in[i].dD / 3600.0; 15 17 out[i].M = in[i].M; 16 18 out[i].dM = in[i].dM; … … 52 54 53 55 /* convert internal measures to panstarrs-format measures */ 54 Measure_Panstarrs_DEV_0 *MeasureInternalTo_Panstarrs_DEV_0 ( Measure *in, off_t Nvalues) {56 Measure_Panstarrs_DEV_0 *MeasureInternalTo_Panstarrs_DEV_0 (Average *ave, Measure *in, off_t Nvalues) { 55 57 56 58 off_t i; … … 60 62 61 63 for (i = 0; i < Nvalues; i++) { 62 out[i].dR = in[i].dR; 63 out[i].dD = in[i].dD; 64 int averef = in[i].averef; 65 66 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 67 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 64 68 out[i].M = in[i].M; 65 69 out[i].dM = in[i].dM; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_1.c
r35162 r36898 2 2 3 3 /* convert panstarrs-format measures to internal measures */ 4 Measure *Measure_Panstarrs_DEV_1_ToInternal ( Measure_Panstarrs_DEV_1 *in, off_t Nvalues) {4 Measure *Measure_Panstarrs_DEV_1_ToInternal (Average *ave, Measure_Panstarrs_DEV_1 *in, off_t Nvalues) { 5 5 6 6 off_t i; … … 11 11 for (i = 0; i < Nvalues; i++) { 12 12 dvo_measure_init (&out[i]); 13 out[i].dR = in[i].dR; 14 out[i].dD = in[i].dD; 13 14 int averef = in[i].averef; 15 out[i].R = ave[averef].R - in[i].dR / 3600.0; 16 out[i].D = ave[averef].D - in[i].dD / 3600.0; 15 17 out[i].M = in[i].M; 16 18 out[i].dM = in[i].dM; … … 52 54 53 55 /* convert internal measures to panstarrs-format measures */ 54 Measure_Panstarrs_DEV_1 *MeasureInternalTo_Panstarrs_DEV_1 ( Measure *in, off_t Nvalues) {56 Measure_Panstarrs_DEV_1 *MeasureInternalTo_Panstarrs_DEV_1 (Average *ave, Measure *in, off_t Nvalues) { 55 57 56 58 off_t i; … … 60 62 61 63 for (i = 0; i < Nvalues; i++) { 62 out[i].dR = in[i].dR; 63 out[i].dD = in[i].dD; 64 int averef = in[i].averef; 65 66 out[i].dR = 3600.0*(ave[averef].R - in[i].R); 67 out[i].dD = 3600.0*(ave[averef].D - in[i].D); 64 68 out[i].M = in[i].M; 65 69 out[i].dM = in[i].dM; -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_image.c
r35162 r36898 219 219 if (db[0].format == DVO_FORMAT_PS1_V3) gfits_modify (&db[0].header, "FORMAT", "%s", 1, "PS1_V3"); 220 220 if (db[0].format == DVO_FORMAT_PS1_V4) gfits_modify (&db[0].header, "FORMAT", "%s", 1, "PS1_V4"); 221 if (db[0].format == DVO_FORMAT_PS1_V5) gfits_modify (&db[0].header, "FORMAT", "%s", 1, "PS1_V5"); 221 222 if (db[0].format == DVO_FORMAT_PS1_REF) gfits_modify (&db[0].header, "FORMAT", "%s", 1, "PS1_REF"); 222 223 -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_image_raw.c
r34260 r36898 59 59 if (db[0].format == DVO_FORMAT_PS1_V3) ImageSize = sizeof(Image_PS1_V3); 60 60 if (db[0].format == DVO_FORMAT_PS1_V4) ImageSize = sizeof(Image_PS1_V4); 61 if (db[0].format == DVO_FORMAT_PS1_V5) ImageSize = sizeof(Image_PS1_V5); 61 62 if (db[0].format == DVO_FORMAT_PS1_REF) ImageSize = sizeof(Image_PS1_REF); 62 63 … … 89 90 if (db[0].format == DVO_FORMAT_PS1_V3) gfits_table_mkheader_Image_PS1_V3 (&db[0].theader); 90 91 if (db[0].format == DVO_FORMAT_PS1_V4) gfits_table_mkheader_Image_PS1_V4 (&db[0].theader); 92 if (db[0].format == DVO_FORMAT_PS1_V5) gfits_table_mkheader_Image_PS1_V5 (&db[0].theader); 91 93 if (db[0].format == DVO_FORMAT_PS1_REF) gfits_table_mkheader_Image_PS1_REF (&db[0].theader); 92 94 -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_photcode_ops.c
r36630 r36898 857 857 858 858 Ns = photcodes[0].hashNsec[code[0].code]; 859 Fpsf = (Ns == -1) ? NAN : secfilt[Ns].F luxPSF;859 Fpsf = (Ns == -1) ? NAN : secfilt[Ns].FpsfStk; 860 860 return (Fpsf); 861 861 } … … 869 869 870 870 Ns = photcodes[0].hashNsec[code[0].code]; 871 dFpsf = (Ns == -1) ? NAN : secfilt[Ns].dF luxPSF;871 dFpsf = (Ns == -1) ? NAN : secfilt[Ns].dFpsfStk; 872 872 return (dFpsf); 873 873 } … … 881 881 882 882 Ns = photcodes[0].hashNsec[code[0].code]; 883 Fkron = (Ns == -1) ? NAN : secfilt[Ns].F luxKron;883 Fkron = (Ns == -1) ? NAN : secfilt[Ns].FkronStk; 884 884 return (Fkron); 885 885 } … … 893 893 894 894 Ns = photcodes[0].hashNsec[code[0].code]; 895 dFkron = (Ns == -1) ? NAN : secfilt[Ns].dF luxKron;895 dFkron = (Ns == -1) ? NAN : secfilt[Ns].dFkronStk; 896 896 return (dFkron); 897 897 } 898 898 899 float PhotM 20(PhotCode *code, Average *average, SecFilt *secfilt) {900 901 int Ns; 902 float M 20;903 904 if (code == NULL) return NAN; 905 906 Ns = photcodes[0].hashNsec[code[0].code]; 907 M 20 = (Ns == -1) ? NAN : 0.001*secfilt[Ns].M_20;908 return (M 20);909 } 910 911 float PhotM 80(PhotCode *code, Average *average, SecFilt *secfilt) {912 913 int Ns; 914 float M 80;915 916 if (code == NULL) return NAN; 917 918 Ns = photcodes[0].hashNsec[code[0].code]; 919 M 80 = (Ns == -1) ? NAN : 0.001*secfilt[Ns].M_80;920 return (M 80);899 float PhotMmin (PhotCode *code, Average *average, SecFilt *secfilt) { 900 901 int Ns; 902 float Mmin; 903 904 if (code == NULL) return NAN; 905 906 Ns = photcodes[0].hashNsec[code[0].code]; 907 Mmin = (Ns == -1) ? NAN : secfilt[Ns].Mmin; 908 return (Mmin); 909 } 910 911 float PhotMmax (PhotCode *code, Average *average, SecFilt *secfilt) { 912 913 int Ns; 914 float Mmax; 915 916 if (code == NULL) return NAN; 917 918 Ns = photcodes[0].hashNsec[code[0].code]; 919 Mmax = (Ns == -1) ? NAN : secfilt[Ns].Mmax; 920 return (Mmax); 921 921 } 922 922 -
branches/eam_branches/ipp-20140610/Ohana/src/libdvo/src/dvo_tiny_values.c
r36630 r36898 14 14 15 15 void CopyMeasureToTiny (MeasureTiny *measureT, Measure *measure) { 16 measureT[0]. dR = measure[0].dR;17 measureT[0]. dD = measure[0].dD;16 measureT[0].R = measure[0].R; 17 measureT[0].D = measure[0].D; 18 18 measureT[0].M = measure[0].M; 19 19 measureT[0].Mcal = measure[0].Mcal;
Note:
See TracChangeset
for help on using the changeset viewer.
