Neko  0.9.0
A portable framework for high-order spectral element flow simulations
usr_scalar Module Reference

Defines dirichlet conditions for scalars.

Data Types

type  usr_scalar_t
 User defined dirichlet condition for scalars. More...
 
interface  usr_scalar_bc_eval
 Abstract interface defining a user defined scalar boundary condition (pointwise) Just imitating inflow for now, but we should update this Probably passing the whole field, params, coef, etcetc would be good. More...
 

Functions/Subroutines

subroutine usr_scalar_free (this)
 
subroutine usr_scalar_apply_scalar (this, x, n, t, tstep)
 Scalar apply Just imitating inflow for now, but we should look this over Applies boundary conditions in eval on x. More...
 
subroutine usr_scalar_apply_scalar_dev (this, x_d, t, tstep)
 Scalar apply (device version) Just imitating inflow for now, but we should look this over Applies boundary conditions in eval on x. More...
 
subroutine usr_scalar_apply_vector (this, x, y, z, n, t, tstep)
 No-op vector apply. More...
 
subroutine usr_scalar_apply_vector_dev (this, x_d, y_d, z_d, t, tstep)
 No-op vector apply (device version) More...
 
subroutine usr_scalar_set_eval (this, user_scalar_bc)
 Assign user provided eval function. More...
 
subroutine usr_scalar_validate (this)
 Validate user scalar condition. More...
 

Function/Subroutine Documentation

◆ usr_scalar_apply_scalar()

subroutine usr_scalar::usr_scalar_apply_scalar ( class(usr_scalar_t), intent(inout)  this,
real(kind=rp), dimension(n), intent(inout)  x,
integer, intent(in)  n,
real(kind=rp), intent(in), optional  t,
integer, intent(in), optional  tstep 
)
private
Parameters
xThe field array to apply the boundary condition to.
nThe size of x.

Definition at line 117 of file usr_scalar.f90.

Here is the call graph for this function:

◆ usr_scalar_apply_scalar_dev()

subroutine usr_scalar::usr_scalar_apply_scalar_dev ( class(usr_scalar_t), intent(inout), target  this,
type(c_ptr)  x_d,
real(kind=rp), intent(in), optional  t,
integer, intent(in), optional  tstep 
)
private
Parameters
xThe array of values to apply.
nThe size of x.

Definition at line 187 of file usr_scalar.f90.

Here is the call graph for this function:

◆ usr_scalar_apply_vector()

subroutine usr_scalar::usr_scalar_apply_vector ( class(usr_scalar_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,
real(kind=rp), intent(in), optional  t,
integer, intent(in), optional  tstep 
)
private

Definition at line 273 of file usr_scalar.f90.

◆ usr_scalar_apply_vector_dev()

subroutine usr_scalar::usr_scalar_apply_vector_dev ( class(usr_scalar_t), intent(inout), target  this,
type(c_ptr)  x_d,
type(c_ptr)  y_d,
type(c_ptr)  z_d,
real(kind=rp), intent(in), optional  t,
integer, intent(in), optional  tstep 
)
private

Definition at line 285 of file usr_scalar.f90.

◆ usr_scalar_free()

subroutine usr_scalar::usr_scalar_free ( class(usr_scalar_t), intent(inout), target  this)
private

Definition at line 101 of file usr_scalar.f90.

Here is the call graph for this function:

◆ usr_scalar_set_eval()

subroutine usr_scalar::usr_scalar_set_eval ( class(usr_scalar_t), intent(inout)  this,
procedure(usr_scalar_bc_eval user_scalar_bc 
)
private
Parameters
user_scalar_bcUser specified scalar boundary condition

Definition at line 297 of file usr_scalar.f90.

◆ usr_scalar_validate()

subroutine usr_scalar::usr_scalar_validate ( class(usr_scalar_t), intent(inout)  this)
private

Definition at line 304 of file usr_scalar.f90.