Index: /branches/eam_branches/20091201/ippconfig/gpc1/psastro.config
===================================================================
--- /branches/eam_branches/20091201/ippconfig/gpc1/psastro.config	(revision 26826)
+++ /branches/eam_branches/20091201/ippconfig/gpc1/psastro.config	(revision 26827)
@@ -163,10 +163,11 @@
 REFSTAR_MASK_SATSTAR_MAG_MAX    F32 -17.40
 REFSTAR_MASK_SATSTAR_MAG_SLOPE  F32  13.45
-REFSTAR_MASK_SATSTAR_POS_ZERO   F32  -0.779
-
-# Length = SLOPE*(MAG_MAX - InstMag)
-
-REFSTAR_MASK_SATSPIKE_MAG_SLOPE F32  52.00
-REFSTAR_MASK_SATSPIKE_MAG_MAX   F32 -16.20
+REFSTAR_MASK_SATSTAR_POS_ZERO   F32  -0.798
+
+# Length = 10**(SLOPE*(MAG_MAX - InstMag)) - OFFSET
+
+REFSTAR_MASK_SATSPIKE_MAG_SLOPE F32  0.096
+REFSTAR_MASK_SATSPIKE_MAG_MAX   F32  7.35
+REFSTAR_MASK_SATSPIKE_OFFSET    F32 200.0
 
 # pair 1 (longer)
Index: /branches/eam_branches/20091201/ippconfig/recipes/psastro.config
===================================================================
--- /branches/eam_branches/20091201/ippconfig/recipes/psastro.config	(revision 26826)
+++ /branches/eam_branches/20091201/ippconfig/recipes/psastro.config	(revision 26827)
@@ -132,6 +132,8 @@
 REFSTAR_MASK_SATSTAR_MAG_SLOPE  F32  10.0
 REFSTAR_MASK_SATSTAR_POS_ZERO   F32   0.0
-REFSTAR_MASK_SATSPIKE_MAG_SLOPE F32  80.0
-REFSTAR_MASK_SATSPIKE_MAG_MAX   F32 -17.0
+# spikeLength = 10**(SLOPE*(MAG_MAX - InstMag)) - OFFSET
+REFSTAR_MASK_SATSPIKE_MAG_SLOPE F32 -0.116
+REFSTAR_MASK_SATSPIKE_MAG_MAX   F32 -0.91
+REFSTAR_MASK_SATSPIKE_OFFSET    F32   0.0
 REFSTAR_MASK_SATSPIKE_WIDTH     F32  10.0
 
Index: /branches/eam_branches/20091201/psastro/src/psastroMaskUpdates.c
===================================================================
--- /branches/eam_branches/20091201/psastro/src/psastroMaskUpdates.c	(revision 26826)
+++ /branches/eam_branches/20091201/psastro/src/psastroMaskUpdates.c	(revision 26827)
@@ -81,4 +81,5 @@
     double REFSTAR_MASK_SATSPIKE_MAG_MAX   = psMetadataLookupF32 (&status, recipe, "REFSTAR_MASK_SATSPIKE_MAG_MAX");
     double REFSTAR_MASK_SATSPIKE_WIDTH     = psMetadataLookupF32 (&status, recipe, "REFSTAR_MASK_SATSPIKE_WIDTH");
+    double REFSTAR_MASK_SATSPIKE_OFFSET    = psMetadataLookupF32 (&status, recipe, "REFSTAR_MASK_SATSPIKE_OFFSET");
     double REFSTAR_MASK_BLEED_MAG_MAX      = psMetadataLookupF32 (&status, recipe, "REFSTAR_MASK_BLEED_MAG_MAX");
     double REFSTAR_MASK_BLEED_MAG_SLOPE    = psMetadataLookupF32 (&status, recipe, "REFSTAR_MASK_BLEED_MAG_SLOPE");
@@ -234,6 +235,9 @@
 
                         float MAG_MAX = REFSTAR_MASK_SATSPIKE_MAG_MAX;
-                        float spikeLength = REFSTAR_MASK_SATSPIKE_MAG_SLOPE * (MAG_MAX - ref->Mag);
+			float spikeLength = pow(10,REFSTAR_MASK_SATSPIKE_MAG_SLOPE * (MAG_MAX - ref->Mag)) - REFSTAR_MASK_SATSPIKE_OFFSET;
                         float spikeWidth = 0.5*REFSTAR_MASK_SATSPIKE_WIDTH;
+			if (spikeLength < 0.0) {
+			  spikeLength = 0.0;
+			}
                         // XXX we can make the width depend on the spike as well...
                         // The length should also be a function of the image background level
