IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 36276


Ignore:
Timestamp:
Nov 8, 2013, 3:22:59 PM (13 years ago)
Author:
eugene
Message:

working on 2d convolve issues for psphot galaxies

Location:
branches/eam_branches/ipp-20130904/psModules/src/objects
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20130904/psModules/src/objects/pmPCM_MinimizeChisq.c

    r36240 r36276  
    477477        // * threading takes place above this level
    478478        pcm->modelConvFlux = psImageCopy (pcm->modelConvFlux, pcm->modelFlux, pcm->modelFlux->type.type);
    479         psImageSmoothCache_F32 (pcm->modelConvFlux, pcm->smdata);
     479       
     480        // hard-wire this for now?
     481        psImageSmoothCache_F32 (pcm->modelConvFlux, pcm->smdata1);
     482        psImageSmoothCache_F32 (pcm->modelConvFlux, pcm->smdata2);
    480483    } else {
    481484        psImageConvolveKernel (pcm->modelConvFlux, pcm->modelFlux, NULL, 0, pcm->psfFFT);
     
    496499            // * threading takes place above this level
    497500            dmodelConv = psImageCopy (dmodelConv, dmodel, dmodel->type.type);
    498             psImageSmoothCache_F32 (dmodelConv, pcm->smdata);
     501            psImageSmoothCache_F32 (dmodelConv, pcm->smdata1);
     502            psImageSmoothCache_F32 (dmodelConv, pcm->smdata2);
    499503        } else {
    500504            psImageConvolveKernel (dmodelConv, dmodel, NULL, 0, pcm->psfFFT);
     
    516520            // * threading takes place above this level
    517521            dmodelConv = psImageCopy (dmodelConv, dmodel, dmodel->type.type);
    518             psImageSmoothCache_F32 (dmodelConv, pcm->smdata);
     522            psImageSmoothCache_F32 (dmodelConv, pcm->smdata1);
     523            psImageSmoothCache_F32 (dmodelConv, pcm->smdata2);
    519524        } else {
    520525            psImageConvolveFFT (dmodelConv, dmodel, NULL, 0, pcm->psf);
  • branches/eam_branches/ipp-20130904/psModules/src/objects/pmPCMdata.c

    r36246 r36276  
    5858    psFree (pcm->psfFFT);
    5959    psFree (pcm->constraint);
    60     psFree (pcm->smdata); // pre-allocated data for psImageSmooth_PreAlloc
     60
     61    psFree (pcm->smdata1); // pre-allocated data for psImageSmooth_PreAlloc
     62    psFree (pcm->smdata2); // pre-allocated data for psImageSmooth_PreAlloc
    6163    return;
    6264}
     
    8890    }
    8991
    90     pcm->smdata = NULL;
     92    pcm->smdata1 = NULL;
     93    pcm->smdata2 = NULL;
     94
    9195    pcm->modelConv = NULL;
    9296    pcm->psf = NULL;
     
    284288}
    285289
    286 psImageSmoothCacheData *psImageSmoothCacheSetKernel (float *sigma, float *kappa, psImage *flux, pmModel *modelPSF) {
     290// set 2 gaussians (extend to more if interesting)
     291psImageSmoothCacheData *psImageSmoothCacheSetKernel (float *sigma1, float *sigma2, psImage *flux, pmModel *modelPSF) {
    287292
    288293    psAssert (modelPSF, "psf model must be defined");
     
    294299   
    295300    float nsigma = 5.0;
    296     *sigma = NAN;
    297     *kappa = NAN;
    298 
     301    *sigma1 = NAN;
     302    *sigma2 = NAN;
     303
     304    // XXX need to do this more carefully
    299305    if (modelPSF->type == modelType_GAUSS) {
    300306        float FWHM_MAJOR = 2*modelPSF->modelRadius (modelPSF->params, 0.5*PAR[PM_PAR_I0]);
    301307        float FWHM_MINOR = FWHM_MAJOR * (axes.minor / axes.major);
    302         *sigma = 0.5 * (FWHM_MAJOR + FWHM_MINOR) / 2.35;
     308        *sigma1 = 0.50 * (FWHM_MAJOR + FWHM_MINOR) / 2.35;
     309        *sigma2 = 0.25 * (FWHM_MAJOR + FWHM_MINOR) / 2.35;
    303310    }
    304311    if (modelPSF->type == modelType_PS1_V1) {
  • branches/eam_branches/ipp-20130904/psModules/src/objects/pmPCMdata.h

    r36240 r36276  
    3939
    4040    bool use1Dgauss;
    41     float sigma;
    4241    float kappa;
    4342    float nsigma;
    4443
     44    // psArray *smdata;
    4545    psImageSmoothCacheData *smdata;
     46    psImageSmooth2dCacheData *smdata2d;
    4647} pmPCMdata;
    4748
Note: See TracChangeset for help on using the changeset viewer.