Neko 1.99.1
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
point_zone::point_zone_t Type Referenceabstract

Base abstract type for point zones. More...

Inheritance diagram for point_zone::point_zone_t:
Collaboration diagram for point_zone::point_zone_t:

Public Member Functions

procedure, pass(thisinit_base (this, size, name, invert)
 Constructor for the point_zone_t base type.
 
procedure, pass(thisfree_base (this)
 Destructor for the point_zone_t base type.
 
procedure, pass(thisfinalize (this)
 Builds the mask from the scratch stack.
 
procedure, pass(thisadd (this, idx)
 Adds a point's linear index to the scratch stack.
 
procedure, pass(thismap (this, dof)
 Maps the GLL points that verify a point_zone's criterion by adding them to the stack.
 
procedure(point_zone_init), deferred, pass init (this, json, size)
 The common constructor using a JSON object.
 
procedure(point_zone_free), deferred, pass free (this)
 Destructor.
 
procedure(point_zone_criterion), deferred, pass criterion (this, x, y, z, j, k, l, e)
 Defines the criterion of selection of a GLL point to the point_zone.
 

Public Attributes

type(mask_tmask
 List of linear indices of the GLL points in the zone.
 
integer size = 0
 Size of the point zone mask.
 
character(len=80) name
 Name of the point zone (used for retrieval in the point_zone_registry).
 
logical invert = .false.
 If we select the inverse of the criterion or not.
 

Private Attributes

type(stack_i4_t), private scratch
 Scratch stack of integers to build the list mask.
 
logical, private finalized = .false.
 Flag to indicate if point_zone_finalize has been called and the mask has been built.
 

Detailed Description

Definition at line 48 of file point_zone.f90.

Member Function/Subroutine Documentation

◆ add()

procedure, pass(this) point_zone::point_zone_t::add ( class(point_zone_t), intent(inout this,
integer, intent(inout idx 
)
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 70 of file point_zone.f90.

◆ criterion()

procedure(point_zone_criterion), deferred, pass point_zone::point_zone_t::criterion ( class(point_zone_t), intent(in this,
real(kind=rp), intent(in x,
real(kind=rp), intent(in y,
real(kind=rp), intent(in z,
integer, intent(in j,
integer, intent(in k,
integer, intent(in l,
integer, intent(in e 
)
pure virtual

Definition at line 79 of file point_zone.f90.

◆ finalize()

procedure, pass(this) point_zone::point_zone_t::finalize ( class(point_zone_t), intent(inout this)

Definition at line 68 of file point_zone.f90.

◆ free()

procedure(point_zone_free), deferred, pass point_zone::point_zone_t::free ( class(point_zone_t), intent(inout this)
pure virtual

Definition at line 77 of file point_zone.f90.

◆ free_base()

procedure, pass(this) point_zone::point_zone_t::free_base ( class(point_zone_t), intent(inout this)

Definition at line 66 of file point_zone.f90.

◆ init()

procedure(point_zone_init), deferred, pass point_zone::point_zone_t::init ( class(point_zone_t), intent(inout this,
type(json_file), intent(inout json,
integer, intent(in size 
)
pure virtual

Definition at line 75 of file point_zone.f90.

◆ init_base()

procedure, pass(this) point_zone::point_zone_t::init_base ( class(point_zone_t), intent(inout this,
integer, intent(in), optional  size,
character(len=*), intent(in name,
logical, intent(in invert 
)
Parameters
sizeSize of the scratch stack.
nameName of the point zone.
invertFlag to indicate wether or not to invert the selection of points.

Definition at line 64 of file point_zone.f90.

◆ map()

procedure, pass(this) point_zone::point_zone_t::map ( class(point_zone_t), intent(inout this,
type(dofmap_t), intent(in dof 
)
Parameters
dofDofmap of points to go through.

Definition at line 73 of file point_zone.f90.

Member Data Documentation

◆ finalized

logical, private point_zone::point_zone_t::finalized = .false.
private

Definition at line 57 of file point_zone.f90.

◆ invert

logical point_zone::point_zone_t::invert = .false.

Definition at line 61 of file point_zone.f90.

◆ mask

type(mask_t) point_zone::point_zone_t::mask

Definition at line 50 of file point_zone.f90.

◆ name

character(len=80) point_zone::point_zone_t::name

Definition at line 59 of file point_zone.f90.

◆ scratch

type(stack_i4_t), private point_zone::point_zone_t::scratch
private

Definition at line 52 of file point_zone.f90.

◆ size

integer point_zone::point_zone_t::size = 0

Definition at line 54 of file point_zone.f90.


The documentation for this type was generated from the following file: