Index: /branches/eam_branches/ipp-20140423/ippconfig/gpc1/ppStack.config
===================================================================
--- /branches/eam_branches/ipp-20140423/ippconfig/gpc1/ppStack.config	(revision 36829)
+++ /branches/eam_branches/ipp-20140423/ippconfig/gpc1/ppStack.config	(revision 36830)
@@ -79,4 +79,21 @@
    MATCH.REJ        F32    4.0
    SAFE		 BOOL	F
+
+END
+
+STACK_CNP  METADATA                   ## Based on STACK_THREEPI and STACK_MD_DEEP_1DG 
+    OUTPUT.NOCOMP   	    BOOL  FALSE
+    OUTPUT.LOGFLUX  	    BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+
+   MATCH.REJ        F32    4.0
+   SAFE		 BOOL	F
+
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
 
 END
@@ -167,4 +184,51 @@
     PSF.TARGET.AS.MAX  BOOL  TRUE
     PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     30              # Minimum input per pixel 
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+END
+
+STACK_ALLDEEP_1DG      METADATA     # no real cuts, for changes after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   14.0    # greater than 14 is more often junk
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.5             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.5             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+END
+
+STACK_MDTHREEPI_DEEP_1DG     METADATA   ## revised config for MD+3PI 
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
     THRESHOLD.MASK  F32     0.01             # Threshold for mask deconvolution (0..1)
     COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
@@ -175,48 +239,4 @@
 END
 
-STACK_ALLDEEP_1DG      METADATA     # no real cuts, for changes after ppStack mods 5/03/13
-    OUTPUT.NOCOMP           BOOL  TRUE
-    OUTPUT.LOGFLUX          BOOL  FALSE
-    OUTPUT.REPLICATE        BOOL  TRUE
-    STACK.TYPE              STR   DEEP_STACK
-    PSF.INPUT.CLIP.SIMPLE   BOOL  True
-    PSF.INPUT.MAX           F32   14.0    # greater than 14 is more often junk
-    PSF.INPUT.CLIP.NSIGMA   F32   100.0
-    PSF.INPUT.THRESH        F32   NAN
-    PSF.INPUT.ASYMMETRY     F32   NAN
-    MATCH.REJ               F32   4.0     # need ot tune?
-    SAFE                    BOOL  FALSE
-    PSF.TARGET.AS.MAX  BOOL  TRUE
-    PSF.TARGET.AS.MAX.EPSILON F32 0.1
-    THRESHOLD.MASK  F32     0.5             # Threshold for mask deconvolution (0..1)
-    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
-    COMBINE.REJ     F32     3.5             # Rejection threshold in combination (sigma)
-    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
-    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
-    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
-END
-
-STACK_MDTHREEPI_DEEP_1DG     METADATA   ## revised config for MD+3PI 
-    OUTPUT.NOCOMP           BOOL  TRUE
-    OUTPUT.LOGFLUX          BOOL  FALSE
-    OUTPUT.REPLICATE        BOOL  TRUE
-    STACK.TYPE              STR   DEEP_STACK
-    PSF.INPUT.CLIP.SIMPLE   BOOL  True
-    PSF.INPUT.MAX           F32   10.0    #
-    PSF.INPUT.CLIP.NSIGMA   F32   100.0
-    PSF.INPUT.THRESH        F32   NAN
-    PSF.INPUT.ASYMMETRY     F32   NAN
-    MATCH.REJ               F32   4.0     # need ot tune?
-    SAFE                    BOOL  FALSE
-    PSF.TARGET.AS.MAX  BOOL  TRUE
-    PSF.TARGET.AS.MAX.EPSILON F32 0.1
-    THRESHOLD.MASK  F32     0.01             # Threshold for mask deconvolution (0..1)
-    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
-    COMBINE.REJ     F32     2.5             # Rejection threshold in combination (sigma)
-    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
-    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
-    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
-END
-
 
 # Recipe overrides for STACK
Index: /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-mef.mdc
===================================================================
--- /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-mef.mdc	(revision 36829)
+++ /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-mef.mdc	(revision 36830)
@@ -183,4 +183,5 @@
 PPBACKGROUND.PATTERN	  INPUT    @FILES        CHIP       PATTERN
 PPBACKGROUND.BACKGROUND	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.STACK        INPUT    @FILES        FPA        IMAGE
 
 ### output file definitions
@@ -393,4 +394,7 @@
 TRACE.EXP.UPDATE        OUTPUT {OUTPUT}.trace.update             TEXT      NONE       FPA        TRUE      NONE
 
+DBINFO.IMFILE                OUTPUT {OUTPUT}.{CHIP.NAME}.dbinfo       TEXT            NONE       CHIP       TRUE      NONE
+DBINFO.EXP                   OUTPUT {OUTPUT}.dbinfo                   TEXT            NONE       CHIP       TRUE      NONE
+
 PPNOISEMAP.OUTPUT       OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     NONE       CHIP       TRUE      NONE
 
@@ -412,2 +416,6 @@
 PPBACKGROUND.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppBackground.mdc TEXT        NONE       CHIP       TRUE      NONE
 PPBACKGROUND.STATS           OUTPUT {OUTPUT}.{CHIP.NAME}.stats        STATS           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.STACK.OUTPUT    OUTPUT {OUTPUT}.bkgrest.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.STACK.MODEL     OUTPUT {OUTPUT}.bkgmdl.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.OTA.SOLUTION    OUTPUT {OUTPUT}.{CHIP.NAME}.OTAS.fits IMAGE  COMP_IMG   CHIP       TRUE      NONE
Index: /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-simple.mdc
===================================================================
--- /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-simple.mdc	(revision 36829)
+++ /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-simple.mdc	(revision 36830)
@@ -155,4 +155,5 @@
 PPBACKGROUND.PATTERN	  INPUT    @FILES        CHIP       PATTERN
 PPBACKGROUND.BACKGROUND	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.STACK        INPUT    @FILES        FPA        IMAGE
 
 ### output file definitions
@@ -350,4 +351,7 @@
 TRACE.EXP.UPDATE             OUTPUT {OUTPUT}.exp.trace.update     TEXT            NONE       FPA        TRUE      NONE
 
+DBINFO.IMFILE                OUTPUT {OUTPUT}.{CHIP.NAME}.dbinfo       TEXT            NONE       CHIP       TRUE      NONE
+DBINFO.EXP                   OUTPUT {OUTPUT}.dbinfo                   TEXT            NONE       CHIP       TRUE      NONE
+
 PPNOISEMAP.OUTPUT            OUTPUT {OUTPUT}.{CHIP.NAME}.fits     IMAGE           NONE       CHIP       TRUE      NONE
 
@@ -369,2 +373,6 @@
 PPBACKGROUND.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppBackground.mdc TEXT        NONE       CHIP       TRUE      NONE
 PPBACKGROUND.STATS           OUTPUT {OUTPUT}.{CHIP.NAME}.stats        STATS           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.STACK.OUTPUT    OUTPUT {OUTPUT}.bkgrest.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.STACK.MODEL     OUTPUT {OUTPUT}.bkgmdl.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.OTA.SOLUTION    OUTPUT {OUTPUT}.{CHIP.NAME}.OTAS.fits IMAGE  COMP_IMG   CHIP       TRUE      NONE
Index: /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-split.mdc
===================================================================
--- /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-split.mdc	(revision 36829)
+++ /branches/eam_branches/ipp-20140423/ippconfig/recipes/filerules-split.mdc	(revision 36830)
@@ -178,4 +178,5 @@
 PPBACKGROUND.PATTERN	  INPUT    @FILES        CHIP       PATTERN
 PPBACKGROUND.BACKGROUND	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.STACK        INPUT    @FILES        FPA        IMAGE
 
 ### output file definitions
@@ -400,4 +401,7 @@
 TRACE.EXP.UPDATE             OUTPUT {OUTPUT}.trace.update             TEXT            NONE       FPA        TRUE      NONE
 
+DBINFO.IMFILE                OUTPUT {OUTPUT}.{CHIP.NAME}.dbinfo       TEXT            NONE       CHIP       TRUE      NONE
+DBINFO.EXP                   OUTPUT {OUTPUT}.dbinfo                   TEXT            NONE       CHIP       TRUE      NONE
+
 PPNOISEMAP.OUTPUT            OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
 
@@ -431,4 +435,8 @@
 PPBACKGROUND.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppBackground.mdc TEXT        NONE       CHIP       TRUE      NONE
 PPBACKGROUND.STATS           OUTPUT {OUTPUT}.{CHIP.NAME}.stats        STATS           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.STACK.OUTPUT    OUTPUT {OUTPUT}.bkgrest.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.STACK.MODEL     OUTPUT {OUTPUT}.bkgmdl.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.OTA.SOLUTION    OUTPUT {OUTPUT}.{CHIP.NAME}.OTAS.fits IMAGE  COMP_IMG   CHIP       TRUE      NONE
 
 
Index: /branches/eam_branches/ipp-20140423/ippconfig/recipes/ppStack.config
===================================================================
--- /branches/eam_branches/ipp-20140423/ippconfig/recipes/ppStack.config	(revision 36829)
+++ /branches/eam_branches/ipp-20140423/ippconfig/recipes/ppStack.config	(revision 36830)
@@ -13,4 +13,5 @@
 MASK.BAD	STR	BLANK		# Mask value to give bad pixels
 MASK.POOR	STR	CONV.POOR	# Mask value to give poor pixels
+MASK.BLANKBORDER S32    0               # Mask blank border in final stack output (may want to set KERNEL.SIZE)
 
 # we are in some danger of inconsistency in the definition of a 'bad' vs a 'suspect' pixel
@@ -32,4 +33,5 @@
 TARGET.FRAC	F32	0.1		# Minimum flux fraction for target PSF
 TARGET.MINMAG	F32	3.0		# Minimum magnitude difference to tolerate in stamp
+NMINPIX		S32	1 		# Minimum input per pixel 
 
 BACKGROUND.MODEL    BOOL   FALSE        # Construct a stacked version of the warp stage background
@@ -166,4 +168,6 @@
 STACK_THREEPI_ALT  METADATA
 END
+STACK_CNP  METADATA
+END
 
 STACK_MD_REF    METADATA
Index: /branches/eam_branches/ipp-20140423/ippconfig/recipes/psphot.config
===================================================================
--- /branches/eam_branches/ipp-20140423/ippconfig/recipes/psphot.config	(revision 36829)
+++ /branches/eam_branches/ipp-20140423/ippconfig/recipes/psphot.config	(revision 36830)
@@ -196,5 +196,20 @@
 EXT.NSIGMA.LIMIT.USE                BOOL  TRUE
 
-EXT_MODEL_TYPE_FOR_CFF              STR   BEST
+# Extended Model to use for forced photometry in full force
+# In addtion to PS_MODEL_SERSIC, PS_MODEL_DEV, and PS_MODEL_EXP  the values BEST and ALL may be selected
+# This specifies what gets saved in cff file output by psastro
+EXT_MODEL_TYPE_FOR_CFF              STR   ALL
+# this model is forced
+EXT_MODEL_TYPE_FORCE                STR   PS_MODEL_SERSIC
+
+# if the sersic model is selected, the dev model will also be forced for sources with sersic index above this limit
+# (Note: this is not used if BEST was selected)
+EXT_MODEL_FORCE_DEV_SERSIC_MIN      F32   3.0
+
+# to avoid forcing extended models for likely stars
+# only force sources with kron mag - psf mag less than this value ...
+EXT_MODEL_FORCE_MAGDIFF_MAX         F32   0.0
+# ... unless SN is less than this value
+EXT_MODEL_FORCE_CUT_SN_MIN          F32   10.0
 
 # Limits on extended source fits by galactic coordinates 
@@ -442,17 +457,20 @@
 GALAXY_SHAPES_STYLE                 STR   R_MAJ_R_MIN
 
+# new recipe values which set paramter spacing based on signal to noise
+# DELTA = Q / SN
+# F_MIN = 1 - NSIGMA * DELTA
+# F_MAX = 1 + NSIGMA * DELTA
+GALAXY_SHAPES_Q                     F32   1.5       # these values result in
+GALAXY_SHAPES_NSIGMA                F32   2.0       # a 5 x 5 grid
+GALAXY_SHAPES_CLAMP_SN              F32   50.       # with minimum delta .03 pixels
+
+# These recipe values are no longer used
 GALAXY_SHAPES_FR_MAJOR_MIN          F32   0.8
 GALAXY_SHAPES_FR_MAJOR_MAX          F32   1.60
-GALAXY_SHAPES_FR_MAJOR_DEL          F32   0.05
+GALAXY_SHAPES_FR_MAJOR_DEL          F32   0.2
 GALAXY_SHAPES_FR_MINOR_MIN          F32   0.8
 GALAXY_SHAPES_FR_MINOR_MAX          F32   1.60
-GALAXY_SHAPES_FR_MINOR_DEL          F32   0.05
-
-#GALAXY_SHAPES_FR_MAJOR_MIN          F32   0.85
-#GALAXY_SHAPES_FR_MAJOR_MAX          F32   1.15
-#GALAXY_SHAPES_FR_MAJOR_DEL          F32   0.05
-#GALAXY_SHAPES_FR_MINOR_MIN          F32   0.85
-#GALAXY_SHAPES_FR_MINOR_MAX          F32   1.15
-#GALAXY_SHAPES_FR_MINOR_DEL          F32   0.05
+GALAXY_SHAPES_FR_MINOR_DEL          F32   0.2
+
 
 # Extended source fit parameters
@@ -491,7 +509,5 @@
   PEAKS_NMAX_TOTAL                    S32   0 # set this to limit the allowed number of peaks - Yields fault instead of avoid memory explosion
 
-#  EXT_MODEL_TYPE_FOR_CFF              STR   PS_MODEL_DEV
-
-  SAVE.RESID                          BOOL  TRUE
+  SAVE.RESID                          BOOL  FALSE
 END
 
@@ -714,5 +730,5 @@
     SAVE.PSF                BOOL    FALSE
     SAVE.BACKMDL            BOOL    FALSE
-    SAVE.RESID              BOOL    TRUE
+    SAVE.RESID              BOOL    FALSE
     OUTPUT.FORMAT           STR     PS1_SV2
 END
Index: /branches/eam_branches/ipp-20140423/ippconfig/recipes/reductionClasses.mdc
===================================================================
--- /branches/eam_branches/ipp-20140423/ippconfig/recipes/reductionClasses.mdc	(revision 36829)
+++ /branches/eam_branches/ipp-20140423/ippconfig/recipes/reductionClasses.mdc	(revision 36830)
@@ -615,4 +615,10 @@
 THREEPI_STACK_1DG         METADATA
       STACK_PPSTACK   STR      STACK_THREEPI
+      STACK_PPSUB     STR      STACK_1DG
+      STACK_PSPHOT    STR      STACK
+END
+
+CNP_STACK_1DG         METADATA
+      STACK_PPSTACK   STR      STACK_CNP
       STACK_PPSUB     STR      STACK_1DG
       STACK_PSPHOT    STR      STACK
