molecule Derived Type

type, public :: molecule


Components

Type Visibility Attributes Name Initial
integer, public, allocatable :: at(:)
real(kind=wp), public, allocatable :: cellpar(:)
real(kind=wp), public, allocatable :: chrg
real(kind=wp), public, allocatable :: lattice(:,:)
integer, public, allocatable :: npbc
logical, public, allocatable :: pbc
real(kind=wp), public, allocatable :: rec_lat(:,:)
real(kind=wp), public, allocatable :: volume
type(ws_cell), public :: wsc
real(kind=wp), public, allocatable :: xyz(:,:)

Type-Bound Procedures

procedure, public :: allocate

  • private subroutine allocate(self, n, l)

    Arguments

    Type IntentOptional Attributes Name
    class(molecule), intent(inout) :: self
    integer, intent(in) :: n
    logical, intent(in) :: l

procedure, public :: calculate_distances

procedure, public :: wrap_back

  • private subroutine wrap_back(self)

    Arguments

    Type IntentOptional Attributes Name
    class(molecule), intent(inout) :: self

Source Code

   type :: molecule
      integer, allocatable :: at(:)
      real(wp), allocatable :: xyz(:, :)
      real(wp), allocatable :: lattice(:, :)
      real(wp), allocatable :: chrg
      integer, allocatable :: npbc
      logical, allocatable :: pbc
      real(wp), allocatable :: volume
      real(wp), allocatable :: cellpar(:)
      real(wp), allocatable :: rec_lat(:, :)
      type(ws_cell) :: wsc
   contains
      procedure :: allocate
      procedure :: wrap_back
      procedure :: calculate_distances
   end type molecule