anchor.diff:  subroutine read_input_fileU(name, array, default, nx, ny, layers)
     implicit none
   
  -  character(30) name
  -  integer nx, ny, layers
  -  double precision array(0:nx+1, 0:ny+1, layers), default
  +  character(30), intent(in) :: name
  +  double precision, intent(out) :: array(0:nx+1, 0:ny+1, layers)
  +  double precision, intent(in) :: default
  +  integer, intent(in) :: nx, ny, layers
  +
     double precision array_small(nx+1, ny, layers)
   
     if (name.ne.'') then
  
positive.code: subroutine wrap_fields_3D(array, nx, ny, layers)
    implicit none
  
    double precision array(0:nx+1, 0:ny+1, layers)
    integer nx, ny, layers
  
    ! wrap array around for periodicity
    array(0, :, :) = array(nx, :, :)
  
negative.code: subroutine read_input_fileV(name, array, default, nx, ny, layers)
    implicit none
  
    character(30), intent(in) :: name
    double precision, intent(out) :: array(0:nx+1, 0:ny+1, layers)
    double precision, intent(in) :: default
    integer, intent(in) :: nx, ny, layers
  
    double precision array_small(nx, ny+1, layers)
  
    if (name.ne.'') then
  