Index: trunk/ippScripts/scripts/detrend_reject_exp.pl
===================================================================
--- trunk/ippScripts/scripts/detrend_reject_exp.pl	(revision 12672)
+++ trunk/ippScripts/scripts/detrend_reject_exp.pl	(revision 12673)
@@ -121,6 +121,14 @@
 my $reject_meanstdev = rejection_limit( 'ENSEMBLE.MEANSTDEV', $det_type, $filter );
 
-print "Ensemble mean " . $meanStats->mean() . " +/- " . $meanStats->standard_deviation .
-    ", stdev " . $stdevStats->mean() . " +/- " . $stdevStats->standard_deviation() . "\n\n";
+$workdir = $ipprc->convert_filename_absolute( $workdir );
+
+my $logName = "$camera.$det_type.$det_id.$iter.detreject.log"; # Name for log
+$logName = File::Spec->catfile( $workdir, $logName );
+my $logFile;
+unless ($no_op) {
+    open $logFile, "> $logName" or &my_die("Unable to open log file $logName.\n", $det_id, $iter, $PS_EXIT_SYS_ERROR);
+    print $logFile "Ensemble mean " . $meanStats->mean() . " +/- " . $meanStats->standard_deviation .
+	", stdev " . $stdevStats->mean() . " +/- " . $stdevStats->standard_deviation() . "\n\n";
+}
 
 # Go through again to do rejection, and update the database for each exposure
@@ -139,5 +147,7 @@
     if (not $accept[$i]) {
 	# Rejected this at an earlier stage
-	print "Rejecting $expTag based on earlier determination.\n";
+	unless ($no_op) {
+	    print $logFile "Rejecting $expTag based on earlier determination.\n";
+	}
 	$reject = 1;
 	goto UPDATE;
@@ -157,11 +167,11 @@
 	my $dMean = abs($means[$i] - $meanStats->mean()) ;
 	if ($dMean > ($reject_mean * $meanStats->standard_deviation())) {
-	    print "Rejecting $expTag based on outlier mean value: " .
+	    print $logFile "Rejecting $expTag based on ensemble mean value: " .
 		"$means[$i] --> $dMean vs " . $reject_mean * $meanStats->standard_deviation() . "\n";
 	    $reject = 1;
-	    goto UPDATE;
+	    #goto UPDATE;
 	}
     } else {
-	print "no rejection for exposure mean\n";
+	print $logFile "No rejection for ensemble mean\n";
     }
 
@@ -169,11 +179,11 @@
 	my $dMean = abs($stdevs[$i] - $stdevStats->mean());
 	if ($dMean > ($reject_stdev * $stdevStats->standard_deviation())) {
-	    print "Rejecting $expTag based on outlier stdev: " .
+	    print $logFile "Rejecting $expTag based on ensemble stdev: " .
 		$stdevs[$i] . " --> $dMean sigma vs " . $reject_stdev . "\n";
 	    $reject = 1;
-	    goto UPDATE;
+	    #goto UPDATE;
 	}
     } else {
-	print "no rejection for exposure stdev\n";
+	print $logFile "No rejection for ensemble stdev\n";
     }
     
@@ -181,11 +191,11 @@
 	my $dMean = abs($meanStdevs[$i] - $meanStdevStats->mean());
 	if ($dMean > ($reject_meanstdev * $meanStdevStats->standard_deviation())) {
-	    print "Rejecting $expTag based on outlier mean stdev: " .
+	    print $logFile "Rejecting $expTag based on ensemble mean stdev: " .
 		$meanStdevs[$i] . " --> $dMean sigma vs " . $reject_meanstdev . "\n";
 	    $reject = 1;
-	    goto UPDATE;
+	    #goto UPDATE;
 	}
     } else {
-	print "no rejection for exposure mean stdev\n";
+	print $logFile "No rejection for ensemble mean stdev\n";
     }
 
@@ -198,5 +208,7 @@
     # Check for status changes
     if ((not $include[$i] and not $reject) or ($include[$i] and $reject)) {
-	print "Status of $expTag has changed.\n";
+	unless ($no_op) {
+	    print $logFile "Status of $expTag has changed.\n";
+	}
 	$numChanges++;
     }
@@ -228,6 +240,9 @@
 }
 
-print "Master: $master\n";
-print "Stop: $stop\n";
+unless ($no_op) {
+    print $logFile "Master: $master\n";
+    print $logFile "Stop: $stop\n";
+    close $logFile;
+}
 
 # Put results into the database
