The revised depth correction algorithm requires per-cell depth
information (in SourceDataSpan::Item::Depth) for the reservoir
contributions so honour this requirement.
This is potentially a somewhat wasteful approach since the cell
centre depth is constant throughout a simulation, but it's a simple
strategy that does not require large API and synchronisation
changes, so we nevertheless stick to this as a first implementation.
We will reduce the amount of communication if this becomes a
bottleneck.
This commit adds a parallel calculation object derived from the serial
PAvgCalculator class. This parallel version is aware of MPI
communicators and knows how to aggregate contributions from wells that
might be distributed across ranks.
We also add a wrapper class, ParallelWBPCalculation, which knows how to
exchange information from PAvgCalculatorCollection objects on different
ranks and, especially, how to properly prune inactive cells/connections.