MPI-AMRVAC  3.0
The MPI - Adaptive Mesh Refinement - Versatile Advection Code
Data Types | Functions/Subroutines | Variables
mod_amr_fct Module Reference

Functions/Subroutines

subroutine, public prolong_2nd_stg (sCo, sFi, ixCoLin, ixFiLin, dxCoD, xCominD, dxFiD, xFiminD, ghost, fine_Lin)
 This subroutine performs a 2nd order prolongation for a staggered field F, preserving the divergence of the coarse cell. This is useful for preserving DivF=0. If DivF=f(x), a different algorithm must be used. More...
 
subroutine, public store_faces
 To achive consistency and thus conservation of divergence, when refining a block we take into account the faces of the already fine neighbours, if any. This routine stores them. More...
 
subroutine, public comm_faces
 When refining a coarse block with fine neighbours, it is necessary prolong consistently with the already fine faces. This routine takes care of the communication of such faces. More...
 
subroutine, public end_comm_faces
 
subroutine, public deallocatebfaces
 
subroutine, public old_neighbors (child_igrid, child_ipe, igrid, ipe)
 
subroutine, public already_fine (sFi, ichild, fine_L)
 This routine fills the fine faces before prolonging. It is the face equivalent of fix_conserve. More...
 

Variables

type(facealloc), dimension(:,:,:), allocatable, public pface
 
type(fake_neighbors), dimension(:^d &,:,:), allocatable, public fine_neighbors
 
integer, dimension(:,:^d &,:), allocatable, public old_neighbor
 

Function/Subroutine Documentation

◆ already_fine()

subroutine, public mod_amr_fct::already_fine ( type(state sFi,
integer, intent(in)  ichild,
logical  fine_,
logical  L 
)

This routine fills the fine faces before prolonging. It is the face equivalent of fix_conserve.

Definition at line 690 of file mod_amr_fct.t.

◆ comm_faces()

subroutine, public mod_amr_fct::comm_faces

When refining a coarse block with fine neighbours, it is necessary prolong consistently with the already fine faces. This routine takes care of the communication of such faces.

Definition at line 528 of file mod_amr_fct.t.

◆ deallocatebfaces()

subroutine, public mod_amr_fct::deallocatebfaces

Definition at line 653 of file mod_amr_fct.t.

◆ end_comm_faces()

subroutine, public mod_amr_fct::end_comm_faces

Definition at line 647 of file mod_amr_fct.t.

◆ old_neighbors()

subroutine, public mod_amr_fct::old_neighbors ( integer, dimension(2^d&), intent(in)  child_igrid,
integer, dimension(2^d&), intent(in)  child_ipe,
integer, intent(in)  igrid,
integer, intent(in)  ipe 
)

Definition at line 667 of file mod_amr_fct.t.

◆ prolong_2nd_stg()

subroutine, public mod_amr_fct::prolong_2nd_stg ( type(state), intent(in)  sCo,
type(state), intent(inout)  sFi,
integer, intent(in)  ixCo,
logical, intent(in), optional  Lin,
integer, intent(in)  ixFi,
  Lin,
double precision, intent(in)  dxCo,
double precision, intent(in)  D,
double precision, intent(in)  xComin,
  D,
double precision, intent(in)  dxFi,
  D,
double precision, intent(in)  xFimin,
  D,
logical, intent(in)  ghost,
logical, optional  fine_,
  Lin 
)

This subroutine performs a 2nd order prolongation for a staggered field F, preserving the divergence of the coarse cell. This is useful for preserving DivF=0. If DivF=f(x), a different algorithm must be used.

Definition at line 40 of file mod_amr_fct.t.

Here is the call graph for this function:

◆ store_faces()

subroutine, public mod_amr_fct::store_faces

To achive consistency and thus conservation of divergence, when refining a block we take into account the faces of the already fine neighbours, if any. This routine stores them.

Definition at line 457 of file mod_amr_fct.t.

Variable Documentation

◆ fine_neighbors

type(fake_neighbors), dimension(:^d&,:,:), allocatable, public mod_amr_fct::fine_neighbors

Definition at line 16 of file mod_amr_fct.t.

◆ old_neighbor

integer, dimension(:,:^d&,:), allocatable, public mod_amr_fct::old_neighbor

Definition at line 18 of file mod_amr_fct.t.

◆ pface

type(facealloc), dimension(:,:,:), allocatable, public mod_amr_fct::pface

Definition at line 14 of file mod_amr_fct.t.