Neko 1.99.2
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
point_zone Module Reference

Data Types

type  allocator_entry
 Called in user modules to add an allocator for custom types. More...
 
interface  point_zone_allocate
 Point zone factory. Constructs, initializes, and maps the point zone object. More...
 
interface  point_zone_criterion
 Defines the criterion of selection of a GLL point to the point_zone. More...
 
interface  point_zone_free
 Destructor. More...
 
interface  point_zone_init
 The common constructor using a JSON object. More...
 
type  point_zone_pointer_t
 A helper type to build a list of pointers to point_zones. More...
 
type  point_zone_t
 Base abstract type for point zones. More...
 
type  point_zone_wrapper_t
 A helper type to build a list of polymorphic point_zones. More...
 

Functions/Subroutines

subroutine point_zone_init_base (this, size, name, invert, full_elements)
 Constructor for the point_zone_t base type.
 
subroutine point_zone_free_base (this)
 Destructor for the point_zone_t base type.
 
subroutine point_zone_finalize (this)
 Builds the mask from the scratch stack.
 
subroutine point_zone_add (this, idx)
 Adds a point's linear index to the scratch stack.
 
subroutine point_zone_map (this, dof)
 Maps the GLL points that verify a point_zone's criterion by adding them to the stack.
 

Variables

type(allocator_entry), dimension(:), allocatable point_zone_registry
 Registry of point zone allocators for user-defined types.
 
integer point_zone_registry_size = 0
 The size of the point_zone_registry
 

Function/Subroutine Documentation

◆ point_zone_add()

subroutine point_zone::point_zone_add ( class(point_zone_t), intent(inout this,
integer, intent(inout idx 
)
private
Parameters
idxLinear index of the point to add.
Note
The linear index of a point (j,k,l,e) can be retrieved using the subroutine linear_index(j,k,l,e,lx) in the utils module.

Definition at line 279 of file point_zone.f90.

◆ point_zone_finalize()

subroutine point_zone::point_zone_finalize ( class(point_zone_t), intent(inout this)
private

Definition at line 246 of file point_zone.f90.

◆ point_zone_free_base()

subroutine point_zone::point_zone_free_base ( class(point_zone_t), intent(inout this)
private

Definition at line 234 of file point_zone.f90.

◆ point_zone_init_base()

subroutine point_zone::point_zone_init_base ( class(point_zone_t), intent(inout this,
integer, intent(in), optional  size,
character(len=*), intent(in name,
logical, intent(in invert,
logical, intent(in full_elements 
)
private
Parameters
sizeSize of the scratch stack.
nameName of the point zone.
invertFlag to indicate wether or not to invert the selection of points.
full_elementsWhether to mark all points in the element containing points that satisfy the criterion.

Definition at line 212 of file point_zone.f90.

◆ point_zone_map()

subroutine point_zone::point_zone_map ( class(point_zone_t), intent(inout this,
type(dofmap_t), intent(in dof 
)
private
Parameters
dofDofmap of points to go through.

Definition at line 294 of file point_zone.f90.

Here is the call graph for this function:

Variable Documentation

◆ point_zone_registry

type(allocator_entry), dimension(:), allocatable point_zone::point_zone_registry

Definition at line 195 of file point_zone.f90.

◆ point_zone_registry_size

integer point_zone::point_zone_registry_size = 0
private

Definition at line 198 of file point_zone.f90.