MPI-AMRVAC  2.2
The MPI - Adaptive Mesh Refinement - Versatile Advection Code
Data Types | Modules | Functions/Subroutines | Variables
mod_ghostcells_update.t File Reference

Go to the source code of this file.

Data Types

type  mod_ghostcells_update::wbuffer
 

Modules

module  mod_ghostcells_update
 update ghost cells of all blocks including physical boundaries
 

Functions/Subroutines

subroutine mod_ghostcells_update::init_bc ()
 
subroutine mod_ghostcells_update::create_bc_mpi_datatype (nwstart, nwbc)
 
subroutine mod_ghostcells_update::get_bc_comm_type (comm_type, ixL, ixGL, nwstart, nwbc)
 
subroutine mod_ghostcells_update::put_bc_comm_types ()
 
subroutine mod_ghostcells_update::getbc (time, qdt, psb, nwstart, nwbc, req_diag)
 do update ghost cells of all blocks including physical boundaries More...
 
logical function skip_direction (dir)
 
subroutine bc_recv_srl
 Receive from sibling at same refinement level. More...
 
subroutine bc_recv_restrict
 Receive from fine neighbor. More...
 
subroutine bc_send_srl
 Send to sibling at same refinement level. More...
 
subroutine bc_send_restrict
 Send to coarser neighbor. More...
 
subroutine bc_fill_srl
 fill siblings ghost cells with received data More...
 
subroutine indices_for_syncing (idir, iD, ixRL, ixSL, ixRsyncL, ixSsyncL)
 
subroutine bc_fill_r
 fill restricted ghost cells after receipt More...
 
subroutine bc_recv_prolong
 Receive from coarse neighbor. More...
 
subroutine bc_send_prolong
 Send to finer neighbor. More...
 
subroutine bc_fill_p
 fill coarser representative with data from coarser neighbors More...
 
subroutine bc_prolong
 do prolongation for fine blocks after receipt data from coarse neighbors More...
 
subroutine bc_prolong_stg (NeedProlong)
 
subroutine interpolation_linear (ixFiL, dxFiD, xFiminD, dxCoD, invdxCoD, xCominD)
 
subroutine interpolation_copy (ixFiL, dxFiD, xFiminD, dxCoD, invdxCoD, xCominD)
 
subroutine pole_copy (wrecv, ixIRL, ixRL, wsend, ixISL, ixSL)
 
subroutine pole_copy_stg (wrecv, ixRL, wsend, ixSL, idirs)
 
subroutine pole_buffer (wrecv, ixIRL, ixRL, wsend, ixISL, ixSL)
 
subroutine fix_auxiliary
 
subroutine mod_ghostcells_update::identifyphysbound (s, iibD)
 

Variables

logical, public mod_ghostcells_update::bcphys =.true.
 
integer mod_ghostcells_update::ixm
 
integer, dimension(^nd, 0:3) mod_ghostcells_update::l
 
integer mod_ghostcells_update::ixcog
 
integer mod_ghostcells_update::ixcom
 
integer, parameter mod_ghostcells_update::npwbuf =2
 
integer, dimension(-1:2,-1:1) mod_ghostcells_update::ixs_srl_
 
integer, dimension(-1:2,-1:1) mod_ghostcells_update::ixr_srl_
 
integer, dimension(^nd,-1:1) mod_ghostcells_update::ixs_srl_stg_
 
integer, dimension(^nd,-1:1) mod_ghostcells_update::ixr_srl_stg_
 
integer, dimension(-1:1,-1:1) mod_ghostcells_update::ixs_r_
 
integer, dimension(^nd,-1:1) mod_ghostcells_update::ixs_r_stg_
 
integer, dimension(-1:1, 0:3) mod_ghostcells_update::ixr_r_
 
integer, dimension(^nd, 0:3) mod_ghostcells_update::ixr_r_stg_
 
integer, dimension(-1:1, 0:3) mod_ghostcells_update::ixs_p_
 
integer, dimension(-1:1, 0:3) mod_ghostcells_update::ixr_p_
 
integer, dimension(^nd, 0:3) mod_ghostcells_update::ixs_p_stg_
 
integer, dimension(^nd, 0:3) mod_ghostcells_update::ixr_p_stg_
 
integer mod_ghostcells_update::nrecv_bc_srl
 
integer mod_ghostcells_update::nsend_bc_srl
 
integer mod_ghostcells_update::nrecv_bc_r
 
integer mod_ghostcells_update::nsend_bc_r
 
integer mod_ghostcells_update::nrecv_bc_p
 
integer mod_ghostcells_update::nsend_bc_p
 
integer mod_ghostcells_update::ibuf_send_srl
 
integer mod_ghostcells_update::ibuf_recv_srl
 
integer mod_ghostcells_update::ibuf_send_r
 
integer mod_ghostcells_update::ibuf_recv_r
 
integer mod_ghostcells_update::ibuf_send_p
 
integer mod_ghostcells_update::ibuf_recv_p
 
integer mod_ghostcells_update::isend_srl
 
integer mod_ghostcells_update::irecv_srl
 
integer mod_ghostcells_update::isend_r
 
integer mod_ghostcells_update::irecv_r
 
integer mod_ghostcells_update::isend_p
 
integer mod_ghostcells_update::irecv_p
 
integer mod_ghostcells_update::isend_c
 
integer mod_ghostcells_update::irecv_c
 
integer, dimension(-1:1^d &) mod_ghostcells_update::sizes_srl_send_total
 
integer, dimension(-1:1^d &) mod_ghostcells_update::sizes_srl_recv_total
 
integer, dimension(:), allocatable mod_ghostcells_update::recvrequest_c_sr
 
integer, dimension(:), allocatable mod_ghostcells_update::sendrequest_c_sr
 
integer, dimension(:,:), allocatable mod_ghostcells_update::recvstatus_c_sr
 
integer, dimension(:,:), allocatable mod_ghostcells_update::sendstatus_c_sr
 
integer, dimension(:), allocatable mod_ghostcells_update::recvrequest_c_p
 
integer, dimension(:), allocatable mod_ghostcells_update::sendrequest_c_p
 
integer, dimension(:,:), allocatable mod_ghostcells_update::recvstatus_c_p
 
integer, dimension(:,:), allocatable mod_ghostcells_update::sendstatus_c_p
 
integer, dimension(^nd,-1:1^d &) mod_ghostcells_update::sizes_srl_send_stg
 
integer, dimension(^nd,-1:1^d &) mod_ghostcells_update::sizes_srl_recv_stg
 
integer, dimension(:), allocatable mod_ghostcells_update::recvrequest_srl
 
integer, dimension(:), allocatable mod_ghostcells_update::sendrequest_srl
 
integer, dimension(:,:), allocatable mod_ghostcells_update::recvstatus_srl
 
integer, dimension(:,:), allocatable mod_ghostcells_update::sendstatus_srl
 
double precision, dimension(:), allocatable mod_ghostcells_update::recvbuffer_srl
 
double precision, dimension(:), allocatable mod_ghostcells_update::sendbuffer_srl
 
integer, dimension(:), allocatable mod_ghostcells_update::recvrequest_r
 
integer, dimension(:), allocatable mod_ghostcells_update::sendrequest_r
 
integer, dimension(:,:), allocatable mod_ghostcells_update::recvstatus_r
 
integer, dimension(:,:), allocatable mod_ghostcells_update::sendstatus_r
 
double precision, dimension(:), allocatable mod_ghostcells_update::recvbuffer_r
 
double precision, dimension(:), allocatable mod_ghostcells_update::sendbuffer_r
 
integer, dimension(:), allocatable mod_ghostcells_update::recvrequest_p
 
integer, dimension(:), allocatable mod_ghostcells_update::sendrequest_p
 
integer, dimension(:,:), allocatable mod_ghostcells_update::recvstatus_p
 
integer, dimension(:,:), allocatable mod_ghostcells_update::sendstatus_p
 
double precision, dimension(:), allocatable mod_ghostcells_update::recvbuffer_p
 
double precision, dimension(:), allocatable mod_ghostcells_update::sendbuffer_p
 
integer, dimension(-1:1^d &) mod_ghostcells_update::sizes_r_send_total
 
integer, dimension(0:3^d &) mod_ghostcells_update::sizes_r_recv_total
 
integer, dimension(^nd,-1:1^d &) mod_ghostcells_update::sizes_r_send_stg
 
integer, dimension(^nd, 0:3^d &) mod_ghostcells_update::sizes_r_recv_stg
 
integer, dimension(0:3^d &) mod_ghostcells_update::sizes_p_send_total
 
integer, dimension(0:3^d &) mod_ghostcells_update::sizes_p_recv_total
 
integer, dimension(^nd, 0:3^d &) mod_ghostcells_update::sizes_p_send_stg
 
integer, dimension(^nd, 0:3^d &) mod_ghostcells_update::sizes_p_recv_stg
 
integer, dimension(-1:2^d &,-1:1^d &), target mod_ghostcells_update::type_send_srl_f
 
integer, dimension(-1:2^d &,-1:1^d &), target mod_ghostcells_update::type_recv_srl_f
 
integer, dimension(-1:1^d &,-1:1^d &), target mod_ghostcells_update::type_send_r_f
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_recv_r_f
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_send_p_f
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_recv_p_f
 
integer, dimension(-1:2^d &,-1:1^d &), target mod_ghostcells_update::type_send_srl_p1
 
integer, dimension(-1:2^d &,-1:1^d &), target mod_ghostcells_update::type_recv_srl_p1
 
integer, dimension(-1:1^d &,-1:1^d &), target mod_ghostcells_update::type_send_r_p1
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_recv_r_p1
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_send_p_p1
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_recv_p_p1
 
integer, dimension(-1:2^d &,-1:1^d &), target mod_ghostcells_update::type_send_srl_p2
 
integer, dimension(-1:2^d &,-1:1^d &), target mod_ghostcells_update::type_recv_srl_p2
 
integer, dimension(-1:1^d &,-1:1^d &), target mod_ghostcells_update::type_send_r_p2
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_recv_r_p2
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_send_p_p2
 
integer, dimension(-1:1^d &, 0:3^d &), target mod_ghostcells_update::type_recv_p_p2
 
integer, dimension(:^d &,:^d &), pointer mod_ghostcells_update::type_send_srl
 
integer, dimension(:^d &,:^d &), pointer mod_ghostcells_update::type_recv_srl
 
integer, dimension(:^d &,:^d &), pointer mod_ghostcells_update::type_send_r
 
integer, dimension(:^d &,:^d &), pointer mod_ghostcells_update::type_recv_r
 
integer, dimension(:^d &,:^d &), pointer mod_ghostcells_update::type_send_p
 
integer, dimension(:^d &,:^d &), pointer mod_ghostcells_update::type_recv_p
 

Function/Subroutine Documentation

◆ bc_fill_p()

subroutine getbc::bc_fill_p ( )

fill coarser representative with data from coarser neighbors

Definition at line 1313 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ bc_fill_r()

subroutine getbc::bc_fill_r ( )

fill restricted ghost cells after receipt

Definition at line 1132 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ bc_fill_srl()

subroutine getbc::bc_fill_srl ( )

fill siblings ghost cells with received data

Definition at line 1029 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ bc_prolong()

subroutine getbc::bc_prolong ( )

do prolongation for fine blocks after receipt data from coarse neighbors

Definition at line 1371 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ bc_prolong_stg()

subroutine getbc::bc_prolong_stg ( logical, dimension(-1:1^d&)  NeedProlong)

Definition at line 1452 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ bc_recv_prolong()

subroutine getbc::bc_recv_prolong ( )

Receive from coarse neighbor.

Definition at line 1197 of file mod_ghostcells_update.t.

◆ bc_recv_restrict()

subroutine getbc::bc_recv_restrict ( )

Receive from fine neighbor.

Definition at line 807 of file mod_ghostcells_update.t.

◆ bc_recv_srl()

subroutine getbc::bc_recv_srl ( )

Receive from sibling at same refinement level.

Definition at line 788 of file mod_ghostcells_update.t.

◆ bc_send_prolong()

subroutine getbc::bc_send_prolong ( )

Send to finer neighbor.

Definition at line 1221 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ bc_send_restrict()

subroutine getbc::bc_send_restrict ( )

Send to coarser neighbor.

Definition at line 908 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ bc_send_srl()

subroutine getbc::bc_send_srl ( )

Send to sibling at same refinement level.

Definition at line 830 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ fix_auxiliary()

subroutine getbc::fix_auxiliary ( )

Definition at line 1736 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ indices_for_syncing()

subroutine getbc::indices_for_syncing ( integer, intent(in)  idir,
integer, intent(in)  i,
integer, intent(in)  D,
integer, intent(inout)  ixR,
integer, intent(out)  L,
integer, intent(inout)  ixS,
  L,
integer, intent(out)  ixRsync,
  L,
integer, intent(out)  ixSsync,
  L 
)

Definition at line 1103 of file mod_ghostcells_update.t.

◆ interpolation_copy()

subroutine getbc::interpolation_copy ( integer, intent(in)  ixFi,
integer, intent(in)  L,
double precision, intent(in)  dxFi,
double precision, intent(in)  D,
double precision, intent(in)  xFimin,
  D,
double precision, intent(in)  dxCo,
  D,
double precision, intent(in)  invdxCo,
  D,
double precision, intent(in)  xComin,
  D 
)

Definition at line 1631 of file mod_ghostcells_update.t.

◆ interpolation_linear()

subroutine getbc::interpolation_linear ( integer, intent(in)  ixFi,
integer, intent(in)  L,
double precision, intent(in)  dxFi,
double precision, intent(in)  D,
double precision, intent(in)  xFimin,
  D,
double precision, intent(in)  dxCo,
  D,
double precision, intent(in)  invdxCo,
  D,
double precision, intent(in)  xComin,
  D 
)

Definition at line 1492 of file mod_ghostcells_update.t.

◆ pole_buffer()

subroutine getbc::pole_buffer ( double precision, dimension(ixir^s,nwhead:nwtail)  wrecv,
integer, intent(in)  ixIR,
integer, intent(in)  L,
integer, intent(in)  ixR,
  L,
double precision, dimension(ixis^s,1:nw)  wsend,
integer, intent(in)  ixIS,
  L,
integer, intent(in)  ixS,
  L 
)

Definition at line 1711 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ pole_copy()

subroutine getbc::pole_copy ( double precision, dimension(ixir^s,1:nw)  wrecv,
integer, intent(in)  ixIR,
integer, intent(in)  L,
integer, intent(in)  ixR,
  L,
double precision, dimension(ixis^s,1:nw)  wsend,
integer, intent(in)  ixIS,
  L,
integer, intent(in)  ixS,
  L 
)

Definition at line 1664 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ pole_copy_stg()

subroutine getbc::pole_copy_stg ( double precision, dimension(ixgs^t,1:nws)  wrecv,
integer, intent(in)  ixR,
integer, intent(in)  L,
double precision, dimension(ixgs^t,1:nws)  wsend,
integer, intent(in)  ixS,
  L,
integer, intent(in)  idirs 
)

Definition at line 1689 of file mod_ghostcells_update.t.

Here is the call graph for this function:

◆ skip_direction()

logical function getbc::skip_direction ( integer, dimension(^nd), intent(in)  dir)

Definition at line 775 of file mod_ghostcells_update.t.