modg_semiCoarseElem_1d Subroutine

private subroutine modg_semiCoarseElem_1d(modalRepFace, modg_basis, schemeCoarse, schemeFine, fineElemShift, modalCoarsed)

Subroutine to semi-coarsen an element with modal polynomial representation to its semi-parent.

Arguments

Type IntentOptional Attributes Name
real(kind=rk), intent(in) :: modalRepFace(:,:)

Modal representation of a function on one of refined element. Which fine element is determined by fineFaceShift Dimensions are: (modg%maxPolyDegree+1)^3 for the first dimension and nScalars for the second dimension.

type(ply_modg_basis_type), intent(in) :: modg_basis

The polynomial basis for the current level of the modg scheme

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

The parameters of your MODG scheme on the coarse level.

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

The parameters of your MODG scheme on the fint level.

integer, intent(in) :: fineElemShift

The semi-refined element you want to obtain.

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

The modal representation of modalRepFace on the coarser element, restricted to the given fine element.


Called by

proc~~modg_semicoarseelem_1d~~CalledByGraph proc~modg_semicoarseelem_1d modg_semiCoarseElem_1d proc~atl_modg_finetocoarseelem_1d atl_modg_fineToCoarseElem_1d proc~atl_modg_finetocoarseelem_1d->proc~modg_semicoarseelem_1d proc~atl_interpolate_elemstate atl_interpolate_elemstate proc~atl_interpolate_elemstate->proc~atl_modg_finetocoarseelem_1d 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 atl_covolume proc~atl_covolume->proc~atl_covolume_tocovolume 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