Neko 1.99.6
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
lpt_periodic_bc.f90 File Reference

Go to the source code of this file.

Data Types

type  lpt_periodic_bc::lpt_periodic_bc_t
 

Modules

module  lpt_periodic_bc
 Periodic and cyclic boundary-condition support for LPT.
 

Functions/Subroutines

subroutine lpt_periodic_bc::lpt_periodic_bc_free (this)
 Free periodic-boundary wrapping metadata.
 
subroutine lpt_periodic_bc::lpt_periodic_bc_init (this, msh, dm_xh, coef)
 Initialise rotational or translational periodic wrapping from the mesh.
 
subroutine lpt_periodic_bc::lpt_periodic_bc_wrap (this, x, y, z, n, u, v, w, u_lag, v_lag, w_lag, u_laglag, v_laglag, w_laglag, acc_xlag, acc_ylag, acc_zlag, acc_xlaglag, acc_ylaglag, acc_zlaglag)
 Wrap particle positions and optional vector histories across boundaries.
 
subroutine lpt_periodic_bc::lpt_periodic_bc_sync_from_device (x, y, z, u, v, w, u_lag, v_lag, w_lag, u_laglag, v_laglag, w_laglag, acc_xlag, acc_ylag, acc_zlag, acc_xlaglag, acc_ylaglag, acc_zlaglag)
 Copy wrapped particle coordinates and optional histories back to host.
 
subroutine lpt_periodic_bc::lpt_periodic_bc_reset (this)
 Reset all periodic wrapping flags, directions, and extents.
 
subroutine lpt_periodic_bc::lpt_periodic_bc_init_rotational (this, msh, dm_xh, coef)
 Detect and initialise rotational periodic wrapping.
 
subroutine lpt_periodic_bc::lpt_periodic_bc_init_translational (this, msh)
 Detect unique translational periodic directions from facet pairs.
 
subroutine lpt_periodic_bc::lpt_get_facet_points (msh, el, facet, pts)
 Gather the corner points of a mesh facet.
 
subroutine lpt_periodic_bc::lpt_get_periodic_center (msh, i_periodic, pt)
 Compute the geometric center of a periodic source facet.
 
subroutine lpt_periodic_bc::lpt_normalize (v)
 Normalise a 3-vector when its norm is above LPT periodic tolerance.
 
subroutine lpt_periodic_bc::lpt_periodic_bc_clear_translational (this)
 Clear translational periodic direction, extent, and shift storage.
 
pure real(kind=rp) function, dimension(3) lpt_periodic_bc::lpt_periodic_bc_get_dir (this, idx)
 
subroutine lpt_periodic_bc::lpt_periodic_bc_set_translational (this, idx, dir, periodic_min, periodic_max, shift, periodic_len)
 Store one translational periodic wrapping direction.
 

Variables

real(kind=rp), parameter lpt_periodic_bc::lpt_periodic_tol = 1.0e-8_rp