IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jun 14, 2013, 6:23:44 AM (13 years ago)
Author:
eugene
Message:

calculation of the Sxy limits needs to include the factors used by the Sxx,Syy,Sxy -> PAR[n] conversion

Location:
branches/eam_branches/ipp-20130509/psModules/src/objects/models
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20130509/psModules/src/objects/models/pmModel_DEV.c

    r35644 r35662  
    232232        // if q1 < 0.0, f2 ~ f1, we have a very large axis ratio near 45deg..  Saturate at that
    233233        // angle and let f2,f1 fight it out
    234         q2 = 0.5*sqrtf(q1);
     234        // NOTE: the factor of 2 is needed to convert par[SXX,SYY] to shape.sx,sy
     235        q2 = 2.0*0.5*sqrtf(q1);
    235236    }
    236237
  • branches/eam_branches/ipp-20130509/psModules/src/objects/models/pmModel_EXP.c

    r35644 r35662  
    224224        // if q1 < 0.0, f2 ~ f1, we have a very large axis ratio near 45deg..  Saturate at that
    225225        // angle and let f2,f1 fight it out
    226         q2 = 0.5*sqrtf(q1);
     226        // NOTE: the factor of 2 is needed to convert par[SXX,SYY] to shape.sx,sy
     227        q2 = 2.0*0.5*sqrtf(q1);
    227228    }
    228229
  • branches/eam_branches/ipp-20130509/psModules/src/objects/models/pmModel_GAUSS.c

    r35644 r35662  
    129129    float q2 = NAN;
    130130    if (nParam == PM_PAR_SXY) {
    131         float f1 = 1.0 / PS_SQR(params[PM_PAR_SYY]) + 1.0 / PS_SQR(params[PM_PAR_SXX]);
    132         float f2 = 1.0 / PS_SQR(params[PM_PAR_SYY]) - 1.0 / PS_SQR(params[PM_PAR_SXX]);
     131        // NOTE: the factor of 2 is needed to convert par[SXX,SYY] to shape.sx,sy
     132        float f1 = 2.0 / PS_SQR(params[PM_PAR_SYY]) + 2.0 / PS_SQR(params[PM_PAR_SXX]);
     133        float f2 = 2.0 / PS_SQR(params[PM_PAR_SYY]) - 2.0 / PS_SQR(params[PM_PAR_SXX]);
    133134        float q1 = PS_SQR(f1)*AR_RATIO - PS_SQR(f2);
    134135        q1 = (q1 < 0.0) ? 0.0 : q1;
  • branches/eam_branches/ipp-20130509/psModules/src/objects/models/pmModel_PGAUSS.c

    r35644 r35662  
    129129    float q2 = NAN;
    130130    if (nParam == PM_PAR_SXY) {
    131         float f1 = 1.0 / PS_SQR(params[PM_PAR_SYY]) + 1.0 / PS_SQR(params[PM_PAR_SXX]);
    132         float f2 = 1.0 / PS_SQR(params[PM_PAR_SYY]) - 1.0 / PS_SQR(params[PM_PAR_SXX]);
     131        // NOTE: the factor of 2 is needed to convert par[SXX,SYY] to shape.sx,sy
     132        float f1 = 2.0 / PS_SQR(params[PM_PAR_SYY]) + 2.0 / PS_SQR(params[PM_PAR_SXX]);
     133        float f2 = 2.0 / PS_SQR(params[PM_PAR_SYY]) - 2.0 / PS_SQR(params[PM_PAR_SXX]);
    133134        float q1 = PS_SQR(f1)*AR_RATIO - PS_SQR(f2);
    134135        q1 = (q1 < 0.0) ? 0.0 : q1;
  • branches/eam_branches/ipp-20130509/psModules/src/objects/models/pmModel_PS1_V1.c

    r35644 r35662  
    149149    float q2 = NAN;
    150150    if (nParam == PM_PAR_SXY) {
    151         float f1 = 1.0 / PS_SQR(params[PM_PAR_SYY]) + 1.0 / PS_SQR(params[PM_PAR_SXX]);
    152         float f2 = 1.0 / PS_SQR(params[PM_PAR_SYY]) - 1.0 / PS_SQR(params[PM_PAR_SXX]);
     151        float f1 = 2.0 / PS_SQR(params[PM_PAR_SYY]) + 2.0 / PS_SQR(params[PM_PAR_SXX]);
     152        float f2 = 2.0 / PS_SQR(params[PM_PAR_SYY]) - 2.0 / PS_SQR(params[PM_PAR_SXX]);
    153153        float q1 = PS_SQR(f1)*AR_RATIO - PS_SQR(f2);
    154154        q1 = (q1 < 0.0) ? 0.0 : q1;
  • branches/eam_branches/ipp-20130509/psModules/src/objects/models/pmModel_QGAUSS.c

    r35644 r35662  
    149149    float q2 = NAN;
    150150    if (nParam == PM_PAR_SXY) {
    151         float f1 = 1.0 / PS_SQR(params[PM_PAR_SYY]) + 1.0 / PS_SQR(params[PM_PAR_SXX]);
    152         float f2 = 1.0 / PS_SQR(params[PM_PAR_SYY]) - 1.0 / PS_SQR(params[PM_PAR_SXX]);
     151        // NOTE: the factor of 2 is needed to convert par[SXX,SYY] to shape.sx,sy
     152        float f1 = 2.0 / PS_SQR(params[PM_PAR_SYY]) + 2.0 / PS_SQR(params[PM_PAR_SXX]);
     153        float f2 = 2.0 / PS_SQR(params[PM_PAR_SYY]) - 2.0 / PS_SQR(params[PM_PAR_SXX]);
    153154        float q1 = PS_SQR(f1)*AR_RATIO - PS_SQR(f2);
    154155        q1 = (q1 < 0.0) ? 0.0 : q1;
  • branches/eam_branches/ipp-20130509/psModules/src/objects/models/pmModel_RGAUSS.c

    r35644 r35662  
    138138    float q2 = NAN;
    139139    if (nParam == PM_PAR_SXY) {
    140         float f1 = 1.0 / PS_SQR(params[PM_PAR_SYY]) + 1.0 / PS_SQR(params[PM_PAR_SXX]);
    141         float f2 = 1.0 / PS_SQR(params[PM_PAR_SYY]) - 1.0 / PS_SQR(params[PM_PAR_SXX]);
     140        // NOTE: the factor of 2 is needed to convert par[SXX,SYY] to shape.sx,sy
     141        float f1 = 2.0 / PS_SQR(params[PM_PAR_SYY]) + 2.0 / PS_SQR(params[PM_PAR_SXX]);
     142        float f2 = 2.0 / PS_SQR(params[PM_PAR_SYY]) - 2.0 / PS_SQR(params[PM_PAR_SXX]);
    142143        float q1 = PS_SQR(f1)*AR_RATIO - PS_SQR(f2);
    143144        q1 = (q1 < 0.0) ? 0.0 : q1;
  • branches/eam_branches/ipp-20130509/psModules/src/objects/models/pmModel_SERSIC.c

    r35644 r35662  
    244244        // if q1 < 0.0, f2 ~ f1, we have a very large axis ratio near 45deg..  Saturate at that
    245245        // angle and let f2,f1 fight it out
    246         q2 = 0.5*sqrtf(q1);
     246        // NOTE: the factor of 2 is needed to convert par[SXX,SYY] to shape.sx,sy
     247        q2 = 2.0*0.5*sqrtf(q1);
    247248    }
    248249
Note: See TracChangeset for help on using the changeset viewer.