iterate_mod Module

module~~iterate_mod~~UsesGraph module~iterate_mod iterate_mod module~kinds_mod kinds_mod module~kinds_mod->module~iterate_mod
Help

Module for creating and using iteration arrays

Used By

module~~iterate_mod~~UsedByGraph module~iterate_mod iterate_mod program~testiterate_prg testIterate_prg module~iterate_mod->program~testiterate_prg
Help


Derived Types

type, public :: iterator_t

Components

TypeVisibility AttributesNameInitial
integer, public, dimension(:), allocatable:: idx

Current iteration index

integer, public, dimension(:), allocatable:: N

Iteration limits

real(kind=wp), public, dimension(:), allocatable:: lB

Lower bounds for real conversion

real(kind=wp), public, dimension(:), allocatable:: hB

Upper bounds for real conversion

logical, public :: isDone =.false.

Completion state flag

Type-Bound Procedures

procedure, public :: next
procedure, public :: getReals
procedure, public :: getInt
procedure, public :: setInt
procedure, public :: getProgress

Functions

public function newIterator(N, lB, hB) result(o)

Create a new iterator_t object

Arguments

Type IntentOptional AttributesName
integer, intent(in), dimension(:):: N

Number of steps in each dimension

real(kind=wp), intent(in), dimension(:):: lB

Lower bounds in each dimension for real conversion

real(kind=wp), intent(in), dimension(:):: hB

Upper bounds in each dimension for real conversion

Return Value type(iterator_t)

New iterator object