Neko  0.9.0
A portable framework for high-order spectral element flow simulations
tensor::triple_tensor_product Interface Reference

Private Member Functions

subroutine triple_tensor_product_scalar (v, u, nu, Hr, Hs, Ht)
 Computes the tensor product \( v =(H_t \otimes H_s \otimes H_r) u \). This operation is usually performed for spectral interpolation of a scalar field as defined by. More...
 
subroutine triple_tensor_product_vector (v, u1, u2, u3, nu, Hr, Hs, Ht)
 Computes the tensor product on a vector field \( \mathbf{v} =(H_t \otimes H_s \otimes H_r) \mathbf{u} \). This operation is usually performed for spectral interpolation on a 3D vector field \( \mathbf{u} = (u_1,u_2,u_3) \) as defined by. More...
 

Detailed Description

Definition at line 78 of file tensor.f90.

Member Function/Subroutine Documentation

◆ triple_tensor_product_scalar()

subroutine tensor::triple_tensor_product::triple_tensor_product_scalar ( real(kind=rp), intent(inout)  v,
real(kind=rp), dimension(nu,nu,nu), intent(inout)  u,
integer, intent(in)  nu,
real(kind=rp), dimension(nu), intent(inout)  Hr,
real(kind=rp), dimension(nu), intent(inout)  Hs,
real(kind=rp), dimension(nu), intent(inout)  Ht 
)
private

\begin{eqnarray*} v(r,s,t) = \sum_{i=0}^{N}{\sum_{j=0}^{N}{ \sum_{k=0}^{N}{u_{ijk}h_i(r)h_j(s)h_k(t)}}} \end{eqnarray*}

Parameters
vInterpolated value (scalar).
uField values at the GLL points (e.g. velocity in x-direction).
nuSize of the interpolation weights (usually lx).
HrInterpolation weights in the r-direction.
HsInterpolation weights in the s-direction.
HtInterpolation weights in the t-direction.

Definition at line 297 of file tensor.f90.

Here is the call graph for this function:

◆ triple_tensor_product_vector()

subroutine tensor::triple_tensor_product::triple_tensor_product_vector ( real(kind=rp), dimension(3), intent(inout)  v,
real(kind=rp), dimension(nu,nu,nu), intent(inout)  u1,
real(kind=rp), dimension(nu,nu,nu), intent(inout)  u2,
real(kind=rp), dimension(nu,nu,nu), intent(inout)  u3,
integer, intent(in)  nu,
real(kind=rp), dimension(nu), intent(inout)  Hr,
real(kind=rp), dimension(nu), intent(inout)  Hs,
real(kind=rp), dimension(nu), intent(inout)  Ht 
)
private

\begin{eqnarray*} \mathbf{v}(r,s,t) = \sum_{i=0}^{N}{\sum_{j=0}^{N}{ \sum_{k=0}^{N}{\mathbf{u}_{ijk}h_i(r)h_j(s)h_k(t)}}} \end{eqnarray*}

Parameters
vInterpolated value (scalar).
u13D-array containing values at the GLL points (e.g. velocity).
u23D-array containing values at the GLL points (e.g. velocity).
u33D-array containing values at the GLL points (e.g. velocity).
nuSize of the interpolation weights (usually lx).
HrInterpolation weights in the r-direction.
HsInterpolation weights in the s-direction.
HtInterpolation weights in the t-direction.

Definition at line 333 of file tensor.f90.

Here is the call graph for this function:

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