IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Dec 15, 2008, 3:58:30 PM (17 years ago)
Author:
Paul Price
Message:

Attempting to get correct scaling for stacked images.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/camera/pmReadoutFake.c

    r20937 r20999  
    5050bool pmReadoutFakeFromSources(pmReadout *readout, int numCols, int numRows, const psArray *sources,
    5151                              const psVector *xOffset, const psVector *yOffset, const pmPSF *psf,
    52                               float minFlux, int radius, bool circularise)
     52                              float minFlux, int radius, bool circularise, bool normalisePeak)
    5353{
    5454    PS_ASSERT_PTR_NON_NULL(readout, false);
     
    8383    pmModel *fakeModel = pmModelFromPSFforXY(psf, (float)numCols / 2.0, (float)numRows / 2.0,
    8484                                             1.0); // Fake model, with central intensity of 1.0
    85     psAssert (fakeModel, "failed to generate model: should this be an error or not?");
     85    psAssert(fakeModel, "failed to generate model: should this be an error or not?");
    8686
    87 
    88     float flux0 = fakeModel->modelFlux(fakeModel->params); // Flux for central intensity of 1.0
     87    float flux0 = NAN;                  // Flux for central intensity of 1.0
     88    if (normalisePeak) {
     89        flux0 = fakeModel->modelFlux(fakeModel->params); // Flux for central intensity of 1.0
     90    }
    8991
    9092    if (circularise && !circulariseModel(fakeModel)) {
     
    112114        }
    113115
    114         pmModel *fakeModel = pmModelFromPSFforXY(psf, x, y, powf(10.0, -0.4 * source->psfMag) / flux0);
     116        float flux = powf(10.0, -0.4 * source->psfMag); // Flux of source
     117        if (normalisePeak) {
     118            flux /= flux0;
     119        }
     120
     121        pmModel *fakeModel = pmModelFromPSFforXY(psf, x, y, flux);
    115122        if (!fakeModel) {
    116123            continue;
Note: See TracChangeset for help on using the changeset viewer.