Changeset 21183 for trunk/psLib/src/math/psMinimizeLMM.c
- Timestamp:
- Jan 26, 2009, 8:40:07 PM (17 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/math/psMinimizeLMM.c (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/math/psMinimizeLMM.c
r19845 r21183 10 10 * @author EAM, IfA 11 11 * 12 * @version $Revision: 1.3 5$ $Name: not supported by cvs2svn $13 * @date $Date: 200 8-10-02 20:49:22$12 * @version $Revision: 1.36 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2009-01-27 06:39:38 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 74 74 PS_ASSERT_VECTOR_TYPE(params, PS_TYPE_F32, false); 75 75 if (paramMask) { 76 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_ MASK, false);76 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_VECTOR_MASK, false); 77 77 } 78 78 … … 113 113 // set tmpBeta values which are not masked 114 114 for (int j = 0, n = 0; j < params->n; j++) { 115 if (paramMask && (paramMask->data. U8[j])) continue;115 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[j])) continue; 116 116 tmpBeta->data.F32[j] = Beta->data.F32[n]; 117 117 n++; … … 120 120 // apply Beta to get new Params values 121 121 for (int j = 0; j < params->n; j++) { 122 if (paramMask && (paramMask->data. U8[j])) {122 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[j])) { 123 123 Params->data.F32[j] = params->data.F32[j]; 124 124 continue; … … 140 140 // apply tmpBeta after limits have been checked 141 141 for (int j = 0, n = 0; j < params->n; j++) { 142 if (paramMask && (paramMask->data. U8[j])) continue;142 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[j])) continue; 143 143 Beta->data.F32[n] = tmpBeta->data.F32[j]; 144 144 n++; … … 269 269 PS_ASSERT_VECTOR_TYPE(params, PS_TYPE_F32, false); 270 270 if (paramMask) { 271 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_ MASK, false);271 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_VECTOR_MASK, false); 272 272 } 273 273 … … 297 297 // we track alpha,beta and params,deriv separately 298 298 for (int j = 0, J = 0; j < params->n; j++) { 299 if (paramMask && (paramMask->data. U8[j])) continue;299 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[j])) continue; 300 300 301 301 weight = deriv->data.F32[j] * dy->data.F32[i]; 302 302 303 303 for (int k = 0, K = 0; k <= j; k++) { 304 if (paramMask && (paramMask->data. U8[k])) continue;304 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[k])) continue; 305 305 alpha->data.F32[J][K] += weight * deriv->data.F32[k]; 306 306 K++; … … 351 351 paramMask = constraint->paramMask; 352 352 if (paramMask != NULL) { 353 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_ U8, false);353 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_VECTOR_MASK, false); 354 354 PS_ASSERT_VECTORS_SIZE_EQUAL(params, paramMask, false); 355 355 } … … 493 493 psImageInit (covar, 0.0); 494 494 for (int j = 0, J = 0; j < params->n; j++) { 495 if (paramMask && (paramMask->data. U8[j])) {495 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[j])) { 496 496 covar->data.F32[j][j] = 1.0; 497 497 continue; 498 498 } 499 499 for (int k = 0, K = 0; k < params->n; k++) { 500 if (paramMask && (paramMask->data. U8[k])) continue;500 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[k])) continue; 501 501 covar->data.F32[j][k] = Alpha->data.F32[J][K]; 502 502 K++; … … 535 535 nParams = 0; 536 536 for (int i = 0; i < paramMask->n; i++) { 537 if (paramMask->data. U8[i]) continue;537 if (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[i]) continue; 538 538 nParams ++; 539 539 }
Note:
See TracChangeset
for help on using the changeset viewer.
