anchor.diff:  
           complex(sp), parameter :: i = (0.0, 1.0)
           real(sp), parameter :: sign = 1.0
  -        real(sp), dimension(n) :: r, u_sqr
  -        real(sp), dimension(n) :: v_real, v_imag, u_real, u_imag
  +        real(sp), dimension(n * n) :: r, u_sqr
  +        real(sp), dimension(n * n) :: v_real, v_imag, u_real, u_imag
   
           u_real = real(u)
           u_imag = aimag(u)
  
positive.code:         real(sp), dimension(1) :: left, right
          real(sp), dimension(3) :: middle
  
          dx2 = 1.0 / h ** 2
  
          left = (/ 1 /) / dx2
          middle = (/ 1, -4, 1 /) / dx2
  
negative.code:         integer, intent(in), dimension(order) :: orders
          real(sp), intent(in) :: dt, t0
          real(sp), intent(in), dimension(23) :: coeffs
          real(sp), intent(in), dimension(2 * order - 1, n) :: blocks
          real(sp), intent(in), dimension(n * n) :: pumping
          complex(sp), intent(in), dimension(n * n) :: u0
          complex(sp), intent(out), dimension(n * n) :: u
  
          integer :: i
          real(sp) :: t
          complex(sp), dimension(n * n) :: k1, k2, k3, k4
  
          u = u0
          t = t0
  