mod_matrix_element_node Module



Contents


Derived Types

type, public :: matrix_element_node_t

Components

TypeVisibilityAttributesNameInitial
complex(kind=dp), private :: element
integer, private :: position(2)
real(kind=dp), private, allocatable:: spline1(:)
real(kind=dp), private, allocatable:: spline2(:)
type(matrix_element_node_t), public, pointer:: next

Type-Bound Procedures

procedure, public :: get_element
procedure, public :: get_position
procedure, public :: get_spline1
procedure, public :: get_spline2
procedure, public :: delete

Functions

public pure function new_matrix_element_node(element, position, spline1, spline2) result(node)

Arguments

TypeIntentOptionalAttributesName
complex(kind=dp), intent(in) :: element
integer, intent(in) :: position(2)
real(kind=dp), intent(in) :: spline1(:)
real(kind=dp), intent(in) :: spline2(:)

Return Value type(matrix_element_node_t)

private pure function get_element(this)

Arguments

TypeIntentOptionalAttributesName
class(matrix_element_node_t), intent(in) :: this

Return Value complex(kind=dp)

private pure function get_position(this) result(position)

Arguments

TypeIntentOptionalAttributesName
class(matrix_element_node_t), intent(in) :: this

Return Value integer(2)

private pure function get_spline1(this) result(spline1)

Arguments

TypeIntentOptionalAttributesName
class(matrix_element_node_t), intent(in) :: this

Return Value real(kind=dp)(size(this%spline1))

private pure function get_spline2(this) result(spline2)

Arguments

TypeIntentOptionalAttributesName
class(matrix_element_node_t), intent(in) :: this

Return Value real(kind=dp)(size(this%spline2))


Subroutines

private pure subroutine delete(this)

Arguments

TypeIntentOptionalAttributesName
class(matrix_element_node_t), intent(inout) :: this