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

Base type for a boundary condition. More...

Inheritance diagram for bc::bc_t:
Collaboration diagram for bc::bc_t:

Public Member Functions

procedure, pass(this) init_base => bc_init_base
 Constructor. More...
 
procedure, pass(this) free_base => bc_free_base
 Destructor. More...
 
procedure, pass(this) mark_facet => bc_mark_facet
 Mark a facet on an element as part of the boundary condition. More...
 
procedure, pass(this) mark_facets => bc_mark_facets
 Mark all facets from a (facet, element) tuple list. More...
 
procedure, pass(this) mark_zones_from_list => bc_mark_zones_from_list
 Mark all facets from a list of zones, also marks type of bc in the mesh. More...
 
procedure, pass(this) mark_zone => bc_mark_zone
 Mark all facets from a zone. More...
 
procedure, pass(this) finalize => bc_finalize
 Finalize the construction of the bc by populting the msk and facet arrays. More...
 
procedure(bc_apply_scalar), deferred, pass apply_scalar
 Apply the boundary condition to a scalar field. More...
 
procedure(bc_apply_vector), deferred, pass apply_vector
 Apply the boundary condition to a vector field. More...
 
procedure(bc_apply_scalar_dev), deferred, pass apply_scalar_dev
 Device version of apply_scalar. More...
 
procedure(bc_apply_vector_dev), deferred, pass apply_vector_dev
 Device version of apply_vector. More...
 
procedure(bc_destructor), deferred, pass free
 Destructor. More...
 

Public Attributes

integer, dimension(:), allocatable msk
 The linear index of each node in each boundary facet. More...
 
integer, dimension(:), allocatable facet
 A list of facet ids (1 to 6), one for each element in msk. More...
 
type(dofmap_t), pointer dof
 Map of degrees of freedom. More...
 
type(coef_t), pointer coef
 SEM coefficients. More...
 
type(mesh_t), pointer msh
 The mesh. More...
 
type(space_t), pointer xh
 The function space. More...
 
type(stack_i4t2_tmarked_facet
 Index tuples (facet, element) marked as part of the boundary condition. More...
 
type(c_ptr) msk_d = C_NULL_PTR
 Device pointer for msk. More...
 
type(c_ptr) facet_d = C_NULL_PTR
 Device pointer for facet. More...
 

Detailed Description

Definition at line 51 of file bc.f90.

Member Function/Subroutine Documentation

◆ apply_scalar()

procedure(bc_apply_scalar), deferred, pass bc::bc_t::apply_scalar

Definition at line 87 of file bc.f90.

◆ apply_scalar_dev()

procedure(bc_apply_scalar_dev), deferred, pass bc::bc_t::apply_scalar_dev

Definition at line 91 of file bc.f90.

◆ apply_vector()

procedure(bc_apply_vector), deferred, pass bc::bc_t::apply_vector

Definition at line 89 of file bc.f90.

◆ apply_vector_dev()

procedure(bc_apply_vector_dev), deferred, pass bc::bc_t::apply_vector_dev

Definition at line 93 of file bc.f90.

◆ finalize()

procedure, pass(this) bc::bc_t::finalize

Definition at line 85 of file bc.f90.

◆ free()

procedure(bc_destructor), deferred, pass bc::bc_t::free

Definition at line 95 of file bc.f90.

◆ free_base()

procedure, pass(this) bc::bc_t::free_base

Definition at line 74 of file bc.f90.

◆ init_base()

procedure, pass(this) bc::bc_t::init_base

Definition at line 72 of file bc.f90.

◆ mark_facet()

procedure, pass(this) bc::bc_t::mark_facet

Definition at line 76 of file bc.f90.

◆ mark_facets()

procedure, pass(this) bc::bc_t::mark_facets

Definition at line 78 of file bc.f90.

◆ mark_zone()

procedure, pass(this) bc::bc_t::mark_zone

Definition at line 82 of file bc.f90.

◆ mark_zones_from_list()

procedure, pass(this) bc::bc_t::mark_zones_from_list

Definition at line 80 of file bc.f90.

Member Data Documentation

◆ coef

type(coef_t), pointer bc::bc_t::coef

Definition at line 59 of file bc.f90.

◆ dof

type(dofmap_t), pointer bc::bc_t::dof

Definition at line 57 of file bc.f90.

◆ facet

integer, dimension(:), allocatable bc::bc_t::facet

Definition at line 55 of file bc.f90.

◆ facet_d

type(c_ptr) bc::bc_t::facet_d = C_NULL_PTR

Definition at line 69 of file bc.f90.

◆ marked_facet

type(stack_i4t2_t) bc::bc_t::marked_facet

Definition at line 65 of file bc.f90.

◆ msh

type(mesh_t), pointer bc::bc_t::msh

Definition at line 61 of file bc.f90.

◆ msk

integer, dimension(:), allocatable bc::bc_t::msk

Definition at line 53 of file bc.f90.

◆ msk_d

type(c_ptr) bc::bc_t::msk_d = C_NULL_PTR

Definition at line 67 of file bc.f90.

◆ xh

type(space_t), pointer bc::bc_t::xh

Definition at line 63 of file bc.f90.


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