ply_transfer_module Module

This module provides routines to transfer degrees of freedom from one polynomial representation to another.

These routines allow the copying of data from one order and polynomial space into another.


Uses

  • module~~ply_transfer_module~~UsesGraph module~ply_transfer_module ply_transfer_module module~env_module env_module module~ply_transfer_module->module~env_module module~ply_dof_module ply_dof_module module~ply_transfer_module->module~ply_dof_module module~ply_dof_module->module~env_module

Used by

  • module~~ply_transfer_module~~UsedByGraph module~ply_transfer_module ply_transfer_module module~ply_subresolution_module ply_subresolution_module module~ply_subresolution_module->module~ply_transfer_module module~atl_restart_module atl_restart_module module~atl_restart_module->module~ply_transfer_module module~atl_program_module atl_program_module module~atl_program_module->module~atl_restart_module module~atl_initialize_module atl_initialize_module module~atl_program_module->module~atl_initialize_module program~atl_harvesting atl_harvesting program~atl_harvesting->module~atl_restart_module program~atl_harvesting->module~atl_program_module program~atl_harvesting->module~atl_initialize_module module~atl_initialize_module->module~atl_restart_module program~ateles ateles program~ateles->module~atl_program_module

Contents


Subroutines

public subroutine ply_transfer_dofs_1D(indat, indegree, outdat, outdegree)

Transfer of degrees of freedom from one polynomial to another in 1D.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: indat(:)

Input data to transfer to output data.

integer, intent(in) :: indegree

Degree of the input polynomial. There are indegree+1 modes expected in indat.

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

Output data to fill with input data.

integer, intent(in) :: outdegree

Degree of the output polynomial. There are outdegree+1 modes expected in outdat.

public subroutine ply_transfer_dofs_2D(indat, inspace, indegree, outdat, outspace, outdegree)

Transfer of degrees of freedom from one polynomial to another in 2D.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: indat(:)

Input data to transfer to output data.

integer, intent(in) :: inspace

Multi-dimensional polynomial layout of the input data.

Has to be either Q_space or P_space.

integer, intent(in) :: indegree

Maximal polynomial degree in the input data.

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

Output data to fill with input data.

integer, intent(in) :: outspace

Multi-dimensional polynomial layout of the output data.

Has to be either Q_space or P_space.

integer, intent(in) :: outdegree

Maximal polynomial degree in the output data.

public subroutine ply_transfer_dofs_3D(indat, inspace, indegree, outdat, outspace, outdegree)

Transfer of degrees of freedom from one polynomial to another in 3D.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: indat(:)

Input data to transfer to output data.

integer, intent(in) :: inspace

Multi-dimensional polynomial layout of the input data.

Has to be either Q_space or P_space.

integer, intent(in) :: indegree

Maximal polynomial degree in the input data.

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

Output data to fill with input data.

integer, intent(in) :: outspace

Multi-dimensional polynomial layout of the output data.

Has to be either Q_space or P_space.

integer, intent(in) :: outdegree

Maximal polynomial degree in the output data.

public subroutine ply_transfer_dofs(indat, inspace, indegree, outdat, outspace, outdegree, ndims)

Small helping routine to wrap transfers in all allowed dimensions.

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: indat(:)

Input data to transfer to output data.

integer, intent(in) :: inspace

Multi-dimensional polynomial layout of the input data.

Has to be either Q_space or P_space.

integer, intent(in) :: indegree

Maximal polynomial degree in the input data.

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

Output data to fill with input data.

integer, intent(in) :: outspace

Multi-dimensional polynomial layout of the output data.

Has to be either Q_space or P_space.

integer, intent(in) :: outdegree

Maximal polynomial degree in the output data.

integer, intent(in) :: ndims

Number of dimensions in the polynomials to transfer

public subroutine ply_transfer_P_dim(indat, indim, outdat, outdim, degree)

Transfer the polynomial in P representation from on dimension to another one.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: indat(:)

Input data to transfer to output data.

integer, intent(in) :: indim

Dimension of the input polynomial.

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

Output data to fill with input data.

integer, intent(in) :: outdim

Dimension of the output polynomial.

integer, intent(in) :: degree

Maximal polynomial degree in the output data.