Octopus
iteration_counter_oct_m Module Reference

Data Types

interface  get_value
 
interface  iteration_counter_t
 This class implements the iteration counter used by the multisystem algorithms. As any iteration counter, there is an integer that keeps track of which iteration is being executed. Because algorithms might advance at different paces, one then needs a common reference frame to compare iterations of different algorithms. We thus defined three integers: More...
 

Functions/Subroutines

pure type(iteration_counter_t) function iteration_counter_constructor (step, initial_iteration)
 
subroutine iteration_counter_set (this, counter)
 
pure real(real64) function iteration_counter_value (this)
 Returns the value of the counter in the common reference frame. More...
 
pure integer function iteration_counter_counter (this)
 Returns the value of the counter in the local reference frame. More...
 
pure integer(int64) function iteration_counter_global_step (this)
 
type(iteration_counter_t) function iteration_counter_add (this, n)
 
type(iteration_counter_t) function iteration_counter_subtract (this, n)
 
pure subroutine iteration_counter_reset (this)
 
elemental logical function iteration_counter_is_earlier (counter_a, counter_b)
 
elemental logical function iteration_counter_is_later (counter_a, counter_b)
 
elemental logical function iteration_counter_is_equal_or_earlier (counter_a, counter_b)
 
elemental logical function iteration_counter_is_equal_or_later (counter_a, counter_b)
 
elemental logical function iteration_counter_is_equal (counter_a, counter_b)
 
elemental logical function iteration_counter_is_different (counter_a, counter_b)
 
subroutine iteration_counter_restart_write (this, filename, namespace)
 
logical function iteration_counter_restart_read (this, filename, namespace)
 

Function/Subroutine Documentation

◆ iteration_counter_constructor()

pure type(iteration_counter_t) function iteration_counter_oct_m::iteration_counter_constructor ( integer(int64), intent(in), optional  step,
integer, intent(in), optional  initial_iteration 
)
private

Definition at line 111 of file iteration_counter.F90.

◆ iteration_counter_set()

subroutine iteration_counter_oct_m::iteration_counter_set ( class(iteration_counter_t), intent(inout)  this,
type(iteration_counter_t), intent(in)  counter 
)
private

Definition at line 130 of file iteration_counter.F90.

◆ iteration_counter_value()

pure real(real64) function iteration_counter_oct_m::iteration_counter_value ( class(iteration_counter_t), intent(in)  this)
private

Returns the value of the counter in the common reference frame.

We return a real, as other types of counters might use real numbers for the common reference frame.

Definition at line 150 of file iteration_counter.F90.

◆ iteration_counter_counter()

pure integer function iteration_counter_oct_m::iteration_counter_counter ( class(iteration_counter_t), intent(in)  this)
private

Returns the value of the counter in the local reference frame.

Definition at line 159 of file iteration_counter.F90.

◆ iteration_counter_global_step()

pure integer(int64) function iteration_counter_oct_m::iteration_counter_global_step ( class(iteration_counter_t), intent(in)  this)
private

Definition at line 167 of file iteration_counter.F90.

◆ iteration_counter_add()

type(iteration_counter_t) function iteration_counter_oct_m::iteration_counter_add ( class(iteration_counter_t), intent(in)  this,
integer, intent(in)  n 
)
private

Definition at line 175 of file iteration_counter.F90.

◆ iteration_counter_subtract()

type(iteration_counter_t) function iteration_counter_oct_m::iteration_counter_subtract ( class(iteration_counter_t), intent(in)  this,
integer, intent(in)  n 
)
private

Definition at line 187 of file iteration_counter.F90.

◆ iteration_counter_reset()

pure subroutine iteration_counter_oct_m::iteration_counter_reset ( class(iteration_counter_t), intent(inout)  this)
private

Definition at line 199 of file iteration_counter.F90.

◆ iteration_counter_is_earlier()

elemental logical function iteration_counter_oct_m::iteration_counter_is_earlier ( class(iteration_counter_t), intent(in)  counter_a,
class(iteration_counter_t), intent(in)  counter_b 
)
private

Definition at line 208 of file iteration_counter.F90.

◆ iteration_counter_is_later()

elemental logical function iteration_counter_oct_m::iteration_counter_is_later ( class(iteration_counter_t), intent(in)  counter_a,
class(iteration_counter_t), intent(in)  counter_b 
)
private

Definition at line 216 of file iteration_counter.F90.

◆ iteration_counter_is_equal_or_earlier()

elemental logical function iteration_counter_oct_m::iteration_counter_is_equal_or_earlier ( class(iteration_counter_t), intent(in)  counter_a,
class(iteration_counter_t), intent(in)  counter_b 
)
private

Definition at line 224 of file iteration_counter.F90.

◆ iteration_counter_is_equal_or_later()

elemental logical function iteration_counter_oct_m::iteration_counter_is_equal_or_later ( class(iteration_counter_t), intent(in)  counter_a,
class(iteration_counter_t), intent(in)  counter_b 
)
private

Definition at line 232 of file iteration_counter.F90.

◆ iteration_counter_is_equal()

elemental logical function iteration_counter_oct_m::iteration_counter_is_equal ( class(iteration_counter_t), intent(in)  counter_a,
class(iteration_counter_t), intent(in)  counter_b 
)
private

Definition at line 240 of file iteration_counter.F90.

◆ iteration_counter_is_different()

elemental logical function iteration_counter_oct_m::iteration_counter_is_different ( class(iteration_counter_t), intent(in)  counter_a,
class(iteration_counter_t), intent(in)  counter_b 
)
private

Definition at line 248 of file iteration_counter.F90.

◆ iteration_counter_restart_write()

subroutine iteration_counter_oct_m::iteration_counter_restart_write ( class(iteration_counter_t), intent(in)  this,
character(len=*), intent(in)  filename,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 256 of file iteration_counter.F90.

◆ iteration_counter_restart_read()

logical function iteration_counter_oct_m::iteration_counter_restart_read ( class(iteration_counter_t), intent(inout)  this,
character(len=*), intent(in)  filename,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 271 of file iteration_counter.F90.