Octopus
system.F90 File Reference

Go to the source code of this file.

Modules

module  system_oct_m
 This module implements the abstract system type.
 

Data Types

type  system_oct_m::barrier_t
 
type  system_oct_m::system_t
 Abstract class for systems. More...
 
interface  system_oct_m::system_init_interaction
 initialize a given interaction of the system More...
 
interface  system_oct_m::system_initial_conditions
 set initial conditions for a system More...
 
interface  system_oct_m::system_do_algorithmic_operation
 Execute one operation that is part of a larger algorithm. Returns true if the operation was successfully executed, false otherwise. More...
 
interface  system_oct_m::system_is_tolerance_reached
 check whether a system has reached a given tolerance More...
 
interface  system_oct_m::system_store_current_status
 For some algorithms it might be necessary to store the status of a system at a given algorithmic step. More...
 
interface  system_oct_m::system_restart_write_data
 
interface  system_oct_m::system_restart_read_data
 
interface  system_oct_m::system_update_kinetic_energy
 
type  system_oct_m::system_list_t
 These classes extends the list and list iterator to create a system list. More...
 
type  system_oct_m::system_iterator_t
 

Functions/Subroutines

subroutine, public system_oct_m::system_execute_algorithm (this)
 perform one or more algorithmic operations More...
 
subroutine, public system_oct_m::system_reset_iteration_counters (this, accumulated_iterations)
 
recursive subroutine, public system_oct_m::system_create_interactions (this, interaction_factory, available_partners)
 create the interactions of the system More...
 
logical function system_oct_m::system_update_couplings (this)
 Update the couplings (quantities) of the interaction partners. More...
 
subroutine system_oct_m::system_update_interactions (this)
 Attempt to update all interactions of the system. More...
 
subroutine system_oct_m::system_update_interactions_start (this)
 
subroutine system_oct_m::system_update_interactions_finish (this)
 
subroutine, public system_oct_m::system_restart_write (this)
 
logical function, public system_oct_m::system_restart_read (this)
 
subroutine system_oct_m::system_output_start (this)
 
subroutine system_oct_m::system_output_write (this)
 
subroutine system_oct_m::system_output_finish (this)
 
subroutine, public system_oct_m::system_init_algorithm (this, factory)
 
recursive logical function system_oct_m::system_algorithm_finished (this)
 
subroutine, public system_oct_m::system_init_iteration_counters (this)
 Initialize the iteration counters of the system and its interactions, algorithms and quantities. More...
 
subroutine, public system_oct_m::system_propagation_start (this)
 
subroutine, public system_oct_m::system_propagation_finish (this)
 
subroutine system_oct_m::system_iteration_info (this)
 
logical function system_oct_m::system_process_is_slave (this)
 
subroutine, public system_oct_m::system_end (this)
 
subroutine system_oct_m::system_list_add_node (this, partner)
 add system to list More...
 
recursive logical function system_oct_m::system_list_contains (this, partner)
 
class(system_t) function, pointer system_oct_m::system_iterator_get_next (this)
 
subroutine, public system_oct_m::system_init_parallelization (this, grp)
 Basic functionality: copy the MPI group. This function needs to be implemented by extended types that need more initialization for their parallelization. More...
 
subroutine system_oct_m::system_start_barrier (this, target_time, barrier_index)
 
subroutine system_oct_m::system_end_barrier (this, barrier_index)
 
logical function system_oct_m::system_arrived_at_barrier (this, barrier_index)
 
logical function system_oct_m::system_arrived_at_any_barrier (this)
 
subroutine, public system_oct_m::system_update_potential_energy (this)
 Calculate the potential energy of the system. The potential energy is defined as the sum of all energies arising from interactions with external systems. (Note that multisystems override this function) More...
 
subroutine system_oct_m::system_update_internal_energy (this)
 Calculate the internal energy of the system. The internal energy is defined as the sum of all energies arising from intra-interactions and the entropy terms (if available). (Note that multisystems override this function) More...
 
subroutine, public system_oct_m::system_update_total_energy (this)
 Calculate the total energy of the system. The total energy is defined as the sum of the kinetic, the internal and the potential energies. More...
 

Variables

integer, parameter, public system_oct_m::number_barriers = 1
 
integer, parameter, public system_oct_m::barrier_restart = 1