multipoles_type Derived Type

type, public :: multipoles_type

contains multipoles and related variables and procedures


Contents

Source Code


Components

TypeVisibilityAttributesNameInitial
integer, public :: id

probably redundant

integer, public :: order

highest order of multipoles

real(kind=dp), public, dimension(3):: origin

coordinates of multipoles origin

real(kind=dp), public, dimension(:), allocatable:: values

array of multipole values


Type-Bound Procedures

procedure, private :: init_multipoles

  • private subroutine init_multipoles(this, id, origin, order, values)

    Arguments

    TypeIntentOptionalAttributesName
    class(multipoles_type), intent(inout) :: this
    integer, intent(in) :: id
    real(kind=dp), intent(in), dimension(:):: origin
    integer, intent(in) :: order
    real(kind=dp), intent(in), dimension(:):: values

generic, public :: init => init_multipoles

  • private subroutine init_multipoles(this, id, origin, order, values)

    Arguments

    TypeIntentOptionalAttributesName
    class(multipoles_type), intent(inout) :: this
    integer, intent(in) :: id
    real(kind=dp), intent(in), dimension(:):: origin
    integer, intent(in) :: order
    real(kind=dp), intent(in), dimension(:):: values

procedure, public :: get_size => get_multipoles_size

Source Code

    type :: multipoles_type
        private
        !> probably redundant
        integer, public :: id
        !> highest order of multipoles
        integer, public :: order
        !> coordinates of multipoles origin
        real(dp), dimension(3), public :: origin
        !> array of multipole values
        real(dp), dimension(:), allocatable, public :: values
    contains
        private
        procedure :: init_multipoles
        generic, public :: init => init_multipoles
        procedure, public :: get_size => get_multipoles_size
    end type multipoles_type