aabbtree_sm Submodule


Uses

  • module~~aabbtree_sm~~UsesGraph module~aabbtree_sm aabbtree_sm module~aabbtree_m aabbtree_m module~aabbtree_sm->module~aabbtree_m module~vector_m vector_m module~aabbtree_m->module~vector_m module~strings_m strings_m module~aabbtree_m->module~strings_m module~constants_m constants_m module~aabbtree_m->module~constants_m module~aabb_m aabb_m module~aabbtree_m->module~aabb_m module~vector_m->module~constants_m module~qsort_m qsort_m module~vector_m->module~qsort_m module~strings_m->module~constants_m iso_fortran_env iso_fortran_env module~constants_m->iso_fortran_env module~aabb_m->module~strings_m module~aabb_m->module~constants_m module~qsort_m->module~constants_m

Contents


Module Functions

module function node_isleaf(this) result(res)

Arguments

Type IntentOptional AttributesName
class(node_t), intent(in) :: this

Return Value logical

module function node_asstr(this, frmt) result(buf)

Arguments

Type IntentOptional AttributesName
class(node_t), intent(in) :: this
character(len=*), intent(in), optional :: frmt

Return Value character(len=:), allocatable

module function get_num_atoms(this) result(na)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this

Return Value integer

module function get_aabb(this, ia) result(aabb)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this
integer, intent(in) :: ia

Return Value type(aabb_t)

module function get_height(this) result(height)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this

Return Value integer

module function get_max_balance(this) result(max_balance)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this

Return Value integer

module function get_srfarea_ratio(this) result(saratio)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this

Return Value real(kind=rp)

module function balance(this, p) result(q)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this
integer, intent(in) :: p

Return Value integer

recursive module function calc_height(this, p) result(height)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this
integer, intent(in), optional :: p

Return Value integer

module function fs_acquire(this) result(p)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this

Return Value integer


Module Subroutines

module subroutine node_init(this)

Arguments

Type IntentOptional AttributesName
class(node_t), intent(out) :: this

module subroutine init(this, natoms, tskin)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(out) :: this
integer, intent(in) :: natoms
real(kind=rp), intent(in) :: tskin

recursive module subroutine print(this, p)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this
integer, intent(in), optional :: p

module subroutine clear(this)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this

module subroutine delete(this)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this

module subroutine insert(this, ia, pos, radius)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this
integer, intent(in) :: ia
real(kind=rp), intent(in), dimension(3):: pos
real(kind=rp), intent(in) :: radius

module subroutine remove(this, ia)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this
integer, intent(in) :: ia

module subroutine remove_all(this)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this

module subroutine update_fatm(this, ia, pos, radius, lstat)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this
integer, intent(in) :: ia
real(kind=rp), intent(in), dimension(3):: pos
real(kind=rp), intent(in) :: radius
logical, intent(out) :: lstat

module subroutine update_fatmaabb(this, ia, lbnd, ubnd, lstat)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this
integer, intent(in) :: ia
real(kind=rp), intent(in), dimension(3):: lbnd
real(kind=rp), intent(in), dimension(3):: ubnd
logical, intent(out) :: lstat

module subroutine query_watm(this, ia, nbrs)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this
integer, intent(in) :: ia
type(ivector_t), intent(inout) :: nbrs

module subroutine query_watmaabb(this, ia, aabb, nbrs)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this
integer, intent(in) :: ia
type(aabb_t), intent(in) :: aabb
type(ivector_t), intent(inout) :: nbrs

module subroutine query_waabb(this, aabb, atms)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this
type(aabb_t), intent(in) :: aabb
type(ivector_t), intent(inout) :: atms

module subroutine rebuild(this)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this

module subroutine validate(this)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this

module subroutine insert_leaf(this, leaf)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this
integer, intent(in) :: leaf

module subroutine remove_leaf(this, leaf)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this
integer, intent(in) :: leaf

module subroutine fs_return(this, p)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(inout) :: this
integer, intent(in) :: p

recursive module subroutine validate_structure(this, p)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this
integer, intent(in) :: p

recursive module subroutine validate_metrics(this, p)

Arguments

Type IntentOptional AttributesName
class(aabbtree_t), intent(in) :: this
integer, intent(in) :: p