17 integer(I4B) :: constant_array_value =
dzero
18 integer(I4B) :: factor =
done
19 integer(I4B),
dimension(:, :),
contiguous,
pointer :: int2d => null()
38 integer(I4B),
dimension(:, :),
contiguous,
target :: int2d
39 character(len=*),
intent(in) :: aname
45 this%array_name = aname
47 call this%read_array()
53 call this%ArrayReaderBaseType%reset_reader()
54 this%constant_array_value = 0
60 this%constant_array_value = this%parser%GetInteger()
66 do i = 1,
size(this%int2d, dim=2)
67 do j = 1,
size(this%int2d, dim=1)
68 this%int2d(j, i) = this%constant_array_value
77 do i = 1,
size(this%int2d, dim=2)
78 read (this%input_unit, *, iostat=istat, iomsg=
errmsg) &
79 (this%int2d(j, i), j=1,
size(this%int2d, dim=1))
82 errmsg =
'Error reading data for array '//trim(this%array_name)// &
95 read (this%input_unit, iostat=istat, iomsg=
errmsg) &
96 ((this%int2d(j, i), j=1,
size(this%int2d, dim=1)), &
97 i=1,
size(this%int2d, dim=2))
99 errmsg =
'Error reading data for array '//trim(this%array_name)// &
108 this%factor = this%parser%GetInteger()
114 if (this%factor /=
dzero)
then
115 do i = 1,
size(this%int2d, dim=2)
116 do j = 1,
size(this%int2d, dim=1)
117 this%int2d(j, i) = this%int2d(j, i) * this%factor
subroutine, public read_binary_header(locat, iout, arrname, nval)
This module contains block parser methods.
This module contains simulation constants.
real(dp), parameter dzero
real constant zero
real(dp), parameter done
real constant 1
subroutine, public read_int2d(parser, int2d, aname)
subroutine apply_factor(this)
subroutine reset_reader(this)
subroutine fill_constant(this)
subroutine read_binary(this)
subroutine set_constant(this)
subroutine read_ascii(this)
subroutine set_factor(this)
This module defines variable data types.
This module contains simulation methods.
subroutine, public store_error(msg, terminate)
Store an error message.
subroutine, public store_error_unit(iunit, terminate)
Store the file unit number.
This module contains simulation variables.
character(len=maxcharlen) errmsg
error message string