Neko  0.9.0
A portable framework for high-order spectral element flow simulations
cylinder_point_zone::cylinder_point_zone_t Type Reference

A cylindrical point zone. More...

Inheritance diagram for cylinder_point_zone::cylinder_point_zone_t:
Collaboration diagram for cylinder_point_zone::cylinder_point_zone_t:

Public Member Functions

procedure, pass(this) init => cylinder_point_zone_init_from_json
 Constructor from json object file. More...
 
procedure, pass(this) free => cylinder_point_zone_free
 Destructor. More...
 
procedure, pass(this) criterion => cylinder_point_zone_criterion
 Defines the criterion of selection of a GLL point in the sphere point zone. More...
 
procedure, pass(this) init_base => point_zone_init_base
 Constructor for the point_zone_t base type. More...
 
procedure, pass(this) free_base => point_zone_free_base
 Destructor for the point_zone_t base type. More...
 
procedure, pass(this) finalize => point_zone_finalize
 Builds the mask from the scratch stack. More...
 
procedure, pass(this) add => point_zone_add
 Adds a point's linear index to the scratch stack. More...
 
procedure, pass(this) map => point_zone_map
 Maps the GLL points that verify a point_zone's criterion by adding them to the stack. More...
 

Public Attributes

real(kind=rp), dimension(3) p0
 
real(kind=rp), dimension(3) p1
 
real(kind=rp) radius
 
integer, dimension(:), allocatable mask
 List of linear indices of the GLL points in the zone. More...
 
type(c_ptr) mask_d = c_null_ptr
 List of linear indices of the GLL points in the zone on the device. More...
 
integer size = 0
 Size of the point zone mask. More...
 
character(len=80) name
 Name of the point zone (used for retrieval in the point_zone_registry). More...
 
logical invert = .false.
 If we select the inverse of the criterion or not. More...
 

Private Attributes

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

Detailed Description

As defined here, a cylinder is described by its two end points and its radius, specified in the json file as e.g. "start": [<x0>, <y0>, <z0>]", "start": [<x1>, <y1>, <z1>]", "radius": <r>.

Definition at line 48 of file cylinder_point_zone.f90.

Member Function/Subroutine Documentation

◆ add()

procedure, pass(this) point_zone::point_zone_t::add
inherited

Definition at line 71 of file point_zone.f90.

◆ criterion()

procedure, pass(this) cylinder_point_zone::cylinder_point_zone_t::criterion

Definition at line 59 of file cylinder_point_zone.f90.

◆ finalize()

procedure, pass(this) point_zone::point_zone_t::finalize
inherited

Definition at line 69 of file point_zone.f90.

◆ free()

procedure, pass(this) cylinder_point_zone::cylinder_point_zone_t::free

Definition at line 56 of file cylinder_point_zone.f90.

◆ free_base()

procedure, pass(this) point_zone::point_zone_t::free_base
inherited

Definition at line 67 of file point_zone.f90.

◆ init()

procedure, pass(this) cylinder_point_zone::cylinder_point_zone_t::init

Definition at line 54 of file cylinder_point_zone.f90.

◆ init_base()

procedure, pass(this) point_zone::point_zone_t::init_base
inherited

Definition at line 65 of file point_zone.f90.

◆ map()

procedure, pass(this) point_zone::point_zone_t::map
inherited

Definition at line 74 of file point_zone.f90.

Member Data Documentation

◆ finalized

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

Definition at line 58 of file point_zone.f90.

◆ invert

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

Definition at line 62 of file point_zone.f90.

◆ mask

integer, dimension(:), allocatable point_zone::point_zone_t::mask
inherited

Definition at line 49 of file point_zone.f90.

◆ mask_d

type(c_ptr) point_zone::point_zone_t::mask_d = c_null_ptr
inherited

Definition at line 51 of file point_zone.f90.

◆ name

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

Definition at line 60 of file point_zone.f90.

◆ p0

real(kind=rp), dimension(3) cylinder_point_zone::cylinder_point_zone_t::p0

Definition at line 49 of file cylinder_point_zone.f90.

◆ p1

real(kind=rp), dimension(3) cylinder_point_zone::cylinder_point_zone_t::p1

Definition at line 50 of file cylinder_point_zone.f90.

◆ radius

real(kind=rp) cylinder_point_zone::cylinder_point_zone_t::radius

Definition at line 51 of file cylinder_point_zone.f90.

◆ scratch

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

Definition at line 53 of file point_zone.f90.

◆ size

integer point_zone::point_zone_t::size = 0
inherited

Definition at line 55 of file point_zone.f90.


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