modg_2d_modal_bnd Subroutine

private subroutine modg_2d_modal_bnd(bc, faceOp, poly_proj, equation, normalRot, time, currentFace, currentLevel, nquadpoints, ndofs, oversamp_dofs, modalFace, faceMaterial)

Set boundary values in a modal way

usually generic call to convertFromOversample

Arguments

TypeIntentOptionalAttributesName
type(atl_boundary_type), intent(in) :: bc

The boundary condition to generate the modal representation for.

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

The modal representation on the face of the neighboring element.

type(ply_poly_project_type), intent(inout) :: poly_proj

The parameters for projection method.

type(atl_Equations_type), intent(in) :: equation

The equation system you use.

type(coordRotation_type), intent(in) :: normalRot

Rotation indices to rotate global coordinate system into face normal coordinate system.

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

The absolute time point.

integer, intent(in) :: currentFace

Current Face to compute

integer, intent(in) :: currentLevel

the level to compute on

integer, intent(in) :: nquadpoints

integers for allocation of temp arrays, depend on number of quadrature points and for modal values number of dofs

integer, intent(in) :: ndofs

integers for allocation of temp arrays, depend on number of quadrature points and for modal values number of dofs

integer, intent(in) :: oversamp_dofs

integers for allocation of temp arrays, depend on number of quadrature points and for modal values number of dofs

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

result of the bnd routine, modal coefficent on the boundary faces

real(kind=rk), intent(in), optional :: faceMaterial(:,:)

The material of the boundary face. First dimension is the number of points on the face. Second dimension is the number of material parameters.


Calls

proc~~modg_2d_modal_bnd~~CallsGraph proc~modg_2d_modal_bnd modg_2d_modal_bnd proc~modg_2d_bnd_mirrorpoint modg_2d_bnd_mirrorPoint proc~modg_2d_modal_bnd->proc~modg_2d_bnd_mirrorpoint proc~tem_abort tem_abort proc~modg_2d_modal_bnd->proc~tem_abort proc~modg_2d_bnd_extrapolate modg_2d_bnd_extrapolate proc~modg_2d_modal_bnd->proc~modg_2d_bnd_extrapolate interface~ply_poly_project_n2m ply_poly_project_n2m proc~modg_2d_modal_bnd->interface~ply_poly_project_n2m proc~tem_starttimer tem_startTimer proc~modg_2d_bnd_mirrorpoint->proc~tem_starttimer proc~tem_stoptimer tem_stopTimer proc~modg_2d_bnd_mirrorpoint->proc~tem_stoptimer proc~ply_poly_project_n2m_multivar ply_poly_project_n2m_multiVar interface~ply_poly_project_n2m->proc~ply_poly_project_n2m_multivar proc~ply_fxt_n2m_1d ply_fxt_n2m_1D proc~ply_poly_project_n2m_multivar->proc~ply_fxt_n2m_1d interface~ply_pnttoleg_2d ply_pntToLeg_2D proc~ply_poly_project_n2m_multivar->interface~ply_pnttoleg_2d proc~ply_l2p_trafo_2d ply_l2p_trafo_2D proc~ply_poly_project_n2m_multivar->proc~ply_l2p_trafo_2d proc~ply_fxt_n2m_3d ply_fxt_n2m_3D proc~ply_poly_project_n2m_multivar->proc~ply_fxt_n2m_3d proc~ply_fxt_n2m_2d ply_fxt_n2m_2D proc~ply_poly_project_n2m_multivar->proc~ply_fxt_n2m_2d proc~ply_l2p_trafo_1d ply_l2p_trafo_1D proc~ply_poly_project_n2m_multivar->proc~ply_l2p_trafo_1d proc~ply_l2p_trafo_3d ply_l2p_trafo_3D proc~ply_poly_project_n2m_multivar->proc~ply_l2p_trafo_3d interface~ply_pnttoleg_3d ply_pntToLeg_3D proc~ply_poly_project_n2m_multivar->interface~ply_pnttoleg_3d fxtf_flptld_n2m fxtf_flptld_n2m proc~ply_fxt_n2m_1d->fxtf_flptld_n2m proc~ply_pnttoleg_2d_multvar ply_pntToLeg_2D_multVar interface~ply_pnttoleg_2d->proc~ply_pnttoleg_2d_multvar proc~ply_pnttoleg_2d_singvar ply_pntToLeg_2D_singVar interface~ply_pnttoleg_2d->proc~ply_pnttoleg_2d_singvar proc~ply_l2_projection ply_l2_projection proc~ply_l2p_trafo_2d->proc~ply_l2_projection proc~ply_fxt_n2m_3d->fxtf_flptld_n2m proc~ply_fxt_n2m_2d->fxtf_flptld_n2m proc~ply_l2p_trafo_1d->proc~ply_l2_projection proc~ply_l2p_trafo_3d->proc~ply_l2_projection proc~ply_pnttoleg_3d_singvar ply_pntToLeg_3D_singVar interface~ply_pnttoleg_3d->proc~ply_pnttoleg_3d_singvar proc~ply_pnttoleg_3d_multvar ply_pntToLeg_3D_multVar interface~ply_pnttoleg_3d->proc~ply_pnttoleg_3d_multvar

Called by

proc~~modg_2d_modal_bnd~~CalledByGraph proc~modg_2d_modal_bnd modg_2d_modal_bnd proc~atl_modg_2d_bnd atl_modg_2d_bnd proc~atl_modg_2d_bnd->proc~modg_2d_modal_bnd proc~atl_set_covolume_bnd atl_set_covolume_bnd proc~atl_set_covolume_bnd->proc~atl_modg_2d_bnd proc~atl_modg_2d_set_bnd atl_modg_2d_set_bnd proc~atl_modg_2d_set_bnd->proc~atl_modg_2d_bnd proc~preprocess_rhs_cubes preprocess_rhs_cubes proc~preprocess_rhs_cubes->proc~atl_modg_2d_set_bnd proc~atl_interpolate_elemstate atl_interpolate_elemstate proc~atl_interpolate_elemstate->proc~atl_set_covolume_bnd 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 interface~atl_preprocess_rhs atl_preprocess_rhs interface~atl_preprocess_rhs->proc~preprocess_rhs_cubes proc~atl_covolume_tocovolume_2d atl_covolume_tocovolume_2d proc~atl_covolume_tocovolume_2d->proc~atl_interpolate_elemstate

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: iBcVar
integer, private :: bcIndex
integer, private :: iDeg
integer, private :: iter
real(kind=rk), private, allocatable:: pointFace(:,:)
real(kind=rk), private, allocatable:: tmpModal(:,:)
type(tem_st_fun_listElem_type), private, pointer:: fPtr