Neko  0.8.1
A portable framework for high-order spectral element flow simulations
advection::adv_dealias_t Type Reference

Type encapsulating advection routines with dealiasing. More...

Inheritance diagram for advection::adv_dealias_t:
Collaboration diagram for advection::adv_dealias_t:

Public Member Functions

procedure, pass(this) compute => compute_advection_dealias
 Add the advection term for the fluid, i.e. \(u \cdot \nabla u \), to the RHS. More...
 
procedure, pass(this) compute_scalar => compute_scalar_advection_dealias
 Add the advection term for a scalar, i.e. \(u \cdot \nabla s \), to the RHS. More...
 
procedure, pass(this) init => init_dealias
 Constructor. More...
 
procedure, pass(this) free => free_dealias
 Destructor. More...
 

Public Attributes

type(coef_tcoef_gl
 Coeffs of the higher-order space. More...
 
type(coef_t), pointer coef_gll
 Coeffs of the original space in the simulation. More...
 
type(interpolator_tgll_to_gl
 Interpolator between the original and higher-order spaces. More...
 
type(space_txh_gl
 The additional higher-order space used in dealiasing. More...
 
type(space_t), pointer xh_gll
 The original space used in the simulation. More...
 
real(kind=rp), dimension(:), allocatable temp
 
real(kind=rp), dimension(:), allocatable tbf
 
real(kind=rp), dimension(:), allocatable tx
 Temporary arrays. More...
 
real(kind=rp), dimension(:), allocatable ty
 
real(kind=rp), dimension(:), allocatable tz
 
real(kind=rp), dimension(:), allocatable vr
 
real(kind=rp), dimension(:), allocatable vs
 
real(kind=rp), dimension(:), allocatable vt
 
type(c_ptr) temp_d = C_NULL_PTR
 Device pointer for temp More...
 
type(c_ptr) tbf_d = C_NULL_PTR
 Device pointer for tbf More...
 
type(c_ptr) tx_d = C_NULL_PTR
 Device pointer for tx More...
 
type(c_ptr) ty_d = C_NULL_PTR
 Device pointer for ty More...
 
type(c_ptr) tz_d = C_NULL_PTR
 Device pointer for tz More...
 
type(c_ptr) vr_d = C_NULL_PTR
 Device pointer for vr More...
 
type(c_ptr) vs_d = C_NULL_PTR
 Device pointer for vs More...
 
type(c_ptr) vt_d = C_NULL_PTR
 Device pointer for vt More...
 

Detailed Description

Type encapsulating advection routines with dealiasing.

Definition at line 79 of file advection.f90.

Member Function/Subroutine Documentation

◆ compute()

procedure, pass(this) advection::adv_dealias_t::compute

Add the advection term for the fluid, i.e. \(u \cdot \nabla u \), to the RHS.

Definition at line 114 of file advection.f90.

◆ compute_scalar()

procedure, pass(this) advection::adv_dealias_t::compute_scalar

Add the advection term for a scalar, i.e. \(u \cdot \nabla s \), to the RHS.

Definition at line 117 of file advection.f90.

◆ free()

procedure, pass(this) advection::adv_dealias_t::free

Destructor.

Definition at line 121 of file advection.f90.

◆ init()

procedure, pass(this) advection::adv_dealias_t::init

Constructor.

Definition at line 119 of file advection.f90.

Member Data Documentation

◆ coef_gl

type(coef_t) advection::adv_dealias_t::coef_gl

Coeffs of the higher-order space.

Definition at line 81 of file advection.f90.

◆ coef_gll

type(coef_t), pointer advection::adv_dealias_t::coef_gll

Coeffs of the original space in the simulation.

Definition at line 83 of file advection.f90.

◆ gll_to_gl

type(interpolator_t) advection::adv_dealias_t::gll_to_gl

Interpolator between the original and higher-order spaces.

Definition at line 85 of file advection.f90.

◆ tbf

real(kind=rp), dimension(:), allocatable advection::adv_dealias_t::tbf

Definition at line 90 of file advection.f90.

◆ tbf_d

type(c_ptr) advection::adv_dealias_t::tbf_d = C_NULL_PTR

Device pointer for tbf

Definition at line 97 of file advection.f90.

◆ temp

real(kind=rp), dimension(:), allocatable advection::adv_dealias_t::temp

Definition at line 90 of file advection.f90.

◆ temp_d

type(c_ptr) advection::adv_dealias_t::temp_d = C_NULL_PTR

Device pointer for temp

Definition at line 95 of file advection.f90.

◆ tx

real(kind=rp), dimension(:), allocatable advection::adv_dealias_t::tx

Temporary arrays.

Definition at line 92 of file advection.f90.

◆ tx_d

type(c_ptr) advection::adv_dealias_t::tx_d = C_NULL_PTR

Device pointer for tx

Definition at line 99 of file advection.f90.

◆ ty

real(kind=rp), dimension(:), allocatable advection::adv_dealias_t::ty

Definition at line 92 of file advection.f90.

◆ ty_d

type(c_ptr) advection::adv_dealias_t::ty_d = C_NULL_PTR

Device pointer for ty

Definition at line 101 of file advection.f90.

◆ tz

real(kind=rp), dimension(:), allocatable advection::adv_dealias_t::tz

Definition at line 92 of file advection.f90.

◆ tz_d

type(c_ptr) advection::adv_dealias_t::tz_d = C_NULL_PTR

Device pointer for tz

Definition at line 103 of file advection.f90.

◆ vr

real(kind=rp), dimension(:), allocatable advection::adv_dealias_t::vr

Definition at line 93 of file advection.f90.

◆ vr_d

type(c_ptr) advection::adv_dealias_t::vr_d = C_NULL_PTR

Device pointer for vr

Definition at line 105 of file advection.f90.

◆ vs

real(kind=rp), dimension(:), allocatable advection::adv_dealias_t::vs

Definition at line 93 of file advection.f90.

◆ vs_d

type(c_ptr) advection::adv_dealias_t::vs_d = C_NULL_PTR

Device pointer for vs

Definition at line 107 of file advection.f90.

◆ vt

real(kind=rp), dimension(:), allocatable advection::adv_dealias_t::vt

Definition at line 93 of file advection.f90.

◆ vt_d

type(c_ptr) advection::adv_dealias_t::vt_d = C_NULL_PTR

Device pointer for vt

Definition at line 109 of file advection.f90.

◆ xh_gl

type(space_t) advection::adv_dealias_t::xh_gl

The additional higher-order space used in dealiasing.

Definition at line 87 of file advection.f90.

◆ xh_gll

type(space_t), pointer advection::adv_dealias_t::xh_gll

The original space used in the simulation.

Definition at line 89 of file advection.f90.


The documentation for this type was generated from the following file: