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

Defines a boundary condition.

Data Types

type  bc_alloc_t
 Wrapper around an allocatable bc. More...
 
interface  bc_apply_scalar
 Apply the boundary condition to a scalar field. More...
 
interface  bc_apply_scalar_dev
 Apply the boundary condition to a scalar field on the device. More...
 
interface  bc_apply_vector
 Apply the boundary condition to a vector field. More...
 
interface  bc_apply_vector_dev
 Apply the boundary condition to a vector field on the device. More...
 
interface  bc_destructor
 Destructor. More...
 
type  bc_ptr_t
 Pointer to boundary condtiion. More...
 
type  bc_t
 Base type for a boundary condition. More...
 

Functions/Subroutines

subroutine bc_init_base (this, coef)
 Constructor.
 
subroutine bc_free_base (this)
 Destructor for the base type, bc_t.
 
subroutine bc_mark_facet (this, facet, el)
 Mark facet on element el as part of the boundary condition.
 
subroutine bc_mark_facets (this, facet_list)
 Mark all facets from a (facet, el) tuple list.
 
subroutine bc_mark_zone (this, bc_zone)
 Mark all facets from a zone.
 
subroutine bc_mark_zones_from_list (this, bc_zones, bc_key, bc_labels)
 Mark all facets from a list of zones, also marks type of bc in the mesh. The facet_type in mesh is because of the fdm from Nek5000... That is a hack that should be removed at some point...
 
subroutine bc_finalize (this)
 Finalize the construction of the bc by populting the msk and facet arrays.
 

Function/Subroutine Documentation

◆ bc_finalize()

subroutine bc::bc_finalize ( class(bc_t), intent(inout), target  this)
private

This will linearize the marked facet's indicies in the msk array.

Todo:
add 2D case

Definition at line 352 of file bc.f90.

Here is the call graph for this function:

◆ bc_free_base()

subroutine bc::bc_free_base ( class(bc_t), intent(inout this)
private

Definition at line 206 of file bc.f90.

Here is the call graph for this function:

◆ bc_init_base()

subroutine bc::bc_init_base ( class(bc_t), intent(inout this,
type(coef_t), intent(in), target  coef 
)
private
Parameters
dofMap of degrees of freedom.

Definition at line 190 of file bc.f90.

◆ bc_mark_facet()

subroutine bc::bc_mark_facet ( class(bc_t), intent(inout this,
integer, intent(in facet,
integer, intent(in el 
)
private
Parameters
facetThe index of the facet.
elThe index of the element.

Definition at line 239 of file bc.f90.

◆ bc_mark_facets()

subroutine bc::bc_mark_facets ( class(bc_t), intent(inout this,
type(stack_i4t2_t), intent(inout facet_list 
)
private
Parameters
facet_listThe list of tuples.

Definition at line 252 of file bc.f90.

◆ bc_mark_zone()

subroutine bc::bc_mark_zone ( class(bc_t), intent(inout this,
class(facet_zone_t), intent(in bc_zone 
)
private
Parameters
bc_zoneBoundary zone to be marked.

Definition at line 267 of file bc.f90.

Here is the caller graph for this function:

◆ bc_mark_zones_from_list()

subroutine bc::bc_mark_zones_from_list ( class(bc_t), intent(inout this,
class(facet_zone_t), dimension(:), intent(in bc_zones,
character(len=*)  bc_key,
character(len=neko_msh_max_zlbl_len), dimension(:)  bc_labels 
)
private
Parameters
bc_zoneArray of boundary zones.
bc_keyBoundary condition label, e.g. 'w' for wall.
bc_labelList of boundary condition labels.

Definition at line 282 of file bc.f90.

Here is the call graph for this function: