diff --git a/src/calng/LpdCorrection.py b/src/calng/LpdCorrection.py
index 665d6b80f035dcf7441d32c99d2c7ec0d00d6cd9..89d160f7ab4eb82995808efff23ad3252285db9e 100644
--- a/src/calng/LpdCorrection.py
+++ b/src/calng/LpdCorrection.py
@@ -56,10 +56,9 @@ class LpdGpuRunner(base_gpu.BaseGpuRunner):
             input_data_dtype,
             output_data_dtype,
         )
-        self.map_shape = (constant_memory_cells, pixels_y, pixels_x, 3)
+        self.map_shape = (constant_memory_cells, pixels_x, pixels_y, 3)
         self.offset_map_gpu = cupy.zeros(self.map_shape, dtype=cupy.float32)
         self.gain_amp_map_gpu = cupy.ones(self.map_shape, dtype=cupy.float32)
-        self.rel_gain_intercept_map_gpu = cupy.zeros(self.map_shape, dtype=cupy.float32)
         self.rel_gain_slopes_map_gpu = cupy.ones(self.map_shape, dtype=cupy.float32)
         self.flatfield_map_gpu = cupy.ones(self.map_shape, dtype=cupy.float32)
         self.bad_pixel_map_gpu = cupy.ones(self.map_shape, dtype=cupy.uint32)
@@ -83,7 +82,6 @@ class LpdGpuRunner(base_gpu.BaseGpuRunner):
                 cupy.uint8(flags),
                 self.offset_map_gpu,
                 self.gain_amp_map_gpu,
-                self.rel_gain_intercept_map_gpu,
                 self.rel_gain_slopes_map_gpu,
                 self.flatfield_map_gpu,
                 self.bad_pixel_map_gpu,
@@ -148,7 +146,6 @@ class LpdGpuRunner(base_gpu.BaseGpuRunner):
     def flush_buffers(self):
         self.offset_map_gpu.fill(0)
         self.gain_amp_map_gpu.fill(1)
-        self.rel_gain_intercept_map_gpu.fill(0)
         self.rel_gain_slopes_map_gpu.fill(1)
         self.flatfield_map_gpu.fill(1)
 
diff --git a/src/calng/kernels/lpd_gpu.cu b/src/calng/kernels/lpd_gpu.cu
index 3f2a20867e2eead43570993610479df707a8b342..dfc100ea71bd18f1c7e8bde606a5c1f8fd32b4a5 100644
--- a/src/calng/kernels/lpd_gpu.cu
+++ b/src/calng/kernels/lpd_gpu.cu
@@ -8,7 +8,6 @@ extern "C" {
 	                        const unsigned char corr_flags,
 	                        const float* offset_map, // shape: cell, y, x, gain
 	                        const float* gain_amp_map,
-	                        const float* rel_gain_intercept_map,
 	                        const float* rel_gain_slopes_map,
 	                        const float* flatfield_map,
 	                        const unsigned int* bad_pixel_map,
@@ -58,11 +57,10 @@ extern "C" {
 					corrected *= gain_amp_map[gm_map_index];
 				}
 				if (corr_flags & REL_GAIN) {
-					corrected -= rel_gain_intercept_map[gm_map_index];
 					corrected *= rel_gain_slopes_map[gm_map_index];
 				}
 				if (corr_flags & FF_CORR) {
-					corrected *= flatfield_map[gm_map_index];
+					corrected /= flatfield_map[gm_map_index];
 				}
 			}
 		}