Neko  0.8.1
A portable framework for high-order spectral element flow simulations
symmetry Module Reference

Mixed Dirichlet-Neumann axis aligned symmetry plane. More...

Data Types

type  symmetry_t
 Mixed Dirichlet-Neumann symmetry plane condition. More...
 

Functions/Subroutines

subroutine symmetry_init_msk (this)
 Initialize symmetry mask for each axis. More...
 
subroutine symmetry_free (this)
 
subroutine symmetry_apply_scalar (this, x, n, t, tstep)
 No-op scalar apply. More...
 
subroutine symmetry_apply_vector (this, x, y, z, n, t, tstep)
 Apply symmetry conditions (axis aligned) More...
 
subroutine symmetry_apply_scalar_dev (this, x_d, t, tstep)
 No-op scalar apply (device version) More...
 
subroutine symmetry_apply_vector_dev (this, x_d, y_d, z_d, t, tstep)
 Apply symmetry conditions (axis aligned) (device version) More...
 

Detailed Description

Mixed Dirichlet-Neumann axis aligned symmetry plane.

Function/Subroutine Documentation

◆ symmetry_apply_scalar()

subroutine symmetry::symmetry_apply_scalar ( class(symmetry_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

No-op scalar apply.

Definition at line 153 of file symmetry.f90.

◆ symmetry_apply_scalar_dev()

subroutine symmetry::symmetry_apply_scalar_dev ( class(symmetry_t), intent(inout), target  this,
type(c_ptr)  x_d,
real(kind=rp), intent(in), optional  t,
integer, intent(in), optional  tstep 
)
private

No-op scalar apply (device version)

Definition at line 179 of file symmetry.f90.

◆ symmetry_apply_vector()

subroutine symmetry::symmetry_apply_vector ( class(symmetry_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

Apply symmetry conditions (axis aligned)

Definition at line 162 of file symmetry.f90.

◆ symmetry_apply_vector_dev()

subroutine symmetry::symmetry_apply_vector_dev ( class(symmetry_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

Apply symmetry conditions (axis aligned) (device version)

Definition at line 187 of file symmetry.f90.

◆ symmetry_free()

subroutine symmetry::symmetry_free ( type(symmetry_t), intent(inout)  this)
private

Definition at line 143 of file symmetry.f90.

◆ symmetry_init_msk()

subroutine symmetry::symmetry_init_msk ( class(symmetry_t), intent(inout)  this)

Initialize symmetry mask for each axis.

Definition at line 65 of file symmetry.f90.