diff --git a/src/auxval.F90 b/src/auxval.F90
index 8ade415977c1a31c36045127a2c0dd79127039f8..5db2df056468185b66492d37600d234caab8d2f5 100644
--- a/src/auxval.F90
+++ b/src/auxval.F90
@@ -27,7 +27,7 @@ subroutine auxval
 
   CALL set_jgrid ! perp kin
 
-  CALL set_kxgrid ! radial modes (MPI distributed by FFTW)
+  CALL set_kxgrid(shear) ! radial modes (MPI distributed by FFTW)
 
   CALL set_kygrid ! azymuthal modes
 
diff --git a/src/grid_mod.F90 b/src/grid_mod.F90
index f58cbb86136001d35bcd9fe006c4d69a897b1852..2645c259f08c9089c23f589adb4d40144dfcaac7 100644
--- a/src/grid_mod.F90
+++ b/src/grid_mod.F90
@@ -341,12 +341,16 @@ CONTAINS
     END DO
   END SUBROUTINE set_kygrid
 
-  SUBROUTINE set_kxgrid
+  SUBROUTINE set_kxgrid(shear)
     USE prec_const
     USE model, ONLY: LINEARITY
     IMPLICIT NONE
+    REAL(dp), INTENT(IN) :: shear
     INTEGER :: i_, counter
-
+    IF(shear .GT. 0._dp) THEN
+      IF(my_id.EQ.0) write(*,*) 'Magnetic shear detected: set up sheared kx grid..'
+      Lx = Ly/(2._dp*pi*shear)
+    ENDIF
     Nkx = Nx;
     ! Local data
     ! Start and END indices of grid