0.6.0
Loading...
Searching...
No Matches
type_stencil Module Reference

Enumeration modules associated to implicit discretization of PDE Declaration of types associated to different discretization stencils. More...

Data Types

type  t_base_stencil
 Stencil. More...
 
type  t_cell_stencil
 Stencil for cell-based schemes. More...
 
type  t_face_stencil
 Stencil for face-based schemes. More...
 
type  t_serialized_stencil
 Container for the serialized stencil. More...
 
type  t_stencil_type
 Stencil type. More...
 

Variables

Predefined stencil types.
type(t_stencil_type), parameter, public stencil_1_star = t_stencil_type(1, 0, 0)
 
type(t_stencil_type), parameter, public stencil_2_star = t_stencil_type(2, 0, 0)
 
type(t_stencil_type), parameter, public stencil_1_square = t_stencil_type(1, 1, 1)
 
type(t_stencil_type), parameter, public stencil_2_square = t_stencil_type(2, 2, 2)
 

correspond to the real coordinates on the given grid.

For instance, o_uv(l)i corresponds the i coordinate of the _v grid.

integer, parameter, public cell_location = 0
 
integer, parameter, public face_location_u = 1
 
integer, parameter, public face_location_v = 2
 
integer, parameter, public face_location_w = 3
 
integer, parameter, public stencil_unassigned = -1
 Dummy value for unassigned stencils points.
 
subroutine, public set_cell_stencil_indices (stencil, stencil_type)
 Set the stencil to given type, adapted to cell-based schemes.
 
subroutine, public set_face_stencil_indices (stencil, stencil_type)
 Set the stencil to given type, adapted to face-based schemes.
 
character(len=8) function, public get_stencil_name (stencil)
 Return a name for predefined stencils.
 
pure type(t_stencil_type) function, public get_largest_stencil_type (stencil_type_1, stencil_type_2)
 Return a Stencil Type that can handle both stencils.
 
type(t_stencil_type) function, public exchange_stencil_type (stencil_type_local)
 Set the same Stencil Type on all processes.
 
pure subroutine serialize_cell_stencil (stencil)
 
pure subroutine serialize_face_stencil (stencil)
 
pure subroutine one_direction (ns, x, s_xu, s_xv, s_xw)
 
pure subroutine one_direction_to_one_direction (ns, x, direction, s)
 
pure subroutine generate_connectivities (stencil)
 
subroutine shift_offsets (stencil)
 

Detailed Description

Enumeration modules associated to implicit discretization of PDE Declaration of types associated to different discretization stencils.

Function/Subroutine Documentation

◆ exchange_stencil_type()

type(t_stencil_type) function, public type_stencil::exchange_stencil_type ( type(t_stencil_type), intent(in) stencil_type_local)

Set the same Stencil Type on all processes.

◆ generate_connectivities()

pure subroutine type_stencil::generate_connectivities ( type(t_face_stencil), intent(inout) stencil)
private

◆ get_largest_stencil_type()

pure type(t_stencil_type) function, public type_stencil::get_largest_stencil_type ( type(t_stencil_type), intent(in) stencil_type_1,
type(t_stencil_type), intent(in) stencil_type_2 )

Return a Stencil Type that can handle both stencils.

◆ get_stencil_name()

character(len=8) function, public type_stencil::get_stencil_name ( type(t_stencil_type), intent(in) stencil)

Return a name for predefined stencils.

◆ one_direction()

pure subroutine type_stencil::one_direction ( integer, intent(in) ns,
integer, dimension(-ns:ns,-ns:ns,-ns:ns,3), intent(in) x,
type(t_serialized_stencil), dimension(:), intent(out), allocatable s_xu,
type(t_serialized_stencil), dimension(:), intent(out), allocatable s_xv,
type(t_serialized_stencil), dimension(:), intent(out), allocatable s_xw )
private

◆ one_direction_to_one_direction()

pure subroutine type_stencil::one_direction_to_one_direction ( integer, intent(in) ns,
integer, dimension(-ns:ns,-ns:ns,-ns:ns,3), intent(in) x,
integer, intent(in) direction,
type(t_serialized_stencil), dimension(:), intent(out), allocatable s )
private

◆ serialize_cell_stencil()

pure subroutine type_stencil::serialize_cell_stencil ( type(t_cell_stencil), intent(inout) stencil)
private

◆ serialize_face_stencil()

pure subroutine type_stencil::serialize_face_stencil ( type(t_face_stencil), intent(inout) stencil)
private

◆ set_cell_stencil_indices()

subroutine, public type_stencil::set_cell_stencil_indices ( type(t_cell_stencil), intent(out) stencil,
type(t_stencil_type), intent(in) stencil_type )

Set the stencil to given type, adapted to cell-based schemes.

◆ set_face_stencil_indices()

subroutine, public type_stencil::set_face_stencil_indices ( type(t_face_stencil), intent(out) stencil,
type(t_stencil_type), intent(in) stencil_type )

Set the stencil to given type, adapted to face-based schemes.

◆ shift_offsets()

subroutine type_stencil::shift_offsets ( type(t_face_stencil), intent(inout) stencil)
private

Variable Documentation

◆ cell_location

integer, parameter, public type_stencil::cell_location = 0

◆ face_location_u

integer, parameter, public type_stencil::face_location_u = 1

◆ face_location_v

integer, parameter, public type_stencil::face_location_v = 2

◆ face_location_w

integer, parameter, public type_stencil::face_location_w = 3

◆ stencil_1_square

type(t_stencil_type), parameter, public type_stencil::stencil_1_square = t_stencil_type(1, 1, 1)

◆ stencil_1_star

type(t_stencil_type), parameter, public type_stencil::stencil_1_star = t_stencil_type(1, 0, 0)

◆ stencil_2_square

type(t_stencil_type), parameter, public type_stencil::stencil_2_square = t_stencil_type(2, 2, 2)

◆ stencil_2_star

type(t_stencil_type), parameter, public type_stencil::stencil_2_star = t_stencil_type(2, 0, 0)

◆ stencil_unassigned

integer, parameter, public type_stencil::stencil_unassigned = -1

Dummy value for unassigned stencils points.