modg_2d_semiRefineFace Subroutine

private subroutine modg_2d_semiRefineFace(modalRepFace, modg_basis, schemeCoarse, schemeFine, refineDir, fineFaceShift, modalRefined)

that is refined in one of the spatial directions.

Project modal representation on a face to a semi-refined face (i.e. on a face that is refined in one of the spatial directions. The result is a modal representation on the semi-refined element. \n \n The function is executing one of the following projections: \n

  face on current                      semi-refined                            \n
       level                               face                                \n

------------------------ ------------------------ \n | | | | | \n | | refineDir | | | \n | | == 1 | fineFace | fineFace | \n | | -------->> | Shift | Shift | \n | | | == 1 | == 2 | \n | | | | | \n | | | | | \n ------------------------ ------------------------ \n

or:

------------------------ ------------------------ \n | | | | \n | | refineDir | fineFaceShift | \n | | == 2 | == 2 | \n | | -------->> ------------------------ \n | | | | \n | | | fineFaceShift | \n | | | == 1 | \n ------------------------ ------------------------ \n

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) :: fineFaceShift

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_2d_semirefineface~~CalledByGraph proc~modg_2d_semirefineface modg_2d_semiRefineFace proc~atl_modg_2d_coarsetofineface atl_modg_2d_coarseToFineFace proc~atl_modg_2d_coarsetofineface->proc~modg_2d_semirefineface proc~preprocess_rhs_cubes preprocess_rhs_cubes proc~preprocess_rhs_cubes->proc~atl_modg_2d_coarsetofineface interface~atl_preprocess_rhs atl_preprocess_rhs interface~atl_preprocess_rhs->proc~preprocess_rhs_cubes proc~rktaylor_substep rktaylor_substep proc~rktaylor_substep->interface~atl_preprocess_rhs proc~rk2_substep rk2_substep proc~rk2_substep->interface~atl_preprocess_rhs proc~rk4_substep rk4_substep proc~rk4_substep->interface~atl_preprocess_rhs proc~imexrk_substep imexrk_substep proc~imexrk_substep->interface~atl_preprocess_rhs proc~mesh_timestep_euler mesh_timestep_euler proc~mesh_timestep_euler->interface~atl_preprocess_rhs proc~global_corrector_substep global_corrector_substep proc~global_corrector_substep->interface~atl_preprocess_rhs

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: iFunc
integer, private :: iCoarseFunc
integer, private :: comFunc
integer, private :: funcPos
integer, private :: coarsePos
real(kind=rk), private :: fineSqNorm