|
Afivo 0.3
|
This module contains the routines related to prolongation: going from coarse to fine variables. More...
Functions/Subroutines | |
| subroutine, public | af_prolong_copy_from (boxes, id, iv, iv_to, add) |
| Zeroth-order prolongation to children. More... | |
| subroutine, public | af_prolong_copy (box_p, box_c, iv, iv_to, low, high, add) |
| Partial prolongation to a child (from parent) using injection (simply copy value) More... | |
| subroutine, public | af_prolong_zeroth (box_p, box_c, iv, iv_to, add, limiter) |
| Zeroth order prolongation. More... | |
| subroutine, public | af_prolong_linear_from (boxes, id, iv, iv_to, add) |
| Linear prolongation to children. We use 2-1-1 interpolation (2d) and 1-1-1-1 interpolation (3D), which do not require corner ghost cells. More... | |
| subroutine, public | af_prolong_sparse (box_p, box_c, iv, iv_to, add, limiter) |
| Prolongation to a child (from parent) using linear interpolation. We use 2-1-1 interpolation (2D) and 1-1-1-1 interpolation (3D) which do not need corner ghost cells. More... | |
| subroutine, public | af_prolong_limit (box_p, box_c, iv, iv_to, add, limiter) |
| Conservative prolongation using the limited gradient from the coarse cells. More... | |
| subroutine, public | af_prolong_linear_cons (box_p, box_c, iv, iv_to, add, limiter) |
| subroutine, public | af_prolong_linear (box_p, box_c, iv, iv_to, add, limiter) |
| Bi/trilinear prolongation to a child (from parent) More... | |
This module contains the routines related to prolongation: going from coarse to fine variables.
| subroutine, public m_af_prolong::af_prolong_copy_from | ( | type(box_t), dimension(:), intent(inout) | boxes, |
| integer, intent(in) | id, | ||
| integer, intent(in) | iv, | ||
| integer, intent(in), optional | iv_to, | ||
| logical, intent(in), optional | add | ||
| ) |
Zeroth-order prolongation to children.
| [in,out] | boxes | List of all boxes |
| [in] | id | Box whose children we will fill |
| [in] | iv | Variable that is prolonged |
| [in] | iv_to | Destination variable |
| [in] | add | Add to old values |
Definition at line 25 of file m_af_prolong.f90.
| subroutine, public m_af_prolong::af_prolong_copy | ( | type(box_t), intent(in) | box_p, |
| type(box_t), intent(inout) | box_c, | ||
| integer, intent(in) | iv, | ||
| integer, intent(in), optional | iv_to, | ||
| integer, dimension(ndim), intent(in), optional | low, | ||
| integer, dimension(ndim), intent(in), optional | high, | ||
| logical, intent(in), optional | add | ||
| ) |
Partial prolongation to a child (from parent) using injection (simply copy value)
| [in] | box_p | Parent box |
| [in,out] | box_c | Child box |
| [in] | iv | Variable to fill |
| [in] | iv_to | Destination variable |
| [in] | low | Min cell index at child |
| [in] | high | Max cell index at child |
| [in] | add | Add to old values |
Definition at line 41 of file m_af_prolong.f90.
| subroutine, public m_af_prolong::af_prolong_zeroth | ( | type(box_t), intent(in) | box_p, |
| type(box_t), intent(inout) | box_c, | ||
| integer, intent(in) | iv, | ||
| integer, intent(in), optional | iv_to, | ||
| logical, intent(in), optional | add, | ||
| integer, intent(in), optional | limiter | ||
| ) |
Zeroth order prolongation.
| [in] | box_p | Parent box |
| [in,out] | box_c | Child box |
| [in] | iv | Variable to fill |
| [in] | iv_to | Destination variable |
| [in] | add | Add to old values |
| [in] | limiter | What kind of limiter to use |
Definition at line 121 of file m_af_prolong.f90.
| subroutine, public m_af_prolong::af_prolong_linear_from | ( | type(box_t), dimension(:), intent(inout) | boxes, |
| integer, intent(in) | id, | ||
| integer, intent(in) | iv, | ||
| integer, intent(in), optional | iv_to, | ||
| logical, intent(in), optional | add | ||
| ) |
Linear prolongation to children. We use 2-1-1 interpolation (2d) and 1-1-1-1 interpolation (3D), which do not require corner ghost cells.
| [in,out] | boxes | List of all boxes |
| [in] | id | Box whose children we will fill |
| [in] | iv | Variable that is filled |
| [in] | iv_to | Destination variable |
| [in] | add | Add to old values |
Definition at line 187 of file m_af_prolong.f90.
| subroutine, public m_af_prolong::af_prolong_sparse | ( | type(box_t), intent(in) | box_p, |
| type(box_t), intent(inout) | box_c, | ||
| integer, intent(in) | iv, | ||
| integer, intent(in), optional | iv_to, | ||
| logical, intent(in), optional | add, | ||
| integer, intent(in), optional | limiter | ||
| ) |
Prolongation to a child (from parent) using linear interpolation. We use 2-1-1 interpolation (2D) and 1-1-1-1 interpolation (3D) which do not need corner ghost cells.
| [in] | box_p | Parent box |
| [in,out] | box_c | Child box |
| [in] | iv | Variable to fill |
| [in] | iv_to | Destination variable |
| [in] | add | Add to old values |
| [in] | limiter | What kind of limiter to use |
Definition at line 205 of file m_af_prolong.f90.
| subroutine, public m_af_prolong::af_prolong_limit | ( | type(box_t), intent(in) | box_p, |
| type(box_t), intent(inout) | box_c, | ||
| integer, intent(in) | iv, | ||
| integer, intent(in), optional | iv_to, | ||
| logical, intent(in), optional | add, | ||
| integer, intent(in), optional | limiter | ||
| ) |
Conservative prolongation using the limited gradient from the coarse cells.
| [in] | box_p | Parent box |
| [in,out] | box_c | Child box |
| [in] | iv | Variable to fill |
| [in] | iv_to | Destination variable |
| [in] | add | Add to old values |
| [in] | limiter | What kind of limiter to use |
Definition at line 311 of file m_af_prolong.f90.
| subroutine, public m_af_prolong::af_prolong_linear_cons | ( | type(box_t), intent(in) | box_p, |
| type(box_t), intent(inout) | box_c, | ||
| integer, intent(in) | iv, | ||
| integer, intent(in), optional | iv_to, | ||
| logical, intent(in), optional | add, | ||
| integer, intent(in), optional | limiter | ||
| ) |
| [in] | box_p | Parent box |
| [in,out] | box_c | Child box |
| [in] | iv | Variable to fill |
| [in] | iv_to | Destination variable |
| [in] | add | Add to old values |
| [in] | limiter | What kind of limiter to use |
Definition at line 424 of file m_af_prolong.f90.
| subroutine, public m_af_prolong::af_prolong_linear | ( | type(box_t), intent(in) | box_p, |
| type(box_t), intent(inout) | box_c, | ||
| integer, intent(in) | iv, | ||
| integer, intent(in), optional | iv_to, | ||
| logical, intent(in), optional | add, | ||
| integer, intent(in), optional | limiter | ||
| ) |
Bi/trilinear prolongation to a child (from parent)
| [in] | box_p | Parent box |
| [in,out] | box_c | Child box |
| [in] | iv | Variable to fill |
| [in] | iv_to | Destination variable |
| [in] | add | Add to old values |
| [in] | limiter | What kind of limiter to use |
Definition at line 531 of file m_af_prolong.f90.