Neko
0.9.0
A portable framework for high-order spectral element flow simulations
|
A sphere-shaped point zone. More...
Public Member Functions | |
procedure, pass(this) | init => sphere_point_zone_init_from_json |
Constructor from json object file. More... | |
procedure, pass(this) | free => sphere_point_zone_free |
Destructor. More... | |
procedure, pass(this) | criterion => sphere_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) | x0 |
real(kind=rp) | y0 |
real(kind=rp) | z0 |
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... | |
As defined here, a sphere is described by its center of coordinates x0,y0,z0
and its radius, specified in the json file as e.g. "center": [<x0>, <y0>, <z0>]", "radius": <r>
.
Definition at line 47 of file sphere_point_zone.f90.
|
inherited |
Definition at line 71 of file point_zone.f90.
procedure, pass(this) sphere_point_zone::sphere_point_zone_t::criterion |
Definition at line 59 of file sphere_point_zone.f90.
|
inherited |
Definition at line 69 of file point_zone.f90.
procedure, pass(this) sphere_point_zone::sphere_point_zone_t::free |
Definition at line 56 of file sphere_point_zone.f90.
|
inherited |
Definition at line 67 of file point_zone.f90.
procedure, pass(this) sphere_point_zone::sphere_point_zone_t::init |
Definition at line 54 of file sphere_point_zone.f90.
|
inherited |
Definition at line 65 of file point_zone.f90.
|
inherited |
Definition at line 74 of file point_zone.f90.
|
privateinherited |
Definition at line 58 of file point_zone.f90.
|
inherited |
Definition at line 62 of file point_zone.f90.
|
inherited |
Definition at line 49 of file point_zone.f90.
|
inherited |
Definition at line 51 of file point_zone.f90.
|
inherited |
Definition at line 60 of file point_zone.f90.
real(kind=rp) sphere_point_zone::sphere_point_zone_t::radius |
Definition at line 51 of file sphere_point_zone.f90.
|
privateinherited |
Definition at line 53 of file point_zone.f90.
|
inherited |
Definition at line 55 of file point_zone.f90.
real(kind=rp) sphere_point_zone::sphere_point_zone_t::x0 |
Definition at line 48 of file sphere_point_zone.f90.
real(kind=rp) sphere_point_zone::sphere_point_zone_t::y0 |
Definition at line 49 of file sphere_point_zone.f90.
real(kind=rp) sphere_point_zone::sphere_point_zone_t::z0 |
Definition at line 50 of file sphere_point_zone.f90.