CAM
|
Functions/Subroutines | |
subroutine, public | initedgesbuffer (par, edge, elem, nlyr, bptr, rptr) |
subroutine, public | initedgebuffer (par, edge, elem, nlyr, NewMethod) |
subroutine, public | initlongedgebuffer (edge, nlyr) |
subroutine, public | edgedgvpack (edge, v, vlyr, kptr, ielem) |
subroutine, public | freeedgebuffer (edge) |
subroutine, public | freeghostbuffer3d (buffer) |
subroutine, public | freelongedgebuffer (edge) |
subroutine, public | edgevpack (edge, v, vlyr, kptr, ielem) |
Pack edges of v into an edge buffer for boundary exchange. More... | |
subroutine, public | edgespack (edge, v, vlyr, kptr, ielem) |
subroutine, public | longedgevpack (edge, v, vlyr, kptr, desc) |
subroutine, public | edgevunpack (edge, v, vlyr, kptr, ielem) |
subroutine, public | edgevunpackvert (edge, v, ielem) |
subroutine, public | edgedgvunpack (edge, v, vlyr, kptr, ielem) |
subroutine, public | edgevunpackmax (edge, v, vlyr, kptr, ielem) |
subroutine, public | edgesunpackmax (edge, v, vlyr, kptr, ielem) |
subroutine, public | edgesunpackmin (edge, v, vlyr, kptr, ielem) |
subroutine, public | edgevunpackmin (edge, v, vlyr, kptr, ielem) |
subroutine, public | longedgevunpackmin (edge, v, vlyr, kptr, desc) |
subroutine, public | ghostvpackfull (edge, v, nc1, nc2, nc, vlyr, kptr, desc) |
Pack edges of v into an edge buffer for boundary exchange. More... | |
subroutine, public | ghostvunpackfull (edge, v, nc1, nc2, nc, vlyr, kptr, desc) |
subroutine, public | ghostvpack_unoriented (edge, v, nc, vlyr, kptr, desc) |
Pack edges of v into an edge buffer for boundary exchange. More... | |
subroutine, public | ghostvunpack_unoriented (edge, v, nc, vlyr, kptr, desc, GlobalId, u) |
subroutine, public | initghostbuffer3d (ghost, nlyr, np, nhc_in) |
subroutine, public | ghostvpack3d (ghost, v, vlyr, kptr, desc) |
subroutine, public | ghostvunpack3d (g, v, vlyr, kptr, desc, sw, se, nw, ne, mult) |
Variables | |
logical, private | threadsafe =.true. |
real(kind=real_kind), parameter, public | edgedefaultval = 1.11e+100_real_kind |
subroutine, public edge_mod_base::edgedgvpack | ( | type (edgebuffer_t) | edge, |
real (kind=real_kind), dimension(np,np,vlyr), intent(in) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::edgedgvunpack | ( | type (edgebuffer_t), intent(in) | edge, |
real (kind=real_kind), dimension(0:np+1,0:np+1,vlyr), intent(out) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::edgespack | ( | type (edgebuffer_t) | edge, |
real (kind=real_kind), dimension(vlyr), intent(in) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::edgesunpackmax | ( | type (edgebuffer_t), intent(in) | edge, |
real (kind=real_kind), dimension(vlyr), intent(inout) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::edgesunpackmin | ( | type (edgebuffer_t), intent(in) | edge, |
real (kind=real_kind), dimension(vlyr), intent(inout) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::edgevpack | ( | type (edgebuffer_t) | edge, |
real (kind=real_kind), dimension(np,np,vlyr), intent(in) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
Pack edges of v into an edge buffer for boundary exchange.
This subroutine packs for one or more vertical layers into an edge buffer. If the buffer associated with edge is not large enough to hold all vertical layers you intent to pack, the method will halt the program with a call to parallel_mod::haltmp().
[in] | edge | Edge Buffer into which the data will be packed. This buffer must be previously allocated with initEdgeBuffer(). |
[in] | v | The data to be packed. |
[in] | vlyr | Number of vertical level coming into the subroutine for packing for input v. |
[in] | kptr | Vertical pointer to the place in the edge buffer where data will be located. |
subroutine, public edge_mod_base::edgevunpack | ( | type (edgebuffer_t), intent(in) | edge, |
real (kind=real_kind), dimension(np,np,vlyr), intent(inout) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::edgevunpackmax | ( | type (edgebuffer_t), intent(in) | edge, |
real (kind=real_kind), dimension(np,np,vlyr), intent(inout) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::edgevunpackmin | ( | type (edgebuffer_t), intent(in) | edge, |
real (kind=real_kind), dimension(np,np,vlyr), intent(inout) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::edgevunpackvert | ( | type (edgebuffer_t), intent(inout) | edge, |
type (cartesian3d_t), dimension(:,:,:), intent(out) | v, | ||
integer, intent(in) | ielem | ||
) |
subroutine, public edge_mod_base::freeedgebuffer | ( | type (edgebuffer_t), intent(inout) | edge | ) |
subroutine, public edge_mod_base::freeghostbuffer3d | ( | type (ghostbuffer3d_t), intent(inout) | buffer | ) |
subroutine, public edge_mod_base::freelongedgebuffer | ( | type (longedgebuffer_t), intent(inout) | edge | ) |
subroutine, public edge_mod_base::ghostvpack3d | ( | type (ghostbuffer3d_t) | ghost, |
real (kind=real_kind), dimension(ghost%np, ghost%np, vlyr), intent(in) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
type (edgedescriptor_t), intent(in) | desc | ||
) |
subroutine, public edge_mod_base::ghostvpack_unoriented | ( | type (ghostbuffer3d_t), intent(inout) | edge, |
real (kind=real_kind), dimension(nc,nc,vlyr), intent(in) | v, | ||
integer, intent(in) | nc, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
type (edgedescriptor_t), intent(in) | desc | ||
) |
Pack edges of v into an edge buffer for boundary exchange.
This subroutine packs for one or more vertical layers into an edge buffer. If the buffer associated with edge is not large enough to hold all vertical layers you intent to pack, the method will halt the program with a call to parallel_mod::haltmp().
[in] | edge | Ghost Buffer into which the data will be packed. This buffer must be previously allocated with initghostbuffer(). |
[in] | v | The data to be packed. |
[in] | vlyr | Number of vertical level coming into the subroutine for packing for input v. |
[in] | kptr | Vertical pointer to the place in the edge buffer where data will be located. |
subroutine, public edge_mod_base::ghostvpackfull | ( | type (ghostbuffer3d_t) | edge, |
real (kind=real_kind), dimension(nc1:nc2,nc1:nc2,vlyr), intent(in) | v, | ||
integer, intent(in) | nc1, | ||
integer, intent(in) | nc2, | ||
integer, intent(in) | nc, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
type (edgedescriptor_t), intent(in) | desc | ||
) |
Pack edges of v into an edge buffer for boundary exchange.
This subroutine packs for one or more vertical layers into an edge buffer. If the buffer associated with edge is not large enough to hold all vertical layers you intent to pack, the method will halt the program with a call to parallel_mod::haltmp().
[in] | edge | Ghost Buffer into which the data will be packed. This buffer must be previously allocated with initghostbufferfull(). |
[in] | v | The data to be packed. |
[in] | vlyr | Number of vertical level coming into the subroutine for packing for input v. |
[in] | kptr | Vertical pointer to the place in the edge buffer where data will be located. |
subroutine, public edge_mod_base::ghostvunpack3d | ( | type (ghostbuffer3d_t), intent(in) | g, |
real (kind=real_kind), dimension (1-g%nhc : g%np+g%nhc, 1-g%nhc : g%np+g%nhc, vlyr), intent(inout) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
type (edgedescriptor_t) | desc, | ||
real (kind=real_kind), dimension(1-g%nhc : 1, 1-g%nhc : 1, vlyr, max_corner_elem-1), intent(out) | sw, | ||
real (kind=real_kind), dimension( g%np : g%np+g%nhc, 1-g%nhc : 1, vlyr, max_corner_elem-1), intent(out) | se, | ||
real (kind=real_kind), dimension(1-g%nhc : 1, g%np : g%np+g%nhc, vlyr, max_corner_elem-1), intent(out) | nw, | ||
real (kind=real_kind), dimension( g%np : g%np+g%nhc, g%np : g%np+g%nhc, vlyr, max_corner_elem-1), intent(out) | ne, | ||
integer, dimension(5:8), intent(out) | mult | ||
) |
subroutine, public edge_mod_base::ghostvunpack_unoriented | ( | type (ghostbuffer3d_t), intent(inout) | edge, |
real (kind=real_kind), dimension(nc,nc,vlyr,*), intent(out) | v, | ||
integer, intent(in) | nc, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
type (edgedescriptor_t), intent(in) | desc, | ||
integer(kind=int_kind), intent(in) | GlobalId, | ||
real (kind=real_kind), dimension(nc,nc,vlyr), intent(in) | u | ||
) |
subroutine, public edge_mod_base::ghostvunpackfull | ( | type (ghostbuffer3d_t), intent(in) | edge, |
real (kind=real_kind), dimension(nc1:nc2,nc1:nc2,vlyr), intent(inout) | v, | ||
integer, intent(in) | nc1, | ||
integer, intent(in) | nc2, | ||
integer, intent(in) | nc, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
type (edgedescriptor_t) | desc | ||
) |
subroutine, public edge_mod_base::initedgebuffer | ( | type (parallel_t), intent(in) | par, |
type (edgebuffer_t), intent(out), target | edge, | ||
type (element_t), dimension(:), intent(in) | elem, | ||
integer, intent(in) | nlyr, | ||
logical (kind=log_kind), intent(in), optional | NewMethod | ||
) |
subroutine, public edge_mod_base::initedgesbuffer | ( | type (parallel_t), intent(in) | par, |
type (edgebuffer_t), intent(out), target | edge, | ||
type (element_t), dimension(:), intent(in) | elem, | ||
integer, intent(in) | nlyr, | ||
real(kind=real_kind), dimension(:), optional, pointer | bptr, | ||
real(kind=real_kind), dimension(:), optional, pointer | rptr | ||
) |
subroutine, public edge_mod_base::initghostbuffer3d | ( | type (ghostbuffer3d_t), intent(out) | ghost, |
integer, intent(in) | nlyr, | ||
integer, intent(in) | np, | ||
integer, intent(in), optional | nhc_in | ||
) |
subroutine, public edge_mod_base::initlongedgebuffer | ( | type (longedgebuffer_t), intent(out) | edge, |
integer, intent(in) | nlyr | ||
) |
subroutine, public edge_mod_base::longedgevpack | ( | type (longedgebuffer_t) | edge, |
integer (kind=int_kind), dimension(np,np,vlyr), intent(in) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
type (edgedescriptor_t), intent(in) | desc | ||
) |
subroutine, public edge_mod_base::longedgevunpackmin | ( | type (longedgebuffer_t), intent(in) | edge, |
integer (kind=int_kind), dimension(np,np,vlyr), intent(inout) | v, | ||
integer, intent(in) | vlyr, | ||
integer, intent(in) | kptr, | ||
type (edgedescriptor_t), intent(in) | desc | ||
) |
real(kind=real_kind), parameter, public edge_mod_base::edgedefaultval = 1.11e+100_real_kind |
|
private |