Changeset 25563
- Timestamp:
- Sep 24, 2009, 4:02:05 PM (17 years ago)
- Location:
- branches/pap/psModules/src/objects
- Files:
-
- 7 edited
-
models/pmModel_GAUSS.c (modified) (3 diffs)
-
models/pmModel_PGAUSS.c (modified) (4 diffs)
-
models/pmModel_PS1_V1.c (modified) (3 diffs)
-
models/pmModel_QGAUSS.c (modified) (4 diffs)
-
models/pmModel_RGAUSS.c (modified) (4 diffs)
-
models/pmModel_SERSIC.c (modified) (4 diffs)
-
pmModel.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/pap/psModules/src/objects/models/pmModel_GAUSS.c
r25521 r25563 50 50 static float *paramsMaxUse = NULL; 51 51 static float betaUse[] = { 1000, 3e6, 5, 5, 2.0, 2.0, 0.5 }; 52 53 static bool limitsApply = true; // Apply limits? 52 54 53 55 // the model is a function of the pixel coordinate (pixcoord[0,1] = x,y) … … 91 93 bool PM_MODEL_LIMITS (psMinConstraintMode mode, int nParam, float *params, float *beta) 92 94 { 95 if (!limitsApply) { 96 return true; 97 } 93 98 psAssert(nParam >= 0 && nParam <= PM_PAR_7, "Parameter index is out of bounds"); 94 99 … … 362 367 paramsMinUse = NULL; 363 368 paramsMaxUse = NULL; 369 limitsApply = true; 370 break; 371 case PM_MODEL_LIMITS_IGNORE: 372 paramsMinUse = NULL; 373 paramsMaxUse = NULL; 374 limitsApply = false; 364 375 case PM_MODEL_LIMITS_LAX: 365 376 paramsMinUse = paramsMinLax; 366 377 paramsMaxUse = paramsMaxLax; 378 limitsApply = true; 367 379 break; 368 380 case PM_MODEL_LIMITS_STRICT: 369 381 paramsMinUse = paramsMinStrict; 370 382 paramsMaxUse = paramsMaxStrict; 383 limitsApply = true; 371 384 break; 372 385 default: -
branches/pap/psModules/src/objects/models/pmModel_PGAUSS.c
r25521 r25563 50 50 static float *paramsMaxUse = NULL; 51 51 static float betaUse[] = { 1000, 3e6, 5, 5, 2.0, 2.0, 0.5 }; 52 53 static bool limitsApply = true; // Apply limits? 52 54 53 55 // the model is a function of the pixel coordinate (pixcoord[0,1] = x,y) … … 92 94 bool PM_MODEL_LIMITS (psMinConstraintMode mode, int nParam, float *params, float *beta) 93 95 { 96 if (!limitsApply) { 97 return true; 98 } 94 99 psAssert(nParam >= 0 && nParam <= PM_PAR_7, "Parameter index is out of bounds"); 95 100 … … 403 408 } 404 409 410 405 411 void PM_MODEL_SET_LIMITS(pmModelLimitsType type) 406 412 { … … 409 415 paramsMinUse = NULL; 410 416 paramsMaxUse = NULL; 417 limitsApply = true; 418 break; 419 case PM_MODEL_LIMITS_IGNORE: 420 paramsMinUse = NULL; 421 paramsMaxUse = NULL; 422 limitsApply = false; 411 423 case PM_MODEL_LIMITS_LAX: 412 424 paramsMinUse = paramsMinLax; 413 425 paramsMaxUse = paramsMaxLax; 426 limitsApply = true; 414 427 break; 415 428 case PM_MODEL_LIMITS_STRICT: 416 429 paramsMinUse = paramsMinStrict; 417 430 paramsMaxUse = paramsMaxStrict; 431 limitsApply = true; 418 432 break; 419 433 default: -
branches/pap/psModules/src/objects/models/pmModel_PS1_V1.c
r25521 r25563 56 56 static float betaUse[] = { 1000, 3e6, 5, 5, 1.0, 1.0, 0.5, 2.0 }; 57 57 58 static bool limitsApply = true; // Apply limits? 59 58 60 59 61 psF32 PM_MODEL_FUNC (psVector *deriv, … … 109 111 bool PM_MODEL_LIMITS (psMinConstraintMode mode, int nParam, float *params, float *beta) 110 112 { 113 if (!limitsApply) { 114 return true; 115 } 111 116 psAssert(nParam >= 0 && nParam <= PM_PAR_7, "Parameter index is out of bounds"); 112 117 … … 436 441 paramsMinUse = NULL; 437 442 paramsMaxUse = NULL; 443 limitsApply = true; 444 break; 445 case PM_MODEL_LIMITS_IGNORE: 446 paramsMinUse = NULL; 447 paramsMaxUse = NULL; 448 limitsApply = false; 438 449 case PM_MODEL_LIMITS_LAX: 439 450 paramsMinUse = paramsMinLax; 440 451 paramsMaxUse = paramsMaxLax; 452 limitsApply = true; 441 453 break; 442 454 case PM_MODEL_LIMITS_STRICT: 443 455 paramsMinUse = paramsMinStrict; 444 456 paramsMaxUse = paramsMaxStrict; 457 limitsApply = true; 445 458 break; 446 459 default: -
branches/pap/psModules/src/objects/models/pmModel_QGAUSS.c
r25521 r25563 52 52 static float betaUse[] = { 1000, 3e6, 5, 5, 1.0, 1.0, 0.5 }; 53 53 54 static bool limitsApply = true; // Apply limits? 55 54 56 psF32 PM_MODEL_FUNC (psVector *deriv, 55 57 const psVector *params, … … 105 107 bool PM_MODEL_LIMITS (psMinConstraintMode mode, int nParam, float *params, float *beta) 106 108 { 109 if (!limitsApply) { 110 return true; 111 } 107 112 psAssert(nParam >= 0 && nParam <= PM_PAR_7, "Parameter index is out of bounds"); 108 113 … … 424 429 } 425 430 431 426 432 void PM_MODEL_SET_LIMITS(pmModelLimitsType type) 427 433 { … … 430 436 paramsMinUse = NULL; 431 437 paramsMaxUse = NULL; 438 limitsApply = true; 439 break; 440 case PM_MODEL_LIMITS_IGNORE: 441 paramsMinUse = NULL; 442 paramsMaxUse = NULL; 443 limitsApply = false; 432 444 case PM_MODEL_LIMITS_LAX: 433 445 paramsMinUse = paramsMinLax; 434 446 paramsMaxUse = paramsMaxLax; 447 limitsApply = true; 435 448 break; 436 449 case PM_MODEL_LIMITS_STRICT: 437 450 paramsMinUse = paramsMinStrict; 438 451 paramsMaxUse = paramsMaxStrict; 452 limitsApply = true; 439 453 break; 440 454 default: -
branches/pap/psModules/src/objects/models/pmModel_RGAUSS.c
r25521 r25563 52 52 static float betaUse[] = { 1000, 3e6, 5, 5, 0.5, 0.5, 0.5, 0.5 }; 53 53 54 static bool limitsApply = true; // Apply limits? 55 54 56 psF32 PM_MODEL_FUNC (psVector *deriv, 55 57 const psVector *params, … … 99 101 bool PM_MODEL_LIMITS (psMinConstraintMode mode, int nParam, float *params, float *beta) 100 102 { 103 if (!limitsApply) { 104 return true; 105 } 101 106 psAssert(nParam >= 0 && nParam <= PM_PAR_7, "Parameter index is out of bounds"); 102 107 … … 417 422 } 418 423 424 419 425 void PM_MODEL_SET_LIMITS(pmModelLimitsType type) 420 426 { … … 423 429 paramsMinUse = NULL; 424 430 paramsMaxUse = NULL; 431 limitsApply = true; 432 break; 433 case PM_MODEL_LIMITS_IGNORE: 434 paramsMinUse = NULL; 435 paramsMaxUse = NULL; 436 limitsApply = false; 425 437 case PM_MODEL_LIMITS_LAX: 426 438 paramsMinUse = paramsMinLax; 427 439 paramsMaxUse = paramsMaxLax; 440 limitsApply = true; 428 441 break; 429 442 case PM_MODEL_LIMITS_STRICT: 430 443 paramsMinUse = paramsMinStrict; 431 444 paramsMaxUse = paramsMaxStrict; 445 limitsApply = true; 432 446 break; 433 447 default: -
branches/pap/psModules/src/objects/models/pmModel_SERSIC.c
r25521 r25563 55 55 static float betaUse[] = { 1000, 3e6, 5, 5, 1.0, 1.0, 0.5, 2.0 }; 56 56 57 static bool limitsApply = true; // Apply limits? 58 57 59 psF32 PM_MODEL_FUNC (psVector *deriv, 58 60 const psVector *params, … … 114 116 bool PM_MODEL_LIMITS (psMinConstraintMode mode, int nParam, float *params, float *beta) 115 117 { 118 if (!limitsApply) { 119 return true; 120 } 116 121 psAssert(nParam >= 0 && nParam <= PM_PAR_7, "Parameter index is out of bounds"); 117 122 … … 410 415 } 411 416 417 412 418 void PM_MODEL_SET_LIMITS(pmModelLimitsType type) 413 419 { … … 416 422 paramsMinUse = NULL; 417 423 paramsMaxUse = NULL; 424 limitsApply = true; 425 break; 426 case PM_MODEL_LIMITS_IGNORE: 427 paramsMinUse = NULL; 428 paramsMaxUse = NULL; 429 limitsApply = false; 418 430 case PM_MODEL_LIMITS_LAX: 419 431 paramsMinUse = paramsMinLax; 420 432 paramsMaxUse = paramsMaxLax; 433 limitsApply = true; 421 434 break; 422 435 case PM_MODEL_LIMITS_STRICT: 423 436 paramsMinUse = paramsMinStrict; 424 437 paramsMaxUse = paramsMaxStrict; 438 limitsApply = true; 425 439 break; 426 440 default: -
branches/pap/psModules/src/objects/pmModel.h
r25548 r25563 46 46 /// Parameter limit types 47 47 typedef enum { 48 PM_MODEL_LIMITS_NONE, ///< No limits: fit can go to town 48 PM_MODEL_LIMITS_NONE, ///< Apply no limits: suitable for debugging 49 PM_MODEL_LIMITS_IGNORE, ///< Ignore all limits: fit can go to town 49 50 PM_MODEL_LIMITS_LAX, ///< Lax limits: attempting to reproduce mildly bad data 50 51 PM_MODEL_LIMITS_STRICT, ///< Strict limits: good quality data
Note:
See TracChangeset
for help on using the changeset viewer.
