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

Defines a Neumann boundary condition.

Data Types

type  neumann_t
 A Neumann boundary condition. Sets the flux of the field to the chosen values. More...
 

Functions/Subroutines

subroutine neumann_init (this, coef, json)
 Constructor.
 
subroutine neumann_init_from_components_array (this, coef, flux)
 Constructor from components, using a flux array for vector components.
 
subroutine neumann_init_from_components_single (this, coef, flux)
 Constructor from components, using an signle flux.
 
subroutine neumann_apply_scalar (this, x, n, time, strong)
 Boundary condition apply for a generic Neumann condition to a vector x.
 
subroutine neumann_apply_vector (this, x, y, z, n, time, strong)
 Boundary condition apply for a generic Neumann condition to vectors x, y and z.
 
subroutine neumann_apply_scalar_dev (this, x_d, time, strong, strm)
 Boundary condition apply for a generic Neumann condition to a vector x (device version)
 
subroutine neumann_apply_vector_dev (this, x_d, y_d, z_d, time, strong, strm)
 Boundary condition apply for a generic Neumann condition to vectors x, y and z (device version)
 
subroutine neumann_free (this)
 Destructor.
 
subroutine neumann_finalize (this, only_facets)
 Finalize by setting the flux.
 
subroutine neumann_set_flux_scalar (this, flux, comp)
 Set the flux using a scalar.
 
subroutine neumann_set_flux_array (this, flux, comp)
 Set a flux component using a vector_t of values.
 

Function/Subroutine Documentation

◆ neumann_apply_scalar()

subroutine neumann::neumann_apply_scalar ( class(neumann_t), intent(inout this,
real(kind=rp), dimension(n), intent(inout x,
integer, intent(in n,
type(time_state_t), intent(in), optional  time,
logical, intent(in), optional  strong 
)
private

Definition at line 165 of file neumann.f90.

Here is the call graph for this function:

◆ neumann_apply_scalar_dev()

subroutine neumann::neumann_apply_scalar_dev ( class(neumann_t), intent(inout), target  this,
type(c_ptr), intent(inout x_d,
type(time_state_t), intent(in), optional  time,
logical, intent(in), optional  strong,
type(c_ptr), intent(inout strm 
)
private

Definition at line 261 of file neumann.f90.

Here is the call graph for this function:

◆ neumann_apply_vector()

subroutine neumann::neumann_apply_vector ( class(neumann_t), intent(inout this,
real(kind=rp), dimension(n), intent(inout x,
real(kind=rp), dimension(n), intent(inout y,
real(kind=rp), dimension(n), intent(inout z,
integer, intent(in n,
type(time_state_t), intent(in), optional  time,
logical, intent(in), optional  strong 
)
private

Definition at line 206 of file neumann.f90.

Here is the call graph for this function:

◆ neumann_apply_vector_dev()

subroutine neumann::neumann_apply_vector_dev ( class(neumann_t), intent(inout), target  this,
type(c_ptr), intent(inout x_d,
type(c_ptr), intent(inout y_d,
type(c_ptr), intent(inout z_d,
type(time_state_t), intent(in), optional  time,
logical, intent(in), optional  strong,
type(c_ptr), intent(inout strm 
)
private

Definition at line 285 of file neumann.f90.

Here is the call graph for this function:

◆ neumann_finalize()

subroutine neumann::neumann_finalize ( class(neumann_t), intent(inout), target  this,
logical, intent(in), optional  only_facets 
)
private

Definition at line 322 of file neumann.f90.

◆ neumann_free()

subroutine neumann::neumann_free ( class(neumann_t), intent(inout), target  this)
private

Definition at line 314 of file neumann.f90.

◆ neumann_init()

subroutine neumann::neumann_init ( class(neumann_t), intent(inout), target  this,
type(coef_t), intent(in), target  coef,
type(json_file), intent(inout json 
)
Parameters
[in]coefThe SEM coefficients.
[in,out]jsonThe JSON object configuring the boundary condition.

Definition at line 103 of file neumann.f90.

◆ neumann_init_from_components_array()

subroutine neumann::neumann_init_from_components_array ( class(neumann_t), intent(inout), target  this,
type(coef_t), intent(in coef,
real(kind=rp), dimension(3), intent(in flux 
)
private
Parameters
[in]coefThe SEM coefficients.
[in]fluxThe value of the flux at the boundary.

Definition at line 135 of file neumann.f90.

Here is the caller graph for this function:

◆ neumann_init_from_components_single()

subroutine neumann::neumann_init_from_components_single ( class(neumann_t), intent(inout), target  this,
type(coef_t), intent(in coef,
real(kind=rp), intent(in flux 
)
private
Parameters
[in]coefThe SEM coefficients.
[in]fluxThe value of the flux at the boundary.

Definition at line 152 of file neumann.f90.

Here is the caller graph for this function:

◆ neumann_set_flux_array()

subroutine neumann::neumann_set_flux_array ( class(neumann_t), intent(inout this,
type(vector_t), intent(in flux,
integer, intent(in comp 
)
private
Parameters
fluxThe desired flux.
compThe component to set.

Definition at line 371 of file neumann.f90.

◆ neumann_set_flux_scalar()

subroutine neumann::neumann_set_flux_scalar ( class(neumann_t), intent(inout this,
real(kind=rp), intent(in flux,
integer, intent(in comp 
)
private
Parameters
fluxThe desired flux.
compThe component to set.

Definition at line 351 of file neumann.f90.