ply_subresolution_module Module


Uses


Contents


Derived Types

type, public :: ply_subresolution_type

Components

TypeVisibilityAttributesNameInitial
integer, private :: polydegree =0
integer, private :: basisType
type(tem_subres_prop_type), private :: subres_prop

type, public :: ply_subres_colvar_type

Self contained description of color data to be used for method data.

Components

TypeVisibilityAttributesNameInitial
type(tem_color_prop_type), private, pointer:: color=> NULL()

Pointer to the overall color property description.

type(ply_subresolution_type), private, pointer:: subres=> NULL()

Pointer to the overall subresolution property description.

real(kind=rk), private, allocatable:: subresdat(:,:)

Degrees of freedom for subresolved elements.

integer, private :: nsubdofs

Number of degrees of freedom of the subresolution data.

integer, private :: colpos

Position of this color in the list of colors, needed to make use of the pointers above.


Subroutines

public subroutine ply_subresolution_load(me, tree, proc, coloring)

Subroutine to load subresolution information for a given tree.

Arguments

TypeIntentOptionalAttributesName
type(ply_subresolution_type), intent(out) :: me
type(treelmesh_type), intent(in) :: tree
type(tem_comm_env_type), intent(in) :: proc
type(tem_color_prop_type), intent(in) :: coloring

public subroutine ply_subres_import_color(me, tree, coloring, iColor, target_degree, target_space, target_dim, subresdat)

Get the subresolution data for all elements for a given color and in the requested format.

Arguments

TypeIntentOptionalAttributesName
type(ply_subresolution_type), intent(in) :: me
type(treelmesh_type), intent(in) :: tree
type(tem_color_prop_type), intent(in) :: coloring
integer, intent(in) :: iColor
integer, intent(in) :: target_degree
integer, intent(in) :: target_space
integer, intent(in) :: target_dim
real(kind=rk), intent(out), allocatable:: subresdat(:,:)

public subroutine ply_subres_get_elemcolor(fun, varSys, elempos, time, tree, nElems, nDofs, res)

Get the color of an element.

Read more…

Arguments

TypeIntentOptionalAttributesName
class(tem_varSys_op_type), intent(in) :: fun

Description of the method to obtain the variables, here some preset values might be stored, like the space time function to use or the required variables.

type(tem_varSys_type), intent(in) :: varSys

The variable system to obtain the variable from.

integer, intent(in) :: elempos(:)

TreeID of the element to get the variable for.

type(tem_time_type), intent(in) :: time

Point in time at which to evaluate the variable.

type(treelmesh_type), intent(in) :: tree

global treelm mesh info

integer, intent(in) :: nElems

Number of elements to obtain for this variable (vectorized access).

integer, intent(in) :: nDofs

Number of degrees of freedom within an element.

real(kind=rk), intent(out) :: res(:)

Resulting values for the requested variable.

Linearized array dimension: (nComponents of resulting variable) x (nDegrees of freedom) x (nElems) Access: (iElem-1)fun%nComponentsnDofs + (iDof-1)*fun%nComponents + iComp