ALL 0.9.3
A Loadbalacing Library
Loading...
Searching...
No Matches
ALL::Functions Namespace Reference

Functions

template<typename T, typename W>
borderShift1d (const int remote_rank, const int local_coord, const int global_dim, const W local_work, const W remote_work, const T local_size, const T remote_size, const T gamma, const T minSize)
 

Function Documentation

◆ borderShift1d()

template<typename T, typename W>
T ALL::Functions::borderShift1d ( const int remote_rank,
const int local_coord,
const int global_dim,
const W local_work,
const W remote_work,
const T local_size,
const T remote_size,
const T gamma,
const T minSize )

function to compute the one-dimensional shift of the border between the local process and the process indicated by neighbor_rank

Template Parameters
Tdata type for vertices and related data
Wdata type for work and related data
Parameters
[in]remote_rankthe MPI rank of the neighbors the border is shared with
[in]local_coordthe cartesian coordinate of the local domain in the process grid in the direction of the border shift
[in]global_dimthe dimension of the process grid in the direction of the border shift
[in]local_workthe work on the local process
[in]remote_workthe work on the neighboring process
[in]local_sizethe size of the local domain in the dimension of the border shift
[in]remote_sizethe size of the neighbor domain in the dimension of the border shift
[in]gammathe correction value for the shift, needed to regulate the width of the shift, e.g. to avoid borders shifts where next-neighbor borders are crossed by one another
[in]minSizeoptional minimum size of the domain in the dimension of the border shift
Returns
the shift of the border in relation to the local domain

Definition at line 34 of file ALL_Functions.hpp.

+ Here is the caller graph for this function: