subsystem which is a collection of atoms
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public | :: | id | ID of the code |
|||
real(kind=dp), | public | :: | factor | factor to be applied for forces contribution (most likely to be either 1.0 or -1.0) |
|||
integer, | public | :: | num_atoms | total number of atoms within subsystem |
|||
type(atom_type), | public, | dimension(:), allocatable | :: | atoms | list of atoms |
||
integer, | public | :: | num_fragments | total number of fragments within subsystem |
|||
type(fragment_type), | public, | dimension(:), allocatable | :: | fragments | list of fragments in within subsystem |
||
integer, | public | :: | num_sr_atoms | number of short-range atoms |
|||
type(atom_type), | public, | dimension(:), allocatable | :: | sr_atoms | list of short-range atoms |
||
integer, | public | :: | num_sr_fragments | number of short-range fragments |
|||
type(fragment_type), | public, | dimension(:), allocatable | :: | sr_fragments | list of short-range fragments |
||
integer, | public | :: | num_lr_atoms | number of long-range atoms |
|||
type(atom_type), | public, | dimension(:), allocatable | :: | lr_atoms | list of long-range atoms |
||
integer, | public | :: | num_lr_fragments | number of long-range fragments |
|||
type(fragment_type), | public, | dimension(:), allocatable | :: | lr_fragments | list of long-range fragments |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(subsystem_type), | intent(inout) | :: | this | |||
integer, | intent(in) | :: | id | |||
real(kind=dp), | intent(in) | :: | factor | |||
type(atom_type), | intent(in), | dimension(:) | :: | atoms |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(subsystem_type), | intent(inout) | :: | this | |||
integer, | intent(in) | :: | num_fragments | |||
integer, | intent(in), | dimension(0:num_fragments) | :: | fragment_definitions |
type :: subsystem_type
private
!> ID of the code
integer, public :: id
!> factor to be applied for forces contribution
!> (most likely to be either 1.0 or -1.0)
real(dp), public :: factor
!> total number of atoms within subsystem
integer, public :: num_atoms
!> list of atoms
type(atom_type), dimension(:), allocatable, public :: atoms
!> total number of fragments within subsystem
integer, public :: num_fragments
!> list of fragments in within subsystem
type(fragment_type), dimension(:), allocatable, public :: fragments
!> number of short-range atoms
integer, public :: num_sr_atoms
!> list of short-range atoms
type(atom_type), dimension(:), allocatable, public :: sr_atoms
!> number of short-range fragments
integer, public :: num_sr_fragments
!> list of short-range fragments
type(fragment_type), dimension(:), allocatable, public :: sr_fragments
!> number of long-range atoms
integer, public :: num_lr_atoms
!> list of long-range atoms
type(atom_type), dimension(:), allocatable, public :: lr_atoms
!> number of long-range fragments
integer, public :: num_lr_fragments
!> list of long-range fragments
type(fragment_type), dimension(:), allocatable, public :: lr_fragments
contains
private
procedure, public :: init => init_subsystem
procedure, public :: define_fragments
end type subsystem_type