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

Project x onto X, the space of old solutions and back again. More...

Data Types

type  projection_t
 

Functions/Subroutines

subroutine projection_init (this, n, L, activ_step)
 
subroutine projection_free (this)
 
subroutine projection_pre_solving (this, b, tstep, coef, n, dt_controller, string)
 
subroutine projection_post_solving (this, x, Ax, coef, bclst, gs_h, n, tstep, dt_controller)
 
subroutine bcknd_project_on (this, b, coef, n)
 
subroutine bcknd_project_back (this, x, Ax, coef, bclst, gs_h, n)
 
subroutine cpu_project_on (this, b, coef, n)
 
subroutine device_project_on (this, b, coef, n)
 
subroutine device_proj_ortho (this, xx_d, bb_d, w_d, n)
 
subroutine cpu_proj_ortho (this, xx, bb, w, n)
 
subroutine print_proj_info (this, string)
 
subroutine bcknd_clear (this, n)
 

Detailed Description

Note
In this code we assume that the matrix project for the pressure Ax does not vary in time.

Function/Subroutine Documentation

◆ bcknd_clear()

subroutine projection::bcknd_clear ( class(projection_t this,
integer, intent(in)  n 
)
private

Definition at line 681 of file projection.f90.

◆ bcknd_project_back()

subroutine projection::bcknd_project_back ( class(projection_t this,
real(kind=rp), dimension(n), intent(inout)  x,
class(ax_t), intent(inout)  Ax,
class(coef_t), intent(inout)  coef,
class(bc_list_t), intent(inout)  bclst,
type(gs_t), intent(inout)  gs_h,
integer, intent(inout)  n 
)
private

Definition at line 287 of file projection.f90.

Here is the call graph for this function:

◆ bcknd_project_on()

subroutine projection::bcknd_project_on ( class(projection_t), intent(inout)  this,
real(kind=rp), dimension(n), intent(inout)  b,
class(coef_t), intent(inout)  coef,
integer, intent(inout)  n 
)
private

Definition at line 273 of file projection.f90.

Here is the call graph for this function:

◆ cpu_proj_ortho()

subroutine projection::cpu_proj_ortho ( type(projection_t this,
real(kind=rp), dimension(n, this%l), intent(inout)  xx,
real(kind=rp), dimension(n, this%l), intent(inout)  bb,
real(kind=rp), dimension(n), intent(inout)  w,
integer, intent(inout)  n 
)
private

Definition at line 557 of file projection.f90.

Here is the caller graph for this function:

◆ cpu_project_on()

subroutine projection::cpu_project_on ( class(projection_t), intent(inout)  this,
real(kind=rp), dimension(n), intent(inout)  b,
class(coef_t), intent(inout)  coef,
integer, intent(inout)  n 
)
private

Definition at line 335 of file projection.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ device_proj_ortho()

subroutine projection::device_proj_ortho ( type(projection_t this,
type(c_ptr), dimension(this%l)  xx_d,
type(c_ptr), dimension(this%l)  bb_d,
type(c_ptr)  w_d,
integer, intent(inout)  n 
)
private

Definition at line 478 of file projection.f90.

Here is the caller graph for this function:

◆ device_project_on()

subroutine projection::device_project_on ( class(projection_t), intent(inout)  this,
real(kind=rp), dimension(n), intent(inout)  b,
class(coef_t), intent(inout)  coef,
integer, intent(inout)  n 
)
private

Definition at line 406 of file projection.f90.

Here is the caller graph for this function:

◆ print_proj_info()

subroutine projection::print_proj_info ( class(projection_t this,
character(len=*)  string 
)
private

Definition at line 665 of file projection.f90.

◆ projection_free()

subroutine projection::projection_free ( class(projection_t), intent(inout)  this)
private

Definition at line 181 of file projection.f90.

Here is the call graph for this function:

◆ projection_init()

subroutine projection::projection_init ( class(projection_t), intent(inout), target  this,
integer, intent(in)  n,
integer, intent(in), optional  L,
integer, intent(in), optional  activ_step 
)

Definition at line 115 of file projection.f90.

Here is the call graph for this function:

◆ projection_post_solving()

subroutine projection::projection_post_solving ( class(projection_t), intent(inout)  this,
real(kind=rp), dimension(n), intent(inout)  x,
class(ax_t), intent(inout)  Ax,
class(coef_t), intent(inout)  coef,
class(bc_list_t), intent(inout)  bclst,
type(gs_t), intent(inout)  gs_h,
integer, intent(inout)  n,
integer, intent(in)  tstep,
type(time_step_controller_t), intent(in)  dt_controller 
)
private

Definition at line 253 of file projection.f90.

◆ projection_pre_solving()

subroutine projection::projection_pre_solving ( class(projection_t), intent(inout)  this,
real(kind=rp), dimension(n), intent(inout)  b,
integer, intent(in)  tstep,
class(coef_t), intent(inout)  coef,
integer, intent(inout)  n,
type(time_step_controller_t), intent(in)  dt_controller,
character(len=*), optional  string 
)
private

Definition at line 222 of file projection.f90.