Index: trunk/psLib/src/math/psPolynomial.c
===================================================================
--- trunk/psLib/src/math/psPolynomial.c	(revision 845)
+++ trunk/psLib/src/math/psPolynomial.c	(revision 889)
@@ -6,6 +6,6 @@
  *  @author George Gusciora, MHPCC
  *
- *  @version $Revision: 1.10 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-06-04 01:03:11 $
+ *  @version $Revision: 1.11 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-06-07 00:32:53 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -71,4 +71,6 @@
  routines for generating both uniformly distributed numbers and the
  Gaussian distribution as well.
+ 
+ GUS: There is no way to seed the random generator.
  *****************************************************************************/
 psVector *psGaussianDev(float mean,
@@ -82,4 +84,5 @@
 
     gauss = psVectorAlloc(Npts, PS_TYPE_F32);
+    gauss->n = Npts;
     gsl_rng_env_setup();
     T = gsl_rng_default;
@@ -120,7 +123,7 @@
     newPoly->nY = nY;
 
-    newPoly->coeff    = (float **) psAlloc(nX * sizeof(float));
-    newPoly->coeffErr = (float **) psAlloc(nX * sizeof(float));
-    newPoly->mask     = (char **)  psAlloc(nX * sizeof(char));
+    newPoly->coeff    = (float **) psAlloc(nX * sizeof(float *));
+    newPoly->coeffErr = (float **) psAlloc(nX * sizeof(float *));
+    newPoly->mask     = (char **)  psAlloc(nX * sizeof(char *));
     for (x=0;x<nX;x++) {
         newPoly->coeff[x]    = (float *) psAlloc(nY * sizeof(float));
@@ -129,4 +132,5 @@
     }
 
+
     return(newPoly);
 }
@@ -143,11 +147,11 @@
     newPoly->nZ = nZ;
 
-    newPoly->coeff    = (float ***) psAlloc(nX * sizeof(float));
-    newPoly->coeffErr = (float ***) psAlloc(nX * sizeof(float));
-    newPoly->mask     = (char ***)  psAlloc(nX * sizeof(char));
+    newPoly->coeff    = (float ***) psAlloc(nX * sizeof(float **));
+    newPoly->coeffErr = (float ***) psAlloc(nX * sizeof(float **));
+    newPoly->mask     = (char ***)  psAlloc(nX * sizeof(char **));
     for (x=0;x<nX;x++) {
-        newPoly->coeff[x]    = (float **) psAlloc(nY * sizeof(float));
-        newPoly->coeffErr[x] = (float **) psAlloc(nY * sizeof(float));
-        newPoly->mask[x]     = (char **)  psAlloc(nY * sizeof(char));
+        newPoly->coeff[x]    = (float **) psAlloc(nY * sizeof(float *));
+        newPoly->coeffErr[x] = (float **) psAlloc(nY * sizeof(float *));
+        newPoly->mask[x]     = (char **)  psAlloc(nY * sizeof(char *));
         for (y=0;y<nY;y++) {
             newPoly->coeff[x][y]    = (float *) psAlloc(nZ * sizeof(float));
@@ -173,15 +177,15 @@
     newPoly->nZ = nZ;
 
-    newPoly->coeff    = (float ****) psAlloc(nW * sizeof(float));
-    newPoly->coeffErr = (float ****) psAlloc(nW * sizeof(float));
-    newPoly->mask     = (char ****)  psAlloc(nW * sizeof(char));
+    newPoly->coeff    = (float ****) psAlloc(nW * sizeof(float ***));
+    newPoly->coeffErr = (float ****) psAlloc(nW * sizeof(float ***));
+    newPoly->mask     = (char ****)  psAlloc(nW * sizeof(char ***));
     for (w=0;w<nW;w++) {
-        newPoly->coeff[w]    = (float ***) psAlloc(nX * sizeof(float));
-        newPoly->coeffErr[w] = (float ***) psAlloc(nX * sizeof(float));
-        newPoly->mask[w]     = (char ***)  psAlloc(nX * sizeof(char));
+        newPoly->coeff[w]    = (float ***) psAlloc(nX * sizeof(float **));
+        newPoly->coeffErr[w] = (float ***) psAlloc(nX * sizeof(float **));
+        newPoly->mask[w]     = (char ***)  psAlloc(nX * sizeof(char **));
         for (x=0;x<nX;x++) {
-            newPoly->coeff[w][x]    = (float **) psAlloc(nY * sizeof(float));
-            newPoly->coeffErr[w][x] = (float **) psAlloc(nY * sizeof(float));
-            newPoly->mask[w][x]     = (char **) psAlloc(nY * sizeof(char));
+            newPoly->coeff[w][x]    = (float **) psAlloc(nY * sizeof(float *));
+            newPoly->coeffErr[w][x] = (float **) psAlloc(nY * sizeof(float *));
+            newPoly->mask[w][x]     = (char **) psAlloc(nY * sizeof(char *));
             for (y=0;y<nY;y++) {
                 newPoly->coeff[w][x][y]    = (float *) psAlloc(nZ * sizeof(float));
@@ -410,7 +414,7 @@
     newPoly->nY = nY;
 
-    newPoly->coeff    = (double **) psAlloc(nX * sizeof(double));
-    newPoly->coeffErr = (double **) psAlloc(nX * sizeof(double));
-    newPoly->mask     = (char **)  psAlloc(nX * sizeof(char));
+    newPoly->coeff    = (double **) psAlloc(nX * sizeof(double *));
+    newPoly->coeffErr = (double **) psAlloc(nX * sizeof(double *));
+    newPoly->mask     = (char **)  psAlloc(nX * sizeof(char *));
     for (x=0;x<nX;x++) {
         newPoly->coeff[x]    = (double *) psAlloc(nY * sizeof(double));
@@ -433,11 +437,11 @@
     newPoly->nZ = nZ;
 
-    newPoly->coeff    = (double ***) psAlloc(nX * sizeof(double));
-    newPoly->coeffErr = (double ***) psAlloc(nX * sizeof(double));
-    newPoly->mask     = (char ***)  psAlloc(nX * sizeof(char));
+    newPoly->coeff    = (double ***) psAlloc(nX * sizeof(double **));
+    newPoly->coeffErr = (double ***) psAlloc(nX * sizeof(double **));
+    newPoly->mask     = (char ***)  psAlloc(nX * sizeof(char **));
     for (x=0;x<nX;x++) {
-        newPoly->coeff[x]    = (double **) psAlloc(nY * sizeof(double));
-        newPoly->coeffErr[x] = (double **) psAlloc(nY * sizeof(double));
-        newPoly->mask[x]     = (char **)  psAlloc(nY * sizeof(char));
+        newPoly->coeff[x]    = (double **) psAlloc(nY * sizeof(double *));
+        newPoly->coeffErr[x] = (double **) psAlloc(nY * sizeof(double *));
+        newPoly->mask[x]     = (char **)  psAlloc(nY * sizeof(char *));
         for (y=0;y<nY;y++) {
             newPoly->coeff[x][y]    = (double *) psAlloc(nZ * sizeof(double));
@@ -463,15 +467,15 @@
     newPoly->nZ = nZ;
 
-    newPoly->coeff    = (double ****) psAlloc(nW * sizeof(double));
-    newPoly->coeffErr = (double ****) psAlloc(nW * sizeof(double));
-    newPoly->mask     = (char ****)  psAlloc(nW * sizeof(char));
+    newPoly->coeff    = (double ****) psAlloc(nW * sizeof(double ***));
+    newPoly->coeffErr = (double ****) psAlloc(nW * sizeof(double ***));
+    newPoly->mask     = (char ****)  psAlloc(nW * sizeof(char ***));
     for (w=0;w<nW;w++) {
-        newPoly->coeff[w]    = (double ***) psAlloc(nX * sizeof(double));
-        newPoly->coeffErr[w] = (double ***) psAlloc(nX * sizeof(double));
-        newPoly->mask[w]     = (char ***)  psAlloc(nX * sizeof(char));
+        newPoly->coeff[w]    = (double ***) psAlloc(nX * sizeof(double **));
+        newPoly->coeffErr[w] = (double ***) psAlloc(nX * sizeof(double **));
+        newPoly->mask[w]     = (char ***)  psAlloc(nX * sizeof(char **));
         for (x=0;x<nX;x++) {
-            newPoly->coeff[w][x]    = (double **) psAlloc(nY * sizeof(double));
-            newPoly->coeffErr[w][x] = (double **) psAlloc(nY * sizeof(double));
-            newPoly->mask[w][x]     = (char **) psAlloc(nY * sizeof(char));
+            newPoly->coeff[w][x]    = (double **) psAlloc(nY * sizeof(double *));
+            newPoly->coeffErr[w][x] = (double **) psAlloc(nY * sizeof(double *));
+            newPoly->mask[w][x]     = (char **) psAlloc(nY * sizeof(char *));
             for (y=0;y<nY;y++) {
                 newPoly->coeff[w][x][y]    = (double *) psAlloc(nZ * sizeof(double));
