Changeset 7080 for trunk/Ohana/src/relastro
- Timestamp:
- May 5, 2006, 5:44:26 PM (20 years ago)
- Location:
- trunk/Ohana/src/relastro/src
- Files:
-
- 9 edited
-
GridOps.v1.c (modified) (3 diffs)
-
GridOps.v2.c (modified) (5 diffs)
-
Shutdown.c (modified) (1 diff)
-
find_images.c (modified) (1 diff)
-
load_images.c (modified) (1 diff)
-
name_region.c (modified) (1 diff)
-
wcatalog.c (modified) (1 diff)
-
wimages.c (modified) (1 diff)
-
write_coords.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/relastro/src/GridOps.v1.c
r6808 r7080 269 269 270 270 /* create empty phu */ 271 fits_init_header (&header);271 gfits_init_header (&header); 272 272 header.extend = TRUE; 273 fits_create_header (&header);274 fits_create_matrix (&header, &matrix);275 fits_modify (&header, "NEXTEND", "%d", 1, Nimage + 3);276 fits_modify (&header, "FILTER", "%s", 1, photcode[0].name);277 fits_modify (&header, "COMMENT", "%S", 1, "Mosaic Photometry Grid Analysis");278 fits_fwrite_header (f, &header);279 fits_fwrite_matrix (f, &matrix);280 fits_free_matrix (&matrix);273 gfits_create_header (&header); 274 gfits_create_matrix (&header, &matrix); 275 gfits_modify (&header, "NEXTEND", "%d", 1, Nimage + 3); 276 gfits_modify (&header, "FILTER", "%s", 1, photcode[0].name); 277 gfits_modify (&header, "COMMENT", "%S", 1, "Mosaic Photometry Grid Analysis"); 278 gfits_fwrite_header (f, &header); 279 gfits_fwrite_matrix (f, &matrix); 280 gfits_free_matrix (&matrix); 281 281 282 282 /* save grid mag values */ 283 fits_init_header (&theader);283 gfits_init_header (&theader); 284 284 theader.Naxes = 2; 285 285 theader.Naxis[0] = gridX; 286 286 theader.Naxis[1] = gridY; 287 287 theader.bitpix = -32; 288 fits_create_Theader (&theader, "IMAGE");289 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);290 fits_modify (&theader, "EXTNAME", "%s", 1, "MAG_OFFSET");291 fits_create_matrix (&theader, &matrix);288 gfits_create_Theader (&theader, "IMAGE"); 289 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 290 gfits_modify (&theader, "EXTNAME", "%s", 1, "MAG_OFFSET"); 291 gfits_create_matrix (&theader, &matrix); 292 292 for (i = 0; i < gridX; i++) { 293 293 for (j = 0; j < gridY; j++) { 294 fits_set_matrix_value (&matrix, i, j, (double) gridM[i + j*gridX]);294 gfits_set_matrix_value (&matrix, i, j, (double) gridM[i + j*gridX]); 295 295 } 296 296 } 297 297 write_coords (&theader, &refmosaic[0].coords); 298 fits_fwrite_header (f, &theader);299 fits_fwrite_matrix (f, &matrix);300 fits_free_matrix (&matrix);298 gfits_fwrite_header (f, &theader); 299 gfits_fwrite_matrix (f, &matrix); 300 gfits_free_matrix (&matrix); 301 301 302 302 /* save grid Nmeas values */ 303 fits_modify (&theader, "EXTNAME", "%s", 1, "NMEAS");304 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);305 fits_create_matrix (&theader, &matrix);303 gfits_modify (&theader, "EXTNAME", "%s", 1, "NMEAS"); 304 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 305 gfits_create_matrix (&theader, &matrix); 306 306 for (i = 0; i < gridX; i++) { 307 307 for (j = 0; j < gridY; j++) { 308 fits_set_matrix_value (&matrix, i, j, (double) gridN[i + j*gridX]);308 gfits_set_matrix_value (&matrix, i, j, (double) gridN[i + j*gridX]); 309 309 } 310 310 } 311 311 write_coords (&theader, &refmosaic[0].coords); 312 fits_fwrite_header (f, &theader);313 fits_fwrite_matrix (f, &matrix);314 fits_free_matrix (&matrix);312 gfits_fwrite_header (f, &theader); 313 gfits_fwrite_matrix (f, &matrix); 314 gfits_free_matrix (&matrix); 315 315 316 316 /* save grid sigma values */ 317 fits_modify (&theader, "EXTNAME", "%s", 1, "SIGMA");318 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);319 fits_create_matrix (&theader, &matrix);317 gfits_modify (&theader, "EXTNAME", "%s", 1, "SIGMA"); 318 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 319 gfits_create_matrix (&theader, &matrix); 320 320 for (i = 0; i < gridX; i++) { 321 321 for (j = 0; j < gridY; j++) { 322 fits_set_matrix_value (&matrix, i, j, (double) gridS[i + j*gridX]);322 gfits_set_matrix_value (&matrix, i, j, (double) gridS[i + j*gridX]); 323 323 } 324 324 } 325 325 write_coords (&theader, &refmosaic[0].coords); 326 fits_fwrite_header (f, &theader);327 fits_fwrite_matrix (f, &matrix);328 fits_free_matrix (&matrix);326 gfits_fwrite_header (f, &theader); 327 gfits_fwrite_matrix (f, &matrix); 328 gfits_free_matrix (&matrix); 329 329 330 330 /* calculate value for each CCD pixel, write out CCD images */ … … 343 343 sprintf (ccdname, "ccd%s", p); 344 344 345 fits_modify (&theader, "EXTNAME", "%s", 1, ccdname);346 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);347 fits_modify (&theader, "PHOTCODE", "%s", 1, pname);348 fits_modify (&theader, "NX", "%d", 1, image[i].NX);349 fits_modify (&theader, "NY", "%d", 1, image[i].NY);345 gfits_modify (&theader, "EXTNAME", "%s", 1, ccdname); 346 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 347 gfits_modify (&theader, "PHOTCODE", "%s", 1, pname); 348 gfits_modify (&theader, "NX", "%d", 1, image[i].NX); 349 gfits_modify (&theader, "NY", "%d", 1, image[i].NY); 350 350 write_coords (&theader, &image[0].coords); 351 351 … … 354 354 theader.Naxis[0] = Nx; 355 355 theader.Naxis[1] = Ny; 356 fits_modify (&theader, "NAXIS1", "%d", 1, Nx);357 fits_modify (&theader, "NAXIS2", "%d", 1, Ny);358 fits_create_matrix (&theader, &matrix);356 gfits_modify (&theader, "NAXIS1", "%d", 1, Nx); 357 gfits_modify (&theader, "NAXIS2", "%d", 1, Ny); 358 gfits_create_matrix (&theader, &matrix); 359 359 360 360 InterpolateGrid ((float *)matrix.buffer, Nx, Ny, &image[0].coords, &refmosaic[0].coords); 361 fits_fwrite_header (f, &theader);362 fits_fwrite_matrix (f, &matrix);363 fits_free_matrix (&matrix);361 gfits_fwrite_header (f, &theader); 362 gfits_fwrite_matrix (f, &matrix); 363 gfits_free_matrix (&matrix); 364 364 } 365 365 } -
trunk/Ohana/src/relastro/src/GridOps.v2.c
r6808 r7080 375 375 376 376 /* create empty phu */ 377 fits_init_header (&header);377 gfits_init_header (&header); 378 378 header.extend = TRUE; 379 fits_create_header (&header);380 fits_create_matrix (&header, &matrix);381 fits_modify (&header, "NEXTEND", "%d", 1, Nimage + 3);382 fits_modify (&header, "FILTER", "%s", 1, photcode[0].name);383 fits_modify (&header, "COMMENT", "%S", 1, "Mosaic Photometry Grid Analysis");384 fits_fwrite_header (f, &header);385 fits_fwrite_matrix (f, &matrix);386 fits_free_matrix (&matrix);379 gfits_create_header (&header); 380 gfits_create_matrix (&header, &matrix); 381 gfits_modify (&header, "NEXTEND", "%d", 1, Nimage + 3); 382 gfits_modify (&header, "FILTER", "%s", 1, photcode[0].name); 383 gfits_modify (&header, "COMMENT", "%S", 1, "Mosaic Photometry Grid Analysis"); 384 gfits_fwrite_header (f, &header); 385 gfits_fwrite_matrix (f, &matrix); 386 gfits_free_matrix (&matrix); 387 387 388 388 /* save grid mag values */ 389 fits_init_header (&theader);389 gfits_init_header (&theader); 390 390 theader.Naxes = 2; 391 391 theader.Naxis[0] = gridX; 392 392 theader.Naxis[1] = gridY; 393 393 theader.bitpix = -32; 394 fits_create_Theader (&theader, "IMAGE");395 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);396 fits_modify (&theader, "EXTNAME", "%s", 1, "MAG_OFFSET");397 fits_create_matrix (&theader, &matrix);394 gfits_create_Theader (&theader, "IMAGE"); 395 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 396 gfits_modify (&theader, "EXTNAME", "%s", 1, "MAG_OFFSET"); 397 gfits_create_matrix (&theader, &matrix); 398 398 for (i = 0; i < gridX; i++) { 399 399 for (j = 0; j < gridY; j++) { 400 fits_set_matrix_value (&matrix, i, j, (double) gridM[i + j*gridX]);400 gfits_set_matrix_value (&matrix, i, j, (double) gridM[i + j*gridX]); 401 401 } 402 402 } 403 403 write_coords (&theader, &refmosaic[0].coords); 404 fits_fwrite_header (f, &theader);405 fits_fwrite_matrix (f, &matrix);406 fits_free_matrix (&matrix);404 gfits_fwrite_header (f, &theader); 405 gfits_fwrite_matrix (f, &matrix); 406 gfits_free_matrix (&matrix); 407 407 408 408 /* save grid Nmeas values */ 409 fits_modify (&theader, "EXTNAME", "%s", 1, "NMEAS");410 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);411 fits_create_matrix (&theader, &matrix);409 gfits_modify (&theader, "EXTNAME", "%s", 1, "NMEAS"); 410 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 411 gfits_create_matrix (&theader, &matrix); 412 412 for (i = 0; i < gridX; i++) { 413 413 for (j = 0; j < gridY; j++) { 414 fits_set_matrix_value (&matrix, i, j, (double) gridN[i + j*gridX]);414 gfits_set_matrix_value (&matrix, i, j, (double) gridN[i + j*gridX]); 415 415 } 416 416 } 417 417 write_coords (&theader, &refmosaic[0].coords); 418 fits_fwrite_header (f, &theader);419 fits_fwrite_matrix (f, &matrix);420 fits_free_matrix (&matrix);418 gfits_fwrite_header (f, &theader); 419 gfits_fwrite_matrix (f, &matrix); 420 gfits_free_matrix (&matrix); 421 421 422 422 /* save grid sigma values */ 423 fits_modify (&theader, "EXTNAME", "%s", 1, "SIGMA");424 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);425 fits_create_matrix (&theader, &matrix);423 gfits_modify (&theader, "EXTNAME", "%s", 1, "SIGMA"); 424 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 425 gfits_create_matrix (&theader, &matrix); 426 426 for (i = 0; i < gridX; i++) { 427 427 for (j = 0; j < gridY; j++) { 428 fits_set_matrix_value (&matrix, i, j, (double) gridS[i + j*gridX]);428 gfits_set_matrix_value (&matrix, i, j, (double) gridS[i + j*gridX]); 429 429 } 430 430 } 431 431 write_coords (&theader, &refmosaic[0].coords); 432 fits_fwrite_header (f, &theader);433 fits_fwrite_matrix (f, &matrix);434 fits_free_matrix (&matrix);432 gfits_fwrite_header (f, &theader); 433 gfits_fwrite_matrix (f, &matrix); 434 gfits_free_matrix (&matrix); 435 435 436 436 # ifdef GRID_V1 … … 451 451 sprintf (ccdname, "ccd%s", p); 452 452 453 fits_modify (&theader, "EXTNAME", "%s", 1, ccdname);454 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);455 fits_modify (&theader, "PHOTCODE", "%s", 1, pname);456 fits_modify (&theader, "NX", "%d", 1, image[i].NX);457 fits_modify (&theader, "NY", "%d", 1, image[i].NY);453 gfits_modify (&theader, "EXTNAME", "%s", 1, ccdname); 454 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 455 gfits_modify (&theader, "PHOTCODE", "%s", 1, pname); 456 gfits_modify (&theader, "NX", "%d", 1, image[i].NX); 457 gfits_modify (&theader, "NY", "%d", 1, image[i].NY); 458 458 write_coords (&theader, &image[0].coords); 459 459 … … 462 462 theader.Naxis[0] = Nx; 463 463 theader.Naxis[1] = Ny; 464 fits_modify (&theader, "NAXIS1", "%d", 1, Nx);465 fits_modify (&theader, "NAXIS2", "%d", 1, Ny);466 fits_create_matrix (&theader, &matrix);464 gfits_modify (&theader, "NAXIS1", "%d", 1, Nx); 465 gfits_modify (&theader, "NAXIS2", "%d", 1, Ny); 466 gfits_create_matrix (&theader, &matrix); 467 467 468 468 InterpolateGrid ((float *)matrix.buffer, Nx, Ny, &image[0].coords, &refmosaic[0].coords); 469 fits_fwrite_header (f, &theader);470 fits_fwrite_matrix (f, &matrix);471 fits_free_matrix (&matrix);469 gfits_fwrite_header (f, &theader); 470 gfits_fwrite_matrix (f, &matrix); 471 gfits_free_matrix (&matrix); 472 472 } 473 473 # endif … … 479 479 int ix, iy, x, y, X, Y, bin; 480 480 481 fits_modify (&theader, "EXTNAME", "%s", 1, camera.ccdname[i]);482 fits_modify (&theader, "FILTER", "%s", 1, photcode[0].name);483 fits_modify (&theader, "NX", "%d", 1, camera.Nx);484 fits_modify (&theader, "NY", "%d", 1, camera.Ny);481 gfits_modify (&theader, "EXTNAME", "%s", 1, camera.ccdname[i]); 482 gfits_modify (&theader, "FILTER", "%s", 1, photcode[0].name); 483 gfits_modify (&theader, "NX", "%d", 1, camera.Nx); 484 gfits_modify (&theader, "NY", "%d", 1, camera.Ny); 485 485 486 486 theader.Naxis[0] = RELPHOT_GRID_X; 487 487 theader.Naxis[1] = RELPHOT_GRID_Y; 488 fits_modify (&theader, "NAXIS1", "%d", 1, RELPHOT_GRID_X);489 fits_modify (&theader, "NAXIS2", "%d", 1, RELPHOT_GRID_Y);490 fits_create_matrix (&theader, &matrix);488 gfits_modify (&theader, "NAXIS1", "%d", 1, RELPHOT_GRID_X); 489 gfits_modify (&theader, "NAXIS2", "%d", 1, RELPHOT_GRID_Y); 490 gfits_create_matrix (&theader, &matrix); 491 491 492 492 for (Y = 0; Y < RELPHOT_GRID_Y; Y++) { … … 504 504 505 505 bin = ix + iy*gridX; 506 fits_set_matrix_value (&matrix, X, Y, (double) gridM[bin]);506 gfits_set_matrix_value (&matrix, X, Y, (double) gridM[bin]); 507 507 } 508 508 } 509 fits_fwrite_header (f, &theader);510 fits_fwrite_matrix (f, &matrix);511 fits_free_matrix (&matrix);509 gfits_fwrite_header (f, &theader); 510 gfits_fwrite_matrix (f, &matrix); 511 gfits_free_matrix (&matrix); 512 512 } 513 513 # endif -
trunk/Ohana/src/relastro/src/Shutdown.c
r6808 r7080 22 22 23 23 SetProtect (TRUE); 24 fits_db_close (db);24 gfits_db_close (db); 25 25 fprintf (stderr, "ERROR: addstar halted\n"); 26 26 exit (1); -
trunk/Ohana/src/relastro/src/find_images.c
r6808 r7080 27 27 strcpy (tcoords.ctype, "RA---TAN"); 28 28 29 timage = fits_table_get_Image (&db[0].ftable, &Ntimage, &db[0].swapped);29 timage = gfits_table_get_Image (&db[0].ftable, &Ntimage, &db[0].swapped); 30 30 31 31 nimage = 0; -
trunk/Ohana/src/relastro/src/load_images.c
r6808 r7080 26 26 getfullregion (image, Nimage, fullregion); 27 27 28 fits_vtable_from_ftable (&db[0].ftable, &db[0].vtable, Line, Nimage);28 gfits_vtable_from_ftable (&db[0].ftable, &db[0].vtable, Line, Nimage); 29 29 30 30 initImages (image, Nimage); -
trunk/Ohana/src/relastro/src/name_region.c
r6808 r7080 9 9 10 10 sprintf (region[0].filename, "%s/%s", CATDIR, name); 11 if (! fits_read_header (region[0].filename, &header)) {11 if (!gfits_read_header (region[0].filename, &header)) { 12 12 if (VERBOSE) fprintf (stderr, "catalog file not yet available: %s\n", region[0].filename); 13 13 exit (0); 14 14 } 15 fits_scan (&header, "RA0", "%lf", 1, ®ion[0].RA[0]);16 fits_scan (&header, "RA1", "%lf", 1, ®ion[0].RA[1]);17 fits_scan (&header, "DEC0", "%lf", 1, ®ion[0].DEC[0]);18 fits_scan (&header, "DEC1", "%lf", 1, ®ion[0].DEC[1]);19 fits_free_header (&header);15 gfits_scan (&header, "RA0", "%lf", 1, ®ion[0].RA[0]); 16 gfits_scan (&header, "RA1", "%lf", 1, ®ion[0].RA[1]); 17 gfits_scan (&header, "DEC0", "%lf", 1, ®ion[0].DEC[0]); 18 gfits_scan (&header, "DEC1", "%lf", 1, ®ion[0].DEC[1]); 19 gfits_free_header (&header); 20 20 21 21 *Nregions = 1; -
trunk/Ohana/src/relastro/src/wcatalog.c
r6808 r7080 26 26 catalog[0].Nsecfilt = 0; 27 27 } 28 fits_free_header (&catalog[0].header);28 gfits_free_header (&catalog[0].header); 29 29 } -
trunk/Ohana/src/relastro/src/wimages.c
r6808 r7080 12 12 /* adjust header */ 13 13 Nimages = 0; 14 fits_scan (&db[0].header, "NIMAGES", "%d", 1, &Nimages);14 gfits_scan (&db[0].header, "NIMAGES", "%d", 1, &Nimages); 15 15 Nimages ++; 16 fits_modify (&db[0].header, "NIMAGES", "%d", 1, Nimages);16 gfits_modify (&db[0].header, "NIMAGES", "%d", 1, Nimages); 17 17 18 fits_table_to_vtable (&db[0].ftable, &db[0].vtable, 0, 0);18 gfits_table_to_vtable (&db[0].ftable, &db[0].vtable, 0, 0); 19 19 for (i = 0; i < Nimage; i++) { 20 fits_vadd_rows (&db[0].vtable, (char *) image, 1, sizeof(Image));20 gfits_vadd_rows (&db[0].vtable, (char *) image, 1, sizeof(Image)); 21 21 } 22 22 -
trunk/Ohana/src/relastro/src/write_coords.c
r6808 r7080 5 5 void write_coords (Header *header, Coords *coords) { 6 6 7 fits_modify (header, "CTYPE1", "%s", 1, "RA---TAN");8 fits_modify (header, "CTYPE2", "%s", 1, "DEC--TAN");7 gfits_modify (header, "CTYPE1", "%s", 1, "RA---TAN"); 8 gfits_modify (header, "CTYPE2", "%s", 1, "DEC--TAN"); 9 9 10 fits_modify (header, "CRVAL1", "%lf", 1, coords[0].crval1);11 fits_modify (header, "CRVAL2", "%lf", 1, coords[0].crval2);10 gfits_modify (header, "CRVAL1", "%lf", 1, coords[0].crval1); 11 gfits_modify (header, "CRVAL2", "%lf", 1, coords[0].crval2); 12 12 13 fits_modify (header, "CRPIX1", "%lf", 1, coords[0].crpix1);14 fits_modify (header, "CRPIX2", "%lf", 1, coords[0].crpix2);13 gfits_modify (header, "CRPIX1", "%lf", 1, coords[0].crpix1); 14 gfits_modify (header, "CRPIX2", "%lf", 1, coords[0].crpix2); 15 15 16 16 # if (CD_COORDS) 17 fits_modify (header, "CD1_1", "%le", 1, coords[0].pc1_1 * coords[0].cdelt1);18 fits_modify (header, "CD2_1", "%le", 1, coords[0].pc2_1 * coords[0].cdelt1);19 fits_modify (header, "CD1_2", "%le", 1, coords[0].pc1_2 * coords[0].cdelt2);20 fits_modify (header, "CD2_2", "%le", 1, coords[0].pc2_2 * coords[0].cdelt2);17 gfits_modify (header, "CD1_1", "%le", 1, coords[0].pc1_1 * coords[0].cdelt1); 18 gfits_modify (header, "CD2_1", "%le", 1, coords[0].pc2_1 * coords[0].cdelt1); 19 gfits_modify (header, "CD1_2", "%le", 1, coords[0].pc1_2 * coords[0].cdelt2); 20 gfits_modify (header, "CD2_2", "%le", 1, coords[0].pc2_2 * coords[0].cdelt2); 21 21 # else 22 fits_modify (header, "CDELT1", "%le", 1, coords[0].cdelt1);23 fits_modify (header, "CDELT2", "%le", 1, coords[0].cdelt2);24 fits_modify (header, "PC001001", "%le", 1, coords[0].pc1_1);25 fits_modify (header, "PC001002", "%le", 1, coords[0].pc1_2);26 fits_modify (header, "PC002001", "%le", 1, coords[0].pc2_1);27 fits_modify (header, "PC002002", "%le", 1, coords[0].pc2_2);22 gfits_modify (header, "CDELT1", "%le", 1, coords[0].cdelt1); 23 gfits_modify (header, "CDELT2", "%le", 1, coords[0].cdelt2); 24 gfits_modify (header, "PC001001", "%le", 1, coords[0].pc1_1); 25 gfits_modify (header, "PC001002", "%le", 1, coords[0].pc1_2); 26 gfits_modify (header, "PC002001", "%le", 1, coords[0].pc2_1); 27 gfits_modify (header, "PC002002", "%le", 1, coords[0].pc2_2); 28 28 # endif 29 29 }
Note:
See TracChangeset
for help on using the changeset viewer.
