Index: /trunk/PS-IPP-Config/lib/PS/IPP/Metadata/Stats.pm
===================================================================
--- /trunk/PS-IPP-Config/lib/PS/IPP/Metadata/Stats.pm	(revision 13964)
+++ /trunk/PS-IPP-Config/lib/PS/IPP/Metadata/Stats.pm	(revision 13965)
@@ -1,5 +1,5 @@
 # Copyright (c) 2006  Paul Price, Joshua Hoblitt
 #
-# $Id: Stats.pm,v 1.14 2007-06-20 22:43:07 price Exp $
+# $Id: Stats.pm,v 1.15 2007-06-25 01:24:20 eugene Exp $
 
 package PS::IPP::Metadata::Stats;
@@ -24,5 +24,5 @@
 
 use base qw( Class::Accessor::Fast );
-__PACKAGE__->mk_accessors( qw( bg_mean bg_stdev bg_mean_stdev fringe fringe_err
+__PACKAGE__->mk_accessors( qw( bg_mean bg_stdev bg_mean_stdev fringe_mean fringe_mean_stdev fringe_err
 			       constants variables bg_data bg_stdev_data ) );
 
@@ -36,17 +36,18 @@
     my $variables = shift;        # Array of values that may be variable through the FPA
 
-    my $self = { bg_mean => undef, # Mean of the mean backgrounds
-                 bg_stdev => undef, # Standard deviation of the mean backgrounds
-                 bg_mean_stdev => undef, # Mean of the standard deviation of the backgrounds
-		 fringe => [],	# Fringe amplitudes
-		 fringe_err => [], # Fringe amplitude errors
+    my $self = { bg_mean => undef,        # Mean of the mean backgrounds
+                 bg_stdev => undef,       # Standard deviation of the mean backgrounds
+                 bg_mean_stdev => undef,  # Mean of the standard deviation of the backgrounds
+		 fringe_mean => [], 	  # Fringe amplitudes
+		 fringe_err => [], 	  # Fringe amplitude errors
+		 fringe_mean_stdev => [], # Fringe amplitude errors
                  constants => $constants, # Array of values that should be constant through the FPA
                  variables => $variables, # Array of values that may be variable through the FPA
-                 bg_data => [], # Array of background values
-                 bg_stdev_data => [], # Array of background standard deviations
-		 fringe_data => [], # Fringe amplitudes each component
-		 fringe_err_data => [],	# Fringe errors for each component
-                 data => {}        # The data
-                 };
+                 bg_data => [],           # Array of background values
+                 bg_stdev_data => [],     # Array of background standard deviations
+		 fringe_data => [],       # Fringe amplitudes each component
+		 fringe_err_data => [],	  # Fringe errors for each component
+                 data => {}               # The data
+	     };
     
     # Populate object
@@ -77,5 +78,5 @@
     my $errors = 0;
 
-#    $self->_parse_megacam($md);
+    # $self->_parse_megacam($md);
     $self->_parse_braindead($md);
 
@@ -113,10 +114,10 @@
     # Get mean, stdev, mean stdev for the background
     if (scalar @{$self->{bg_data}} > 0) {
-        my $meanStats = Statistics::Descriptive::Sparse->new(); # Statistics for mean
-        $meanStats->add_data(@{$self->{bg_data}});
-        $self->bg_mean($meanStats->mean());
-        # XXX the stddev of a set of 1, appears to be a statistics undefined
-        # value, however that doesn't do us much go so I'm changing undef to 0
-        $self->bg_mean_stdev($meanStats->standard_deviation() || 0);
+        my $stats = Statistics::Descriptive::Sparse->new(); # Statistics for mean
+        $stats->add_data(@{$self->{bg_data}});
+        $self->bg_mean($stats->mean());
+        $self->bg_mean_stdev($stats->standard_deviation() || 0);
+        # the stdev of a set of 1 is the undefined however that
+        # doesn't do us much good so I'm changing undef to 0
     } else {
         $self->bg_mean(undef);
@@ -124,11 +125,11 @@
     }
     if (scalar @{$self->{bg_stdev_data}} > 0) {
-        my $stdevStats = Statistics::Descriptive::Sparse->new(); # Statistics for standard deviation
+        my $stats = Statistics::Descriptive::Sparse->new(); # Statistics for standard deviation
 	my @variances;
 	foreach my $number (@{$self->{bg_stdev_data}}) {
 	    push @variances, $number**2;
 	}
-        $stdevStats->add_data(@variances);
-        $self->bg_stdev( sqrt( $stdevStats->mean() ) );
+        $stats->add_data(@variances);
+        $self->bg_stdev( sqrt( $stats->mean() ) );
     } else {
         $self->bg_stdev(undef);
@@ -140,5 +141,8 @@
 	    my $stats = Statistics::Descriptive::Sparse->new(); # Statistics calculator
 	    $stats->add_data(@$array);
-	    push @{$self->{fringe}}, $stats->mean();
+	    push @{$self->{fringe_mean}}, $stats->mean();
+	    push @{$self->{fringe_mean_stdev}}, ($stats->standard_deviation() || 0);
+	    # the stdev of a set of 1 is the undefined however that
+	    # doesn't do us much good so I'm changing undef to 0
 	}
     }
