Index: trunk/psLib/src/math/psMinimizeLMM.c
===================================================================
--- trunk/psLib/src/math/psMinimizeLMM.c	(revision 6101)
+++ trunk/psLib/src/math/psMinimizeLMM.c	(revision 6204)
@@ -10,6 +10,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-01-21 02:43:31 $
+ *  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-01-26 21:10:22 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -204,4 +204,5 @@
     psMinimizeLMChi2Func func)
 {
+    // XXX: Check vector sizes.
     PS_ASSERT_IMAGE_NON_NULL(alpha, NAN);
     PS_ASSERT_VECTOR_NON_NULL(beta, NAN);
@@ -218,6 +219,6 @@
 
     // zero alpha and beta for summing below
-    for (int j = 0; j < params->n; j++) {
-        for (int k = 0; k < params->n; k++) {
+    for (psS32 j = 0; j < params->n; j++) {
+        for (psS32 k = 0; k < params->n; k++) {
             alpha->data.F64[j][k] = 0;
         }
@@ -227,5 +228,5 @@
 
     // calculate chisq, alpha, beta
-    for (int i = 0; i < y->n; i++) {
+    for (psS32 i = 0; i < y->n; i++) {
         ymodel = func(deriv, params, (psVector *) x->data[i]);
 
@@ -233,9 +234,9 @@
         chisq += PS_SQR(delta) * dy->data.F32[i];
 
-        for (int j = 0; j < params->n; j++) {
+        for (psS32 j = 0; j < params->n; j++) {
             if ((paramMask != NULL) && (paramMask->data.U8[j]))
                 continue;
             weight = deriv->data.F32[j] * dy->data.F32[i];
-            for (int k = 0; k <= j; k++) {
+            for (psS32 k = 0; k <= j; k++) {
                 if ((paramMask != NULL) && (paramMask->data.U8[k]))
                     continue;
@@ -247,6 +248,6 @@
 
     // calculate lower-left half of alpha
-    for (int j = 1; j < params->n; j++) {
-        for (int k = 0; k < j; k++) {
+    for (psS32 j = 1; j < params->n; j++) {
+        for (psS32 k = 0; k < j; k++) {
             alpha->data.F64[k][j] = alpha->data.F64[j][k];
         }
@@ -255,5 +256,5 @@
     // fill in pivots if we apply a mask
     if (paramMask != NULL) {
-        for (int j = 0; j < params->n; j++) {
+        for (psS32 j = 0; j < params->n; j++) {
             if (paramMask->data.U8[j]) {
                 alpha->data.F64[j][j] = 1;
