Changeset 8513
- Timestamp:
- Aug 23, 2006, 10:30:30 AM (20 years ago)
- Location:
- trunk/Ohana/src/gastro2
- Files:
-
- 9 edited
-
include/gastro2.h (modified) (6 diffs)
-
src/ConfigInit.c (modified) (2 diffs)
-
src/gargs.c (modified) (2 diffs)
-
src/getgsc.c (modified) (5 diffs)
-
src/getptolemy.c (modified) (1 diff)
-
src/getusnob.c (modified) (1 diff)
-
src/gproject2.c (modified) (2 diffs)
-
src/greference2.c (modified) (2 diffs)
-
src/plots.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/gastro2/include/gastro2.h
r8496 r8513 60 60 double r, b; 61 61 } USNOdata; 62 63 typedef struct {64 double R, D;65 double M;66 } GSCdata;67 62 68 63 /* global variables, from ConfigInit or args */ … … 94 89 int NPOLYTERMS; 95 90 char CATDIR[256]; 96 char CATMODE[16]; /* raw, mef, split, mysql */97 char CATFORMAT[16]; /* internal, elixir, loneos, panstarrs */91 char CATMODE[16]; /* raw, mef, split, mysql */ 92 char CATFORMAT[16]; /* internal, elixir, loneos, panstarrs */ 98 93 char REFCAT[256]; 99 94 char HEADER[256]; … … 124 119 char USNO_A_DIR[256]; 125 120 char USNO_B_DIR[256]; 126 char TWO_MASS_ CATDIR[256];121 char TWO_MASS_DIR[256]; 127 122 char ASTROM_CATDIR[256]; 128 123 char LONEOS_REGION_FILE[256]; … … 137 132 StarData *rfits (FILE *f, int *nstars); 138 133 139 GSCdata *gptolemy (char *fullpath, int *Nstars);140 CatStats *gregions (CatStats *patch, int *nregion);141 134 StarData *remove_clumps (StarData *instars, int *nstars, int NX, int NY); 142 135 void ConfigInit (int *argc, char **argv); … … 170 163 int getusno (CatStats *catstats, RefCatalog *Ref); 171 164 int getusnob (CatStats *catstats, RefCatalog *Ref, double epoch); 172 int get2mass (CatStats *catstats, RefCatalog *Ref);173 165 int getgsc (CatStats *catstats, RefCatalog *Ref); 174 166 … … 205 197 void plot_resid_init (int version, double xmax); 206 198 void plot_resid_plot (int version, float *xvect, float *yvect, int Nvect); 207 double ptolemy_area (GSCdata *ptolemy, int N, CatStats *patch); 199 208 200 void rotate (RefCatalog *Subset, RefCatalog *Ref, double angle); 209 201 void set_catalog (char *catdir); -
trunk/Ohana/src/gastro2/src/ConfigInit.c
r8496 r8513 15 15 if (VERBOSE) fprintf (stderr, "loaded config file: %s\n", file); 16 16 17 GASTRO_MAX_NSTARS = 300; 18 ScanConfig (config, "OFFSET_RADIUS", "%lf", 0, &SEARCH_RADIUS); 19 ScanConfig (config, "MIN_MATCHES", "%d", 0, &MIN_MATCHES); 20 ScanConfig (config, "DEFAULT_RADIUS", "%lf", 0, &DEFAULT_RADIUS); 21 ScanConfig (config, "MINIMUM_RADIUS", "%lf", 0, &MINIMUM_RADIUS); 22 ScanConfig (config, "MAX_NONLINEAR", "%lf", 0, &MAX_NONLINEAR); 23 ScanConfig (config, "MAX_PRECISE", "%lf", 0, &MIN_PRECISE); 24 ScanConfig (config, "CCD_PC1_1", "%lf", 0, &CCD_PC1_1); 25 ScanConfig (config, "CCD_PC2_2", "%lf", 0, &CCD_PC2_2); 26 ScanConfig (config, "CCD_PC1_2", "%lf", 0, &CCD_PC1_2); 27 ScanConfig (config, "CCD_PC2_1", "%lf", 0, &CCD_PC2_1); 28 ScanConfig (config, "ASEC_PIX", "%lf", 0, &ASEC_PIX); 29 ScanConfig (config, "NFIELD", "%lf", 0, &NFIELD); 30 ScanConfig (config, "NGRID_PIX", "%d", 0, &NGRID_PIX); 31 ScanConfig (config, "NPOLYTERMS", "%d", 0, &NPOLYTERMS); 32 ScanConfig (config, "ROT_ZERO", "%lf", 0, &ROT_ZERO); 33 ScanConfig (config, "dROT", "%lf", 0, &dROT); 34 ScanConfig (config, "NROT", "%d", 0, &NROT); 35 ScanConfig (config, "POLAR_ALIGNMENT", "%d", 0, &POLAR_ALIGNMENT); 36 ScanConfig (config, "GSCFILE", "%s", 0, GSCFILE); 37 ScanConfig (config, "POLAR_AXIS_RA", "%lf", 0, &POLE_RA); 38 ScanConfig (config, "POLAR_AXIS_DEC", "%lf", 0, &POLE_DEC); 39 ScanConfig (config, "RA_OFFSET", "%lf", 0, &RA_OFFSET); 40 ScanConfig (config, "DEC_OFFSET", "%lf", 0, &DEC_OFFSET); 41 ScanConfig (config, "LONEOS_REGIONS", "%s", 0, LONEOS_REGION_FILE); 17 /* default values for config variables: used if key is missing from the config file */ 18 strcpy (ROUGH_ASTROMETRY, "header"); 19 20 ScanConfig (config, "CCD_PC1_1", "%lf", 0, &CCD_PC1_1); // guess if WCS is missing 21 ScanConfig (config, "CCD_PC2_2", "%lf", 0, &CCD_PC2_2); // guess if WCS is missing 22 ScanConfig (config, "CCD_PC1_2", "%lf", 0, &CCD_PC1_2); // guess if WCS is missing 23 ScanConfig (config, "CCD_PC2_1", "%lf", 0, &CCD_PC2_1); // guess if WCS is missing 24 ScanConfig (config, "ASEC_PIX", "%lf", 0, &ASEC_PIX); // guess if WCS is missing 25 ScanConfig (config, "NFIELD", "%lf", 0, &NFIELD); // search region *padding* in field units 26 ScanConfig (config, "NGRID_PIX", "%d", 0, &NGRID_PIX); // resolution of grid search (pixels) 27 ScanConfig (config, "NPOLYTERMS", "%d", 0, &NPOLYTERMS); // high-order fit terms (2 or 3) 28 ScanConfig (config, "ROT_ZERO", "%lf", 0, &ROT_ZERO); // rotation search region 29 ScanConfig (config, "dROT", "%lf", 0, &dROT); // rotation search region 30 ScanConfig (config, "NROT", "%d", 0, &NROT); // rotation search region 31 ScanConfig (config, "POLAR_ALIGNMENT", "%d", 0, &POLAR_ALIGNMENT); // apply polar alignment correction 32 ScanConfig (config, "POLAR_AXIS_RA", "%lf", 0, &POLE_RA); // true coords of pole (should be HA, not RA) 33 ScanConfig (config, "POLAR_AXIS_DEC", "%lf", 0, &POLE_DEC); // true coords of pole 34 ScanConfig (config, "RA_OFFSET", "%lf", 0, &RA_OFFSET); // ?? not well defined (should be euler angle) 35 ScanConfig (config, "DEC_OFFSET", "%lf", 0, &DEC_OFFSET); // ?? not well defined (should be euler angle) 42 36 43 37 /* possible sources of astrometric reference data */ 44 if (!ScanConfig (config, "USNO_A_DIR", "%s", 0, USNO_A_DIR)) { 45 ScanConfig (config, "USNO_CDROM", "%s", 0, USNO_A_DIR); 38 if (!ScanConfig (config, "USNO_A_DIR", "%s", 0, USNO_A_DIR)) { // location of USNO A data (USNO_CDROM in gastro) 39 ScanConfig (config, "USNO_CDROM", "%s", 0, USNO_A_DIR); // alternate location of USNO A data 46 40 } 47 ScanConfig (config, "USNO_B_DIR", "%s", 0, USNO_B_DIR); 48 ScanConfig (config, " ASTROM_CATDIR", "%s", 0, ASTROM_CATDIR);49 ScanConfig (config, "2MASS_ CATDIR", "%s", 0, TWO_MASS_CATDIR);50 ScanConfig (config, " GSCDIR", "%s", 0, GSCDIR);41 ScanConfig (config, "USNO_B_DIR", "%s", 0, USNO_B_DIR); // location of USNO B ref data 42 ScanConfig (config, "GSCDIR", "%s", 0, GSCDIR); // location of HST GSC ref data 43 ScanConfig (config, "2MASS_DIR", "%s", 0, TWO_MASS_DIR); // location of 2MASS ref data 44 ScanConfig (config, "ASTROM_CATDIR", "%s", 0, ASTROM_CATDIR); // location of ptolemy-format ref data 51 45 52 ScanConfig (config, "ASTRO_REFCAT", "%s", 0, REFCAT); 53 ScanConfig (config, "CATDIR", "%s", 0, CATDIR); 54 ScanConfig (config, "CATMODE", "%s", 0, CATMODE); 55 ScanConfig (config, "CATFORMAT", "%s", 0, CATFORMAT); 56 ScanConfig (config, "ROUGH_ASTROMETRY", "%s", 0, ROUGH_ASTROMETRY); 57 ScanConfig (config, "PHOTCODE_FILE", "%s", 0, PhotCodeFile); 58 ScanConfig (config, "GASTRO_MAX_NSTARS", "%d", 0, &GASTRO_MAX_NSTARS); 59 ScanConfig (config, "GASTRO_MAX_MAG_ERROR", "%lf", 0, &MAX_ERROR); 46 ScanConfig (config, "GSCFILE", "%s", 0, GSCFILE); // location of sky table 47 ScanConfig (config, "ASTRO_REFCAT", "%s", 0, REFCAT); // which astrometry catalog to use 48 ScanConfig (config, "ROUGH_ASTROMETRY", "%s", 0, ROUGH_ASTROMETRY); // where to get initial guess (header, config) 49 ScanConfig (config, "GASTRO_MAX_NSTARS", "%d", 0, &GASTRO_MAX_NSTARS); // max number of stars from image to fit 50 ScanConfig (config, "GASTRO_MAX_MAG_ERROR", "%lf", 0, &MAX_ERROR); // S/N limit on image stars used in fit 60 51 61 if (*CATMODE == 0) strcpy (CATMODE, "RAW"); 62 if (*CATFORMAT == 0) strcpy (CATFORMAT, "ELIXIR"); 52 ScanConfig (config, "PHOTCODE_FILE", "%s", 0, PhotCodeFile); // not used 63 53 64 54 if (NFIELD <= 0.0) { … … 66 56 exit (1); 67 57 } 68 if (NGRID_PIX == 0) NGRID_PIX = 50.0;69 58 59 if (!GASTRO_MAX_NSTARS) GASTRO_MAX_NSTARS = 300; 60 if (!MAX_ERROR) MAX_ERROR = 0.2; 61 if (!NGRID_PIX) NGRID_PIX = 50.0; 62 if (!NFIELD) NFIELD = 0.1; 63 70 64 if (strcasecmp (ROUGH_ASTROMETRY, "header") && 71 65 strcasecmp (ROUGH_ASTROMETRY, "config")) { -
trunk/Ohana/src/gastro2/src/gargs.c
r8241 r8513 42 42 if ((N = get_argument (*argc, argv, "-ptolemy-fill-factor"))) { 43 43 PTOLEMY_FILL_FACTOR = TRUE; 44 remove_argument (N, argc, argv);45 }46 47 LONEOS_COORDS = FALSE;48 if ((N = get_argument (*argc, argv, "-loneos"))) {49 LONEOS_COORDS = TRUE;50 remove_argument (N, argc, argv);51 }52 53 NEWPHOTCODE = FALSE;54 if ((N = get_argument (*argc, argv, "-p"))) {55 NEWPHOTCODE = TRUE;56 remove_argument (N, argc, argv);57 PHOTCODE = strcreate (argv[N]);58 44 remove_argument (N, argc, argv); 59 45 } … … 148 134 } 149 135 136 // XXX these options are being ignored 137 NEWPHOTCODE = FALSE; 138 if ((N = get_argument (*argc, argv, "-p"))) { 139 NEWPHOTCODE = TRUE; 140 remove_argument (N, argc, argv); 141 PHOTCODE = strcreate (argv[N]); 142 remove_argument (N, argc, argv); 143 } 144 LONEOS_COORDS = FALSE; 145 if ((N = get_argument (*argc, argv, "-loneos"))) { 146 LONEOS_COORDS = TRUE; 147 remove_argument (N, argc, argv); 148 } 149 150 150 if (*argc != NARGS) { 151 151 fprintf (stderr, "USAGE: gastro filename\n"); -
trunk/Ohana/src/gastro2/src/getgsc.c
r8496 r8513 1 1 # include "gastro2.h" 2 2 3 GSCdata *rd_gsc (char *filename, int *Nstars);3 StarData *rd_gsc (char *filename, int *Nstars); 4 4 5 5 int getgsc (CatStats *catstats, RefCatalog *Ref) { 6 6 7 7 int i, j, k, Ns, Ngsc; 8 GSCdata *gsc;8 StarData *gsc; 9 9 SkyList *skylist; 10 10 SkyTable *sky; … … 21 21 22 22 /* load regions from GSC table, restrict to patch */ 23 sky = SkyTableFromGSC (GSCFILE, 3, VERBOSE);23 sky = SkyTableFromGSC (GSCFILE, SKY_DEPTH_HST, VERBOSE); 24 24 SkyTableSetFilenames (sky, GSCDIR, "cpt"); 25 25 skylist = SkyListByPatch (sky, -1, &patch); … … 56 56 # define BYTES_STAR 23 57 57 # define BLOCK 1000 58 GSCdata *rd_gsc (char *filename, int *Nstars) {58 StarData *rd_gsc (char *filename, int *Nstars) { 59 59 60 GSCdata *stars;60 StarData *stars; 61 61 int i, NSTAR, nstar, Nbytes, nbytes; 62 62 char *buffer; … … 71 71 nstar = 0; 72 72 NSTAR = 1000; 73 ALLOCATE (stars, GSCdata, NSTAR);73 ALLOCATE (stars, StarData, NSTAR); 74 74 75 75 ALLOCATE (buffer, char, (BLOCK*BYTES_STAR)); … … 84 84 if (nstar == NSTAR) { 85 85 NSTAR += 1000; 86 REALLOCATE (stars, GSCdata, NSTAR);86 REALLOCATE (stars, StarData, NSTAR); 87 87 } 88 88 } -
trunk/Ohana/src/gastro2/src/getptolemy.c
r8496 r8513 21 21 22 22 /* load regions from GSC table, restrict to patch */ 23 sky = SkyTable FromGSC (GSCFILE, 3, VERBOSE);23 sky = SkyTableLoadOptimal (CATDIR, NULL, GSCFILE, SKY_DEPTH_HST, VERBOSE); 24 24 SkyTableSetFilenames (sky, CATDIR, "cpt"); 25 25 skylist = SkyListByPatch (sky, -1, &patch); -
trunk/Ohana/src/gastro2/src/getusnob.c
r8496 r8513 1 1 # include "gastro2.h" 2 # define NZONE 1803 2 # define NBYTE 4 4 3 # define NELEM 20 -
trunk/Ohana/src/gastro2/src/gproject2.c
r8300 r8513 61 61 /* need to allow some leeway? use a fixed +/- 0.5 mag for now */ 62 62 if (MAGLIMS && !MAGMANUAL) { 63 MMAX = Target[0].lum.Mmax + 0.5;64 MMIN = Target[0].lum.Mmin - 0.5;63 MMAX = Target[0].lum.Mmax + 1.0; 64 MMIN = Target[0].lum.Mmin - 1.0; 65 65 66 66 if (MMAX < Ref[0].lum.Mmin + Moff) … … 75 75 Moff = 0; 76 76 } 77 78 if (VERBOSE) fprintf (stderr, "limited reference stars to mag range %f - %f\n", MMIN - Moff, MMAX - Moff); 77 79 78 80 for (N = i = 0; i < Ref[0].N; i++) { -
trunk/Ohana/src/gastro2/src/greference2.c
r8496 r8513 29 29 /* get stars from 2MASS for the given region -- add PHOTCODE check? */ 30 30 if (!strcasecmp (REFCAT, "2MASS")) { 31 strcpy (CATDIR, TWO_MASS_ CATDIR);31 strcpy (CATDIR, TWO_MASS_DIR); 32 32 getptolemy (&catstats, Ref); 33 33 } … … 50 50 Mref = 0.5*(Ref[0].lum.Mmin + Ref[0].lum.Mmax); 51 51 logRho = Mref * Ref[0].lum.dNdM + Ref[0].lum.Mo - log10(Ref[0].Area); 52 Mtar = (logRho + log10( Ref[0].Area) - Target[0].lum.Mo) / Target[0].lum.dNdM;52 Mtar = (logRho + log10(Target[0].Area) - Target[0].lum.Mo) / Target[0].lum.dNdM; 53 53 54 54 Ref[0].lum.Mz = Mref; -
trunk/Ohana/src/gastro2/src/plots.c
r8496 r8513 281 281 fill_lumfunc (Ref[0].stars, Ref[0].N, rval, rbin, &Nr); 282 282 283 /* construct plots of log(stars / degree square) */ 283 284 ymin = 5; ymax = -5; 284 285 for (i = 0; i < Nt; i++) { 285 tval[i] = tval[i] - log (Target[0].Area) / log (10.0);286 tval[i] = tval[i] - log10 (Target[0].Area); 286 287 ymin = MIN (tval[i], ymin); 287 288 ymax = MAX (tval[i], ymax); … … 289 290 290 291 for (i = 0; i < Nr; i++) { 291 rval[i] = rval[i] - log (Ref[0].Area) / log (10.0);292 rval[i] = rval[i] - log10 (Ref[0].Area); 292 293 rbin[i] = rbin[i] + Ref[0].Moff; 293 294 ymin = MIN (rval[i], ymin);
Note:
See TracChangeset
for help on using the changeset viewer.
