modg_semiRefineElem_2d Subroutine

private subroutine modg_semiRefineElem_2d(modalRepFace, modg_basis, schemeCoarse, schemeFine, refineDir, fineElemShift, modalRefined)

Subroutine to semi-refine an element with modal polynomial representation into its semi-children.

Arguments

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

Modal representation of a function on the non-refined face. Dimensions are: (modg%maxPolyDegree+1)^2 for the first dimension and nScalars for the second dimension.

type(ply_modg_basis_type) :: modg_basis

Informations about the polynomial basis of the MODG scheme.

type(atl_modg_2d_scheme_type), intent(in) :: schemeCoarse

The parameters of your MODG scheme on the coarse level.

type(atl_modg_2d_scheme_type), intent(in) :: schemeFine

The parameters of your MODG scheme on the fine level.

integer, intent(in) :: refineDir

The direction of the semi-refinement. Either 1 or 2. Have a look at the function description.

integer, intent(in) :: fineElemShift

The semi-refined element you want to obtain.

real(kind=rk), intent(inout) :: modalRefined(:,:)

The modal representation of modalRepFace restricted to the semi-refined element.


Called by

proc~~modg_semirefineelem_2d~~CalledByGraph proc~modg_semirefineelem_2d modg_semiRefineElem_2d proc~atl_modg_coarsetofineelem_2d atl_modg_coarseToFineElem_2d proc~atl_modg_coarsetofineelem_2d->proc~modg_semirefineelem_2d proc~atl_interpolate_elemstate atl_interpolate_elemstate proc~atl_interpolate_elemstate->proc~atl_modg_coarsetofineelem_2d proc~atl_interpolate_elemstate->proc~atl_interpolate_elemstate proc~atl_covolume_tocovolume atl_covolume_tocovolume proc~atl_covolume_tocovolume->proc~atl_interpolate_elemstate proc~atl_covolume_tocovolume_1d atl_covolume_tocovolume_1d proc~atl_covolume_tocovolume_1d->proc~atl_interpolate_elemstate proc~atl_covolume_tocovolume_2d atl_covolume_tocovolume_2d proc~atl_covolume_tocovolume_2d->proc~atl_interpolate_elemstate proc~atl_covolume_1d atl_covolume_1d proc~atl_covolume_1d->proc~atl_covolume_tocovolume_1d proc~atl_covolume_2d atl_covolume_2d proc~atl_covolume_2d->proc~atl_covolume_tocovolume_2d proc~atl_covolume atl_covolume proc~atl_covolume->proc~atl_covolume_tocovolume

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: iDegX
integer, private :: iDegY
integer, private :: iCoarseFunc
integer, private :: dof
integer, private :: coarsePos
real(kind=rk), private :: fineSqNorm
integer, private :: mpd1
integer, private :: mpd1_square