Changeset 38955
- Timestamp:
- Oct 23, 2015, 3:40:18 PM (11 years ago)
- File:
-
- 1 edited
-
trunk/Ohana/src/addstar/src/mkcmf.c (modified) (11 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/addstar/src/mkcmf.c
r38938 r38955 27 27 int WriteXSRCtable (FILE *fits, char *extroot, double *X, double *Y, double *M, unsigned int *Flag, int Nstars, float zeroPt, float exptime); 28 28 int WriteXFITtable (FILE *fits, char *extroot, double *X, double *Y, double *M, unsigned int *Flag, int Nstars); 29 int WriteXRADtable (FILE *fits, char *extroot, double *X, double *Y, double *M, unsigned int *Flag, int Nstars );29 int WriteXRADtable (FILE *fits, char *extroot, double *X, double *Y, double *M, unsigned int *Flag, int Nstars, int Nrad); 30 30 int WriteDETFtable (FILE *fits, char *extroot, double *X, double *Y, double *M, unsigned int *Flag, int Nstars); 31 31 … … 477 477 if (WriteXSRC) WriteXSRCtable (fits, extroot, X, Y, M, Flag, Nstars, zeroPt, exptime); 478 478 if (WriteXFIT) WriteXFITtable (fits, extroot, X, Y, M, Flag, Nstars); 479 if (WriteXRAD) WriteXRADtable (fits, extroot, X, Y, M, Flag, Nstars); 479 480 if (WriteXRAD && isStack) WriteXRADtable (fits, extroot, X, Y, M, Flag, Nstars, 3); 481 if (WriteXRAD && isForcedWarp) WriteXRADtable (fits, extroot, X, Y, M, Flag, Nstars, 1); 482 480 483 if (WriteDETF) WriteDETFtable (fits, extroot, X, Y, M, Flag, Nstars); 481 484 … … 923 926 924 927 stars[i].posangle = 10.0; 925 stars[i].pltscale = 0.25;928 stars[i].pltscale = coords.cdelt1; 926 929 927 930 stars[i].M = M[i]; … … 1328 1331 Y_EXT_SIG [i] = FY * fSN; 1329 1332 F25_ARATIO [i] = 0.9; 1330 F25_THETA [i] = 10.0; 1333 F25_THETA [i] = 10.0; // seems to be in degrees in the cmfs 1331 1334 PETRO_MAG [i] = M[i] + zeroPt + magtime; 1332 PETRO_MAG_ERR [i] = 1.0 / fSN; 1335 PETRO_MAG_ERR [i] = 1.0 / fSN; // note that the real cmfs have PETRO_MAG_ERR inverted 1333 1336 PETRO_RADIUS [i] = 8.0; 1334 1337 if (i == 2) { … … 1470 1473 float fSN = 1.0 / sqrt(flux); 1471 1474 1475 double ra, dec; 1476 XY_to_RD (&ra, &dec, X[i], Y[i], &coords); 1477 1472 1478 IPP_IDET [i] = i; 1473 1479 X_EXT [i] = X[i]; … … 1476 1482 Y_EXT_SIG [i] = FY * fSN; 1477 1483 SKY_EXT [i] = 0.1; 1478 RA_EXT [i] = NAN;1479 DEC_EXT [i] = NAN;1484 RA_EXT [i] = ra; 1485 DEC_EXT [i] = dec; 1480 1486 EXT_INST_MAG [i] = M[i]; 1481 1487 EXT_INST_MAG_SIG [i] = fSN; … … 1490 1496 EXT_WIDTH_MAJ [i] = FX*2.8; 1491 1497 EXT_WIDTH_MIN [i] = FY*2.8; 1492 EXT_THETA [i] = 10.0;1493 EXT_WIDTH_MAJ_ERR[i] = FX* 3.0;1494 EXT_WIDTH_MIN_ERR[i] = FY* 3.0;1495 EXT_THETA_ERR [i] = 0. 5;1498 EXT_THETA [i] = 0.57; 1499 EXT_WIDTH_MAJ_ERR[i] = FX*0.28; 1500 EXT_WIDTH_MIN_ERR[i] = FY*0.28; 1501 EXT_THETA_ERR [i] = 0.0057; 1496 1502 EXT_PAR_07 [i] = NAN; 1497 1503 … … 1537 1543 } 1538 1544 1539 int WriteXRADtable (FILE *fits, char *extroot, double *X, double *Y, double *M, unsigned int *Flag, int Nstars) { 1545 static float psfFWHM[3] = {4.8, 6.0, 8.0}; 1546 1547 int WriteXRADtable (FILE *fits, char *extroot, double *X, double *Y, double *M, unsigned int *Flag, int Nstars, int Nrad) { 1540 1548 1541 1549 int i, j, k; … … 1564 1572 1565 1573 // create intermediate storage arrays 1566 int *IPP_IDET ; ALLOCATE (IPP_IDET , int , 3*Nstars); 1567 float *X_APER ; ALLOCATE (X_APER , float , 3*Nstars); 1568 float *Y_APER ; ALLOCATE (Y_APER , float , 3*Nstars); 1569 float *PSF_FWHM ; ALLOCATE (PSF_FWHM , float , 3*Nstars); 1570 float *APER_FLUX ; ALLOCATE (APER_FLUX , float , 3*Nstars*9); 1571 float *APER_FLUX_ERR ; ALLOCATE (APER_FLUX_ERR , float , 3*Nstars*9); 1572 float *APER_FLUX_STDEV ; ALLOCATE (APER_FLUX_STDEV , float , 3*Nstars*9); 1573 float *APER_FILL ; ALLOCATE (APER_FILL , float , 3*Nstars*9); 1574 1575 float psfFWHM[3] = {4.8, 6.0, 8.0}; 1574 int *IPP_IDET ; ALLOCATE (IPP_IDET , int , Nrad*Nstars); 1575 float *X_APER ; ALLOCATE (X_APER , float , Nrad*Nstars); 1576 float *Y_APER ; ALLOCATE (Y_APER , float , Nrad*Nstars); 1577 float *PSF_FWHM ; ALLOCATE (PSF_FWHM , float , Nrad*Nstars); 1578 float *APER_FLUX ; ALLOCATE (APER_FLUX , float , Nrad*Nstars*9); 1579 float *APER_FLUX_ERR ; ALLOCATE (APER_FLUX_ERR , float , Nrad*Nstars*9); 1580 float *APER_FLUX_STDEV ; ALLOCATE (APER_FLUX_STDEV , float , Nrad*Nstars*9); 1581 float *APER_FILL ; ALLOCATE (APER_FILL , float , Nrad*Nstars*9); 1576 1582 1577 1583 // assign the storage arrays … … 1580 1586 // float fSN = 1.0 / sqrt(flux); 1581 1587 1582 for (k = 0; k < 3; k++) {1583 int N = 3*i + k;1588 for (k = 0; k < Nrad; k++) { 1589 int N = Nrad*i + k; 1584 1590 IPP_IDET [N] = i; 1585 1591 X_APER [N] = X[i]; … … 1597 1603 1598 1604 // set the table data 1599 gfits_set_bintable_column (&header, &ftable, "IPP_IDET" , IPP_IDET , 3*Nstars);1600 gfits_set_bintable_column (&header, &ftable, "X_APER" , X_APER , 3*Nstars);1601 gfits_set_bintable_column (&header, &ftable, "Y_APER" , Y_APER , 3*Nstars);1602 gfits_set_bintable_column (&header, &ftable, "PSF_FWHM" , PSF_FWHM , 3*Nstars);1603 gfits_set_bintable_column (&header, &ftable, "APER_FLUX" , APER_FLUX , 3*Nstars);1604 gfits_set_bintable_column (&header, &ftable, "APER_FLUX_ERR" , APER_FLUX_ERR , 3*Nstars);1605 gfits_set_bintable_column (&header, &ftable, "APER_FLUX_STDEV" , APER_FLUX_STDEV , 3*Nstars);1606 gfits_set_bintable_column (&header, &ftable, "APER_FILL" , APER_FILL , 3*Nstars);1605 gfits_set_bintable_column (&header, &ftable, "IPP_IDET" , IPP_IDET , Nrad*Nstars); 1606 gfits_set_bintable_column (&header, &ftable, "X_APER" , X_APER , Nrad*Nstars); 1607 gfits_set_bintable_column (&header, &ftable, "Y_APER" , Y_APER , Nrad*Nstars); 1608 gfits_set_bintable_column (&header, &ftable, "PSF_FWHM" , PSF_FWHM , Nrad*Nstars); 1609 gfits_set_bintable_column (&header, &ftable, "APER_FLUX" , APER_FLUX , Nrad*Nstars); 1610 gfits_set_bintable_column (&header, &ftable, "APER_FLUX_ERR" , APER_FLUX_ERR , Nrad*Nstars); 1611 gfits_set_bintable_column (&header, &ftable, "APER_FLUX_STDEV" , APER_FLUX_STDEV , Nrad*Nstars); 1612 gfits_set_bintable_column (&header, &ftable, "APER_FILL" , APER_FILL , Nrad*Nstars); 1607 1613 } 1608 1614 /**/
Note:
See TracChangeset
for help on using the changeset viewer.
