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 112 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 131 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 151 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 160 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 168 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 176 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 188 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 200 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 209 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 217 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 225 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 233 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 241 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 249 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 257 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 281 of file iteration_counter.F90.