Octopus
classical_particles_oct_m Module Reference

Data Types

type  classical_particles_t
 

Functions/Subroutines

subroutine, public classical_particles_init (this, np)
 The init routine is a module level procedure This has the advantage that different classes can have different signatures for the initialization routines because they are not type-bound and thus also not inherited. More...
 
subroutine, public classical_particles_copy (this, cp_in)
 
subroutine, public classical_particles_init_interaction (this, interaction)
 
logical function classical_particles_do_algorithmic_operation (this, operation, updated_quantities)
 
logical function classical_particles_is_tolerance_reached (this, tol)
 
subroutine, public classical_particles_update_quantity (this, iq)
 
subroutine, public classical_particles_init_interaction_as_partner (partner, interaction)
 
subroutine, public classical_particles_copy_quantities_to_interaction (partner, interaction)
 
subroutine classical_particles_update_interactions_start (this)
 
subroutine classical_particles_update_interactions_finish (this)
 
subroutine classical_particles_output_start (this)
 
subroutine classical_particles_output_finish (this)
 
subroutine classical_particles_output_write (this)
 
subroutine, public classical_particles_restart_write_data (this)
 
logical function classical_particles_restart_read_data (this)
 
subroutine classical_particles_update_kinetic_energy (this)
 
real(real64) function, dimension(this%space%dim) classical_particles_center_of_mass (this, mask, pseudo)
 
real(real64) function, dimension(this%space%dim) classical_particles_center_of_mass_vel (this)
 
real(real64) function, dimension(this%space%dim) classical_particles_center (this)
 
subroutine classical_particles_axis_large (this, x, x2)
 
subroutine classical_particles_axis_inertia (this, x, x2, pseudo)
 This subroutine assumes that the origin of the coordinates is the center of mass of the system. More...
 
subroutine, public classical_particles_end (this)
 

Variables

integer, parameter output_coordinates = 1
 
integer, parameter output_energy = 2
 

Function/Subroutine Documentation

◆ classical_particles_init()

subroutine, public classical_particles_oct_m::classical_particles_init ( class(classical_particles_t), intent(inout)  this,
integer, intent(in)  np 
)

The init routine is a module level procedure This has the advantage that different classes can have different signatures for the initialization routines because they are not type-bound and thus also not inherited.

Parameters
[in]npNumber of particles

Definition at line 206 of file classical_particles.F90.

◆ classical_particles_copy()

subroutine, public classical_particles_oct_m::classical_particles_copy ( class(classical_particles_t), intent(out)  this,
class(classical_particles_t), intent(in)  cp_in 
)

Definition at line 247 of file classical_particles.F90.

◆ classical_particles_init_interaction()

subroutine, public classical_particles_oct_m::classical_particles_init_interaction ( class(classical_particles_t), intent(inout), target  this,
class(interaction_surrogate_t), intent(inout)  interaction 
)

Definition at line 273 of file classical_particles.F90.

◆ classical_particles_do_algorithmic_operation()

logical function classical_particles_oct_m::classical_particles_do_algorithmic_operation ( class(classical_particles_t), intent(inout)  this,
class(algorithmic_operation_t), intent(in)  operation,
integer, dimension(:), intent(out), allocatable  updated_quantities 
)
private

Definition at line 289 of file classical_particles.F90.

◆ classical_particles_is_tolerance_reached()

logical function classical_particles_oct_m::classical_particles_is_tolerance_reached ( class(classical_particles_t), intent(in)  this,
real(real64), intent(in)  tol 
)
private

Definition at line 469 of file classical_particles.F90.

◆ classical_particles_update_quantity()

subroutine, public classical_particles_oct_m::classical_particles_update_quantity ( class(classical_particles_t), intent(inout)  this,
integer, intent(in)  iq 
)

Definition at line 499 of file classical_particles.F90.

◆ classical_particles_init_interaction_as_partner()

subroutine, public classical_particles_oct_m::classical_particles_init_interaction_as_partner ( class(classical_particles_t), intent(in)  partner,
class(interaction_surrogate_t), intent(inout)  interaction 
)

Definition at line 518 of file classical_particles.F90.

◆ classical_particles_copy_quantities_to_interaction()

subroutine, public classical_particles_oct_m::classical_particles_copy_quantities_to_interaction ( class(classical_particles_t), intent(inout)  partner,
class(interaction_surrogate_t), intent(inout)  interaction 
)

Definition at line 534 of file classical_particles.F90.

◆ classical_particles_update_interactions_start()

subroutine classical_particles_oct_m::classical_particles_update_interactions_start ( class(classical_particles_t), intent(inout)  this)
private

Definition at line 550 of file classical_particles.F90.

◆ classical_particles_update_interactions_finish()

subroutine classical_particles_oct_m::classical_particles_update_interactions_finish ( class(classical_particles_t), intent(inout)  this)
private

Definition at line 567 of file classical_particles.F90.

◆ classical_particles_output_start()

subroutine classical_particles_oct_m::classical_particles_output_start ( class(classical_particles_t), intent(inout)  this)
private

Definition at line 589 of file classical_particles.F90.

◆ classical_particles_output_finish()

subroutine classical_particles_oct_m::classical_particles_output_finish ( class(classical_particles_t), intent(inout)  this)
private

Definition at line 625 of file classical_particles.F90.

◆ classical_particles_output_write()

subroutine classical_particles_oct_m::classical_particles_output_write ( class(classical_particles_t), intent(inout)  this)
private

Definition at line 639 of file classical_particles.F90.

◆ classical_particles_restart_write_data()

subroutine, public classical_particles_oct_m::classical_particles_restart_write_data ( class(classical_particles_t), intent(inout)  this)

Definition at line 768 of file classical_particles.F90.

◆ classical_particles_restart_read_data()

logical function classical_particles_oct_m::classical_particles_restart_read_data ( class(classical_particles_t), intent(inout)  this)
private

Definition at line 804 of file classical_particles.F90.

◆ classical_particles_update_kinetic_energy()

subroutine classical_particles_oct_m::classical_particles_update_kinetic_energy ( class(classical_particles_t), intent(inout)  this)
private

Definition at line 844 of file classical_particles.F90.

◆ classical_particles_center_of_mass()

real(real64) function, dimension(this%space%dim) classical_particles_oct_m::classical_particles_center_of_mass ( class(classical_particles_t), intent(in)  this,
logical, dimension(:), intent(in), optional  mask,
logical, intent(in), optional  pseudo 
)
private
Parameters
[in]pseudocalculate center considering all particles to have equal mass.

Definition at line 860 of file classical_particles.F90.

◆ classical_particles_center_of_mass_vel()

real(real64) function, dimension(this%space%dim) classical_particles_oct_m::classical_particles_center_of_mass_vel ( class(classical_particles_t), intent(in)  this)
private

Definition at line 892 of file classical_particles.F90.

◆ classical_particles_center()

real(real64) function, dimension(this%space%dim) classical_particles_oct_m::classical_particles_center ( class(classical_particles_t), intent(in)  this)
private

Definition at line 914 of file classical_particles.F90.

◆ classical_particles_axis_large()

subroutine classical_particles_oct_m::classical_particles_axis_large ( class(classical_particles_t), intent(in)  this,
real(real64), dimension(this%space%dim), intent(out)  x,
real(real64), dimension(this%space%dim), intent(out)  x2 
)
private

Definition at line 938 of file classical_particles.F90.

◆ classical_particles_axis_inertia()

subroutine classical_particles_oct_m::classical_particles_axis_inertia ( class(classical_particles_t), intent(in)  this,
real(real64), dimension(this%space%dim), intent(out)  x,
real(real64), dimension(this%space%dim), intent(out)  x2,
logical, intent(in)  pseudo 
)
private

This subroutine assumes that the origin of the coordinates is the center of mass of the system.

Parameters
[in]pseudocalculate axis considering all particles to have equal mass.

Definition at line 980 of file classical_particles.F90.

◆ classical_particles_end()

subroutine, public classical_particles_oct_m::classical_particles_end ( class(classical_particles_t), intent(inout)  this)

Definition at line 1032 of file classical_particles.F90.

Variable Documentation

◆ output_coordinates

integer, parameter classical_particles_oct_m::output_coordinates = 1
private

Definition at line 161 of file classical_particles.F90.

◆ output_energy

integer, parameter classical_particles_oct_m::output_energy = 2
private

Definition at line 161 of file classical_particles.F90.