Index: trunk/ppImage/src/ppImageOptions.c
===================================================================
--- trunk/ppImage/src/ppImageOptions.c	(revision 24485)
+++ trunk/ppImage/src/ppImageOptions.c	(revision 24892)
@@ -31,4 +31,5 @@
     options->doShutter       = false;   // Shutter correction
     options->doFlat          = false;   // Flat-field normalisation
+    options->doPattern       = false;   // Pattern noise subtraction
     options->doFringe        = false;   // Fringe subtraction
     options->doPhotom        = false;   // Source identification and photometry
@@ -86,4 +87,12 @@
     options->fringeIter      = 0;       // Fringe iterations
     options->fringeKeep      = 1.0;     // Fringe keep fraction
+
+    // Pattern noise values
+
+    options->patternOrder    = 0;       // Polynomial order
+    options->patternIter     = 0;       // Clipping iterations
+    options->patternRej      = NAN;     // Clipping rejection threshold
+    options->patternMean     = PS_STAT_NONE; // Statistic for mean
+    options->patternStdev    = PS_STAT_NONE; // Statistic for standard deviation
 
     // Remnance values
@@ -225,4 +234,5 @@
     options->doFringe = psMetadataLookupBool(NULL, recipe, "FRINGE");
     options->doShutter = psMetadataLookupBool(NULL, recipe, "SHUTTER");
+    options->doPattern = psMetadataLookupBool(NULL, recipe, "PATTERN");
 
     options->doStats = false;
@@ -298,4 +308,11 @@
     options->fringeKeep = psMetadataLookupF32(NULL, recipe, "FRINGE.KEEP");
 
+    // Pattern noise
+    options->patternOrder = psMetadataLookupS32(NULL, recipe, "PATTERN.ORDER");
+    options->patternIter = psMetadataLookupS32(NULL, recipe, "PATTERN.ITER");
+    options->patternRej = psMetadataLookupF32(NULL, recipe, "PATTERN.REJ");
+    options->patternMean = psStatsOptionFromString(psMetadataLookupStr(NULL, recipe, "PATTERN.MEAN"));
+    options->patternStdev = psStatsOptionFromString(psMetadataLookupStr(NULL, recipe, "PATTERN.STDEV"));
+
     // Remnance options
     options->remnanceSize = psMetadataLookupF32(NULL, recipe, "REMNANCE.SIZE");
