FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
bucket_search Module Reference

This module provides bucket-search functionality It provides definition of bucket info and its access routines. More...

Functions/Subroutines

subroutine, public bucketdb_init (bktdb)
 Initializer. More...
 
subroutine, public bucketdb_finalize (bktdb)
 Finalizer. More...
 
subroutine, public bucketdb_setup (bktdb, x_min, x_max, dmin, n_tot)
 Setup basic info of buckets. More...
 
integer(kind=kint) function, public bucketdb_getbucketid (bktdb, x)
 Get bucket ID that includes given point. More...
 
subroutine, public bucketdb_registerpre (bktdb, bid)
 Pre-register for just counting members to be actually registered Bucket ID has to be obtained with bucketDB_getBucketID. More...
 
subroutine, public bucketdb_allocate (bktdb)
 Allocate memory before actually registering members Before allocating memory, bucketDB_registerPre has to be called for all members to be registered. More...
 
subroutine, public bucketdb_register (bktdb, bid, sid)
 Register member Before actually register, bucketDB_allocate has to be called. More...
 
integer(kind=kint) function, public bucketdb_getnumcand (bktdb, bid)
 Get number of candidates within neighboring buckets of a given bucket Bucket ID has to be obtained with bucketDB_getBucketID. More...
 
subroutine, public bucketdb_getcand (bktdb, bid, ncand, cand)
 Get candidates within neighboring buckets of a given bucket Number of candidates has to be obtained with bucketDB_getNumCand beforehand. More...
 

Detailed Description

This module provides bucket-search functionality It provides definition of bucket info and its access routines.

Function/Subroutine Documentation

◆ bucketdb_allocate()

subroutine, public bucket_search::bucketdb_allocate ( type(bucketdb), intent(inout)  bktdb)

Allocate memory before actually registering members Before allocating memory, bucketDB_registerPre has to be called for all members to be registered.

Parameters
[in,out]bktdbbucket info

Definition at line 278 of file bucket_search.f90.

Here is the caller graph for this function:

◆ bucketdb_finalize()

subroutine, public bucket_search::bucketdb_finalize ( type(bucketdb), intent(inout)  bktdb)

Finalizer.

Parameters
[in,out]bktdbbucket info

Definition at line 151 of file bucket_search.f90.

Here is the caller graph for this function:

◆ bucketdb_getbucketid()

integer(kind=kint) function, public bucket_search::bucketdb_getbucketid ( type(bucketdb), intent(in)  bktdb,
real(kind=kreal), dimension(3), intent(in)  x 
)

Get bucket ID that includes given point.

Returns
bucket ID
Parameters
[in]bktdbbucket info
[in]xcoordinate of point

Definition at line 244 of file bucket_search.f90.

Here is the caller graph for this function:

◆ bucketdb_getcand()

subroutine, public bucket_search::bucketdb_getcand ( type(bucketdb), intent(in)  bktdb,
integer(kind=kint), intent(in)  bid,
integer(kind=kint), intent(in)  ncand,
integer(kind=kint), dimension(ncand), intent(out), target  cand 
)

Get candidates within neighboring buckets of a given bucket Number of candidates has to be obtained with bucketDB_getNumCand beforehand.

Parameters
[in]bktdbbucket info
[in]bidbucket ID
[in]ncandnumber of candidates
[out]candarray to store candidates

Definition at line 344 of file bucket_search.f90.

Here is the caller graph for this function:

◆ bucketdb_getnumcand()

integer(kind=kint) function, public bucket_search::bucketdb_getnumcand ( type(bucketdb), intent(in)  bktdb,
integer(kind=kint), intent(in)  bid 
)

Get number of candidates within neighboring buckets of a given bucket Bucket ID has to be obtained with bucketDB_getBucketID.

Returns
number of candidates
Parameters
[in]bktdbbucket info
[in]bidbucket ID

Definition at line 313 of file bucket_search.f90.

Here is the caller graph for this function:

◆ bucketdb_init()

subroutine, public bucket_search::bucketdb_init ( type(bucketdb), intent(inout)  bktdb)

Initializer.

Parameters
[in,out]bktdbbucket info

Definition at line 138 of file bucket_search.f90.

Here is the caller graph for this function:

◆ bucketdb_register()

subroutine, public bucket_search::bucketdb_register ( type(bucketdb), intent(inout)  bktdb,
integer(kind=kint), intent(in)  bid,
integer(kind=kint), intent(in)  sid 
)

Register member Before actually register, bucketDB_allocate has to be called.

Parameters
[in,out]bktdbbucket info
[in]bidbucket ID
[in]sidmember ID

Definition at line 299 of file bucket_search.f90.

Here is the caller graph for this function:

◆ bucketdb_registerpre()

subroutine, public bucket_search::bucketdb_registerpre ( type(bucketdb), intent(inout)  bktdb,
integer(kind=kint), intent(in)  bid 
)

Pre-register for just counting members to be actually registered Bucket ID has to be obtained with bucketDB_getBucketID.

Parameters
[in,out]bktdbbucket info
[in]bidbucket ID

Definition at line 265 of file bucket_search.f90.

Here is the caller graph for this function:

◆ bucketdb_setup()

subroutine, public bucket_search::bucketdb_setup ( type(bucketdb), intent(inout)  bktdb,
real(kind=kreal), dimension(3), intent(in)  x_min,
real(kind=kreal), dimension(3), intent(in)  x_max,
real(kind=kreal), intent(in)  dmin,
integer(kind=kint), intent(in)  n_tot 
)

Setup basic info of buckets.

Parameters
[in,out]bktdbbucket info
[in]x_minmin coordinate of rectangle area covered by buckets
[in]x_maxmax coordinate of rectangle area covered by buckets
[in]dminminimal size of bucket
[in]n_tottotal number of members to be stored

Definition at line 175 of file bucket_search.f90.

Here is the caller graph for this function: