anchor.diff:                        C_LOC(padd(1,1,1,1)), istride, jstride, kstride, lstride)
   
     ! Perturb field
  -  IF (PRESENT(rperturb) .AND. rperturb .NE. 0.0) THEN
  -    CALL ser_fld_perturb(field, rperturb)
  +  IF (PRESENT(rperturb)) THEN
  +    IF (rperturb .NE. 0.0) THEN
  +      CALL ser_fld_perturb(field, rperturb)
  +    END IF
     END IF
   END SUBROUTINE fs_read_float_4d
   
  
positive.code:                       C_LOC(padd(1,1,1,1)), istride, jstride, kstride, lstride)
  
    ! Perturb field
    IF (PRESENT(rperturb) .AND. rperturb .NE. 0.0) THEN
      CALL ser_fld_perturb(field, rperturb)
    END IF
  END SUBROUTINE fs_read_double_4d
  
  
negative.code:                       C_LOC(padd(1,1,1)), istride, jstride, kstride, -1)
  
    ! Perturb field
    IF (PRESENT(rperturb)) THEN
      IF (rperturb .NE. 0.0) THEN
        CALL ser_fld_perturb(field, rperturb)
      END IF
    END IF
  END SUBROUTINE fs_read_double_3d
  
  